%ID: $Id$
%Author: Jia Meng, NICTA
%untyped combinator reduction (no S)
clause(
forall([P, Q],
or( equal(hAPP(hAPP(c_COMBK,P),Q),P))),
a1 ).
clause(
forall([P],
or( equal(hAPP(c_COMBI,P),P))),
a3 ).
clause(
forall([P, Q, R],
or( equal(hAPP(hAPP(hAPP(c_COMBB,P),Q),R),hAPP(P,hAPP(Q,R))))),
a4 ).
clause(
forall([P, Q, R],
or( equal(hAPP(hAPP(hAPP(c_COMBC,P),Q),R),hAPP(hAPP(P,R),Q)))),
a5 ).
clause(
forall([X, Y],
or( not(hBOOL(hAPP(hAPP(fequal,X),Y))),
equal(X,Y))),
a6 ).
clause(
forall([X, Y],
or( not(equal(X,Y)),
hBOOL(hAPP(hAPP(fequal,X),Y)))),
a7 ).