Previous
Up
Next
9.5 FD variable information
These predicate allow the user to get some information about FD variables.
They are not constraints, they only return the current state of a variable.
9.5.1 fd_min/2,
fd_max/2,
fd_size/2,
fd_dom/2
Templates
-
fd_min(+fd_variable, ?integer)
fd_max(+fd_variable, ?integer)
fd_size(+fd_variable, ?integer)
fd_dom(+fd_variable, ?integer_list)
Description
fd_min(X, N) succeeds if N is the minimal value of the
current domain of X.
fd_max(X, N) succeeds if N is the maximal value of the
current domain of X.
fd_size(X, N) succeeds if N is the number of elements of
the current domain of X.
fd_dom(X, Values) succeeds if Values is the list of
values of the current domain of X.
Errors
X is a variable instantiation_error
X is neither an FD variable nor an integer type_error(fd_variable, X)
N is neither a variable nor an integer type_error(integer, N)
an element E of the Vars list is neither a
variable nor an FD variable nor an integer type_error(fd_variable, E)
Values is neither a partial list nor a list type_error(list, Values)
Portability
GNU Prolog predicate.
9.5.2 fd_has_extra_cstr/1,
fd_has_vector/1,
fd_use_vector/1
Templates
-
fd_has_extra_cstr(+fd_variable)
fd_has_vector(+fd_variable)
fd_use_vector(+fd_variable)
Description
fd_has_extra_cstr(X) succeeds if the extra_cstr
of X is currently on (section 9.1).
fd_has_vector(X) succeeds if the current domain of X
uses a sparse representation (section 9.1).
fd_use_vector(X) enforces a sparse representation for the domain
of X (section 9.1).
Errors
X is a variable instantiation_error
X is neither an FD variable nor an integer type_error(fd_variable, X)
Portability
GNU Prolog predicates.
Copyright (C) 1999-2021 Daniel Diaz
Verbatim copying and distribution of this entire article is permitted in any
medium, provided this notice is preserved.
More about the copyright
Previous
Up
Next