
is_predicate(++PredSpec)

   Succeeds if PredSpec is a defined predicate.



Arguments
   PredSpec            Predicate of the form Atom/Integer.

Type
   Predicate Database and Compiler

Description
   Used to test whether PredSpec is defined as a user or a built-in
   predicate.




Modes and Determinism
   is_predicate(++) is semidet

Modules
   This predicate is sensitive to its module context (tool predicate, see @/2).

Fail Conditions
   Fails if PredSpec is not a valid predicate

Exceptions
     4 --- PredSpec is not fully instantiated.
     5 --- PredSpec is not in the format Atom/Integer.

Examples
   
Success:
[eclipse]: [user].
    a(1).
    a(1,2).
    a(1,2,3).
    user compiled 144 bytes in 0.00 seconds
   yes.
   [eclipse]: is_predicate(a/1).
   yes.
   [eclipse]: is_predicate(a/2).
   yes.
   [eclipse]: is_predicate(nl/0).
   yes.
   [eclipse]: is_predicate(a/2).
   yes.
Fail:
   is_predicate(a/0).         % Fails if a/0 is not a predicate
Error:
   is_predicate(X).          (Error 4).
   is_predicate(a/X).        (Error 4).
   is_predicate(a).          (Error 5).
   is_predicate(1).          (Error 5).





See Also
   get_flag / 3, pred / 1, current_predicate / 1, current_built_in / 1
