TY - JOUR
T1 - Strong fairness and full abstraction for communicating processes
AU - Older, Susan
N1 - Funding Information:
Stephen Brookes coauthored a preliminary account of this work (Brookes and Older, 1995), and several discussions with him have greatly improved the formulation of these semantics. This research was sponsored in part by the office of Naval Research under Grant N00014-92-J-1298.
PY - 2000
Y1 - 2000
N2 - We construct several denotational semantics for communicating processes that incorporate assumptions of strong (process) fairness. Strong fairness is the guarantee that every process enabled infinitely often will make progress infinitely often. Modeling fairness compositionally requires care: generally speaking, the fair computations of a command cannot be defined only in terms of the fair computations of its component commands. For this reason, we introduce the notion of parameterized fairness, which generalizes fairness sufficiently to admit a compositional characterization. In each of these semantics, a command's meaning is simply the set of fair traces representing its fair computations; each fair trace records the steps made along a computation as well as additional information made explicit by the definition of parameterized fairness. Each semantics obtains full abstraction with respect to a natural notion of strongly fair program behavior: two terms are given identical meanings precisely when they exhibit the same behaviors in all program contexts.
AB - We construct several denotational semantics for communicating processes that incorporate assumptions of strong (process) fairness. Strong fairness is the guarantee that every process enabled infinitely often will make progress infinitely often. Modeling fairness compositionally requires care: generally speaking, the fair computations of a command cannot be defined only in terms of the fair computations of its component commands. For this reason, we introduce the notion of parameterized fairness, which generalizes fairness sufficiently to admit a compositional characterization. In each of these semantics, a command's meaning is simply the set of fair traces representing its fair computations; each fair trace records the steps made along a computation as well as additional information made explicit by the definition of parameterized fairness. Each semantics obtains full abstraction with respect to a natural notion of strongly fair program behavior: two terms are given identical meanings precisely when they exhibit the same behaviors in all program contexts.
UR - http://www.scopus.com/inward/record.url?scp=0034672931&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=0034672931&partnerID=8YFLogxK
U2 - 10.1006/inco.2000.2886
DO - 10.1006/inco.2000.2886
M3 - Article
AN - SCOPUS:0034672931
SN - 0890-5401
VL - 163
SP - 471
EP - 509
JO - Information and Computation
JF - Information and Computation
IS - 2
ER -