not2(P) :- call(P), assert(bindings(P)), !, fail. not2(P).