dyn goal. fact p(1) and p(2) and p(3) and p(4) and p(5) and p(6) and p(7) and p(8) % and p(9) and p(11) and p(12) and p(13) and p(14) and p(15) and p(16) % and p(17) and p(18) and p(19) and p(20) => goal. fact q(X,Y) => p(Y). default q(1,X). default q(2,X). default q(3,X). default q(4,X). default q(5,X). default q(6,X). default q(7,X). default q(8,X). %default q(9,X). %default q(10,X). %default q(11,X). %default q(12,X). %default q(13,X). %default q(14,X). %default q(15,X). %default q(16,X). %default q(17,X). %default q(18,X). %default q(19,X). %default q(20,X). fact not q(X,Y) <- q(X,Z), lt(Z,Y). fact not q(X,Y) <- q(W,Z) , (pplus(X,D,W),(pplus(Y,D,Z); pplus(Z,D,Y)); pplus(W,D,X),pplus(Y,D,Z)). fact lt(X,Y) <- pplus(X,Z,Y). fact pplus(8,8,16). fact pplus(8,7,15). fact pplus(8,6,14). fact pplus(8,5,13). fact pplus(8,4,12). fact pplus(8,3,11). fact pplus(8,2,10). fact pplus(8,1,9). fact pplus(7,8,15). fact pplus(7,7,14). fact pplus(7,6,13). fact pplus(7,5,12). fact pplus(7,4,11). fact pplus(7,3,10). fact pplus(7,2,9). fact pplus(7,1,8). fact pplus(6,8,14). fact pplus(6,7,13). fact pplus(6,6,12). fact pplus(6,5,11). fact pplus(6,4,10). fact pplus(6,3,9). fact pplus(6,2,8). fact pplus(6,1,7). fact pplus(5,8,13). fact pplus(5,7,12). fact pplus(5,6,11). fact pplus(5,5,10). fact pplus(5,4,9). fact pplus(5,3,8). fact pplus(5,2,7). fact pplus(5,1,6). fact pplus(4,8,12). fact pplus(4,7,11). fact pplus(4,6,10). fact pplus(4,5,9). fact pplus(4,4,8). fact pplus(4,3,7). fact pplus(4,2,6). fact pplus(4,1,5). fact pplus(3,8,11). fact pplus(3,7,10). fact pplus(3,6,9). fact pplus(3,5,8). fact pplus(3,4,7). fact pplus(3,3,6). fact pplus(3,2,5). fact pplus(3,1,4). fact pplus(2,8,10). fact pplus(2,7,9). fact pplus(2,6,8). fact pplus(2,5,7). fact pplus(2,4,6). fact pplus(2,3,5). fact pplus(2,2,4). fact pplus(2,1,3). fact pplus(1,8,9). fact pplus(1,7,8). fact pplus(1,6,7). fact pplus(1,5,6). fact pplus(1,4,5). fact pplus(1,3,4). fact pplus(1,2,3). fact pplus(1,1,2).