Abstract
To perform higher-order matching, we need to decide the βη-equivalence on λ-terms. The first way to do it is to use simply typed λ-calculus and this is the usual framework where higher-order matching is performed. Another approach consists in deciding a restricted equivalence based on finite superdevelopments. We consider higher-order matching modulo this equivalence over untyped λ-terms for which we propose a terminating, sound and complete matching algorithm.
This is in particular of interest since all second-order β-matches are matches modulo superdevelopments. We further propose a restriction to second-order matching that gives exactly all second-order matches.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Aczel, P.: A general church rosser theorem. Technical report, University of Mancherster (July 1978)
Alias, C.: Program Optimization by Template Recognition and Replacement. PhD thesis, University of Versailles, Versailles, France (December 2005)
Barendregt, H.: The Lambda-Calculus, its syntax and semantics. Elsevier Science Publishers B.V., North-Holland (1984)
Cirstea, H., Liquori, L., Wack, B.: Rewriting calculus with fixpoints: Untyped and first-order systems. In: Berardi, S., Coppo, M., Damiani, F. (eds.) TYPES 2003. LNCS, vol. 3085, pp. 147–161. Springer, Heidelberg (2004)
Dowek, G., Hardin, T., Kirchner, C.: Higher-order unification via explicit substitutions. Information and Computation 157(1/2), 183–235 (2000)
de Moor, O., Sittampalam, G.: Higher-order matching for program transformation. Theoretical Computer Science 269 (2001)
Dowek, G.: Higher-order unification and matching. In: Handbook of Automated Reasoning. Elsevier, Amsterdam (2001)
Dalrymple, M., Shieber, S.M., Pereira, F.: Ellipsis and higher-order unification. Linguistics and Philosophy 14, 399–452 (1991)
Gallier, J., Snyder, W.: Higher-order unification revisited: Complete sets of transformations. JSCOMP: Journal of Symbolic Computation 8 (1989)
Huet, G., Lang, B.: Proving and applying program transformations expressed with second-order patterns. Acta Informatica (1978)
Jay, C.B., Kesner, D.: Pure pattern calculus. In: Sestoft, P. (ed.) ESOP 2006. LNCS, vol. 3924, pp. 100–114. Springer, Heidelberg (2006)
Klop, van Oostrom, and van Raamsdonk: Combinatory reduction systems: Introduction and survey. TCS: Theoretical Computer Science, 121 (1993)
Lévy, J.-J.: Reductions Correctes et Optimales dans le Lambda-Calcul. Ph.D. thesis, Université de Paris (1978)
Miller, D.: Higher-order logic programming. In: Int. Conf. on Logic Programming, p. 784 (1990)
Miller, D.: A logic programming language wiith lambda-abstraction, function variables, and simple unification. Jour. of Log. and Comp. (1991)
Mayr, R., Nipkow, T.: Higher-order rewrite systems and their confluence. Theoretical Computer Science, 192 (1998)
Moreau, P.-E., Ringeissen, C., Vittek, M.: A pattern matching compiler for multiple target languages. In: Hedin, G. (ed.) CC 2003. LNCS, vol. 2622, pp. 61–76. Springer, Heidelberg (2003)
Nipkow, T., Prehofer, C.: Higher-order rewriting and equational reasoning. In: Automated Deduction: A Basis for Applications. Kluwer, Dordrecht (1998)
Oostrom, V.V.: Confluence for abstract and higher-order rewriting. PhD thesis, Vrije Universiteit (1994)
Pfenning, F.: Logical frameworks. In: Handbook of Automated Reasoning, vol. II ch. 17, pp. 1063–1147. Elsevier Science, Amsterdam (2001)
Qian, Z.: Unification of higher-order patterns in linear time and space. J. Log. Comput. (1996)
Shi, H.: Extended matching with applications to program transformation. PhD thesis, Universität Bremen (1994)
Sittampalam, G.: Higher-order Matching for Program Transformation. PhD thesis, Magdalen College (2001)
Visser, E.: A survey of strategies in rule-based program transformation systems. Journal of Symbolic Computation 40(1) (2005)
van Oostrom, V., van Raamsdonk, F.: HOA 1993. LNCS, vol. 816. Springer, Heidelberg (1993)
van Raamsdonk, F.: Confluence and superdevelopments. Rewriting Techniques and Applications (1993)
Wack, B.: A Curry-Howard-De Bruijn Isomorphism Modulo (Under submission) (2006)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Faure, G. (2006). Matching Modulo Superdevelopments Application to Second-Order Matching. In: Hermann, M., Voronkov, A. (eds) Logic for Programming, Artificial Intelligence, and Reasoning. LPAR 2006. Lecture Notes in Computer Science(), vol 4246. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11916277_5
Download citation
DOI: https://doi.org/10.1007/11916277_5
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-48281-9
Online ISBN: 978-3-540-48282-6
eBook Packages: Computer ScienceComputer Science (R0)