[ Control | Reference Manual | Alphabetic Index ]
not +Goal
Succeeds if Goal cannot be satisfied (uses negation as failure).
- Goal
- Atom or compound term.
Description
   Used to fail if Goal succeeds.  Uses the standard Prolog form of
   negation as failure.
   To check whether a call Goal succeeds without binding variables, the
   call not not Goal can be used.  Note that !/0 does not cut through
   not/1.
Modes and Determinism
Modules
This predicate is sensitive to its module context (tool predicate, see @/2).
Fail Conditions
Fails if Goal succeeds
Examples
Success:
      not fail .
      not 1 == 2 .
      not X==1 .
      not not X = 1.
          % does not bind X
Fail:
      not(X=1).
      not(true).
      not(3 == 3).
See Also
\+ / 1, ~ / 1, -> / 2