Journal of Automated Reasoning

, Volume 31, Issue 1, pp 33–72 | Cite as

Theorem Proving Modulo

  • Gilles Dowek
  • Thérèse Hardin
  • Claude Kirchner


Deduction modulo is a way to remove computational arguments from proofs by reasoning modulo a congruence on propositions. Such a technique, issued from automated theorem proving, is of general interest because it permits one to separate computations and deductions in a clean way. The first contribution of this paper is to define a sequent calculus modulo that gives a proof-theoretic account of the combination of computations and deductions. The congruence on propositions is handled through rewrite rules and equational axioms. Rewrite rules apply to terms but also directly to atomic propositions.

The second contribution is to give a complete proof search method, called extended narrowing and resolution (ENAR), for theorem proving modulo such congruences. The completeness of this method is proved with respect to provability in sequent calculus modulo.

An important application is that higher-order logic can be presented as a theory in deduction modulo. Applying the ENAR method to this presentation of higher-order logic subsumes full higher-order resolution.

automated theorem proving rewriting resolution narrowing higher-order logic cut elimination deduction modulo sequent calculus modulo Skolemization 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Abadi, M., Cardelli, L., Curien, P.-L. and Lévy, J.-J.: Explicit substitutions, J. Funct. Programming 1(4) (1991), 375-416.zbMATHMathSciNetCrossRefGoogle Scholar
  2. 2.
    Andrews, P. B.: Resolution in type theory, J. Symbolic Logic 36 (1971), 414-432.zbMATHMathSciNetCrossRefGoogle Scholar
  3. 3.
    Baader, F. and Nipkow, T.: Term Rewriting and All That, Cambridge University Press, 1998.Google Scholar
  4. 4.
    Bachmair, L.: Proof methods for equational theories, Ph.D. thesis, University of Illinois, Urbana-Champaign, IL, 1987, Revised version, August 1988.Google Scholar
  5. 5.
    Bachmair, L., Ganzinger, H., Lynch, C. and Snyder, W.: Basic paramodulation, Inform. and Comput. 121(2) (1995), 172-192.zbMATHMathSciNetCrossRefGoogle Scholar
  6. 6.
    Barendregt, H. and Barendsen, E.: Autartik computations in formal proofs, J. Automated Reasoning 28(3) (2002), 321-336.zbMATHMathSciNetCrossRefGoogle Scholar
  7. 7.
    Bürckert, H.-J.: A resolution principle for clauses with constraints, in M. E. Stickel (ed.), Proceedings 10th International Conference on Automated Deduction, Kaiserslautern (Germany), Lecture Notes in Comput. Sci. 449, Springer-Verlag, New York, 1990, pp. 178-192.Google Scholar
  8. 8.
    Bürckert, H.-J.: A Resolution Principle for a Logic with Restricted Quantifiers, Lecture Notes in Artificial Intelligence 568, Springer-Verlag, 1991.Google Scholar
  9. 9.
    Curien, P.-L., Hardin, T. and Lévy, J.-J.: Confluence properties of weak and strong calculi of explicit substitutions, J. ACM 43(2) (1996), 362-397.zbMATHMathSciNetCrossRefGoogle Scholar
  10. 10.
    Degtyarev, A. and Voronkov, A.: Equality reasoning in sequent-based calculi, in A. Robinson and A. Voronkov (eds.), Handbook of Automated Reasoning, Vol. I, Elsevier, 2001, Chapt. 10, pp. 611-706.Google Scholar
  11. 11.
    Dershowitz, N. and Jouannaud, J.-P.: Rewrite systems, in J. van Leeuwen (ed.), Handbook of Theoretical Computer Science, Elsevier (North-Holland), 1990, Chapt. 6, pp. 244-320.Google Scholar
  12. 12.
    Dowek, G.: Lambda-calculus, combinators and the comprehension scheme, in M. Dezan-Ciancaglini and G. Plotkin (eds.), Typed Lambda Calculi and Applications, Lecture Notes in Comput. Sci. 902, 1995, pp. 154-170.Google Scholar
  13. 13.
    Dowek, G.: Proof normalization for a first-order formulation of higher-order logic, in E. Gunter and A. Felty (eds.), Theorem Proving in Higher Order Logics, Lecture Notes in Comput. Sci. 1275, 1997, pp. 105-119.Google Scholar
  14. 14.
    Dowek, G.: La Part du Calcul, Université de Paris 7, Mémoire d'habilitation, 1999.Google Scholar
  15. 15.
    Dowek, G.: Axioms vs. rewrite rules: From completeness to cut elimination, in H. Kirchner and C. Ringeissen (eds.), Frontiers of Combining Systems, Lecture Notes in Artificial Intelligence 1794, Springer-Verlag, 2000, pp. 62-72.Google Scholar
  16. 16.
    Dowek, G., Hardin, T. and Kirchner, C.: Theorem proving modulo, Rapport de Recherche 3400, Institut National de Recherche en Informatique et en Automatique, 1998. Scholar
  17. 17.
    Dowek, G., Hardin, T. and Kirchner, C.: Higher-order unification via explicit substitutions, Inform. and Comput. 157 (2000), 183-235.zbMATHMathSciNetCrossRefGoogle Scholar
  18. 18.
    Dowek, G., Hardin, T. and Kirchner, C.: HOL-?s, an intentional first-order expression of higher-order logic, Math. Structures Comput. Sci. 11(1) (2001), 21-45.zbMATHMathSciNetCrossRefGoogle Scholar
  19. 19.
    Dowek, G., Hardin, T. and Kirchner, C.: Theorem proving modulo, revised version, Rapport de Recherche 4861, Institut National de Recherche en Informatique et en Automatique, 2003. Scholar
  20. 20.
    Dowek, G. and Werner, B.: Proof normalization modulo, in Types for Proofs and Programs, Lecture Notes in Comput. Sci. 1657, 1999, pp. 62-77.Google Scholar
  21. 21.
    Gallier, J. H.: Logic for Computer Science: Foundations of Automatic Theorem Proving, Computer Science and Technology Series 5, Harper & Row, New York, 1986.zbMATHGoogle Scholar
  22. 22.
    Gallier, J., Raatz, S. and Snyder, W.: Rigid E-unification and its applications to equational matings, in H. Aït-Kaci and M. Nivat (eds.), Resolution of Equations in Algebraic Structures, Vol. 1, Academic Press, New York, 1989, pp. 151-216.Google Scholar
  23. 23.
    Girard, J.-Y., Lafont, Y. and Taylor, P.: Proofs and Types, Cambridge Tracts Theoret. Comput. Sci. 7, Cambridge University Press, 1989.Google Scholar
  24. 24.
    Huet, G.: Constrained resolution: A complete method for type theory, Ph.D. thesis, Case Western Reserve University, 1972.Google Scholar
  25. 25.
    Huet, G.: A mechanization of type theory, in Proceeding of the Third International Joint Conference on Artificial Intelligence, 1973, pp. 139-146.Google Scholar
  26. 26.
    Huet, G.: A unification algorithm for typed lambda calculus, Theoret. Comput. Sci. 1(1) (1975), 27-57.Google Scholar
  27. 27.
    Huet, G.: Résolution d'equations dans les langages d'ordre 1, 2,...,?, Thèse de Doctorat d'Etat, Université de Paris 7, France, 1976.Google Scholar
  28. 28.
    Hullot, J.-M.: Canonical forms and unification, in Proceedings 5th International Conference on Automated Deduction, Les Arcs (France), 1980, pp. 318-334.Google Scholar
  29. 29.
    Jaffar, J. and Lassez, J.-L.: Constraint logic programming, in Proceedings of the 14th Annual ACM Symposium on Principles Of Programming Languages, Munich (Germany), 1987, pp. 111-119.Google Scholar
  30. 30.
    Jouannaud, J.-P. and Kirchner, H.: Completion of a set of rules modulo a set of equations, SIAM J. Comput. 15(4) (1986), 1155-1194. Preliminary version in Proceedings 11th ACM Symposium on Principles of Programming Languages, Salt Lake City (USA), 1984.zbMATHMathSciNetCrossRefGoogle Scholar
  31. 31.
    Jouannaud, J.-P. and Kirchner, C.: Solving equations in abstract algebras: A rule-based survey of unification, in J.-L. Lassez and G. Plotkin (eds.), Computational Logic. Essays in honor of Alan Robinson, MIT Press, Cambridge, MA, 1991, Chapt. 8, pp. 257-321.Google Scholar
  32. 32.
    Kirchner, C.: Méthodes et outils de conception systématique d'algorithmes d'unification dans les théories équationnelles, Thèse de Doctorat d'Etat, Université Henri Poincaré - Nancy 1, 1985.Google Scholar
  33. 33.
    Kirchner, H.: Orderings in automated theorem proving, in F. Hoffman (ed.), Mathematical Aspects of Artificial Intelligence, Proc. Symposia Appl. Math. 55, Amer. Math. Soc., 1998, pp. 55-95.Google Scholar
  34. 34.
    Kirchner, C., Kirchner, H. and Rusinowitch, M.: Deduction with symbolic constraints, Revue d'Intelligence Artificielle 4(3) (1990), 9-52. Special issue on Automatic Deduction.Google Scholar
  35. 35.
    Kirchner, C. and Ringeissen, C.: Higher-order equational unification via explicit substitutions, in Proceedings 6th International Joint Conference ALP'97-HOA'97, Southampton (UK), Lecture Notes in Comput. Sci. 1298, Springer-Verlag, 1997, pp. 61-75.Google Scholar
  36. 36.
    Klop, J., van Oostrom, V. and van Raamsdonk, F.: Combinatory reduction systems: Introduction and survey, Theoret. Comput. Sci. 121 (1993), 279-308.zbMATHMathSciNetCrossRefGoogle Scholar
  37. 37.
    Knuth, D. E. and Bendix, P. B.: Simple word problems in universal algebras, in J. Leech (ed.), Computational Problems in Abstract Algebra, Pergamon Press, Oxford, 1970, pp. 263-297.Google Scholar
  38. 38.
    Kolata, G.: With major math proof, brute computers show flash of reasoning power, New York Times, Tuesday, December 10, 1996.Google Scholar
  39. 39.
    Lee, S.-J. and Plaisted, D.: Use of replace rules in theorem proving, Methods of Logic in Computer Science 1(2) (1994), 217-240.zbMATHGoogle Scholar
  40. 40.
    Marché, C.: Normalised rewriting and normalised completion, in S. Abramsky (ed.), Proceedings 9th IEEE Symposium on Logic in Computer Science, Paris, 1994, pp. 394-403.Google Scholar
  41. 41.
    McCune, W.: Solution of the Robbins problem, J. Automated Reasoning 19(3) (1997), 263-276.zbMATHMathSciNetCrossRefGoogle Scholar
  42. 42.
    Nieuwenhuis, R. and Rubio, A.: AC-superposition with constraints: No AC-unifiers needed, in A. Bundy (ed.), Proceedings 12th International Conference on Automated Deduction, Nancy (France), Lecture Notes in Artificial Intelligence 814, Springer-Verlag, 1994, pp. 545-559.Google Scholar
  43. 43.
    Nutt, W., Réty, P. and Smolka, G.: Basic narrowing revisited, J. Symbolic Comput. 7(3-4) (1989), 295-318. Special issue on unification. Part one.zbMATHMathSciNetGoogle Scholar
  44. 44.
    Peterson, G.: A technique for establishing completeness results in theorem proving with equality, SIAM J. Comput. 12(1) (1983), 82-100.zbMATHMathSciNetCrossRefGoogle Scholar
  45. 45.
    Peterson, G. and Stickel, M. E.: Complete sets of reductions for some equational theories, J. ACM 28 (1981), 233-264.zbMATHMathSciNetCrossRefGoogle Scholar
  46. 46.
    Plaisted, D. A. and Potter, R. C.: Term rewriting: Some experimental results, J. Symbolic Comput. 11(1-2) (1991), 149-180.zbMATHMathSciNetCrossRefGoogle Scholar
  47. 47.
    Plotkin, G.: Building-in equational theories, Machine Intelligence 7 (1972), 73-90.zbMATHMathSciNetGoogle Scholar
  48. 48.
    Stickel, M.: Automated deduction by theory resolution, J. Automated Reasoning 1(4) (1985), 285-289.MathSciNetCrossRefGoogle Scholar
  49. 49.
    Stuber, J.: A model-based completeness proof of extended narrowing and resolution, in 1st Int. Joint Conf. on Automated Reasoning (IJCAR-2001), Siena, Italy, Lecture Notes in Comput. Sci. 2083, Springer-Verlag, 2001, pp. 195-210.Google Scholar
  50. 50.
    Terese (M. Bezem, J. W. Klop and R. de Vrijer, eds.): Term Rewriting Systems, Cambridge University Press, 2002.Google Scholar
  51. 51.
    Vigneron, L.: Positive deduction modulo regular theories, in H. K. Büning (ed.), Annual Conference of the European Association for Computer Science Logic, Lecture Notes in Comput. Sci. 1092, Springer-Verlag, 1995, pp. 468-485. Selected papers.Google Scholar
  52. 52.
    Viry, P.: Equational rules for rewriting logic, Theoret. Comput. Sci. 285(2) (2002), 487-517.zbMATHMathSciNetCrossRefGoogle Scholar

Copyright information

© Kluwer Academic Publishers 2003

Authors and Affiliations

  • Gilles Dowek
    • 1
  • Thérèse Hardin
    • 2
  • Claude Kirchner
    • 3
  1. 1.Ecole polytechnique and INRIA LIXEcole polytechniquePalaiseau CedexFrance
  2. 2.LIP6 and INRIA-RocquencourtUniversité Paris 6Paris Cedex 05France
  3. 3.LORIA and INRIA, 615Villers-lès-Nancy CedexFrance

Personalised recommendations