Most programming languages have certain phrases (like expressions) which only read information from the state and certain others (like commands) which write information to the state. These are called passive and active phrases respectively. Semantic models which make these distinctions have been hard to find. For instance, most semantic models have expression denotations that (temporarily) change the state. Common reasoning principles, such as the Hoare's assignment axiom, are not valid in such models. We define here a semantic model which captures the notions of "change", "absence of change" and "independent change" etc. This is done by extending the author's "linear logic model of state" with dependence/independence relations so that sequential traces give way to pomset traces. >
['Uday S. Reddy']
Passivity and independence