View source with raw comments or as raw
    6% p :- not q.
    7% q :- not p.
    8% %result(S) :- S = #count{ :p}.
    9
   10% r:- s_result(1).
   11% s:- r_result(1).
   12
   13% s_result(S) :- S = #count{ :s}.
   14% r_result(S) :- S = #count{ :r}.
   15
   16
   17
   18
   19% t(a) :- N = #count{X:u(X)}, N = 0.
   20% u(a) :- N = #count{X:t(X)}, N = 0.
   21
   22% t(a) :- N = #count{X:u(X)}, N = 0.
   23% u(a) :- N = #count{X:t(X)}, N = 0.
   24
   25
   26
   27% Party
   28
   29% coming(X) :- required(X,K), N= #count{ :kc(X,_)}, N >= K.
   30% kc(X,Y) :- knows(X,Y), coming(Y).
   31
   32% %coming(a).
   33% required(a,1).
   34% required(b,1).
   35% knows(a,b).
   36% knows(b,a).
   37
   38
   39% r(a).r(b).
   40% p(b).
   41% q(b).
   42% p(a) :- N = #count{ r(X): q(X)}, N = 1.
   43% q(a) :- 1 = #count{ r(X): p(X)}.
   44
   45
   46p(0).
   47p(1).
   48p(2).
   49
   50r(1..2).
   51
   52p(0) :- N = #min {X :  p(X)}, N = 0.
   53
   54#