Skip to main content

Deciding Equality in the Constructor Theory

  • Conference paper
Types for Proofs and Programs (TYPES 2006)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 4502))

Included in the following conference series:

Abstract

We give a decision procedure for the satisfiability of finite sets of ground equations and disequations in the constructor theory: the terms used may contain both uninterpreted and constructor function symbols. Constructor function symbols are by definition injective and terms built with distinct constructors are themselves distinct. This corresponds to properties of (co-)inductive type constructors in inductive type theory. We do this in a framework where function symbols can be partially applied and equations between functions are allowed. We describe our algorithm as an extension of congruence-closure and give correctness, completeness and termination arguments. We then proceed to discuss its limits and extension possibilities by describing its implementation in the Coq proof assistant.

This work was done at project ProVal, Pole Commun de Recherche en Informatique du plateau de Saclay: CNRS, École Polytechnique, INRIA, Université Paris-Sud.

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 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.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. Bachmair, L., Tiwari, A., Vigneron, L.: Abstract congruence closure. Journal of Automated Reasoning 31(2), 129–168 (2003)

    Article  MATH  MathSciNet  Google Scholar 

  2. Bachmair, L., Tiwari, A.: Abstract congruence closure and specializations. In: McAllester, D. (ed.) CADE-17. LNCS, vol. 1831, pp. 64–78. Springer, Heidelberg (2000)

    Google Scholar 

  3. Contejean, E., Corbineau, P.: Reflecting proofs in first-order logic with equality. In: Nieuwenhuis, R. (ed.) CADE-20. LNCS (LNAI), vol. 3632, pp. 7–22. Springer, Heidelberg (2005)

    Google Scholar 

  4. Corbineau, P.: Autour de la clôture de congruence avec Coq. Master’s thesis, Université Paris 7 (2001), http://www.cs.ru.nl/~corbinea/ftp/publis/mem-dea.ps

  5. Corbineau, P.: Démonstration automatique en Théorie des Types. PhD thesis, Université Paris 11 (2005), http://www.cs.ru.nl/~corbinea/ftp/publis/Corbineau-these.pdf

  6. Downey, P.J., Sethi, R., Tarjan, R.E.: Variations on the common subexpressions problem. Journal of the ACM 27(4), 771–785 (1980)

    Article  MathSciNet  Google Scholar 

  7. Markov, A.A.: On the impossibility of certain algorithms in the theory of associative systems. Doklady Akademii Nauk SSSR 55(7), 587–590 (1947) (in Russian, English translation in C.R. Acad. Sci. URSS, 55, 533–586)

    Google Scholar 

  8. McBride, C.: Dependently Typed Functional Programs and their Proofs. PhD thesis, University of Edinburgh (1999), http://www.lfcs.informatics.ed.ac.uk/reports/00/ECS-LFCS-00-419/

  9. Necula, G.C.: Compiling with Proofs. PhD thesis, Carnegie-Mellon University, available as Technical Report CMU-CS-98-154 (1998)

    Google Scholar 

  10. Nelson, G., Oppen, D.C.: Simplification by cooperating decision procedures. ACM Trans. on Programming, Languages and Systems 1(2), 245–257 (1979)

    Article  MATH  Google Scholar 

  11. Nelson, G., Oppen, D.C.: Fast decision procedures based on congruence closure. Journal of the ACM 27, 356–364 (1980)

    Article  MATH  MathSciNet  Google Scholar 

  12. Nieuwenhuis, R., Oliveras, A.: Proof-Producing Congruence Closure. In: Giesl, J. (ed.) RTA 2005. LNCS, vol. 3467, pp. 453–468. Springer, Heidelberg (2005)

    Google Scholar 

  13. The Objective Caml language, http://www.ocaml.org/

  14. Oppen, D.C.: Reasoning about recursively defined data structures. Journal of the ACM (1978)

    Google Scholar 

  15. Post, E.L.: Recursive unsolvability of a problem of Thue. Journal of Symbolic Logic 13, 1–11 (1947)

    MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Thorsten Altenkirch Conor McBride

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Corbineau, P. (2007). Deciding Equality in the Constructor Theory. In: Altenkirch, T., McBride, C. (eds) Types for Proofs and Programs. TYPES 2006. Lecture Notes in Computer Science, vol 4502. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-74464-1_6

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-74464-1_6

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-74463-4

  • Online ISBN: 978-3-540-74464-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics