Abstract
Many recent axiomatic definitions for structured programming languages include control predicates, at(S), in(S), and after(S), which are an abstraction of location counters. The usual axioms identify control locations so as to imply that "no time" (i.e., no state transition) is needed to pass from the end of one statement to the next, and in particular from the end of a loop body back to the test at the head of the loop. Here, an axiomatic framework for control predicates is examined. It is shown that if all the axioms are to be maintained with common representation mappings, there are difficult new requirements which need to be satisfied by an implementation for fair concurrent models of computation. Several approaches to resolving the difficulty are considered, and in particular it is suggested to replace some axioms of the form P⇒Q by P⇒eventually(Q), where P and Q are control predicates, thereby separating control states previously identified.
Original language | English |
---|---|
Pages (from-to) | 263-278 |
Number of pages | 16 |
Journal | International Journal of Parallel Programming |
Volume | 16 |
Issue number | 4 |
DOIs | |
State | Published - Aug 1987 |
Keywords
- axiomatic semantics
- concurrency
- control predicates (at, in, after)
- Fairness
ASJC Scopus subject areas
- Software
- Theoretical Computer Science
- Information Systems