[ The ECLiPSe Libraries | Reference Manual | Alphabetic Index ]library(fd)
Finite domain library
Predicates
- #(?Min, ?Cstrs, ?Max)
- The cardinality operator
- ?X ## ?Y
- X is different from Y.
- ##(?X, ?Y, ?B)
- The constraint X ## Y has the truth value B.
- ?C1 #/\ ?C2
- The constraint expression C1 and the constraint expression C2 is true.
- #/\(?X, ?Y, ?B)
- The constraint X #/\ Y has the truth value B.
- ?Vars #:: ?Domain
- Terms in Vars have the domain Domain. The predicate is an alias for ::/2.
- #::(?X, ?Y, ?B)
- The constraint X #:: Y has the truth value B. The predicate is an alias for ::/3.
- ?X #< ?Y
- The linear term X is less than the linear term Y.
- #<(?X, ?Y, ?B)
- The constraint X #< Y has the truth value B.
- ?X #<= ?Y
- The linear term X is less than or equal to the linear term Y.
- #<=(?X, ?Y, ?B)
- The constraint X #<= Y has the truth value B.
- ?C1 #<=> ?C2
- The constraint expression C1 is equivalent to the constraint expression C2.
- #<=>(?X, ?Y, ?B)
- The constraint X #<=> Y has the truth value B.
- ?X #= ?Y
- X is equal to Y.
- #=(?X, ?Y, ?B)
- The constraint X #= Y has the truth value B.
- ?C1 #=> ?C2
- The constraint expression C1 implies the constraint expression C2.
- #=>(?X, ?Y, ?B)
- The constraint X #=> Y has the truth value B.
- ?X #> ?Y
- The linear term X is greater than the linear term Y.
- #>(?X, ?Y, ?B)
- The constraint X #> Y has the truth value B.
- ?X #>= ?Y
- The linear term X is greater than or equal to the linear term Y.
- #>=(?X, ?Y, ?B)
- The constraint X #>= Y has the truth value B.
- #\+ ?C
- The constraint expression C is false.
- #\+(?X, ?B)
- The constraint #\+ X has the truth value B.
- ?C1 #\/ ?C2
- The constraint expression C1 or the constraint expression C2 is true.
- #\/(?X, ?Y, ?B)
- The constraint X #\/ Y has the truth value B.
- ?X #\= ?Y
- X is different from Y.
- #\=(?X, ?Y, ?B)
- The constraint X #\= Y has the truth value B.
- ?Vars :: ?Domain
- Terms in Vars have the domain Domain.
- ::(?X, ?Y, ?B)
- The constraint X :: Y has the truth value B.
- alldifferent(?List)
- The elements of the list List are pairwise different.
- alldistinct(?List)
- The elements of the list List are pairwise different.
- atmost(+N, ?List, +V)
- At most N elements of the list List have the value V.
- constraints_number(?Var, ?N)
- The number of constraints and suspended goals associated with the variable
Var is N.
- contigs(+List, +Item, ?MaxLength, ?Occurrences, ?Contigs)
- MaxLength is the longest sequence of Item occurring in List, Occurrences is
the total number of occurrences of Item in List and Contigs is the number
of sequences of Item in List.
- default_domain(-Var)
- This predicate is called to assign a default domain to a free variable Var
which occurs in arithmetic constraints.
- deleteff(?Var, +List, -Rest)
- Select from List the variable Var which has the smallest domain and return
the rest of the list.
- deleteffc(?Var, +List, -Rest)
- Select from List the variable Var which has the smallest domain and most
constraints and return the rest of the list.
- deletemin(?Var, +List, -Rest)
- Select from List the variable Var which has the smallest lower domain bound,
and return the rest of the list.
- disjunction(?Start1, +Duration1, ?Start2, +Duration2, ?Flag)
- Flag indicates which of the two non-overlapping tasks is scheduled as
first. Either the one with starting time Start1 and duration Duration1
(then the value of Flag is 1), or the second one with starting time Start2
and duration Duration2 (and the Flag is 2).
- disjunction_choose(?Start1, +Duration1, ?Start2, +Duration2, ?Flag)
- Flag indicates which of the two non-overlapping tasks is scheduled as
first. Either the one with starting time Start1 and duration Duration1
(then the value of Flag is 1), or the second one with starting time Start2
and duration Duration2 (and the Flag is 2).
- disjunctive(?Starts, +Durations, ?Flags)
- Succeeds if there exists a sequential ordering of non-overlapping tasks
with starting times Starts and durations Durations, with respect to the
ordering priorities of single pairs of tasks (elementary disjunctions)
represented in the list Flags.
- dom(+Var, ?List)
- List is the list of elements in the domain of Var.
- dom_check_in(+Element, +Dom)
- Element is in the domain Dom.
- dom_compare(?Res, +Dom1, +Dom2)
- Res is the result of the comparison of the domains Dom1 and Dom2.
- dom_copy(+Dom1, -Dom2)
- Dom2 is a copy of the domain Dom1.
- dom_difference(+Dom1, +Dom2, -DomDiff, -Size)
- The domain DomDifference is Dom1 \Dom2 and Size is the number of its
elements.
- dom_intersection(+Dom1, +Dom2, -DomInt, -Size)
- The domain DomInt is the intersection of domains Dom1 and Dom2 and Size is
the number of its elements.
- dom_member(?Element, +Dom)
- Element is in the domain Dom.
- dom_range(+Dom, ?Min, ?Max)
- Return the minimum and maximum value in the integer domain Dom.
- dom_size(+Dom, ?Size)
- Size is the number of elements in the domain Dom.
- dom_to_list(+Dom, ?List)
- List is the list of elements in the domain Dom.
- dom_union(+Dom1, +Dom2, -DomUnion, -Size)
- The domain DomUnion is the union of domains Dom1 and Dom2 and Size is the
number of its elements.
- dvar_attribute(+DVar, ?Attrib)
- Attrib is the attribute of the domain variable DVar.
- dvar_domain(+DVar, -Dom)
- Dom is the domain of the domain variable DVar.
- dvar_msg(+DVar1, +DVar2, -MsgDVar)
- MsgDVar is a domain variable which is the most specific generalisation of
domain variables or atomic values DVar1 and DVar2.
- dvar_range(+DVar, ?Min, ?Max)
- Return the minimum and maximum domain value of DVar
- dvar_remove_element(+DVar, +El)
- The element El is removed from the domain of DVar and all concerned lists
are woken.
- dvar_remove_greater(+DVar, +El)
- Remove all elements in the domain of DVar which are greater than the
integer El and wake all concerned lists.
- dvar_remove_smaller(+DVar, +El)
- Remove all elements in the domain of DVar which are smaller than the
integer El and wake all concerned lists.
- dvar_replace(+DVar, +NewDom)
- Change the domain of the domain variable DVar to NewDom without propagating
the changes.
- dvar_update(+DVar, +NewDom)
- Change the domain of the domain variable DVar to NewDom and propagate the
changes.
- element(?Index, +List, ?Value)
- Value is the Index'th element of the integer list List.
- fd_eval(?C)
- Evaluate and state the constraint expression C.
- indomain(?Var)
- Instantiate Var to a value in its domain.
- integer_list_to_dom(+List, -Dom)
- Convert a sorted list of integers and integer intervals into a domain Dom.
- integers(+Vars)
- Constrains Vars to be integers.
- is_domain(?Term)
- Succeeds if Term is a domain variable.
- is_integer_domain(?Term)
- Succeeds if Term is a domain variable with an integer domain.
- ?B isd ?C
- The constraint expression C evaluates to the boolean value B.
- labeling(+Vars)
- Instantiate all variables in a list to values in their domain
- list_to_dom(+List, -Dom)
- Convert a list of atomic terms and integer intervals into a domain Dom.
- maxdomain(+Var, ?Max)
- Max is the maximum element in the domain of Var.
- min_max(?Goal, ?C)
- Find the solution of Goal that minimizes the maximum of elements of C.
- min_max(+Goal, ?Template, ?Solution, ?C)
- Find the solution of Goal that minimizes the maximum of elements of C,
and unify the minimized Template with Solution.
- min_max(?Goal, ?C, +Lower, +Upper, +Percent)
- Find the solution of Goal that minimizes the maximum of elements of C,
within the bounds set by Lower,Upper and Percent.
- min_max(?Goal, ?C, +Lower, +Upper, +Percent, +Timeout)
- Find the solution of Goal that minimizes the maximum of elements of C,
within the bounds set by Lower,Upper and Percent in time not longer than
Timeout.
- min_max(+Goal, ?Template, ?Solution, ?C, +Lower, +Upper, +Percent, +Timeout)
- Find the solution of Goal that minimizes the maximum of elements of C,
within the bounds set by Lower,Upper and Percent in time not longer than
Timeout.
- mindomain(+Var, ?Min)
- Min is the minimum element in the domain of Var.
- minimize(?Goal, ?C)
- Find the solution of Goal that minimizes C.
- minimize(+Goal, ?Template, ?Solution, ?C)
- Find the solution of Goal that minimizes C,
and unify the minimized Template with Solution.
- minimize(?Goal, ?C, +Lower, +Upper, +Percent)
- Find the solution of Goal that minimizes C, within the bounds set by Lower,
Upper and Percent.
- minimize(?Goal, ?C, +Lower, +Upper, +Percent, +Timeout)
- Find the solution of Goal that minimizes C, within the bounds set by Lower,
Upper and Percent in time not longer than Timeout.
- minimize(+Goal, ?Template, ?Solution, ?C, +Lower, +Upper, +Percent, +Timeout)
- Find the solution of Goal that minimizes the maximum of elements of C,
within the bounds set by Lower,Upper and Percent in time not longer than
Timeout.
- minimize_bound_check
- If within a minimization, force a check of the cost variable against
the cost bound, which may lead to earlier failure.
- new_domain_var(-Var)
- A user hook predicate which is called whenever a variable obtains a default
domain from the solver.
- par_indomain(?Var)
- Instantiate Var to a number of values in its domain in parallel.
- sequence(+List, +Item, ?MaxLength, ?Occurrences)
- MaxLength is the longest sequence of Item occurring in List and Occurrences
is the total number of occurrences of Item in List.
- sorted_list_to_dom(+List, -Dom)
- Convert a sorted list of atomic terms and integer intervals into a domain
Dom.
- tr_fd_out(?, ?)
- No description available
- var_fd(+Var, +Dom)
- Create a domain variable with a given domain.
Reexports
- reexport fd_arith
- except fd_eq / 1, fd_eq / 2, fd_ge / 1, fd_ge / 2, fd_gec / 5, fd_gec_ent / 6, fd_ineq / 1, fd_ineq / 2, fd_qeq / 3, fd_re / 2, fd_dom_simple / 2, fd_dom_simple / 3
- reexport fd_chip
- reexport fd_elipsys
- reexport fd_util
Other Exports
- export macro(element / 5, fd : tr_fd_out / 2, [write, goal])
About
- Author: Micha Meier, ECRC Munich
- Copyright © Imperial College London and ICL
- Date: $Date
Generated from fd.eci on Sat Aug 7 01:44:28 2004