9 research outputs found
Extracting Programs from Constructive HOL Proofs via IZF Set-Theoretic<br> Semantics
Church's Higher Order Logic is a basis for influential proof assistants --
HOL and PVS. Church's logic has a simple set-theoretic semantics, making it
trustworthy and extensible. We factor HOL into a constructive core plus axioms
of excluded middle and choice. We similarly factor standard set theory, ZFC,
into a constructive core, IZF, and axioms of excluded middle and choice. Then
we provide the standard set-theoretic semantics in such a way that the
constructive core of HOL is mapped into IZF. We use the disjunction, numerical
existence and term existence properties of IZF to provide a program extraction
capability from proofs in the constructive core.
We can implement the disjunction and numerical existence properties in two
different ways: one using Rathjen's realizability for IZF and the other using a
new direct weak normalization result for IZF by Moczydlowski. The latter can
also be used for the term existence property.Comment: 17 page
A Normalizing Intuitionistic Set Theory with Inaccessible Sets
We propose a set theory strong enough to interpret powerful type theories
underlying proof assistants such as LEGO and also possibly Coq, which at the
same time enables program extraction from its constructive proofs. For this
purpose, we axiomatize an impredicative constructive version of
Zermelo-Fraenkel set theory IZF with Replacement and -many
inaccessibles, which we call \izfio. Our axiomatization utilizes set terms, an
inductive definition of inaccessible sets and the mutually recursive nature of
equality and membership relations. It allows us to define a weakly-normalizing
typed lambda calculus corresponding to proofs in \izfio according to the
Curry-Howard isomorphism principle. We use realizability to prove the
normalization theorem, which provides a basis for program extraction
capability.Comment: To be published in Logical Methods in Computer Scienc
Normalization of IZF with Replacement
ZF is a well investigated impredicative constructive version of
Zermelo-Fraenkel set theory. Using set terms, we axiomatize IZF with
Replacement, which we call \izfr, along with its intensional counterpart
\iizfr. We define a typed lambda calculus \li corresponding to proofs in
\iizfr according to the Curry-Howard isomorphism principle. Using realizability
for \iizfr, we show weak normalization of \li. We use normalization to prove
the disjunction, numerical existence and term existence properties. An inner
extensional model is used to show these properties, along with the set
existence property, for full, extensional \izfr
Computability in constructive type theory
We give a formalised and machine-checked account of computability theory in the Calculus of Inductive Constructions (CIC), the constructive type theory underlying the Coq proof assistant. We first develop synthetic computability theory, pioneered by Richman, Bridges, and Bauer, where one treats all functions as computable, eliminating the need for a model of computation. We assume a novel parametric axiom for synthetic computability and give proofs of results like Rice’s theorem, the Myhill isomorphism theorem, and the existence of Post’s simple and hypersimple predicates relying on no other axioms such as Markov’s principle or choice axioms. As a second step, we introduce models of computation. We give a concise overview of definitions of various standard models and contribute machine-checked simulation proofs, posing a non-trivial engineering effort. We identify a notion of synthetic undecidability relative to a fixed halting problem, allowing axiom-free machine-checked proofs of undecidability. We contribute such undecidability proofs for the historical foundational problems of computability theory which require the identification of invariants left out in the literature and now form the basis of the Coq Library of Undecidability Proofs. We then identify the weak call-by-value λ-calculus L as sweet spot for programming in a model of computation. We introduce a certifying extraction framework and analyse an axiom stating that every function of type ℕ → ℕ is L-computable.Wir behandeln eine formalisierte und maschinengeprüfte Betrachtung von Berechenbarkeitstheorie im Calculus of Inductive Constructions (CIC), der konstruktiven Typtheorie die dem Beweisassistenten Coq zugrunde liegt. Wir entwickeln erst synthetische Berechenbarkeitstheorie, vorbereitet durch die Arbeit von Richman, Bridges und Bauer, wobei alle Funktionen als berechenbar behandelt werden, ohne Notwendigkeit eines Berechnungsmodells. Wir nehmen ein neues, parametrisches Axiom für synthetische Berechenbarkeit an und beweisen Resultate wie das Theorem von Rice, das Isomorphismus Theorem von Myhill und die Existenz von Post’s simplen und hypersimplen Prädikaten ohne Annahme von anderen Axiomen wie Markov’s Prinzip oder Auswahlaxiomen. Als zweiten Schritt führen wir Berechnungsmodelle ein. Wir geben einen kompakten Überblick über die Definition von verschiedenen Berechnungsmodellen und erklären maschinengeprüfte Simulationsbeweise zwischen diesen Modellen, welche einen hohen Konstruktionsaufwand beinhalten. Wir identifizieren einen Begriff von synthetischer Unentscheidbarkeit relativ zu einem fixierten Halteproblem welcher axiomenfreie maschinengeprüfte Unentscheidbarkeitsbeweise erlaubt. Wir erklären solche Beweise für die historisch grundlegenden Probleme der Berechenbarkeitstheorie, die das Identifizieren von Invarianten die normalerweise in der Literatur ausgelassen werden benötigen und nun die Basis der Coq Library of Undecidability Proofs bilden. Wir identifizieren dann den call-by-value λ-Kalkül L als sweet spot für die Programmierung in einem Berechnungsmodell. Wir führen ein zertifizierendes Extraktionsframework ein und analysieren ein Axiom welches postuliert dass jede Funktion vom Typ N→N L-berechenbar ist