Skip to main content

Second-Order Matching via Explicit Substitutions

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

Abstract

Matching is a basic operation extensively used in computation. Second-order matching, in particular, provides an adequate environment for expressing program transformations and pattern recognition for automated deduction. The past few years have established the benefit of using explicit substitutions for theorem proving and higher-order unification. In this paper, we will make use of explicit substitutions to facilitate matching: we develop a second-order matching algorithm via the λσ-style of explicit substitutions. We introduce a convenient notation for matching in the λσ-calculus. This notation keeps the matching equations separated from the incremental graftings. We characterise an important class of second-order matching problems which is essential to prove termination of the algorithm. In addition, we illustrate how the algorithm works through some examples.

Work supported by funds from CNPq(CT-INFO) 50.6598/04-7 and PRONEX.

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. Abadi, M., Cardelli, L., Curien, P.-L., Lévy, J.-J.: Explicit Substitutions. J. of Func. Programming 1(4), 375–416 (1991)

    Article  MATH  Google Scholar 

  2. Ayala-Rincón, M., Kamareddine, F.: Unification via the λse-Style of Explicit Substitution. The Logical J. of the IGPL 9(4), 489–523 (2001)

    Article  MATH  Google Scholar 

  3. Ayala-Rincón, M., de Moura, F.L.C., Kamareddine, F.: Comparing and Implementing Calculi of Explicit Substitutions with Eta-Reduction. In: de Queiroz, R., Poizat, B., Artemov, S. (eds.) To appear in Special Issue of Annals of Pure and Applied Logic - WoLLIC 2002 selected papers (2005)

    Google Scholar 

  4. Burckert, H.J.: Matching - A Special Case of Unification? Journal of Symbolic Computation 8, 523–536 (1989)

    Article  MathSciNet  Google Scholar 

  5. de Bruijn, N.G.: Lambda-Calculus Notation with Nameless Dummies, a Tool for Automatic Formula Manipulation, with Application to the Church-Rosser Theorem. Indag. Mat. 34(5), 381–392 (1972)

    Article  Google Scholar 

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

    Article  MathSciNet  MATH  Google Scholar 

  7. de la Tour, T.B., Caferra, R.: Proof analogy in interactive theorem proving: A method to express and use it via second order pattern matching. In: Proceedings of AAAI 1987, pp. 95–99. Morgan Kaufmann, San Francisco (1987)

    Google Scholar 

  8. de la Tour, T.B., Caferra, R.: A formal approach to some usually informal techniques used in mathematical reasoning. In: Gianni, P. (ed.) ISSAC 1988. LNCS, vol. 358, pp. 402–406. Springer, Heidelberg (1989)

    Chapter  Google Scholar 

  9. Dowek, G.: Third order matching is decidable. Annals of Pure and Applied Logic 69, 135–155 (1994)

    Article  MathSciNet  MATH  Google Scholar 

  10. Dowek, G.: Higher-Order Unification and Matching. In: Robinson, A., Voronkov, A. (eds.) Handbook of Automated Reasoning, vol. II, ch. 16, pp. 1009–1062. MIT press and Elsevier (2001)

    Google Scholar 

  11. Dowek, G.: Third order matching is decidable. Annals of Pure and Applied Logic 69, 135–155 (1994)

    Article  MathSciNet  MATH  Google Scholar 

  12. Huet, G., Lang, B.: Proving and applying program transformations expressed with second order patterns. Acta Informatica 11, 31–55 (1978)

    Article  MathSciNet  MATH  Google Scholar 

  13. Huet, G.: Résolution d’équations dans les langages d’ordre 1,2,...,ω. PhD thesis, University Paris-7 (1976)

    Google Scholar 

  14. Loader, R.: Higher order β matching is undecidable. Logic Journal of the IGPL 11(1), 51–68 (2003)

    Article  MathSciNet  MATH  Google Scholar 

  15. Muñoz, C.: Proof-term synthesis on dependent-type systems via explicit substitutions. Theoretical Computer Science 266, 407–440 (2001)

    Article  MathSciNet  MATH  Google Scholar 

  16. Nipkow, T.: Functional unification of higher-order patterns. In: Proc. 8th IEEE Symp. Logic in Computer Science, pp. 64–74 (1993)

    Google Scholar 

  17. Padovani, V.: Decidability of fourth-order matching. Mathematical Structures in Computer Science 10(3), 361–372 (2000)

    Article  MathSciNet  MATH  Google Scholar 

  18. Reed, J.: Extending higher-order unification to support proof irrelevance. In: Basin, D., Wolff, B. (eds.) TPHOLs 2003. LNCS, vol. 2758, pp. 238–252. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  19. Robinson, J.A.: A Machine-oriented Logic Based on the Resolution Principle. Journal of the ACM 12(1), 23–41 (1965)

    Article  MATH  Google Scholar 

  20. Visser, E.: A survey of strategies in rule-based program transformation systems. Journal of Symbolic Computation (2004) (Accepted for publication)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2005 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

de Moura, F.L.C., Kamareddine, F., Ayala-Rincón, M. (2005). Second-Order Matching via Explicit Substitutions. In: Baader, F., Voronkov, A. (eds) Logic for Programming, Artificial Intelligence, and Reasoning. LPAR 2005. Lecture Notes in Computer Science(), vol 3452. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-32275-7_29

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-32275-7_29

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-25236-8

  • Online ISBN: 978-3-540-32275-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics