eq(start(A,B,C),1,[eval(A,B,C,D,E,F,G),loop_cont_eval(E,F,G)],[D=0]). eq(start(A,B,C),1,[eval(A,B,C,D,E,F,G)],[D=1]). eq(eval(A,B,C,D,E,F,G),1,[eval(A+1,B+A,C,D,E,F,G)],[A>=B]). eq(eval(A,B,C,D,E,F,G),1,[eval(A-C,B+C*C,C-1,D,E,F,G)],[A>=B]). eq(eval(A,B,C,D,A,B,C),0,[],[D=1]).