Skip to main content

Reasoning Inductively about Z Specifications via Unification

  • Conference paper
  • First Online:
  • 189 Accesses

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1878))

Abstract

Selecting appropriate induction cases is one of the major problems in proof by induction. Heuristic strategies often use the recursive pattern of definitions and lemmas in making these selections. In this paper, we describe a general framework, based upon unification, that encourages and supports the use of such heuristic strategies within a Z-based proof system. The framework is general in that it is not bound to any particular selection strategies and does not rely on conjectures being in a “normal form” such as equations. We illustrate its generality with proofs using different strategies, including a simultaneous proof of two theorems concerning mutually-defined relations; these theorems are expressed in a non-equational form, involving both universal and existential quantifiers.

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

Buying options

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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. R.D. Arthan. Recursive definitions in Z. In J.P. Bowen, A. Fett, and M.G. Hinchey, editors, Proceedings 11th International Conference of Z Users, ZUM’98: The Z Formal Specification Notation, pages 154–171. Springer, 1998.

    Google Scholar 

  2. R. Aubin. Mechanizing structural induction. TCS, 9:329–362, 1979.

    Article  MATH  MathSciNet  Google Scholar 

  3. F. Baader and J. Siekmann. Unification theory. In D.M. Gabbay, C.J. Hooger, and J.A. Robinson, editors, Handbook of Logic in Artificial Intelligence and Logic Programming, Vol. 2: Deduction Methodologies, pages 41–125. Carendon Press, Oxford, 1994.

    Google Scholar 

  4. R. Barnett, D. Basin, and J. Hesketh. A recursion planning analysis of inductive completion. Annals of Mathematics and Artificial Intelligence, 8(3–4):363–381, 1993.

    Article  MATH  Google Scholar 

  5. A. Bouhoula, E. Kounalis, and M. Rusinowitch. Automated mathematical induction. Journal of Logic and Computation, 5:631–668, 1985.

    Article  MathSciNet  Google Scholar 

  6. R.S. Boyer and J.S. Moore. A Computational Logic. Academic Press, 1979.

    Google Scholar 

  7. F. Bronsard, U.S. Reddy, and R.W. Hasker. Induction using term orders. Journal of Automated Reasoning, 16:3–37, 1996.

    Article  MATH  MathSciNet  Google Scholar 

  8. A. Bundy, A. Stevens, F. van Harmelan, A. Ireland, and A. Smaill. Rippling: A heuristic for guiding inductive proof. Artificial Intelligence, 62:185–253, 1993.

    Article  MATH  MathSciNet  Google Scholar 

  9. H. Comon. Sufficient completeness, term rewriting systems and “anti-unification”. In CADE-8, LNCS 230, pages 128–140. Springer, 1986.

    Google Scholar 

  10. D.A. Duffy. Principles of Automated Theorem Proving. Wiley, 1991.

    Google Scholar 

  11. D.A. Duffy. A generalised coverset induction principle. Internal Report, Department of Computer Science, University of York, 1999.

    Google Scholar 

  12. L. Fribourg. A strong restriction of the inductive completion procedure. J. Symbolic Computation, 8(3):253–276, 1989.

    Article  MATH  MathSciNet  Google Scholar 

  13. J. Giesl, C. Walther, and J. Brauberger. Termination analysis for functional programs. In W. Bibel and P.H. Schmitt, editors, Automated Deduction-A Basis for Applications, Volume III, pages 135–164. Kluwer, 1998.

    Google Scholar 

  14. G. Huet and J. Hullot. Proofs by induction in equational theories with constructors. JCSS, 23:239–266, 1982.

    MathSciNet  Google Scholar 

  15. D. Hutter. Guiding induction proofs. In CADE-10, LNAI 449, pages 147–161. Springer, 1990.

    Google Scholar 

  16. D. Kapur, P. Narendran, and H. Zhang. Proof by induction using test sets. In CADE-8, LNCS 230, pages 99–117. Springer, 1986.

    Google Scholar 

  17. I. Kraan, D. Basin, and A. Bundy. Middle-out reasoning for synthesis and induction. Journal of Automated Reasoning, 16:113–145, 1996.

    Article  MATH  MathSciNet  Google Scholar 

  18. D. McAllester and K. Arkoudas. Walther recursion. In CADE-13, LNCS 1493, pages 643–657. Springer, 1996.

    Google Scholar 

  19. D.R. Musser. On proving inductive properties of abstract data types. In Proc. 7th POPL Conf., pages 154–162, 1980.

    Google Scholar 

  20. M. Protzen. Lazy generation of induction hypotheses. In CADE-12, LNCS 814, pages 42–56. Springer, 1994.

    Google Scholar 

  21. U.S. Reddy. Term rewriting induction. In CADE-10, LNAI 449, pages 162–177. Springer, 1990.

    Google Scholar 

  22. C. Sengler. Termination of algorithms over non-freely generated data types. In CADE-13, LNCS 1493, pages 121–135. Springer, 1996.

    Google Scholar 

  23. K. Slind. Derivation and use of induction schemes in higher-order logic. InE. L. Gunter and A. Felty, editors, Proceedings of the 10th International Conference on Theorem Proving in Higher Order Logics (TPHOLs’97), volume 1275 of Lecture Notes in Computer Science, pages 275–290, Murray Hill, NJ, USA, August 1997. Springer.

    Chapter  Google Scholar 

  24. J.M. Spivey. The Z Notation: A Reference Manual, Second Edition. Prentice Hall, 1992.

    Google Scholar 

  25. I. Toyn. Z standard (draft). Available from the Department of Computer Science, University of York at the web address http://www.cs.york.ac.uk/~ian/zstan, 1999.

  26. I. Toyn. CADiZ. Available from the Department of Computer Science, University of York at the web address http://www.cs.york.ac.uk/~ian/cadiz/home.html, 2000.

  27. C. Walther. Mathematic induction. In D.M. Gabbay, C.J. Hooger, and J.A. Robinson, editors, Handbook of Logic in Artificial Intelligence and Logic Programming, Vol. 2: Deduction Methodologies, pages 127–228. Clarendon Press, Oxford, 1994.

    Google Scholar 

  28. H. Zhang, D. Kapur, and M.S. Krishnamoorthy. A mechanizable induction principle for equational specifications. In CADE-9, pages 162–181. Springer Verlag, 1988.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

Copyright information

© 2000 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Duffy, D.A., Toyn, I. (2000). Reasoning Inductively about Z Specifications via Unification. In: ZB 2000: Formal Specification and Development in Z and B. ZB 2000. Lecture Notes in Computer Science, vol 1878. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44525-0_6

Download citation

  • DOI: https://doi.org/10.1007/3-540-44525-0_6

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-540-44525-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics