Developing proof theory for proof exchange - TEL - Thèses en ligne Accéder directement au contenu
Thèse Année : 2023

Developing proof theory for proof exchange

Developpements de théorie de la démonstration pour le partage de démonstrations

Résumé

The mechanized verification of mathematical proofs is an application of computational logic that is of importance in both mathematics and computer science. These applications range from the verification of formal properties of software systems, to increase the trust that software will work as expected, to the creation of corpora of formalized mathematics, where the activity of mathematicians is checked by machine and made available to other mathematicians for integration into their work. Formal proofs, in turn, can be produced either by humans with the aid of software, or by automated theorem provers and similar pieces of software that produce some form of evidence that a statement should hold. These certificates for the validity of statements come therefore in various formats with wildly different paradigms: on one extreme, there are languages that are very expressive and aimed at being readable by humans, while at the other extreme there are very succinct formats that represent minimal evidence provided by highly optimized pieces of software. This thesis concerns some advancements in the project of Foundational Proof Certificates (FPC), a research program that anchors the meaning of concrete languages for the representation of proofs to structural proof theory. Structural proof theory is the mathematical study of mathematical proofs, pioneered by the works of Gentzen. We show how FPC are expressive enough to account for the direct interpretation of two common preprocessing steps performed by theorem provers: Skolemization and Tseitin transformations. Usually, a user who wishes to include in their work proofs produced by an automated prover employing these techniques would have needed to include additional axioms or trust in some other way these procedures, while we show a way to interpret these proofs directly as proofs of the original statement, before the transformations. Then, we show some properties of the proof theory of logics with fixed points that advance the foundations needed to define the meaning of proofs involving induction in terms of FPC. Finally, we present the development of two plugins for the Coq proof assistant that integrate the treatment of Foundational Proof Certificates in the interactive process of proving theorems with this proof assistant.
La vérification automatisée de démonstrations mathématiques est une application de la logique computationnelle qui est de grande importance à la fois pour les mathématiques et pour l'informatique. Ces applications vont de la vérification de propriétés de systèmes logiciels, afin d'accroître la confiance que le logiciel fonctionnera selon les expectations, à la création de corpus de mathématiques formalisées, où l'activité des mathématiciens est vérifiée par la machine et rendue disponible à d'autres mathématiciens. Les démonstrations formelles peuvent, de leur part, être produites soit par des humains à l'aide d'un logiciel, soit par des logiciels de démonstration automatisée. Ces certificats pour la validité des énoncés viennent donc en beaucoup de formats différents et sont exprimés dans une variété de paradigmes : à une extrémité, il y a les langages les plus expressifs, destinés à être lisibles par des humains ; à l'autre extrémité, il y a les formats plus succincts qui proposent une évidence minimale pour la validité d'un énoncé obtenue par des logiciels très optimisés. Cette thèse concerne certaines avancées dans le projet des Certificats de Preuve Fondamentaux (FPC, Foundational Proof Certificates), un projet de recherche qui vise à ancrer la signification des langages concrets pour la représentation des preuves à la théorie structurelle des démonstrations. La théorie structurelle des démonstrations est l'étude mathématique des preuves mathématiques, initiée par Gentzen. On montrera comment les FPC sont suffisamment expressifs pour prendre en compte l'interprétation directe des deux passages d'optimisation utilisés par les démonstrateurs automatisés : la Skolemization et les transformations de Tseitin. Habituellement, un utilisateur qui souhaite inclure dans son travail des preuves obtenues à l'aide d'un démonstrateur automatisé utilisant ces techniques aurait dû inclure plus d'axiomes ou faire confiance en quelque façon à ces procédures ; on montrera une méthode pour interpréter ces démonstrations directement comme démonstrations de l'énoncé original, avant la transformation. Puis, on montrera des propriétés de la théorie de la démonstration des logiques avec point fixe qui avancent les fondations nécessaires pour la définition de la signification des démonstrations qui utilisent l'induction mathématique dans le contexte des FPC. Finalement, nous présenterons le développement de deux extensions de l'assistant de preuve Coq qui intègrent le traitement des certificats de preuve dans le processus interactive de démonstration avec cet assistant.
Fichier principal
Vignette du fichier
94295_MANIGHETTI_2023_archivage.pdf (879.6 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)

Dates et versions

tel-04289251 , version 1 (16-11-2023)

Identifiants

  • HAL Id : tel-04289251 , version 1

Citer

Matteo Manighetti. Developing proof theory for proof exchange. Logic in Computer Science [cs.LO]. Institut Polytechnique de Paris, 2023. English. ⟨NNT : 2023IPPAX003⟩. ⟨tel-04289251⟩
48 Consultations
38 Téléchargements

Partager

Gmail Facebook X LinkedIn More