Type Checking

The following predicates take a term as their argument. They are provided to check the type of that term. The reference pages for these predicates include examples of their use.

atom(+T)   ISO

term T is an atom

atomic(+T)   ISO

term T is an atom or a number

callable(+T)   ISO

T is an atom or a compound term

compound(+T)   ISO

T is a compound term

db_reference(+X)   since release 4.1

X is a db_reference

float(+N)   ISO

N is a floating-point number

ground(+T)   ISO

term T is a nonvar, and all substructures are nonvar

integer(+T)   ISO

term T is an integer


X is 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


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)

Send feedback on this subject.