%% predicates % plus(N1,N2,N3) -- N3 = N1 + N2 % dec(N1,N2) -- N2 = N1 - 1 % mult(N1,N2,N3) -- N3 = N1 * N2 !- mode(plus(+,+,-)). !- mode(mult(+,+,-)). !- mode(dec(+,-)). plus(0,0,0). plus(0,1,1). plus(0,2,2). plus(0,3,3). plus(0,4,4). plus(0,5,5). plus(0,6,6). plus(0,7,7). plus(0,8,8). plus(0,9,9). plus(0,10,10). plus(0,11,11). plus(0,12,12). plus(0,13,13). plus(0,14,14). plus(0,15,15). plus(0,16,16). plus(0,17,17). plus(0,18,18). plus(0,19,19). plus(0,20,20). plus(1,1,2). plus(1,2,3). plus(1,3,4). plus(1,4,5). plus(1,5,6). plus(1,6,7). plus(1,7,8). plus(1,8,9). plus(1,9,10). plus(1,10,11). plus(1,11,12). plus(1,12,13). plus(1,13,14). plus(1,14,15). plus(1,15,16). plus(1,16,17). plus(1,17,18). plus(1,18,19). plus(1,19,20). plus(1,20,21). plus(2,2,4). plus(2,3,5). plus(2,4,6). plus(2,5,7). plus(2,6,8). plus(2,7,9). plus(2,8,10). plus(2,9,11). plus(2,10,12). plus(2,11,13). plus(2,12,14). plus(2,13,15). plus(2,14,16). plus(2,15,17). plus(2,16,18). plus(2,17,19). plus(2,18,20). plus(2,19,21). plus(2,20,22). plus(3,3,6). plus(3,4,7). plus(3,5,8). plus(3,6,9). plus(3,7,10). plus(3,8,11). plus(3,9,12). plus(3,10,13). plus(3,11,14). plus(3,12,15). plus(3,13,16). plus(3,14,17). plus(3,15,18). plus(3,16,19). plus(3,17,20). plus(3,18,21). plus(3,19,22). plus(3,20,23). plus(4,4,8). plus(4,5,9). plus(4,6,10). plus(4,7,11). plus(4,8,12). plus(4,9,13). plus(4,10,14). plus(4,11,15). plus(4,12,16). plus(4,13,17). plus(4,14,18). plus(4,15,19). plus(4,16,20). plus(4,17,21). plus(4,18,22). plus(4,19,23). plus(4,20,24). plus(5,5,10). plus(5,6,11). plus(5,7,12). plus(5,8,13). plus(5,9,14). plus(5,10,15). plus(5,11,16). plus(5,12,17). plus(5,13,18). plus(5,14,19). plus(5,15,20). plus(5,16,21). plus(5,17,22). plus(5,18,23). plus(5,19,24). plus(5,20,25). plus(6,6,12). plus(6,7,13). plus(6,8,14). plus(6,9,15). plus(6,10,16). plus(6,11,17). plus(6,12,18). plus(6,13,19). plus(6,14,20). plus(6,15,21). plus(6,16,22). plus(6,17,23). plus(6,18,24). plus(6,19,25). plus(6,20,26). plus(7,7,14). plus(7,8,15). plus(7,9,16). plus(7,10,17). plus(7,11,18). plus(7,12,19). plus(7,13,20). plus(7,14,21). plus(7,15,22). plus(7,16,23). plus(7,17,24). plus(7,18,25). plus(7,19,26). plus(7,20,27). plus(8,8,16). plus(8,9,17). plus(8,10,18). plus(8,11,19). plus(8,12,20). plus(8,13,21). plus(8,14,22). plus(8,15,23). plus(8,16,24). plus(8,17,25). plus(8,18,26). plus(8,19,27). plus(8,20,28). plus(9,9,18). plus(9,10,19). plus(9,11,20). plus(9,12,21). plus(9,13,22). plus(9,14,23). plus(9,15,24). plus(9,16,25). plus(9,17,26). plus(9,18,27). plus(9,19,28). plus(9,20,29). plus(10,10,20). plus(10,11,21). plus(10,12,22). plus(10,13,23). plus(10,14,24). plus(10,15,25). plus(10,16,26). plus(10,17,27). plus(10,18,28). plus(10,19,29). plus(10,20,30). plus(11,11,22). plus(11,12,23). plus(11,13,24). plus(11,14,25). plus(11,15,26). plus(11,16,27). plus(11,17,28). plus(11,18,29). plus(11,19,30). plus(11,20,31). plus(12,12,24). plus(12,13,25). plus(12,14,26). plus(12,15,27). plus(12,16,28). plus(12,17,29). plus(12,18,30). plus(12,19,31). plus(12,20,32). plus(13,13,26). plus(13,14,27). plus(13,15,28). plus(13,16,29). plus(13,17,30). plus(13,18,31). plus(13,19,32). plus(13,20,33). plus(14,14,28). plus(14,15,29). plus(14,16,30). plus(14,17,31). plus(14,18,32). plus(14,19,33). plus(14,20,34). plus(15,15,30). plus(15,16,31). plus(15,17,32). plus(15,18,33). plus(15,19,34). plus(15,20,35). plus(16,16,32). plus(16,17,33). plus(16,18,34). plus(16,19,35). plus(16,20,36). plus(17,17,34). plus(17,18,35). plus(17,19,36). plus(17,20,37). plus(18,18,36). plus(18,19,37). plus(18,20,38). plus(19,19,38). plus(19,20,39). plus(20,20,40). dec(1,0). dec(2,1). dec(3,2). dec(4,3). dec(5,4). dec(6,5). dec(7,6). dec(8,7). dec(9,8). dec(10,9). dec(11,10). mult(0,0,0). mult(0,1,0). mult(0,2,0). mult(0,3,0). mult(0,4,0). mult(0,5,0). mult(0,6,0). mult(0,7,0). mult(0,8,0). mult(0,9,0). mult(0,10,0). mult(1,1,1). mult(1,2,2). mult(1,3,3). mult(1,4,4). mult(1,5,5). mult(1,6,6). mult(1,7,7). mult(1,8,8). mult(1,9,9). mult(1,10,10). mult(2,2,4). mult(2,3,6). mult(2,4,8). mult(2,5,10). mult(2,6,12). mult(2,7,14). mult(2,8,16). mult(2,9,18). mult(2,10,20). mult(3,3,9). mult(3,4,12). mult(3,5,15). mult(3,6,18). mult(4,4,16). mult(4,5,20).