Next: CLPFD Coexisting, Previous: Defining Global Constraints, Up: lib-clpfd [Contents][Index]
Indexicals are a simple means of defining a constraint over a fixed number of integer arguments. The key idea is to associate each argument with a domain expression term that mentions the other arguments. Whenever the constraint wakes up, that term is evaluated in the context of the current store, and the the resulting set of integers is intersected with the argument’s current domain.
It is usually not necessary to resort to this level of programming—most commonly used constraints are available in a library and/or via macro-expansion. However, indexicals give the programmer some degree of choice of the consistency level. Indexicals also support reification—in addition to indexicals for pruning, indexicals for entailment checking can be formulated.
• Indexicals | ||
• Domain Expressions | ||
• Term Expressions | ||
• Indexical Constraints | ||
• Compiled Indexicals |