51 research outputs found
On the Constructive Content of Proofs
This thesis aims at exploring the scopes and limits of techniques
for extracting programs from proofs. We focus on constructive
theories of inductive definitions and classical systems allowing
choice principles. Special emphasis is put on optimizations that
allow for the extraction of realistic programs.
Our main field of application is infinitary combinatorics. Higman's
Lemma, having an elegant non-constructive proof due to Nash-Williams,
constitutes an interesting case for the problem of discovering the
constructive content behind a classical proof. We give two distinct
solutions to this problem. First, we present a proof of Higman's
Lemma for an arbitrary alphabet in a theory of inductive
definitions. This proof may be considered as a constructive
counterpart to Nash-Williams' minimal-bad-sequence proof. Secondly,
using a refined -translation method, we directly transform the
classical proof into a constructive one and extract a program. The
crucial point in the latter is that we do not need to avoid the axiom
of classical dependent choice but directly assign a realizer to its
translation.
A generalization of Higman's Lemma is Kruskal's Theorem.
We present a constructive proof of Kruskal's Theorem that is
completely formalized in a theory of inductive definitions.
As a practical part, we show that these methods can be carried out in
an interactive theorem prover. Both approaches to Higman's Lemma have
been implemented in Minlog.Ziel der vorliegenden Arbeit ist es, die Reichweiten und Grenzen
von Techniken zur Extraktion von Programmen aus Beweisen
zu erforschen. Wir konzentrieren uns dabei auf konstruktive
Theorien Induktiver Definitionen und klassische Systeme mit
Auswahlprinzipien. Besonderes Gewicht liegt auf Optimierungen,
die zur Extraktion von realisischen Programmen f"uhren.
Unser Hauptanwendungsgebiet ist die unendliche Kombinatorik. Higmans
Lemma, ein Satz mit einem eleganten klassischen, auf Nash-Williams
zur"uckgehenden Beweis, ist ein interessantes Fallbeispiel f"ur die
Suche nach dem konstruktiven Gehalt in einem klassischen Beweis. Wir
zeigen zwei unterschiedliche L"osungen zu dieser Problemstellung
auf. Zun"achst pr"asentieren wir einen induktiven Beweis von Higmans
Lemma f"ur ein beliebiges Alphabet, der als konstruktives Pendant zum
klassischen Beweis angesehen werden kann. Als zweiten Ansatz
verwandeln wir mit Hilfe der verfeinerten -"Ubersetzungs-methode
den klassischen Beweis in einen konstruktiven und extrahieren ein
Programm. Der entscheidende Punkt ist hierbei, dass wir einen
direkten Realisierer f"ur das "ubersetzte Auswahlaxiom verwenden.
Die Verallgemeinerung von Higmans Lemma f"uhrt zu Kruskals Satz.
Wir geben einen konstruktiven Beweis von Kruskals Theorem, der
vollst"andig auf den Induktiven Definitionen basiert.
Der praktische Teil der Arbeit befasst sich mit der Ausf"uhrbarkeit
dieser Methoden und Beweise in dem Beweissystem Minlog
Extracting Imperative Programs from Proofs: In-place Quicksort
The process of program extraction is primarily associated with
functional programs with less focus on imperative program extraction. In this paper we consider a standard problem for imperative programming: In-place Quicksort. We formalize a proof that every array of natural numbers can be sorted and apply a realizability
interpretation to extract a program from the proof. Using monads we
are able to exhibit the inherent imperative nature of the extracted
program. We see this as a first step towards an automated extraction of imperative programs. The case study is carried out in the interactive proof assistant Minlog
Extracting verified decision procedures: DPLL and Resolution
This article is concerned with the application of the program extraction technique to a new class of problems: the synthesis of decision procedures for the classical satisfiability problem that are correct by construction. To this end, we formalize a completeness proof for the DPLL proof system and extract a SAT solver from it. When applied to a propositional formula in conjunctive normal form the program produces either a satisfying assignment or a DPLL derivation showing its unsatisfiability. We use non-computational quantifiers to remove redundant computational content from the extracted program and translate it into Haskell to improve performance. We also prove the equivalence between the resolution proof system and the DPLL proof system with a bound on the size of the resulting resolution proof. This demonstrates that it is possible to capture quantitative information about the extracted program on the proof level. The formalization is carried out in the interactive proof assistant Minlog
Human and mouse essentiality screens as a resource for disease gene discovery
The identification of causal variants in sequencing studies remains a considerable challenge that can be partially addressed by new gene-specific knowledge. Here, we integrate measures of how essential a gene is to supporting life, as inferred from viability and phenotyping screens performed on knockout mice by the International Mouse Phenotyping Consortium and essentiality screens carried out on human cell lines. We propose a cross-species gene classification across the Full Spectrum of Intolerance to Loss-of-function (FUSIL) and demonstrate that genes in five mutually exclusive FUSIL categories have differing biological properties. Most notably, Mendelian disease genes, particularly those associated with developmental disorders, are highly overrepresented among genes non-essential for cell survival but required for organism development. After screening developmental disorder cases from three independent disease sequencing consortia, we identify potentially pathogenic variants in genes not previously associated with rare diseases. We therefore propose FUSIL as an efficient approach for disease gene discovery. Discovery of causal variants for monogenic disorders has been facilitated by whole exome and genome sequencing, but does not provide a diagnosis for all patients. Here, the authors propose a Full Spectrum of Intolerance to Loss-of-Function (FUSIL) categorization that integrates gene essentiality information to aid disease gene discovery
- …