Next: Monotonicity of Ranges, Previous: Range Expressions, Up: Defining Primitive Constraints [Contents][Index]

A term expression has one of the following forms, where `T1` and
`T2` denote term expressions, `X` denotes a variable, `I`
denotes an integer, and `S` denotes the current store.

`min(`

`X`)evaluates to the minimum of

`D(X,S)``max(`

`X`)evaluates to the maximum of

`D(X,S)``card(`

`X`)evaluates to the size of

`D(X,S)``X`evaluates to the integer value of

`X`. The indexical will suspend until`X`is assigned.`I`an integer

`inf`

minus infinity

`sup`

plus infinity

`-`

`T1`evaluates to

`S(T1)`negated`T1`+`T2`evaluates to the sum of

`S(T1)`and`S(T2)``T1`-`T2`evaluates to the difference of

`S(T1)`and`S(T2)``T1`*`T2`evaluates to the product of

`S(T1)`and`S(T2)`, where`S(T2)`must not be negative`T1`/>`T2`evaluates to the floored quotient of

`S(T1)`and`S(T2)`, where`S(T2)`must be positive`T1`/<`T2`evaluates to the ceilinged quotient of

`S(T1)`and`S(T2)`, where`S(T2)`must be positive`T1`mod`T2`evaluates to the floored remainder of

`S(T1)`and`S(T2)``T1`rem`T2`evaluates to the truncated remainder of

`S(T1)`and`S(T2)`

Send feedback on this subject.