Next: Semantics without Global Up: Semantics Previous: Semantics

Global Choice Semantics

Semantics is defined as in 3.2.4. On one hand, things are simpler this time around because there is no correlation among individual choices. On the other hand, there is a complication related to attempts to choose an element of the empty set. Such attempt cannot succeed and the execution should be aborted. To deal with this complication, we extend the collection of updates of any state by an ideal element undef that symbolizes inconsistency. If an update set beta contains undef then firing beta does not change the state; we call such beta contradictory.

Suppose that a state S is appropriate for a rule R and R is S -perspicuous. Let V be the collection of bound variables of R such that the range of v is not empty in state S . Fix a function xi on V such that, for each v in V, xi(v) belongs to the range of v in S . By induction on subrule R' of R define Updates(R', S', xi) where S' is an expansion of S appropriate for R' and R' is S'-perspicuous.

The cases of update instructions, sequence rules and conditional rule are treated as above. Notice that if R' is a sequence of rules and some Updates(, S', xi) is contradictory then Updates(R', S', xi) is so.

Suppose that R' is a choose rule with main existential variable v and body R0 . If the range of v is empty then Updates(R', S', xi) = undef. Otherwise let a = xi(v) and S'_a be the expansion of S' to the auxiliary vocabulary Upsilon'' union {v} where v is interpreted as a . Set Updates(R', S', xi) = Updates(R0, S'_a, xi).

Finally, NUpdates(R, S) is the set of Updates(R, S, xi) where xi takes all possible values.


huggins@acm.org
Thu Mar 23 17:30:35 EST 1995