[ library(conjunto) | Reference Manual | Alphabetic Index ]

set_range(?Svar, ?Glb, ?Lub)

Svar is a set domain variable and Glb and Lub are the respective lower bound and upper bound of its domain.
?Svar
A set domain variable.
?Glb
A free variable or a ground set.
?Lub
A free variable or a ground set.

Description

This predicate computes the lower bound Glb and the upper bound Lub of the domain attached to the set variable Svar. If Glb and/or Lub are ground, they should be equal to the respective bounds of the domain, otherwise it fails.

Fail Conditions

Fails if Svar is not a set domain variable or if one of the terms glb, Lub, can not be unified with the respective bounds of the domain of Svar.

Resatisfiable

No.

Exceptions

(4) instantiation fault
Var is not a domain variable.

Examples

[eclipse 7]: S `:: {} .. {1,2,3}, set_range(S, Glb, Lub).

S = S{{} .. {1, 2, 3}}
Glb = {}
Lub = {1, 2, 3}
yes.



See Also

`:: / 2, glb / 2, lub / 2