Skip to main content

New Uses of Linear Arithmetic in Automated Theorem Proving by Induction

  • Chapter
Automated Mathematical Induction
  • 74 Accesses

Abstract

Zhang, Kapur, and Krishnamoorthy introduced a cover set method for designing induction schemes for automating proofs by induction from specifications expressed as equations and conditional equations. This method has been implemented in the theorem prover Rewrite Rule Laboratory (RRL) and a proof management system Tecton built on top of RRL, and it has been used to prove many nontrivial theorems and reason about sequential as well as parallel programs. The cover set method is based on the assumption that a function symbol is defined by using a finite set of terminating (conditional or unconditional) rewrite rules. The termination ordering employed in orienting the rules is used to perform proofs by well-founded induction. The left sides of the rules are used to design different cases of an induction scheme, and recursive calls to the function made in the right side can be used to design appropriate instantiations for generating induction hypotheses. A weakness of this method is that it relies on syntactic unification for generating an induction scheme for a conjecture. This paper goes a step further by proposing semantic analysis for generating an induction scheme for a conjecture from a cover set. We discuss the use of a decision procedure for Presburger arithmetic (quantifier-free theory of numbers with the addition operation and relational predicates >, <, ≠, =, ≥, ≤) for performing semantic analysis about numbers. The decision procedure is used to generate appropriate induction schemes for a conjecture by using cover sets of function taking numbers as arguments. This extension of the cover set method automates proofs of many theorems that otherwise require human guidance and hints. The effectiveness of the method is demonstrated by using some examples that commonly arise in reasoning about specifications and programs. It is also shown how semantic analysis using a Presburger arithmetic decision procedure can be used for checking the completeness of a cover set of a function defined by using operations such as + and − on numbers. With this check, many function definitions used in a proof of the prime factorization theorem stating that every number can be factored uniquely into prime factors, which had to be checked manually, can now be checked automatically in RRL. The use of the decision procedure for guiding generalization for generating conjectures and merging induction schemes is also illustrated.

Partially supported by the National Science Foundation Grant No. CCR-9303394 and subcontract CB0249 of SRI contract MDA904-92-C-5186 with The Maryland Procurement Office.

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
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover 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. Boyer, R. S. and Moore, J S.: A Computational Logic, ACM Monographs in Computer Science, 1979.

    Google Scholar 

  2. Boyer, R. S. and Moore, J S.: A Computational Logic Handbook, Academic Press, New York, 1988.

    MATH  Google Scholar 

  3. Boyer, R. S. and Moore, J S.: Integrating decision procedures into heuristic theorem provers: A case study of linear arithmetic, Machine Intelligence 11 (1988), 83–157.

    MathSciNet  Google Scholar 

  4. Dershowitz, N.: Termination of rewriting, J. Symbolic Computation 3 (1987), 69–116.

    Article  MathSciNet  MATH  Google Scholar 

  5. Jouannaud, J.-P. and Kounalis, E.: Automatic proofs by induction in theories without constructors, Information and Computation 82 (1989), 1–33.

    Article  MathSciNet  MATH  Google Scholar 

  6. Kapur, D.: An automated tool for analyzing completeness of equational specifications, in Proc. Int. Symp. Software Testing and Analysis (ISSTA), Seattle, August 1994, pp. 28–43.

    Google Scholar 

  7. Kapur, D., Musser, D. R., and Nie, X.: An overview of the Tecton proof system, in Theoret. Computer Science Journal, special issue on Formal Methods in Databases and Software Engineering (ed. V. Alagar), Vol. 133, October 1994, pp. 307–339.

    Google Scholar 

  8. Kapur, D., Narendran, P., Rosenkrantz, D., and Zhang, H.: Sufficient-completeness, quasi-reducibility and their complexity, Acta Infortnatica 28 (1991), 311–350.

    Article  MathSciNet  MATH  Google Scholar 

  9. Kapur, D. and Nie, X.: Reasoning about numbers in Tecton, in Proc. 8th Int. Symp. Methodologies for Intelligent Systems (ISMIS’94), Charlotte, NC, October 1994, pp. 57–70.

    Google Scholar 

  10. Kapur, D. and Zhang, H.: An overview of Rewrite Rule Laboratory (RRL), J. Computer Math. Appt. 29 (2) (1995), 91–114.

    Article  MathSciNet  Google Scholar 

  11. Walther, C.: Combining induction axioms by machine, Proc. 12th Int. Joint Conf. Artificial Intelligence, Chambery, France, 1993.

    Google Scholar 

  12. Zhang, H.: Reduction, superposition and induction: Automated reasoning in an equational logic, Ph.D. Thesis, Department of Computer Science, Rensselaer PolytechnicInstitute, Troy, NY, 1988.

    Google Scholar 

  13. Zhang, H., Kapur, D., and Krishnamoorthy, M. S.: A mechanizable induction principle for equational specifications, in Proc. 9th Int. Conf. Automated Deduction (CADE-9), Argonne, IL, LNCS 310, Springer-Verlag, 1988, pp. 250–265.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1996 Kluwer Academic Publishers

About this chapter

Cite this chapter

Kapur, D., Subramaniam, M. (1996). New Uses of Linear Arithmetic in Automated Theorem Proving by Induction. In: Zhang, H. (eds) Automated Mathematical Induction. Springer, Dordrecht. https://doi.org/10.1007/978-94-009-1675-3_2

Download citation

  • DOI: https://doi.org/10.1007/978-94-009-1675-3_2

  • Publisher Name: Springer, Dordrecht

  • Print ISBN: 978-94-010-7250-2

  • Online ISBN: 978-94-009-1675-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics