Operational and Denotational Models for Languages
Supporting Nondeterminism and Synchronization


Table of Contents:

  1. Principal Investigator.
  2. Productivity Measures.
  3. Summary of Objectives and Approach.
  4. Detailed Summary of Technical Progress.
  5. Transitions and DOD Interactions.
  6. Software and Hardware Prototypes.
  7. List of Publications.
  8. Invited and Contributed Presentations.
  9. Honors, Prizes or Awards Received.
  10. Project personnel promotions obtained.
  11. Project Staff.
  12. Misc Hypermedia URL.
  13. Keywords.


Principal Investigator.


Productivity Measures.


Summary of Objectives and Approach.

  1. The objective of this research project is to clarify the process of building operational and related denotational models for languages supporting communication and synchronization. The goal is to derive results that show how operational models and related denotational models that are adequate and fully abstract with respect to the given operational model can be built up in straightforward, uniform ways. In addition, the goal of the project is to better understand the differences between the various forms of nondeterminism.

    The application focus of the work is the language CSP, originally crafted by members of the Programming Research Group at Oxford. The goal is to relate the operational and denotational models formed using the uniform methods we utilize to the models that have proved so successful for the PRG.

  2. The approach is to exploit techniques from domain theory and spectral theory to prove that operational and related denotational models can be built up in incremental stages. We also generalize domain-theoretic techniques to build models that support features beyond the power of domain theory. The known models for untimed CSP - the failures model and the failures-divergences model - are being analyzed from this viewpoint. Also, existing models for Timed CSP have led to a new theory of local cpo's that can provide denotational models for languages supporting unbounded nondeterminism
    and real-time constructs.


Detailed Summary of Technical Progress.

  1. Full abstraction and recursion. Languages supporting concurrency and synchronization have a BNF-style of production rules that typically look like

         P ::= STOP | SKIP | a -> P | P;P | P + P | P || P | x | rec x.P
    

    Here, STOP is the deadlocked process, and SKIP is the processes which immediately terminates normally. The process a -> P is first engages in the atomic action a, and then acts like the process P, P;Q is the sequential composition of P follows by Q, P + Q denotes the nondeterministic choice of P and Q, and P || Q is the synchronous parallel composition of P and Q. This particular format is styled on CSP, but it captures operations most such languages support; other operations (eg, asynchronous parallel composition) also can be added). It is important to notice that these languages are first order.

    Our research has focused on how to build operational models and related denotational models for languages such as the one given above so that the denotational model is adequate and fully abstract with respect to the given operational model.

    Of particular interest has been the question of how to enlarge models for fragments of a given language to ones for the full language, while retaining the relationships of adequacy and full abstraction. An obvious place to start is with the finitary sublanguage whose BNF-production rules are

    	P ::= STOP | SKIP | a -> P | P;P | P + P | P || P,

    and begin by crafting an operational model for this fragment, and a related denotational model for it that is adequate and fully abstract. The question then is how to "complete" these to models for the language extended to include identifiers and some form of recursion so that the resulting denotational model still is adequate and fully abstract with respect to the operational model for the extended language.

    In an earlier paper [MO93], it was shown that, under mild conditions on the operational and denotational models, it is possible to add unnested recursion to the finitary sublanguage. Unnested recursion allows one to solve systems of equations in the finitary language with process variables added; it is a limited form of recursion, but one that has been used extensively (cf. [RT94]).

    This year, we have extended this result by showing that full recursion can be added to the finitary sublanguage, again assuming some conditions on the models of the finitary sublanguage with which one begins. To be more precise, suppose that the finitary language has an operational model B : L -> O that is an ordered space, and a denotational model M : L -> D that is a domain all of whose compact elements are denotable by terms in the finitary sublanguage L. We than say that the denotational model is order adequate with respect to the denotational model if whenever M[P] is less than or equal to M[Q] in the denotational model, then B[P] is less than or equal to B[Q], in the operational model. Likewise, we say that the denotational model is order fully abstract with respect to the operational model if, whenever B[C[P]] is less than or equal to B[C[Q]] for all contexts C, then M[P} is less than or equal to M[Q], for all terms P, Q in the language under study. (These concepts generalize the usual notions of adequacy and full abstraction to the ordered setting.) We then show in [MO94] that an additional condition - strong order full abstraction - allows one to extend the ordered operational model and associated ordered denotational model to an ordered operational model and associated ordered denotational model for the full language of closed terms that also is order adequate and strongly order fully abstract with respect to the extended operational model.

    In essence, these results allow one to focus on the finitary sublanguage as the place for crafting operational and denotational models, and then "turn the crank" to extend these models to ones for the language with some form of recursion added, and to that retain the desired full abstraction relations.

    What remains to be investigated here is how these results can be applied to specific languages. As an example, we intend to exploit these results to shed further light on how to obtain the failures-divergences model for CSP from more "traditional" domain-theoretic models. We believe we can show how to construct fully abstract models for CSP using domain-theoretic techniques, and the failures-divergences model for CSP should be a quotient of the model we construct. We are interested in finding out if the process of factoring out the equivalence the failures-divergences model imposes on our model for CSP factors through the process of forming models for the finitary sublanguage and extending them to the language supporting recursion. If so, this would afford an alternative method for obtaining a full abstraction result for CSP .

  2. Unbounded Nondeterminism. Unbounded nondeterminism is an important phenomenon in specification and refinement. For example, referring to the language given in 1.) above, one might want to specify a process that can engage in any finite number of the action a, but that cannot engage in infinitely many a's. This requires modeling unbounded nondeterminism, a concept that has proven to be fundamental to supporting refinement between dialects of Timed and untimed CSP.

    We have previously reported on joint work with Roscoe and Schneider in which a theory of local cpo's was initiated. This work began in an effort to understand the common threads between existing models for unbounded nondeterminism in Timed and untimed CSP. The theory presented in that paper is a beginning, and we have since begun a fuller investigation of these objects and how they can be used to model other forms of unbounded nondeterminism. While the results we have to report currently are preliminary, they nonetheless show that some general results are available.

    For example, we can show that, in general, demonic nondeterminism - in which divergence is catastrophic - is the only one of the three common forms of nondeterminism that can be extended to support unbounded choice. The theory we derive relies on the fact that the finitely nondeterministic processes have a well-behaved model, and we use a generalization of spectral theory that guarantees that a needed dominated convergence theorem holds. This result shows that those closed recursive terms that can be refined to deterministic ones are guaranteed to have a well-defined meaning in the model, despite the fact that the model is not directed complete and the operations are not continuous. These are the same conditions that were at play in the earlier work on CSP.

  3. Miscellanea:

    Models of the untyped lambda calculus: We have extended the results about lambda models in the category K of Hausdorff k-spaces. One of the intriguing results about the untyped lambda calculus is that all known models are in the category of dcpo's and Scott continuous maps. Results also have been available that show that a number of the "obvious" Cartesian closed categories - Sets, Posets and Complete Ultrametric Spaces - cannot contain a nondegenerate model of the untyped lambda calculus. In the paper we have shown that no compact Hausdorff model of the untyped lambda calculus can be nondegenerate. More recently, we have extended this result to show that any Hausdorff k-space model X that is normal and contains a metric arc must be degenerate. While this is additional evidence that there are no nondegenerate models of the untyped lambda calculus in K, the question remains unsettled in general.

    As an alternative approach to the question, we are investigating the validity of the methods that are used to construct models of the untyped lambda calculus in DCPO. Indeed, K is complete and co-complete, and so one path to showing models cannot exist there would be through a better understanding of what goes awry with the constructions that were used to obtain them elsewhere. This hinges on understanding the nature of the related category KR of Hausdorff k-spaces and retraction mappings (this corresponds to categories of dcpo's and embedding - projection pairs of mappings), and of the continuity properties of the endofunctor that assigns to an object its family of continuous selfmaps. Results about the nature of limits in KR already show this endofunctor cannot be continuous: indeed, if it were, we could construct a model starting with any Hausdorff k-space - eg, with the unit interval, and the resulting model would have the beginning space as a retract. Now, any model has a continuous fixed point picker, and a retract of a model also must satisfy this property. But, as is noted in our proof about normal spaces containing a metric arc, the fixed point picker on the unit interval is not continuous.

    Linear FS-lattices: A selfmap f : L -> L on a complete lattice L is finitely separated from the identity if there is a finite subset M of L such that
    f(x) is less than or equal to m is less than or equal to x for some m in M, for each x in L. A complete lattice L is a linear FS-lattice if the identity map is the directed supremum of selfmaps each of which is finitely separated from the identity. Linear FS-lattices and linear (ie, sup-preserving) maps have recently been exploited (cf. [HJK94]) as models for game semantics and linear logic.

    In the technical report, we have characterized the linear FS-lattices in terms of their spaces of Scott continuous and sup-preserving selfmaps. We also have characterized those FS-lattices that are completely distributive in a similar fashion.

     

    References


    [HJK94] Huth, M., A. Jung and K. Keimel, Linear types, approximation and topology, in: Logic in Computer Science, 110-114, IEEE Computer Science Press, 1994.

    [RT94] Rutten, J. and D. Turi, Initial algebra and final co-algebra semantics for concurrency, CWI Technical Report CS-R9409 (January, 1994).


Transitions and DOD Interactions.


Software and Hardware Prototypes.


List of Publications.

  1. Mislove, M. W., Fixed points without completeness, Theoretical Computer Science, Volume 137, to appear (with A. W. Roscoe and S. A. Schneider). Abstract.
  2. Mislove, M. W., Adjunctions between categories of domains, Special Issue of Fundamenta Informaticae devoted to Category Theory and Computer Science, to appear (with F. J. Oles). Abstract.
  3. Mislove, M. W., All Compact Lambda Models are Degenerate, Special Issue of Fundamenta Informaticae devoted to Category Theory and Computer Science, to appear (with K. H. Hofmann). Abstract.
  4. Mislove, M. W., Full abstraction and recursion, submitted to the Proceedings of the Chartres Workshop on Topology and Completions in Semantics, Special Issue of Theoretical Computer Science (with F. J. Oles). Abstract.
  5. Mislove, M. W., A characterization of linear FS-lattices, Technische Hochschule Darmstadt Technical Report, 17pp. (with Michael Huth). Abstract.
  6. Mislove, M. W., editor, Proceedings of the Eighth Workshop on the Mathematical Foundations of Programming Semantics, Theoretical Computer Science , Volumes 135, 136, 137, to appear (with G. M. Reed, A. W. Roscoe and R. F. Wachter).
  7. Mislove, M. W., editor, Proceedings of the Ninth Conference on the Mathematical Foundations of Programming Semantics, Lecture Notes Computer Science Volume 802 (1994) (with S. Brookes, M. Main, A. Melton, and D. Schmidt).


Invited and Contributed Presentations.

  1. Domain-theoretic models of CSP, Fourth North American Jumelage, SRI International, Menlo Park, CA, Oct. 1993 (Invited Participant)
  2. Full abstraction and unnested recursion, Invited Lecture, Workshop on Semantics and Topology, Chartres, France, November, 1993.
  3. Full abstraction and recursion, Mini-workshop on Domain Theory and Semantics, Tulane University, March, 1994 (presentation by F. J. Oles).
  4. Full abstraction and recursion: applying the theory, Mini-workshop on Domain Theory and Semantics, Tulane University, March, 1994.
  5. Full abstraction and recursion, Tenth Workshop on the Mathematical Foundations of Programming Semantics, Kansas State University, March, 1994 (presentation by F. J. Oles).
  6. Full abstraction and recursion: applying the theory, Tenth Workshop on the Mathematical Foundations of Programming Semantics, Kansas State University, March, 1994.
  7. Models for unbounded nondeterminism, Workshop on Formalisms for Representing and Reasoning about Time, IEA/AIE-94, Austin, Texas, May, 1994, (Invited Submission).


Honors, Prizes or Awards Received.

  1. Honors:
    1. Named Editor, Theoretical Computer Science.
    2. Named to the Algebraic Methodology and Software Technology (AMAST) Steering Committee.
    3. Named Visiting Professor for one month during 1994 - 1995 at the Universite de Paris.

  2. Service to Profession:
    1. Co-chairman, Tenth Conference on the Mathematical Foundations of Programming Semantics, Kansas State University, Manhattan, March 20-23, 1994.
    2. Co-chairman, Conference on Semigroups and Their Applications Honoring A. H. Clifford, Tulane University, March 27-30, 1994.
    3. Co-organizer, Mini-workshop on Semantics and Topology, Tulane University, March, 1994.
    4. Co-chairman, Eleventh Conference on the Mathematical Foundations of Programming Semantics, Tulane University, New Orleans, March 29 - April 1, 1995.
    5. Program Committee Member, Eleventh Conference on the Mathematical Foundations of Programming Semantics, Tulane University, New Orleans, March 29 - April 1, 1995.


Project Personnel Promotions Obtained.


Project Staff.

  1. Principal Investigator: Professor Michael W. Mislove.


Misc Hypermedia.

  1. Professor Mislove's Home Page
  2. Information about Mathematical Foundations of Programming Semantics conference series.
  3. Tulane Archives of Home Pages and links to researchers in theoretical computer science.
  4. Information about the journal Semigroup Forum.


Keywords.

  1. Semantics of Nondeterminism.
  2. Concurrency and Synchronization.
  3. Domain theory.
  4. Non-well-founded Set Theory.