30,022 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
Recommended from our members
Transformation of propositional calculus statements into integer and mixed integer programs: An approach towards automatic reformulation
A systematic procedure for transforming a set of logical statements or logical conditions imposed on a model into an Integer Linear Progamming (ILP) formulation Mixed Integer Programming (MIP) formulation is presented. An ILP stated as a system of linear constraints involving integer variables and an objective function, provides a powerful representation of decision problems through a tightly interrelated closed system of choices. It supports direct representation of logical (Boolean or prepositional calculus) expressions. Binary variables (hereafter called logical variables) are first introduced and methods of logically connecting these to other variables are then presented. Simple constraints can be combined to construct logical relationships and the methods of formulating these are discussed. A reformulation procedure which uses the extended reverse polish representation of a compound logical form is then described. These reformulation procedures are illustrated by two examples. A scheme of implementation.ithin an LP modelling system is outlined
The Challenge of Unifying Semantic and Syntactic Inference Restrictions
While syntactic inference restrictions don't play an important role for SAT, they are an essential reasoning technique for more expressive logics, such as first-order logic, or fragments thereof. In particular, they can result in short proofs or model representations. On the other hand, semantically guided inference systems enjoy important properties, such as the generation of solely non-redundant clauses. I discuss to what extend the two paradigms may be unifiable
Higher-order Linear Logic Programming of Categorial Deduction
We show how categorial deduction can be implemented in higher-order (linear)
logic programming, thereby realising parsing as deduction for the associative
and non-associative Lambek calculi. This provides a method of solution to the
parsing problem of Lambek categorial grammar applicable to a variety of its
extensions.Comment: 8 pages LaTeX, uses eaclap.sty, to appear EACL9
A language for multiplicative-additive linear logic
A term calculus for the proofs in multiplicative-additive linear logic is
introduced and motivated as a programming language for channel based
concurrency. The term calculus is proved complete for a semantics in linearly
distributive categories with additives. It is also shown that proof equivalence
is decidable by showing that the cut elimination rewrites supply a confluent
rewriting system modulo equations.Comment: 16 pages without appendices, 30 with appendice
- …