Abstract
In this paper we give a simple and uniform presentation of the rewriting calculus, also called Rho Calculus. In addition to its simplicity, this formulation explicitly allows us to encode complex structures such as lists, sets, and objects. We provide extensive examples of the calculus, and we focus on its ability to represent some object oriented calculi, namely the Lambda Calculus of Objects of Fisher, Honsell, and Mitchell, and the Object Calculus of Abadi and Cardelli. Furthermore, the calculus allows us to get object oriented constructions unreachable in other calculi. In summa, we intend to show that because of its matching ability, the Rho Calculus represents a lingua franca to naturally encode many paradigms of computations. This enlightens the capabilities of the rewriting calculus based language ELAN to be used as a logical as well as powerful semantical framework.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
M. Abadi and L. Cardelli. A Theory of Objects. Springer Verlag, 1996.
H. Ait-Kaci, A. Podelski, and G. Smolka. A feature constraint system for logic programming with entailment. Theoretical Computer Science, 122(1-2):263–283, 1994.
P. Borovanský, C. Kirchner, H. Kirchner, P.-E. Moreau, and C. Ringeissen. An overview of ELAN. In Proc. of WRLA, volume 15. Electronic Notes in Theoretical Computer Science, 1998.
V. Breazu-Tannen. Combining algebra and higher-order types. In Proc. of LICS, pages 82–90, 1988.
H.-J. Bürckert. Matching — A special case of unification? Journal of Symbolic Computation, 8(5):523–536, 1989.
H. Cirstea. Calcul de réécriture: fondements et applications. Thèse de Doctorat d’Université, Université Henri Poincaré-Nancy I, 2000.
H. Cirstea and C. Kirchner. The rewriting calculus — Part I and II. Logic Journal of the Interest Group in Pure and Applied Logics, 9(3):427–498, 2001.
H. Cirstea, C. Kirchner, and L. Liquori. Matching Power. Technical Report A00-R-363, LORIA, Nancy, 2000.
H. Cirstea, C. Kirchner, and L. Liquori. The Rho Cube. In Proc. of FOSSACS, volume 2030 of LNCS, pages 166–180. Springer-Verlag, 2001.
M. Clavel, S. Eker, P. Lincoln, and J. Meseguer. Principles of Maude. In Proc. of WRLA, volume 4. Electronic Notes in Theoretical Computer Science, 1996.
L. Colson. Une structure de données pour le λ-calcul typé. Private Communication, 1988.
G. Dowek. Third order matching is decidable. Annals of Pure and Applied Logic, 69:135–155, 1994.
Hubert Dubois and Hélène Kirchner. Objects, rules and strategies in ELAN., 2000. Submitted.
K. Fisher, F. Honsell, and J. C. Mitchell. A Lambda Calculus of Objects and Method Specialization. Nordic Journal of Computing, 1(1):3–37, 1994.
K. Futatsugi and A. Nakagawa. An overview of CAFE specification environment–an algebraic approach for creating, verifying, and maintaining formal specifications over networks. In Proc. of FEM, 1997.
J. Gallier and V. Breazu-Tannen. Polymorphic rewriting conserves algebraic strong normalization and confluence. In Proc. of ICALP, volume 372 of LNCS, pages 137–150. Springer-Verlag, 1989.
P. Di Gianantonio, F. Honsell, and L. Liquori. A Lambda Calculus of Objects with Self-inflicted Extension. In Proc. of OOPSLA, pages 166–178. The ACM Press, 1998.
J. A. Goguen, C. Kirchner, H. Kirchner, A. Mégrelis, J. Meseguer, and T. Winkler. An introduction to OBJ-3. In Proc. of CTRS, volume 308 of LNCS, pages 258–263. Springer-Verlag, 1987.
C. M. Hoffmann and M. J. O’Donnell. Pattern matching in trees. Journal of the ACM, 29(1):68–95, 1982.
G. Huet and B. Lang. Proving and applying program transformations expressed with second-order patterns. Acta Informatica, 11:31–55, 1978.
J.-M. Hullot. Associative-commutative pattern matching. In Proc. of IJCAI, 1979.
J.P. Jouannaud and M. Okada. Abstract data type systems. Theoretical Computer Science, 173(2):349–391, 1997.
C. Kirchner and H. Kirchner. Rewriting, solving, proving. A preliminary version of a book available at http://www.loria.fr/~ckirchne/rsp.ps.gz, 1999.
C. Kirchner, H. Kirchner, and M. Vittek. Designing constraint logic programming languages using computational systems. In Principles and Practice of Constraint Programming. The Newport Papers., chapter 8, pages 131–158. The MIT press, 1995.
J.W. Klop, V. van Oostrom, and F. van Raamsdonk. Combinatory reduction systems: introduction and survey. Theoretical Computer Science, 121:279–308, 1993.
Donald E. Knuth, J. Morris, and V. Pratt. Fast pattern matching in strings. SIAM Journal of Computing, 6(2):323–350, 1977.
A. Laville. Lazy pattern matching in the ML language. In Proc. FCT & TCS, volume 287 of LNCS, pages 400–419. Springer-Verlag, 1987.
D Miller. A logic programming language with lambda-abstraction, function variables, and simple unification. In Proc. of ELP, volume 475 of LNCS, pages 253–281. Springer-Verlag, 1991.
Tobias Nipkow and Christian Prehofer. Higher-order rewriting and equational reasoning. In W. Bibel and P. Schmitt, editors, Automated Deduction — A Basis for Applications. Volume I: Foundations. Kluwer, 1998.
M. Okada. Strong normalizability for the combined system of the typed λ calculus and an arbitrary convergent term rewrite system. In Proc. of ISSAC, pages 357–363. ACM Press, 1989.
V. Padovani. Decidability of fourth-order matching. Mathematical Structures in Computer Science, 3(10):361–372, 2000.
G. Peterson and M. E. Stickel. Complete sets of reductions for some equational theories. Journal of the ACM, 28:233–264, 1981.
S. Peyton-Jones. The implementation of functional programming languages. Prentice Hall, Inc., 1987.
Équipe Protheo. The Elan Home Page, 2001. http://elan.loria.fr.
A. van Deursen, J. Heering, and P. Klint. Language Prototyping. World Scientific, 1996.
V. van Oostrom. Lambda calculus with patterns. Technical Report IR-228, Vrije Universiteit, November 1990.
P. Viry. Input/Output for ELAN. In Proc. of WRLA, volume 4. Electronic Notes in Theoretical Computer Science, 1996.
E. Visser and Z.e.A. Benaissa. A core language for rewriting. In Proc. of WRLA, volume 15. Electronic Notes in Theoretical Computer Science, 1998.
D. A. Wolfram. The Clausal Theory of Types, volume 21 of Cambridge Tracts in Theoretical Computer Science. Cambridge University Press, 1993.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2001 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Cirstea, H., Kirchner, C., Liquori, L. (2001). Matching Power. In: Middeldorp, A. (eds) Rewriting Techniques and Applications. RTA 2001. Lecture Notes in Computer Science, vol 2051. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45127-7_8
Download citation
DOI: https://doi.org/10.1007/3-540-45127-7_8
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-42117-7
Online ISBN: 978-3-540-45127-3
eBook Packages: Springer Book Archive