Did you know ... Search Documentation:
Pack arithmetic_types -- prolog/type_bool.pl
PublicShow source

This module implements a set of functions on booleans which can be used in standard arithmetic expressions. A boolean value can either be a 0 (representing false) or 1 (representing true). The only exported predicate is the type check bool/1, in addition to the operator definitions for and, or, and not. For the most part the other boolean functions support reification of numeric and atomic term comparisons.

The set of boolean arithmetic functions defined by this module include:

:- arithmetic_function(and/2).        % boolean and
:- arithmetic_function(or/2).         % boolean or
:- arithmetic_function(not/1).        % boolean not
:- arithmetic_function(== /2).        % atomic equivalence
:- arithmetic_function(\== /2).       % atomic non-equivalence
:- arithmetic_function(< /2).         % atomic less than
:- arithmetic_function(=< /2).        % atomic less than or equal
:- arithmetic_function(>= /2).        % atomic greater than or equal
:- arithmetic_function(> /2).         % atomic greater than
:- arithmetic_function(between/3).    % atomic between

See the ReadMe for this pack for more documentation and examples.

 bool(?X:boolean) is semidet
Succeeds if X is a boolean value (0 or 1 for false or true respectively) ; otherwise fails.