Set Theory for Verification: II
Induction and Recursion
Lawrence C. Paulson
Computer Laboratory, University of Cambridge
April 26, 1995
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 Schroder-Bernstein Theorem and the soundness of propositional logic are proved in Isabelle sessions.
Key words: Isabelle, set theory, recursive definitions, the Schroder-Bernstein Theorem