+/0¶
+* 0:P is iso, meta Negation by failure.
Goal P is not provable. The execution of this predicate fails if and only if the goal P finitely succeeds. It is not a true logical negation, which is impossible in standard Prolog, but "negation-by-failure".
This predicate might be defined as:
\+(P) :- P, !, fail.
\+(_).
if P did not include "cuts".
If P includes cuts, the cuts are defined to be scoped by P: they cannot cut over the calling prredicate.
go(P).
:- \+ P, !, fail.
\+(_).