29 research outputs found

    Automating Inductive Proofs using Theory Exploration

    Get PDF
    HipSpec is a system for automatically deriving and proving properties about functional programs. It uses a novel approach, combining theory exploration, counterexample testing and inductive theorem proving. HipSpec automatically generates a set of equational theorems about the available recursive functions of a program. These equational properties make up an algebraic specification for the program and can in addition be used as a background theory for proving additional user-stated properties. Experimental results are encouraging: HipSpec compares favourably to other inductive theorem provers and theory exploration systems

    Tools and techniques for machine-assisted meta-theory

    Get PDF
    Machine-assisted formal proofs are becoming commonplace in certain fields of mathematics and theoretical computer science. New formal systems and variations on old ones are constantly invented. The meta-theory of such systems, i.e. proofs about the system as opposed to proofs within the system, are mostly done informally with a pen and paper. Yet the meta-theory of deductive systems is an area which would obviously benefit from machine support for formal proof. Is the software currently available sufficiently powerful yet easy enough to use to make machine assistance for formal meta-theory a viable proposition? This thesis presents work done by the author on formalizing proof theory from [DP97a] in various formal systems: SEQUEL [Tar93, Tar97], Isabelle [Pau94] and Coq [BB+96]. SEQUEL and Isabelle were found to be difficult to use for this type of work. In particular, the lack of automated production of induction principles in SEQUEL and Isabelle undermined confidence in the resulting formal proofs. Coq was found to be suitable for the formalisation methodology first chosen: the use of nameless dummy variables (de Bruijn indices) as pioneered in [dB72]. A second approach (inspired by the work of McKinna and Pollack [vBJMR94, MP97]) formalising named variables was also the subject of some initial work, and a comparison of these two approaches is presented. The formalisation was restricted to the implicational fragment of propositional logic. The informal theory has been extended to cover full propositional logic by Dyckhoff and Pinto, and extension of the formalisation using de Bruijn indices would appear to present few difficulties. An overview of other work in this area, in terms of both the tools and formalisation methods, is also presented. The theory formalised differs from other such work in that other formalisations have involved only one calculus. [DP97a] involves the relationships between three different calculi. There is consequently a much greater requirement for equality reasoning in the formalisation. It is concluded that a formalisation of any significance is still difficult, particularly one involving multiple calculi. No tools currently exist that allow for the easy representation of even quite simple systems in a way that fits human intuitions while still allowing for automatic derivation of induction principles. New work on integrating higher order abstract syntax and induction may be the way forward, although such work is still in the early stages

    A TLA+ Proof System

    Get PDF
    We describe an extension to the TLA+ specification language with constructs for writing proofs and a proof environment, called the Proof Manager (PM), to checks those proofs. The language and the PM support the incremental development and checking of hierarchically structured proofs. The PM translates a proof into a set of independent proof obligations and calls upon a collection of back-end provers to verify them. Different provers can be used to verify different obligations. The currently supported back-ends are the tableau prover Zenon and Isabelle/TLA+, an axiomatisation of TLA+ in Isabelle/Pure. The proof obligations for a complete TLA+ proof can also be used to certify the theorem in Isabelle/TLA+

    Use of proof planning in normalisation

    Get PDF

    Principles of Superdeduction

    Get PDF
    International audienceIn predicate logic, the proof that a theorem P holds in a theory Th is typically conducted in natural deduction or in the sequent calculus using all the information contained in the theory in a uniform way. Introduced ten years ago, Deduction modulo allows us to make use of the computational part of the theory Th for true computations modulo which deductions are performed. Focussing on the sequent calculus, this paper presents and studies the dual concept where the theory is used to enrich the deduction system with new deduction rules in a systematic, correct and complete way. We call such a new deduction system "superdeduction''. We introduce a proof-term language and a cut-elimination procedure both based on Christian Urban's work on classical sequent calculus. Strong normalisation is proven under appropriate and natural hypothesis, therefore ensuring the consistency of the embedded theory and of the deduction system. The proofs obtained in such a new system are much closer to the human intuition and practice. We consequently show how superdeduction along with deduction modulo can be used to ground the formal foundations of new extendible proof assistants. We finally present lemuridae, our current implementation of superdeduction modulo

    MetTeL: A Generic Tableau Prover.

    Get PDF

    Automated Deduction – CADE 28

    Get PDF
    This open access book constitutes the proceeding of the 28th International Conference on Automated Deduction, CADE 28, held virtually in July 2021. The 29 full papers and 7 system descriptions presented together with 2 invited papers were carefully reviewed and selected from 76 submissions. CADE is the major forum for the presentation of research in all aspects of automated deduction, including foundations, applications, implementations, and practical experience. The papers are organized in the following topics: Logical foundations; theory and principles; implementation and application; ATP and AI; and system descriptions
    corecore