Set theory for verification: I. From foundations to functions

A logic for specification and verification is derived from the axioms of Zermelo-Fraenkel set theory. The proofs are performed using the proof assistant Isabelle. Isabelle is generic, supporting several different logics. Isabelle has the flexibility to adapt to variants of set theory. Its higher-order syntax supports the definition of new binding operators. Unknowns in subgoals can be instantiated incrementally. The paper describes the derivation of rules for descriptions, relations, and functions and discusses interactive proofs of Cantor's Theorem, the Composition of Homomorphisms challenge [9], and Ramsey's Theorem [5]. A generic proof assistant can stand up against provers dedicated to particular logics.

[1]  Brian T. Graham The Secd Microprocessor: A Verification Case Study , 1992 .

[2]  Joseph R. Shoenfield The axioms of set theory , 1977 .

[3]  Leslie Lamport,et al.  The temporal logic of actions , 1994, TOPL.

[4]  M. Gordon HOL: A Proof Generating System for Higher-Order Logic , 1988 .

[5]  Kenneth Kunen,et al.  Set Theory: An Introduction to Independence Proofs , 2010 .

[6]  Matt Kaufmann,et al.  An extension of the Boyer-Moore Theorem Prover to support first-order quantification , 1992, Journal of Automated Reasoning.

[7]  Bengt Nordström,et al.  Programming in Martin-Lo¨f's type theory: an introduction , 1990 .

[8]  Lawrence C. Paulson,et al.  Isabelle: The Next 700 Theorem Provers , 2000, ArXiv.

[9]  Domenico Cantone Decision procedures for elementary sublanguages of set theory: X. Multilevel syllogistic extended by the singleton and powerset operators , 2004, Journal of Automated Reasoning.

[10]  Brian T. Graham,et al.  The SECD Microprocessor , 1992 .

[11]  Bengt Nordström,et al.  Programming in Martin-Löf's Type Theory , 1990 .

[12]  Peter Aczel,et al.  Non-well-founded sets , 1988, CSLI lecture notes series.

[13]  Dominique Pastre Automatic Theorem Proving in Set Theory , 1978, Artif. Intell..

[14]  K. Gödel The Consistency of the Axiom of Choice and of the Generalized Continuum-Hypothesis. , 1938, Proceedings of the National Academy of Sciences of the United States of America.

[15]  P. Halmos Naive Set Theory , 1961 .

[16]  D. Prawitz Ideas and Results in Proof Theory , 1971 .

[17]  Tom Melham,et al.  Higher Order Logic Theorem Proving and Its Applications , 1994, Lecture Notes in Computer Science.

[18]  Journal of automated reasoning , 1986 .

[19]  Lawrence C. Paulson,et al.  Mechanizing set theory , 1996, Journal of Automated Reasoning.

[20]  Lawrence C. Paulson,et al.  The foundation of a generic theorem prover , 1989, Journal of Automated Reasoning.

[21]  David A. Plaisted,et al.  Term Rewriting: Some Experimental Results , 1991, J. Symb. Comput..

[22]  C. Torrance Review: Kurt Gödel, The Consistency of the Axiom of Choice and of the Generalized Continuum-Hypothesis with the Axioms of Set Theory , 1941 .

[23]  Christine Paulin-Mohring,et al.  Programming with Streams in Coq - A Case Study: the Sieve of Eratosthenes , 1994, TYPES.

[24]  Lawrence C. Paulson Introduction to Isabelle , 1999 .

[25]  Tom Melham,et al.  Higher Order Logic Theorem Proving and Its Applications , 1995, Lecture Notes in Computer Science.

[26]  Peter B. Andrews,et al.  AUTOMATING HIGHER-ORDER LOGIC , 1984 .

[27]  Patrick Suppes,et al.  Student use of an interactive theorem prover , 1984 .

[28]  Amy P. Felty A Logic Program for Transforming Sequent Proofs to Natural Deduction Proofs , 1989, ELP.

[29]  Art Quaife,et al.  Automated deduction in von Neumann-Bernays-Gödel set theory , 1992, Journal of Automated Reasoning.

[30]  Tobias Nipkow Constructive Rewriting , 1991, Comput. J..

[31]  Simon Thompson,et al.  Type theory and functional programming , 1991, International computer science series.

[32]  Lawrence C. Paulson,et al.  Set theory for verification. II: Induction and recursion , 1995, Journal of Automated Reasoning.

[33]  W. W. Bledsoe,et al.  SET-VAR , 2004, Journal of Automated Reasoning.

[34]  W. W. Bledsoe,et al.  Non-Resolution Theorem Proving , 1977, Artif. Intell..

[35]  Gérard P. Huet,et al.  A Unification Algorithm for Typed lambda-Calculus , 1975, Theor. Comput. Sci..

[36]  Frank M. Brown,et al.  Towards the Automation of Set Theory and its Logic , 1978, Artif. Intell..

[37]  Sidney C. Bailin A λ-unifiability test for set theory , 2004, Journal of Automated Reasoning.

[38]  D. McCarty Realizability and recursive mathematics , 1985 .

[39]  Sentot Kromodimoeljo,et al.  An EVES Data Abstraction Example , 1993, FME.

[40]  P. Cameron Naïve set theory , 1998 .

[41]  Larry Wos,et al.  Set theory in first-order logic: Clauses for Gödel's axioms , 1986, Journal of Automated Reasoning.

[42]  K. Devlin Fundamentals of contemporary set theory , 1979 .

[43]  Michael J. C. Gordon,et al.  Why higher-order logic is a good formalism for specifying and verifying hardware , 1985 .

[44]  David Basin,et al.  The Boyer-Moore Prover and Nuprl: an experimental comparison , 1991 .

[45]  P. A. J. Noel,et al.  Experimenting with Isabelle in ZF set theory , 1993, Journal of Automated Reasoning.

[46]  Dave Barker-Plummer,et al.  −-match: An inference rule for incrementally elaborating set instantiations , 2004, Journal of Automated Reasoning.

[47]  Dale Miller,et al.  Unification Under a Mixed Prefix , 1992, J. Symb. Comput..

[48]  Francis Jeffry Pelletier,et al.  Seventy-five problems for testing automatic theorem provers , 1986, Journal of Automated Reasoning.

[49]  Patrick Suppes,et al.  Axiomatic set theory , 1969 .