Next: , Previous: , Up: lib-clpfd   [Contents][Index]


10.9.3 Desiderata of Propagators

Certain properties of propagators are desirable:

Correct

A correct propagator never removes a domain value for which a satisfying assignment exists. This property is mandatory.

Checking

A checking propagator accepts all ground assignments that satisfy it and rejects all ground assignments that violate it. This property is also mandatory.

Contracting

A contracting propagator never adds any value to any domain. This property is also mandatory. In fact, it holds by construction.

Monotone

A propagator P is monotone if, for all domain stores S and T, if S is an extension of T, then P(S) is an extension of P(T). This property is not mandatory but helps understanding and debugging.

Idempotent

A propagator P is idempotent if, for all domain stores S, P(S) equals P(P(S)).


Send feedback on this subject.