clgoでコンパイルされた次のコードを検討してください。
ファイルtest.lp
. コンパイル コマンド: clingo 0 test.lp
.
col(("rot";"blau")).
freq("rot","hell",2). freq("rot","dunkel",2). freq("rot","hell",5).
freq("blau","hell",20). freq("blau","dunkel",30). freq("blau","hell",50).
freq_sum(C,F) :- F = #sum{ X : freq(C,_,X) }, col(C).
%% does not work: >>error: syntax error, unexpected [, expecting {<<
% freq_sum(C,F) :- F = #sum[ X : freq(C,_,X) ], col(C).
#show freq_sum/2.
コードは、各色の頻度の合計を計算する必要があります。の場合"red"
、これは である必要が9
あり、“blue"
これは である必要があります100
。"red"
値2
が 2 回カウントされるためです。リストを順序付きリストにし、順序付き合計を提供する必要がある で置き換える{...}
と、コンパイラは不平を言います。私は持っています。コードまたはコンパイラに何か問題がありますか?[…]
error: syntax error, unexpected [, expecting {
clingo version 4.5.4
ASPで注文した合計を実行する方法を教えてください。