% original version at http://www.csupomona.edu/~jrfisher/www/geolog/inf.gl :- op(1200,xfx,':='). :- op(1199,xfx,'=>'). :- dynamic(p/1). :- dynamic(q/1). :- dynamic(answer/1). flag(keywords). flag(quiet). flag(quick). [a1] := true => p(a). [a3] := p(f(a)) => answer(p(f(a))). [] := answer(_) => goal. [a2] := p(X) => p(f(X)) ; q(X). [a4] := q(X) => answer(q(X)).