A Framework for Interactive Proof

This paper introduces Proof General Kit, a framework for software components tailored to interactive proof development. The goal of the framework is to enable flexible environments for managing formal proofs across their life-cycle: creation, maintenance and exploitation. The framework connects together different kinds of component, exchanging messages using a common communication infrastructure and protocol called PGIP. The main channel connects proversto displays. Provers are the back-end interactive proof engines and displays are components for interacting with the user, allowing browsing or editing of proofs. At the core of the framework is a brokermiddleware component which manages proof-in-progress and mediates between components.

[1]  Christoph Benzmüller,et al.  PlatOmega: A Mediator between Text-Editors and Proof Assistance Systems , 2007, UITP@FLoC.

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

[3]  Paul A. Cairns,et al.  Integrating Searching and Authoring in Mizar , 2007, Journal of Automated Reasoning.

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

[5]  Burkhart Wolff,et al.  Functional design and implementation of graphical user interfaces for theorem provers , 1999, Journal of Functional Programming.

[6]  Sherry Shavor,et al.  The Java Developer's Guide to Eclipse , 2003 .

[7]  Colin Runciman,et al.  Haskell and XML: generic combinators or type-based translation? , 1999, ICFP '99.

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

[9]  Serge Autexier,et al.  PLATΩ : A Mediator between Text-Editors and Proof Assistance Systems , 2006 .

[10]  Daniel Kroening,et al.  Formal verification of pipelined microprocessors , 2001, Ausgezeichnete Informatikdissertationen.

[11]  C. M. Sperberg-McQueen,et al.  Extensible Markup Language (XML) , 1997, World Wide Web J..

[12]  Einar Broch Johnsen,et al.  Theorem Reuse by Proof Term Transformation , 2004, TPHOLs.

[13]  Tobias Nipkow,et al.  Machine-Checking the Java Specification: Proving Type-Safety , 1999, Formal Syntax and Semantics of Java.

[14]  Carl-Johan H. Seger,et al.  An industrially effective environment for formal hardware verification , 2005, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[15]  Jacques D. Fleuriot,et al.  Higher Order Rippling in IsaPlanner , 2004, TPHOLs.

[16]  Olivier Pons,et al.  Notions of dependency in proof assistants , 1998 .

[17]  Larry Wos,et al.  What Is Automated Reasoning? , 1987, J. Autom. Reason..

[18]  Serge Autexier,et al.  The MathServe System for Semantic Web Reasoning Services , 2006, IJCAR.

[19]  Luca Padovani,et al.  HELM and the Semantic Math-Web , 2001, TPHOLs.

[20]  Herman Geuvers,et al.  A Constructive Proof of the Fundamental Theorem of Algebra without Using the Rationals , 2000, TYPES.

[21]  Burkhart Wolff,et al.  Assisted Proof Document Authoring , 2005, MKM.

[22]  David Aspinall Protocols for Interactive e-Proof , 2000 .

[23]  Tiziana Margaria,et al.  The Electronic Tool Integration platform: concepts and design , 1997, International Journal on Software Tools for Technology Transfer.

[24]  Richard J. Boulton,et al.  The PROSPER toolkit , 2003, International Journal on Software Tools for Technology Transfer.

[25]  J. Siekmann,et al.  Computer supported mathematics with MEGA , 2005 .

[26]  Jörg H. Siekmann,et al.  Computer supported mathematics with Omegamega , 2006, J. Appl. Log..

[27]  Michael Kohlhase,et al.  OMDoc - An Open Markup Format for Mathematical Documents [version 1.2] , 2006, Lecture Notes in Computer Science.

[28]  Michael Kohlhase,et al.  MathDox : mathematical documents on the web , 2006 .

[29]  Laurent Théry,et al.  Colouring Proofs: A Lightweight Approach to Adding Formal Structure to Proofs , 2004, UITP@TPHOLs.