[ library(ic_symbolic) | Reference Manual | Alphabetic Index ]
symbol_domain_index(?X, -Domain, -Index)
Map a symbolic domain variable/value to integer variable/value
- X
- domain variable or value
- Domain
- Variable, will be bound to a pair Module:DomainName
- Index
- Variable, will be bound to integer or integer variable
Description
Low-level primitive:
For a domain variable or domain value, return the corresponding
domain name and an integer or integer variable reflecting the
corresponding integer index within the domain order.
Modules
This predicate is sensitive to its module context (tool predicate, see @/2).
Fail Conditions
X is neither a symbolic domain variable nor a domain constant
Examples
?- symbol_domain_index(we, D, I).
D = eclipse:weekday
I = 3
Yes (0.00s cpu)
?- X &:: weekday, X &\= we, symbol_domain_index(X, D, I).
X = X{[mo, tu, th, fr, sa, su]}
D = eclipse:weekday
I = I{[1, 2, 4 .. 7]}
Yes (0.00s cpu)
See Also
symbols_domain_indices / 3, &:: / 2, domain / 1, domain_index / 3