プロローグでバイナリツリーを書き込もうとしていますが、次のエラーが発生します:
Syntax error: Operator expected
エラーは、addChildrenへの最初の呼び出しでここで発生します。
addChildren(node(Left, Right, Cand, [(Name, Profit, Weight)|T])):-
getTotalWeight(Cand, 0, Total),
%if total weight is less than 20
((Total + Weight) < 20 -> %then
    New = [Cand | (Name, Profit, Weight)],
    addChildren(Left(_,_, New, T)), %error here
    addChildren(Right(_,_, Cand, T))
; %else
    %end).
私は次のノードを使用しています:
node(node, node, [], []).
ありとあらゆる助けをいただければ幸いです。