Skip to main content

Matching Modulo Superdevelopments Application to Second-Order Matching

  • Conference paper
Logic for Programming, Artificial Intelligence, and Reasoning (LPAR 2006)

Part of the book series: Lecture Notes in Computer Science ((LNAI,volume 4246))

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Aczel, P.: A general church rosser theorem. Technical report, University of Mancherster (July 1978)

    Google Scholar 

  2. Alias, C.: Program Optimization by Template Recognition and Replacement. PhD thesis, University of Versailles, Versailles, France (December 2005)

    Google Scholar 

  3. Barendregt, H.: The Lambda-Calculus, its syntax and semantics. Elsevier Science Publishers B.V., North-Holland (1984)

    MATH  Google Scholar 

  4. 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)

    Chapter  Google Scholar 

  5. Dowek, G., Hardin, T., Kirchner, C.: Higher-order unification via explicit substitutions. Information and Computation 157(1/2), 183–235 (2000)

    Article  MATH  MathSciNet  Google Scholar 

  6. de Moor, O., Sittampalam, G.: Higher-order matching for program transformation. Theoretical Computer Science 269 (2001)

    Google Scholar 

  7. Dowek, G.: Higher-order unification and matching. In: Handbook of Automated Reasoning. Elsevier, Amsterdam (2001)

    Google Scholar 

  8. Dalrymple, M., Shieber, S.M., Pereira, F.: Ellipsis and higher-order unification. Linguistics and Philosophy 14, 399–452 (1991)

    Article  Google Scholar 

  9. Gallier, J., Snyder, W.: Higher-order unification revisited: Complete sets of transformations. JSCOMP: Journal of Symbolic Computation 8 (1989)

    Google Scholar 

  10. Huet, G., Lang, B.: Proving and applying program transformations expressed with second-order patterns. Acta Informatica (1978)

    Google Scholar 

  11. Jay, C.B., Kesner, D.: Pure pattern calculus. In: Sestoft, P. (ed.) ESOP 2006. LNCS, vol. 3924, pp. 100–114. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  12. Klop, van Oostrom, and van Raamsdonk: Combinatory reduction systems: Introduction and survey. TCS: Theoretical Computer Science, 121 (1993)

    Google Scholar 

  13. Lévy, J.-J.: Reductions Correctes et Optimales dans le Lambda-Calcul. Ph.D. thesis, Université de Paris (1978)

    Google Scholar 

  14. Miller, D.: Higher-order logic programming. In: Int. Conf. on Logic Programming, p. 784 (1990)

    Google Scholar 

  15. Miller, D.: A logic programming language wiith lambda-abstraction, function variables, and simple unification. Jour. of Log. and Comp. (1991)

    Google Scholar 

  16. Mayr, R., Nipkow, T.: Higher-order rewrite systems and their confluence. Theoretical Computer Science, 192 (1998)

    Google Scholar 

  17. 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)

    Chapter  Google Scholar 

  18. Nipkow, T., Prehofer, C.: Higher-order rewriting and equational reasoning. In: Automated Deduction: A Basis for Applications. Kluwer, Dordrecht (1998)

    Google Scholar 

  19. Oostrom, V.V.: Confluence for abstract and higher-order rewriting. PhD thesis, Vrije Universiteit (1994)

    Google Scholar 

  20. Pfenning, F.: Logical frameworks. In: Handbook of Automated Reasoning, vol. II ch. 17, pp. 1063–1147. Elsevier Science, Amsterdam (2001)

    Chapter  Google Scholar 

  21. Qian, Z.: Unification of higher-order patterns in linear time and space. J. Log. Comput. (1996)

    Google Scholar 

  22. Shi, H.: Extended matching with applications to program transformation. PhD thesis, Universität Bremen (1994)

    Google Scholar 

  23. Sittampalam, G.: Higher-order Matching for Program Transformation. PhD thesis, Magdalen College (2001)

    Google Scholar 

  24. Visser, E.: A survey of strategies in rule-based program transformation systems. Journal of Symbolic Computation 40(1) (2005)

    Google Scholar 

  25. van Oostrom, V., van Raamsdonk, F.: HOA 1993. LNCS, vol. 816. Springer, Heidelberg (1993)

    Google Scholar 

  26. van Raamsdonk, F.: Confluence and superdevelopments. Rewriting Techniques and Applications (1993)

    Google Scholar 

  27. Wack, B.: A Curry-Howard-De Bruijn Isomorphism Modulo (Under submission) (2006)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints 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)

Publish with us

Policies and ethics