61,757 research outputs found
Metamathematics in Coq
Chapter 1: Automated Proof Construction in Type Theory using Resolution.
We describe techniques to integrate resolution logic in type
theory. Refutation proofs obtained by resolution are translated
into lambda-terms, using reflection and an encoding of
resolution proofs in minimal logic. Thereby we obtain a
verification procedure for resolution proofs, and, more
importantly, we add the power of resolution theorem provers to
interactive proof construction systems based on type theory. We
introduce a novel representation of clauses in minimal logic such
that the lambda-representation of resolution steps is
linear in the size of the premisses. A clausification algorithm,
equipped with a correctness proof, is encoded in Coq.
Chapter 2: Proof Reflection in Coq.
Natural deduction for first-order logic is formalised in the
proof assistant Coq, using de Bruijn indices for variable binding.
The main judgement is of the form G |- d [:] p, stating
that d is a proof term of formula p under
hypotheses G; it can be viewed as a typing relation by the
Curry-Howard isomorphism. This relation is proved sound with
respect to Coq's native logic and is amenable to the manipulation
of formulas and of derivations. As an illustration, I define a
reduction relation on proof terms with permutative conversions and
prove the property of subject reduction.
Chapter 3: Adbmal
To make the notion of scope in the lambda-calculus
explicit, we extend the syntax of the lambda-calculus with
an end-of-scope operator adbmal. The idea is that an
adbmal x ends the scope of the matching
lambda x above it (in the term tree). Accordingly,
beta-reduction is extended to the set of scoped
lambda-terms by performing minimal scope
extrusion before performing replication as usual. We show
confluence of the resulting scoped -reduction. Confluence of
beta-reduction for the ordinary lambda-calculus
is obtained as a corollary, by extruding scopes maximally
before forgetting them altogether. Only in this final forgetful
step, alpha-equivalence is needed. All our proofs have
been verified in Coq
A Framework for Program Development Based on Schematic Proof
Often, calculi for manipulating and reasoning about programs can be recast as calculi for synthesizing programs. The difference involves often only a slight shift of perspective: admitting metavariables into proofs. We propose that such calculi should be implemented in logical frameworks that support this kind of proof construction and that such an implementation can unify program verification and synthesis. Our proposal is illustrated with a worked example developed in Paulson's Isabelle system. We also give examples of existent calculi that are closely related to the methodology we are proposing and others that can be profitably recast using our approach
The use of data-mining for the automatic formation of tactics
This paper discusses the usse of data-mining for the automatic formation of tactics. It was presented at the Workshop on Computer-Supported Mathematical Theory Development held at IJCAR in 2004. The aim of this project is to evaluate the applicability of data-mining techniques to the automatic formation of tactics from large corpuses of proofs. We data-mine information from large proof corpuses to find commonly occurring patterns. These patterns are then evolved into tactics using genetic programming techniques
Smart matching
One of the most annoying aspects in the formalization of mathematics is the
need of transforming notions to match a given, existing result. This kind of
transformations, often based on a conspicuous background knowledge in the given
scientific domain (mostly expressed in the form of equalities or isomorphisms),
are usually implicit in the mathematical discourse, and it would be highly
desirable to obtain a similar behavior in interactive provers. The paper
describes the superposition-based implementation of this feature inside the
Matita interactive theorem prover, focusing in particular on the so called
smart application tactic, supporting smart matching between a goal and a given
result.Comment: To appear in The 9th International Conference on Mathematical
Knowledge Management: MKM 201
A Vernacular for Coherent Logic
We propose a simple, yet expressive proof representation from which proofs
for different proof assistants can easily be generated. The representation uses
only a few inference rules and is based on a frag- ment of first-order logic
called coherent logic. Coherent logic has been recognized by a number of
researchers as a suitable logic for many ev- eryday mathematical developments.
The proposed proof representation is accompanied by a corresponding XML format
and by a suite of XSL transformations for generating formal proofs for
Isabelle/Isar and Coq, as well as proofs expressed in a natural language form
(formatted in LATEX or in HTML). Also, our automated theorem prover for
coherent logic exports proofs in the proposed XML format. All tools are
publicly available, along with a set of sample theorems.Comment: CICM 2014 - Conferences on Intelligent Computer Mathematics (2014
- …