Results 1 -
5 of
5
An Inductive Version of Nash-Williams’ Minimal-BadSequence Argument for Higman’s Lemma
- In P. Callaghan, e.al., Types for Proofs and Programs, Lecture Notes in Computer Science 2277
, 2001
"... Abstract. Higman’s lemma has a very elegant, non-constructive proof due to Nash-Williams [NW63] using the so-called minimal-bad-sequence argument. The objective of the present paper is to give a proof that uses the same combinatorial idea, but is constructive. For a two letter alphabet this was done ..."
Abstract
-
Cited by 3 (1 self)
- Add to MetaCart
Abstract. Higman’s lemma has a very elegant, non-constructive proof due to Nash-Williams [NW63] using the so-called minimal-bad-sequence argument. The objective of the present paper is to give a proof that uses the same combinatorial idea, but is constructive. For a two letter alphabet this was done by Coquand and Fridlender [CF94]. Here we present a proof in a theory of inductive definitions that works for arbitrary decidable well quasiorders. 1
A constructive proof of Higman’s lemma
- SME Conference Proceedings Bethlelem
, 1984
"... Abstract. Higman’s lemma, a specific instance of Kruskal’s theorem, is an interesting result from the area of combinatorics, which has often been used as a test case for theorem provers. We present a constructive proof of Higman’s lemma in the theorem prover Isabelle, based on a paper proof by Coqua ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
Abstract. Higman’s lemma, a specific instance of Kruskal’s theorem, is an interesting result from the area of combinatorics, which has often been used as a test case for theorem provers. We present a constructive proof of Higman’s lemma in the theorem prover Isabelle, based on a paper proof by Coquand and Fridlender. Making use of Isabelle’s newly-introduced infrastructure for program extraction, we show how a program can automatically be extracted from this proof, and analyze its computational behaviour. 1
Applications of inductive definitions and choice principles to program synthesis
"... Abstract. We describe two methods of extracting constructive content from classical proofs, focusing on theorems involving infinite sequences and nonconstructive choice principles. The first method removes any reference to infinite sequences and transforms the theorem into a system of inductive defi ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
Abstract. We describe two methods of extracting constructive content from classical proofs, focusing on theorems involving infinite sequences and nonconstructive choice principles. The first method removes any reference to infinite sequences and transforms the theorem into a system of inductive definitions, the other applies a combination of Gödel’s negativeand Friedman’s A-translation. Both approaches are explained by means of a case study on Higman’s Lemma and its well-known classical proof due to Nash-Williams. We also discuss some proof-theoretic optimizations that were crucial for the formalization and implementation of this work in the interactive proof system Minlog. 1
Infinite Objects In Type Theory
, 1997
"... Contents 1. Introduction 1 2. Lazy Evaluation and Infinite Objects 3 3. Mathematics of Infinity 10 3.1. The extension of type theory with an external infinite object 11 4. Models of Type Theory 18 4.1. The Structure of a Model for Type Theory 19 4.2. The Comma Model 24 4.3. Necessity 26 5. Mathemat ..."
Abstract
- Add to MetaCart
Contents 1. Introduction 1 2. Lazy Evaluation and Infinite Objects 3 3. Mathematics of Infinity 10 3.1. The extension of type theory with an external infinite object 11 4. Models of Type Theory 18 4.1. The Structure of a Model for Type Theory 19 4.2. The Comma Model 24 4.3. Necessity 26 5. Mathematics of Infinity Formalized 27 5.1. The term model 27 5.2. T ff 30 5.3. The standard model 33 5.4. Nonstandard truth 39 6. Examples 43 6.1. Infinity 43 6.2. Linear Search 45 7. Conclusions 50 References 52 1. Introduction It is one of the purposes of this work to explore type theory as a programming language where programs come out correct by construction. This has already been done to some extent following the correspondence types/specifications/propositions and objects /programs/proofs. In our case we will be interested in a particular analysis of streams and other infinite objects as they occur in lazy functio
Stop when you are Almost-Full Adventures in constructive termination
"... Disjunctive well-foundedness (used in Terminator), size-change termination, and well-quasi-orders (used in supercompilation and term-rewrite systems) are examples of techniques that have been successfully applied to automatic proofs of program termination and online termination testing, respectively ..."
Abstract
- Add to MetaCart
Disjunctive well-foundedness (used in Terminator), size-change termination, and well-quasi-orders (used in supercompilation and term-rewrite systems) are examples of techniques that have been successfully applied to automatic proofs of program termination and online termination testing, respectively. Although these works originate in different communities, there is an intimate connection between them – they rely on closely related principles and both employ similar arguments from Ramsey theory. At the same time there is a notable absence of these techniques in programming systems based on constructive type theory. In this paper we’d like to highlight the aforementioned connection and make the core ideas widely accessible to theoreticians and Coq programmers, by offering a Coq development which culminates in some novel tools for performing induction. The benefit is nice composability properties of termination arguments at the cost of intuitive and lightweight user obligations. Inevitably, we have to present some Ramsey-like arguments: Though similar proofs are typically classical, we offer an entirely constructive development standing on the shoulders of Veldman and Bezem, and Richman and Stolzenberg. 1.

