1

私はClingoで次のように定義されたグラフの色分け問題を持っています:

node(sa;wa;nt;q;nsw;v;t).
color(r;g;b).

edge(sa,(wa;nt;q;nsw;v)).
edge(wa,nt). edge(nt,q). edge(q,nsw). edge(nsw,v).
edge(X,Y) :- edge(Y,X).

そして、私は次のように特徴付けられるソリューションを持っています:

{assign(N,C) : color(C)} = 1 :- node(N).
:- edge(X,Y), assign(X,C1), assign(Y,C2), C1 == C2.
#show assign/2.

= 1コードの生成部分の が何を意味するのか理解できません。「カーディナリティの設定」であることは知っていますが、コードは各回答で7つのノードを生成する必要があるため、その方法がわかりません。さらに、次のジェネレーター (長さ 7 のセットで選択するノードと色のすべての組み合わせを生成する) には が必要= 7です。

{assign(N,C) : color(C), node(N)} = 7.

これは、私が解決しているグラフの彩色問題の写真です: https://imgur.com/a/tX7qtkJ

およびクリンゴ: https://potassco.org/clingo/run/

4

1 に答える 1