%%clingo -V0 0
a(1..2).
b(1..2).
c :- a(X) : b(X).
#show c/0.
c SATISFIABLE
%%clingo -V0 0
a(1..3).
b(1..3).
c :- a(X) : b(X).
#show c/0.
%%clingo -V0 0
a(1).
b(1..2).
c :- a(X) : b(X).
#show c/0.
SATISFIABLE
%%clingo -V0 0
a(1..2).
b(1..3).
c :- a(X) : b(X).
#show c/0.
%%clingo -V0 0
b(1).
c :- a(X) : b(X).
#show c/0.
SATISFIABLE
-:3:6-10: info: atom does not occur in any rule head: a(X)
%%clingo -V0 0
b(1..2).
c :- a(X) : b(X).
#show c/0.
%%clingo -V0 0
a(1..2).
b(1..2).
c(1..2).
d :- a(X) : b(X), c(X).
#show d/0.
d SATISFIABLE
%%clingo -V0 0
a(1..2).
b(1..2).
c(1..3).
d :- a(X) : b(X), c(X).
#show d/0.
This time we have another exercise for the same example.
%%clingo -V0 0
a(1..2).
b(1..3).
c(1..3).
d :- a(X) : b(X), c(X).
#show d/0.
%%clingo -V0 0
a(1..2).
b(1..2).
c(1..2).
d(X) :- a(X) : b(X); c(X).
#show d/1.
d(1) d(2) SATISFIABLE
%%clingo -V0 0
a(1..2).
b(1..2).
c(1..3).
d(X) :- a(X) : b(X); c(X).
#show d/1.
And another exercise for the same example.
%%clingo -V0 0
a(1..2).
b(1..3).
c(1..3).
d(X) :- a(X) : b(X); c(X).
#show d/1.
%%clingo -V0 0
a(1..2).
b(1..2,1..2).
c(1..2).
d(X) :- a(Y) : b(X,Y); c(X).
#show d/1.
d(1) d(2) SATISFIABLE
%%clingo -V0 0
a(1..2).
b(1..2,1..2). b(2,3).
c(1..2).
d(X) :- a(Y) : b(X,Y); c(X).
#show d/1.
And again another exercise for the same example.
%%clingo -V0 0
a(1..2).
b(1..2,1..2). b(2,3).
c(1..2). c(3).
d(X) :- a(Y) : b(X,Y); c(X).
#show d/1.