Equivalences and Transformations of Regular Systems-Applications to Recursive Program Schemes and Grammars

Abstract This work presents a unified theory of recursive program schemes, context-free grammars, grammars on arbitrary algebraic structures and, in fact, recursive definitions of all kind by means of regular systems. The equivalences of regular systems associated with either all their solutions or their least solutions (in all domains of appropriate type satisfying a set of algebraic laws expressed by equations) are systematically investigated and characterized (in some cases) in terms of system transformations by folding, unfolding and rewriting according to the equational algebraic laws. Grammars are better characterized in terms of polynomial systems which are regular systems involving the operation of set union, and the same questions are raised for them. We also examine conditions insuring the uniqueness of the solution of a regular or of a polynomial system. This theory applies to grammars of many kinds which generate trees, graphs, etc. We formulate some classical transformations of context-free grammars in terms of correct transformations which only use folding, unfolding and algebraic laws and we immediately obtain their correctness.

[1]  Marcel Paul Schützenberger,et al.  On Context-Free Languages and Push-Down Automata , 1963, Inf. Control..

[2]  Joseph A. Goguen,et al.  Initial Algebra Semantics and Continuous Algebras , 1977, J. ACM.

[3]  John McCarthy,et al.  A basis for a mathematical theory of computation, preliminary report , 1899, IRE-AIEE-ACM '61 (Western).

[4]  J. W. de Bakker,et al.  Least fixed points revisited , 1975, Lambda-Calculus and Computer Science Theory.

[5]  N. D. Gautam The validity of equations of complex algebras , 1957, Arch. Math. Log..

[6]  Bruno Courcelle,et al.  Attribute Grammars and Recursive Program Schemes II , 1982, Theor. Comput. Sci..

[7]  Ronald V. Book The Undecidability of a Word Problem: On a Conjecture of Strong, Maggiolo-Schettini and Rosen , 1981, Inf. Process. Lett..

[8]  Liz Sonenberg,et al.  Fixed Point Theorems and Semantics: A Folk Tale , 1982, Inf. Process. Lett..

[9]  Bruno Courcelle,et al.  Arbes infinis et systèmes d'équations , 1979, RAIRO Theor. Informatics Appl..

[10]  HuetGérard Confluent Reductions: Abstract Properties and Applications to Term Rewriting Systems , 1980 .

[11]  Werner Damm,et al.  The IO- and OI-Hierarchies , 1982, Theor. Comput. Sci..

[12]  Bruno Courcelle,et al.  Completeness Results for the Equivalence of Recursive Schemas , 1976, J. Comput. Syst. Sci..

[13]  J. Engelfriet,et al.  IO and OI , 1975 .

[14]  Bruno Courcelle,et al.  On Some Classes of Interpretations , 1978, J. Comput. Syst. Sci..

[15]  Bruno Courcelle,et al.  Completions of ordered magmas , 1980, Fundam. Informaticae.

[16]  L Kott,et al.  Unfold/fold program transformations , 1986 .

[17]  V. G. Bodnarchuk,et al.  The metrical space of events. II , 1965, CYBERNETICS.

[18]  Stephen L. Bloom,et al.  Solutions of the Iteration Equation and Extensions of the Scalar Iteration Operation , 1980, SIAM J. Comput..

[19]  Pierre Lescanne Modèles non Déterministes de Types Abstraits , 1982, RAIRO Theor. Informatics Appl..

[20]  J. Mycielski,et al.  A compactification of the algebra of terms , 1976 .

[21]  Michael A. Arbib,et al.  An Introduction to Formal Language Theory , 1988, Texts and Monographs in Computer Science.

[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]  Seymour Ginsburg,et al.  Two Families of Languages Related to ALGOL , 1962, JACM.

[24]  James W. Thatcher,et al.  A Uniform Approach to Inductive Posets and Inductive Closure , 1977, MFCS.

[25]  Bruno Courcelle,et al.  Fundamental Properties of Infinite Trees , 1983, Theor. Comput. Sci..

[26]  Irène Guessarian,et al.  Algebraic semantics , 1981, Lecture Notes in Computer Science.

[27]  Joost Engelfriet,et al.  IO and OI. I , 1977, J. Comput. Syst. Sci..

[28]  Werner Damm,et al.  Higher Type Recursion and Self-Application as Control Structures , 1977, Formal Description of Programming Concepts.

[29]  Jesse B. Wright,et al.  Automata in General Algebras , 1967, Inf. Control..

[30]  Jesse B. Wright,et al.  Algebraic Automata and Context-Free Sets , 1967, Inf. Control..

[31]  Bruno Courcelle,et al.  A Representation of Trees by Languages I , 1978, Theor. Comput. Sci..

[32]  Maurice Nivat,et al.  The metric space of infinite trees. Algebraic and topological properties , 1980, Fundam. Informaticae.

[33]  A. Shafaat On varieties closed under the construction of power algebras , 1974, Bulletin of the Australian Mathematical Society.

[34]  Jean H. Gallier,et al.  Nondeterministic Flowchart Programs with Recursive Procedures: Semantics and Correctness II , 1981, Theor. Comput. Sci..

[35]  Jean H. Gallier,et al.  Recursion-Closed Algebraic Theories , 1981, J. Comput. Syst. Sci..

[36]  J. W. de Bakker Least Fixed Points Revisited , 1976, Theor. Comput. Sci..

[37]  John Darlington,et al.  A Transformation System for Developing Recursive Programs , 1977, J. ACM.

[38]  Guy Cousineau,et al.  An Algebraic Definition for Control Structures , 1980, Theor. Comput. Sci..

[39]  Joseph A. Goguen,et al.  Rational algebraic theories and fixed-point solutions , 1976, 17th Annual Symposium on Foundations of Computer Science (sfcs 1976).

[40]  Stephen L. Bloom,et al.  Varieties of "if-then-else" , 1983, SIAM J. Comput..

[41]  E. Paul,et al.  Proofs by Inducting in Equational Theories with Relations Between Constructors , 1984, Colloquium on Trees in Algebra and Programming.

[42]  Maurice Nivat,et al.  Metric Interpretations of Infinite Trees and Semantics of non Deterministic Recursive Programs , 1980, Theor. Comput. Sci..

[43]  Bruno Courcelle,et al.  The solution of two star height problems for regular trees , 1984, Automata on Infinite Words.

[44]  John W. Backus,et al.  Can programming be liberated from the von Neumann style?: a functional style and its algebra of programs , 1978, CACM.

[45]  Pierre Lescanne,et al.  Équivalence Entre la Famille des Ensembles Réguliers et la Famille des Ensembles Algébriques , 1976, RAIRO Theor. Informatics Appl..

[46]  Gérard P. Huet,et al.  Confluent Reductions: Abstract Properties and Applications to Term Rewriting Systems , 1980, J. ACM.

[47]  Stephen L. Bloom,et al.  All Solutions of a System of Recursion Equations in Infinite Trees and Other Contraction Theories , 1983, J. Comput. Syst. Sci..

[48]  C. C. Elgot Monadic Computation And Iterative Algebraic Theories , 1982 .

[49]  Stephen L. Bloom,et al.  Compatible Orderings on the Metric Theory of Trees , 1980, SIAM J. Comput..

[50]  David B. Benson,et al.  Algebraic Solutions to Recursion Schemes , 1987, J. Comput. Syst. Sci..

[51]  Bruno Courcelle,et al.  The Solutions of Two Star-Height Problems for Regular Trees , 1984, Theor. Comput. Sci..

[52]  MannaZohar,et al.  Fixpoint approach to the theory of computation , 1972 .

[53]  Bruno Courcelle Attribute Grammars: Definitions, Analysis of Dependencies, Proof Methods , 1983, Method and tools for compiler construction.

[54]  Jean-Jacques Lévy,et al.  Minimal and optimal computations of recursive programs , 1977, JACM.

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

[56]  George Markowsky,et al.  Bases for chain-complete posets , 1975, 16th Annual Symposium on Foundations of Computer Science (sfcs 1975).

[57]  Jean H. Gallier n-Rational Algebras I. Basic Properties and Free Algebras , 1984, SIAM J. Comput..

[58]  Jean Vuillemin Syntaxe, sémantique et axiomatique d'un langage de programmation simple , 1975 .

[59]  Walter S. Brainerd,et al.  The Minimalization of Tree Automata , 1968, Inf. Control..

[60]  Robert D. Tennent,et al.  The denotational semantics of programming languages , 1976, CACM.

[61]  Irène Guessarian,et al.  Program Transformations and Algebraic Semantics , 1979, Theor. Comput. Sci..

[62]  Robert McNaughton,et al.  Parenthesis Grammars , 1967, JACM.

[63]  Bruno Courcelle,et al.  Algebraic families of interpretations , 1976, 17th Annual Symposium on Foundations of Computer Science (sfcs 1976).

[64]  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).

[65]  Yves Métivier About the Rewriting Systems Produced by the Knuth-Bendix Completion Algorithm , 1983, Inf. Process. Lett..

[66]  G. Birkhoff,et al.  On the Structure of Abstract Algebras , 1935 .

[67]  Werner Damm,et al.  On the Power of Self-Application and Higher Type-Recursion , 1978, ICALP.

[68]  Jorge E. Mezei,et al.  On Relations Defined by Generalized Finite Automata , 1965, IBM J. Res. Dev..

[69]  Walter S. Brainerd,et al.  Tree Generating Regular Systems , 1969, Inf. Control..

[70]  Jean Berstel,et al.  Transductions and context-free languages , 1979, Teubner Studienbücher : Informatik.

[71]  Jean Vuillemin,et al.  Correct and optimal implementations of recursion in a simple programming language , 1973, J. Comput. Syst. Sci..

[72]  B. Courcelle Fundamental properties of infinite trees , 1983 .

[73]  Bruno Courcelle,et al.  A Representation of Trees by Languages II , 1978, Theor. Comput. Sci..

[74]  Laurent Chottin Etude Syntaxique de Certains Langages Solutions d'Equations avec Operateurs , 1977, Theor. Comput. Sci..

[75]  Bruno Courcelle,et al.  Algorithmes d'equivalence et de reduction a des expressions minimales dans une classe d'equations recursives simples , 1974, ICALP.

[76]  Bruno Courcelle,et al.  The Algebraic Semantics of Recursive Program Schemes , 1978, MFCS.