4.8.10 Summary of Predicates

atom(+T) ISO
term T is an atom
atomic(+T) ISO
term T is an atom or a number
callable(+T)
T is an atom or a compound term
compound(+T) ISO
T is a compound term
float(+N) ISO
N is a floating-point number
ground(+T)
term T is a nonvar, and all substructures are nonvar
integer(+T) ISO
term T is an integer
mutable(+X)
X is currently instantiated to a mutable term.
nonvar(+T) ISO
term T is one of atom, number, compound (that is, T is instantiated)
number(+N) ISO
N is an integer or a float
simple(+T)
T is not a compound term; it is either atomic or a var
var(+T) ISO
term T is a variable (that is, T is uninstantiated)

compare(-C,+X,+Y) meta-predicate
C is the result of comparing terms X and Y
+X == +Y ISO
terms X and Y are strictly identical
+X \== +Y ISO
terms X and Y are not strictly identical
+X @< +Y ISO
term X precedes term Y in standard order for terms
+X @>= +Y ISO
term X follows or is identical to term Y in standard order for terms
+X @> +Y ISO
term X follows term Y in standard order for terms
+X @=< +Y ISO
term X precedes or is identical to term Y in standard order for terms

?T =.. ?L ISO
the functor and arguments of term T comprise the list L
?X = ?Y ISO
terms X and Y are unified
+X \= +Y ISO
terms X and Y no not unify
?=(+X,+Y)
X and Y are either strictly identical or do not unify
arg(+N,+T,-A) ISO
the Nth argument of term T is A
atom_chars(?A,?L) ISO
A is the atom containing the character atoms in list L
atom_codes(?A,?L) ISO
A is the atom containing the characters in code-list L
atom_concat(?Atom1,?Atom2,?Atom12) ISO
Atom Atom1 concatenated with Atom2 gives Atom12.
atom_length(+Atom,-Length) ISO
Length is the number of characters of the atom Atom.
char_code(?Char,?Code) ISO
Code is the character code of the one-char atom Char.
copy_term(+T,-C) ISO
C is a copy of T in which all variables have been replaced by new variables
copy_term(+T,-C,-G)
C is a copy of T in which all variables have been replaced by new variables, and G is a goal for reinstating any attributes in C
create_mutable(+Datum,-Mutable)
Mutable is a new mutable term with current value Datum.
dif(+X,+Y)
X and Y are constrained to be different.
frozen(+Var,-Goal)
The goal Goal is blocked on the variable Var.
functor(?T,?F,?N) ISO
the principal functor of term T has name F and arity N
get_mutable(-Datum,+Mutable)
The current value of the mutable term Mutable is Datum.
name(?A,?L)
the code-list of atom or number A is L
number_chars(?N,?L) ISO
N is the numeric representation of list of character atoms L
number_codes(?N,?L) ISO
N is the numeric representation of code-list L
numbervars(+T,+M,-N)
number the variables in term T from M to N-1
sub_atom(+Atom,?Before,?Length,?After,?SubAtom) ISO
The characters of SubAtom form a sublist of the characters of Atom, such that the number of characters preceding SubAtom is Before, the number of characters after SubAtom is After, and the length of SubAtom is Length.
unify_with_occurs_check(?X, ?Y) ISO
True if X and Y unify to a finite (acyclic) term.

?T =.. ?L ISO
the functor and arguments of term T comprise the list L
append(?A,?B,?C)
the list C is the concatenation of lists A and B
keysort(+L,-S)
the list L sorted by key yields S
length(?L,?N)
the length of list L is N
member(?X,?L)
X is a member of L
memberchk(+X,+L)
X is a member of L
nonmember(+X,+L)
X is not a member of L
sort(+L,-S)
sorting the list L into order yields S

Send feedback on this subject.