Building Formal Method Tools in the Isabelle/Isar Framework

We present the generic system framework of Isabelle/Isar underlying recent versions of Isabelle. Among other things, Isar provides an infrastructure for Isabelle plug-ins, comprising extensible state components and extensible syntax that can be bound to tactical ML programs. Thus the Isabelle/Isar architecture may be understood as an extension and refinement of the traditional "LCF approach", with explicit infrastructure for building derivative systems. To demonstrate the technical potential of the framework, we apply it to a concrete formal methods tool: the HOL-Z 3.0 environment, which is geared towards the analysis of Z specifications and formal proof of forward-refinements.

[1]  Achim D. Brucker,et al.  The HOL-OCL Book , 2006 .

[2]  G. Plotkin,et al.  Proof, language, and interaction: essays in honour of Robin Milner , 2000 .

[3]  Achim D. Brucker,et al.  HOL-Z 2.0: A Proof Environment for Z-Specifications , 2003, J. Univers. Comput. Sci..

[4]  Markus Wenzel,et al.  Isar - A Generic Interpretative Approach to Readable Formal Proof Documents , 1999, TPHOLs.

[5]  Michael J. C. Gordon,et al.  Edinburgh LCF: A mechanised logic of computation , 1979 .

[6]  David Aspinall,et al.  Proof General: A Generic Tool for Proof Development , 2000, TACAS.

[7]  Christine Paulin-Mohring,et al.  The coq proof assistant reference manual , 2000 .

[8]  Stefan Berghofer,et al.  Inductive Datatypes in HOL - Lessons Learned in Formal-Logic Engineering , 1999, TPHOLs.

[9]  J. Michael Spivey,et al.  The Z notation - a reference manual , 1992, Prentice Hall International Series in Computer Science.

[10]  Piergiorgio Odifreddi,et al.  Logic and computer science , 1990 .

[11]  Freek Wiedijk,et al.  The Seventeen Provers of the World , 2006 .

[12]  John Harrison,et al.  HOL Done Right , 1995 .

[13]  Rajeev Alur,et al.  A Temporal Logic of Nested Calls and Returns , 2004, TACAS.

[14]  David Aspinall,et al.  Formalising Java's Data Race Free Guarantee , 2007, TPHOLs.

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

[16]  Robin Milner,et al.  Edinburgh lcf: a mechanized logic of computation , 1978 .

[17]  Markus Wenzel,et al.  Isabelle/Isar , 2006, The Seventeen Provers of the World.

[18]  Michael J. C. Gordon,et al.  From LCF to HOL: a short history , 2000, Proof, Language, and Interaction.

[19]  Lawrence C. Paulson,et al.  Designing a Theorem Prover , 1993, LICS 1993.

[20]  Hugo Herbelin,et al.  The Coq proof assistant : reference manual, version 6.1 , 1997 .

[21]  Freek Wiedijk,et al.  The Seventeen Provers of the World, Foreword by Dana S. Scott , 2006, The Seventeen Provers of the World.

[22]  Samson Abramsky,et al.  Handbook of logic in computer science. , 1992 .

[23]  Christine Paulin-Mohring,et al.  The Coq Proof Assistant A Tutorial , 2005 .

[24]  Burkhart Wolff,et al.  A Structure Preserving Encoding of Z in Isabelle/HOL , 1996, TPHOLs.

[25]  M. Gordon,et al.  Introduction to HOL: a theorem proving environment for higher order logic , 1993 .

[26]  Achim D. Brucker,et al.  Test-Sequence Generation with Hol-TestGen with an Application to Firewall Testing , 2007, TAP.

[27]  John Harrison,et al.  HOL Light: A Tutorial Introduction , 1996, FMCAD.