## Abstract

A theory of recursive definitions has been mechanized in Isabelle's Zermelo-Fraenkel (ZF) set theory. The objective is to support the formalization of particular recursive definitions for use in verification, semantics proofs, and other computational reasoning.

*Inductively defined sets* are expressed as least fixedpoints, applying the Knaster-Tarski theorem over a suitable set.*Recursive functions* are defined by well-founded recursion and its derivatives, such as transfinite recursion.*Recursive data structures* are expressed by applying the Knaster-Tarski theorem to a set, such as*V*
_{ω}, that is closed under Cartesian product and disjoint sum.

Worked examples include the transitive closure of a relation, lists, variable-branching trees, and mutually recursive trees and forests. The Schröder-Bernstein theorem and the soundness of propositional logic are proved in Isabelle sessions.

This is a preview of subscription content, log in to check access.

## References

- 1.
Abramsky, S.: The lazy lambda calculus, in D. A. Turner, (ed.)

*Research Topics in Functional Programming*, Addison-Wesley, Reading, MA, 1977, pp. 65–116. - 2.
Aczel, P.:

*Non-Well-Founded Sets*, CSLI, 1988. - 3.
Bledsoe, W. W.: Non-resolution theorem proving,

*Art. Intel.***9**(1977), 1–35. - 4.
Boyer, R. S. and Moore, J. S.:

*A Computational Logic*, Academic Press, New York, 1979. - 5.
Camilleri, J. and Melham, T. F.: Reasoning with inductively defined relations in the HOL theorem prover, Tech. Rep. 265, Comp. Lab., Univ. Cambridge, 1992.

- 6.
Coquand, T. and Paulin, C.: Inductively defined types, in

*COLOG-88: International Conference on Computer Logic*, LNCS 417, Springer, 1990, pp. 50–66. - 7.
Davey, B. A. and Priestley, H. A.:

*Introduction to Lattices and Order*, Cambridge Univ. Press, 1990. - 8.
Devlin, K. J.:

*Fundamentals of Contemporary Set Theory*, Springer, 1979. - 9.
Girard, J.-Y.:

*Proofs and Types*, Translated by Yves LaFont and Paul Taylor, Cambridge Univ. Press, 1989. - 10.
Givan, R., McAllester, D., Witty, C. and Zalondek, K.: Ontic: Language specification and user's manual, Tech. Rep., MIT, 1992, Draft 4.

- 11.
Halmos, P. R.:

*Naive Set Theory*, Van Nostrand, New York, 1960. - 12.
Manna, Z. and Waldinger, R.: Deductive synthesis of the unification algorithm,

*Sci. Comput. Programming***1**(1) (1981), 5–48. - 13.
Martin-Löf, P.:

*Intuitionistic Type Theory*, Bibliopolis, 1984. - 14.
McDonald, J. and Suppes, P.: Student use of an interactive theorem prover, In W. W. Bledsoe and D. W. Loveland (eds),

*Automated Theorem Proving: After 25 Years*, American Mathematical Society, 1984, pp. 315–360. - 15.
Melham, T. F.: Automating recursive type definitions in higher order logic, in G. Birtwistle and P. A. Subrahmanyam (eds),

*Current Trends in Hardware Verification and Automated Theorem Proving*, Springer, 1989, pp. 341–386. - 16.
Milner, R.:

*Communication and Concurrency*, Prentice-Hall, Englewood Cliffs, NJ, 1989. - 17.
Milner, R., Tofte, M. and Harper, R.:

*The Definition of Standard ML*, MIT Press, Cambridge, MA, 1990. - 18.
Noël, P.: Experimenting with Isabelle in ZF set theory,

*J. Auto. Reas.***10**(1) (1993), 15–58. - 19.
Nordström, B.: Terminating general recursion,

*BIT***28**(1988), 605–619. - 20.
Nordström, B., Petersson, K. and Smith, J.:

*Programming in Martin-Löf's Type Theory*, An Introduction, Oxford University Press, 1990. - 21.
Paulson, L. C.: Constructing recursion operators in intuitionistic type theory,

*J. Symb. Comput.***2**(1986) 325–355. - 22.
Paulson, L. C.: Set theory for verification: I. From foundations to functions,

*J. Auto. Reas.***11**(3) (1993), 353–389. - 23.
Paulson, L. C.: A concrete final coalgebra theorem for ZF set theory, Tech. Rep., Comp. Lab., Univ. Cambridge, 1994.

- 24.
Paulson, L. C.: A fixedpoint approach to implementing (co)inductive definitions, in A. Bundy (ed.),

*12th Conf. Auto. Deduct.*, LNAI 814, Springer, 1994, pp. 148–161. - 25.
Schroeder-Heister, P.: Generalized rules for quantifiers and the completeness of the intuitionistic operators &, ∨, ⊥, ⊥, ∀, ∃, in

*Computation and Proof Theory: Logic Colloquium '83*, Lecture Notes in Math. 1104, Springer, 1984, pp. 399–426. - 26.
Smith, J.: The identification of propositions and types in Martin-Löf's type theory: A programming example, in M. Karpinski (ed.),

*Foundations of Computation Theory*, LNCS 158, Springer, 1983, pp. 445–456. - 27.
Suppes, P.:

*Axiomatic Set Theory*, Dover, New York, 1972.

## Author information

### Affiliations

## Rights and permissions

## About this article

### Cite this article

Paulson, L.C. Set theory for verification. II: Induction and recursion.
*J Autom Reasoning* **15, **167–215 (1995). https://doi.org/10.1007/BF00881916

Received:

Revised:

Issue Date:

### Key words

- Isabelle
- set theory
- recursive definitions
- the Schröder-Bernstein theorem

### AMS Subject Classification

- 03E15
- 68T15