Ciao Preprocessor (integrated Alpha version)
| This is an alpha distribution, meant only for testing. Please do let us
| know at ciaopp-bugclip.dia.fi.upm.es any problems you may have.
{loaded in 3388.212 msec.}
{preprocessed for plai in 4.0 msec.}
{analyzed by plai using det with local-control off in 4.001 msec.}
{written file /tmp/tmpHXfbMY/even_det_co.pl}
:- module(_1,[even/1],[assertions]).
:- entry even(A)
: ground(A).
:- true pred even(A)
: ( ground([A]), gnd(A) )
=> ( ground([A]), rt23(A) )
+ ( is_det, mut_exclusive ).
even(X) :-
eq(Y,f(e,f(o,Y))),
c(Y,X).
:- true pred c(_1,_2)
: ( native_props:mshare([[_1]]), ground([_2]), rt0(_1), gnd(_2) )
=> ( native_props:mshare([[_1]]), ground([_2]), rt3(_1), rt23(_2) )
+ ( is_det, mut_exclusive ).
:- true pred c(_1,_2)
: ( native_props:mshare([[_1]]), ground([_2]), rt5(_1), gnd(_2) )
=> ( native_props:mshare([[_1]]), ground([_2]), rt18(_1), rt19(_2) )
+ ( is_det, mut_exclusive ).
:- true pred c(_1,_2)
: ( native_props:mshare([[_1]]), ground([_2]), term(_1), rt7(_2) )
=> ( native_props:mshare([[_1]]), ground([_2]), rt14(_1), rt16(_2) )
+ ( is_det, mut_exclusive ).
c(f(e,_1),0).
c(f(_1,X),s(Y)) :-
c(X,Y).
:- true pred eq(X,f(e,f(o,X)))
: ( native_props:mshare([[X]]), var(X), term(X) )
=> ( native_props:mshare([[X]]), rt0(X) )
+ ( is_det, mut_exclusive ).
eq(X,X).
:- regtype rt25/1.
rt25(0).
rt25(s(A)) :-
rt25(A).
:- regtype rt24/1.
rt24(s(A)) :-
rt25(A).
:- regtype rt23/1.
rt23(0).
rt23(s(A)) :-
rt24(A).
:- regtype rt0/1.
rt0(f(e,f(o,A))) :-
term(A).
:- regtype rt1/1.
rt1(f(o,A)) :-
term(A).
:- regtype rt3/1.
rt3(f(e,A)) :-
rt1(A).
:- regtype rt5/1.
rt5(f(o,A)) :-
term(A).
:- regtype rt6/1.
rt6(o).
:- regtype rt18/1.
rt18(f(A,B)) :-
rt6(A),
rt14(B).
:- regtype rt19/1.
rt19(s(A)) :-
rt16(A).
:- regtype rt7/1.
rt7(A) :-
gnd(A).
:- regtype rt15/1.
rt15(A) :-
term(A).
rt15(f(A,B)) :-
term(A),
rt15(B).
:- regtype rt14/1.
rt14(f(A,B)) :-
term(A),
rt15(B).
:- regtype rt17/1.
rt17(0).
rt17(s(A)) :-
rt17(A).
:- regtype rt16/1.
rt16(0).
rt16(s(A)) :-
rt17(A).