/******************************************************************/ /* testcalls for different implementation levels */ /******************************************************************/ test1 :- split((A < succ(succ(A)) :- B < succ(B)),Head,BodyList), join(Head,BodyList,Rule). test2 :- flatten((B < succ(B) :- true),K,L), flatten((A < succ(succ(A)) :- true),U,V). test1(C) :- absorption1((mother(A,B) :- sex(A,female),parent(A,B)), (grandfather(X,Z) :- father(X,Y),sex(Y,female), parent(Y,Z)), C). test2(C) :- absorption1((B < Q :- succ(B,Q)),(A < X :- succ(A,Y), succ(Y,X)),C). test3(C) :- absorption2((mother(A,B) :- sex(A,female),daugther(B,A)), (grandfather(a,c) :- father(a,m),sex(m,female), daugther(c,m)), C). test4(C) :- absorption2((B < succ(B) :- true),(A < succ(succ(A)) :- true),C). test5(Q) :- intra_construction1((grandfather(X,Y) :- father(X,Z), mother(Z,Y)), (grandfather(A,B) :- father(A,C), father(C,B)),Q). test6(Q) :- intra_construction2((grandfather(X,Y) :- father(X,Z), mother(Z,Y)), (grandfather(A,B) :- father(A,C), father(C,B)),Q). test7(X) :- intra_construction2((min(D,[succ(D)|E]) :- min(D,E)), (min(F,[succ(succ(F))|G]) :- min(F,G)),X). test8(X) :- intra_construction2((B < succ(B) :- true), (A < succ(succ(A)) :- true),X). ?-test1(X). ?-test2(X). ?-test3(X). ?-test4(X). ?-test5(X). ?-test6(X). ?-test7(X). ?-test8(X).