Rewriting with a Nondeterministic Choice Operator

Abstract The priveleged field of classical algebra and term-rewriting systems is that of strictly deterministic systems: the confluence property is generally assumed to hold, which implies determinism for the result of the computations, even if there exist several different computation paths. In this paper, we introduce a bounded nondeterministic choice operator “∪” into algebraic specifications and related term-rewriting systems. The operator “∪”, which constructs sets of values , satisfies AC (associative-commutative) properties, which allows to apply results about equational rewriting. Attention is then mainly restricted to so-called regular systems, where nondeterministic choice is constraint-free. Several examples are considered, including a toy concurrent language, for which nontrivial properties may be automatically proved.

[1]  Axel Poigné On effective computations of nondeterministic schemes , 1982, Symposium on Programming.

[2]  Robert S. Boyer,et al.  Computational Logic , 1990, ESPRIT Basic Research Series.

[3]  Hantao Zhang,et al.  Contextual Rewriting , 1985, RTA.

[4]  Gérard P. Huet,et al.  Proofs by Induction in Equational Theories with Constructors , 1980, FOCS.

[5]  Laurent Fribourg,et al.  A Narrowing Procedure for Theories with Constructors , 1984, CADE.

[6]  Matthew Hennessy,et al.  Powerdomains and nondeterministic recursive definitions , 1982, Symposium on Programming.

[7]  Robin Milner,et al.  A Calculus of Communicating Systems , 1980, Lecture Notes in Computer Science.

[8]  Hélène Kirchner,et al.  Completion of a set of rules modulo a set of equations , 1984, SIAM J. Comput..

[9]  David R. Musser,et al.  On proving inductive properties of abstract data types , 1980, POPL '80.

[10]  Stéphane Kaplan,et al.  Rewriting with a Nondeterministic Choice Operator: From Algebra to Proofs , 1986, ESOP.

[11]  Manfred Broy On the Herbrand Kleene Universe for Nondeterministic Computations , 1984, MFCS.

[12]  C. A. R. Hoare,et al.  Communicating Sequential Processes (Reprint) , 1983, Commun. ACM.

[13]  Jean-Pierre Jouannaud,et al.  Automatic Proofs by Induction in Theories without Constructors , 1989, Inf. Comput..

[14]  Hélène Kirchner,et al.  Completion of a Set of Rules Modulo a Set of Equations , 1986, SIAM J. Comput..

[15]  Claude Kirchner,et al.  A New Equational Unification Method: A Generalization of Martelli-Montanari's Algorithm , 1984, CADE.

[16]  J. A. Goguen,et al.  Completeness of many-sorted equational logic , 1981, SIGP.

[17]  G. Huet,et al.  Equations and rewrite rules: a survey , 1980 .

[18]  Nissim Francez,et al.  Fairness in term rewriting systems , 1994, Methods Log. Comput. Sci..

[19]  Gérard P. Huet,et al.  Proofs by induction in equational theories with constructors , 1980, 21st Annual Symposium on Foundations of Computer Science (sfcs 1980).

[20]  Joseph A. Goguen,et al.  How to Prove Algebraic Inductive Hypotheses Without Induction , 1980, CADE.

[21]  Jan A. Bergstra,et al.  Algebra of Communicating Processes with Abstraction , 1985, Theor. Comput. Sci..

[22]  Gerard Huet,et al.  Conflunt reductions: Abstract properties and applications to term rewriting systems , 1977, 18th Annual Symposium on Foundations of Computer Science (sfcs 1977).

[23]  Nachum Dershowitz Orderings for Term-Rewriting Systems , 1979, FOCS.

[24]  D. Knuth,et al.  Simple Word Problems in Universal Algebras , 1983 .

[25]  Mark E. Stickel,et al.  Complete Sets of Reductions for Some Equational Theories , 1981, JACM.

[26]  Krzysztof R. Apt,et al.  Ten Years of Hoare's Logic: A Survey—Part I , 1981, TOPL.

[27]  Jan Willem Klop,et al.  Algebra of communicating processes : part II , 1984 .

[28]  David Detlefs,et al.  A Procedure for Automatically Proving the Termination of a Set of Rewrite Rules , 1985, RTA.

[29]  Krzysztof R. Apt,et al.  Ten Years of Hoare's Logic: A Survey Part II: Nondeterminism , 1984, Theor. Comput. Sci..

[30]  Manfred Broy,et al.  On the Algebraic Specification of Nondeterministic Programming Languages , 1981, CAAP.