prove(true).
prove(Goal) :- 
    clause((Goal :- Body)),
    prove(Body).
prove((Body1, Body2)) :-
    prove(Body1),
    prove(Body2).
