Prolog语法错误:操作员期望

时间:2014-11-24 11:23:10

标签: prolog

我有错误/解决方案:5:10 : Syntax Error : Operator expected

nonoverlap(R,Task1,Task2) :-
   Task1 = task(_,T1,L1,Rs2),
   Task2 = task(_,T2,L2,Rs2),
   ((member(R,Rs1), member(R,Rs2)) ->
      T2 #> T1+L1     % start Task2 after Task1 has finished
       #\/             % OR
      T1 #> T2+L2     % start Task1 after Task2 has finished
   ;
      true            % non-conflicting, do nothing
   ).

1 个答案:

答案 0 :(得分:2)

您需要在文件/模块的开头说明

:- use_module(library(clpfd)).

除此之外,你很可能想说T2 #>= T1 + L1

此外,无论顺序如何,都可以说abs(T2-T1) #>= min(L1,L2)

相关问题