Javascript must be enabled to continue!
Typechecking in the lambda-Pi-Calculus Modulo : Theory and Practice
View through CrossRef
Vérification de typage pour le lambda-Pi-Calcul Modulo : théorie et pratique
La vérification automatique de preuves consiste à faire vérifier par un ordinateur la validité de démonstrations d'énoncés mathématiques. Cette vérification étant purement calculatoire, elle offre un haut degré de confiance. Elle est donc particulièrement utile pour vérifier qu'un logiciel critique, c'est-à-dire dont le bon fonctionnement a un impact important sur la sécurité ou la vie des personnes, des entreprises ou des biens, correspond exactement à sa spécification. DEDUKTI est l'un de ces vérificateurs de preuves. Il implémente un système de type, le lambda-Pi-Calcul Modulo, qui est une extension du lambda-calcul avec types dépendants avec des règles de réécriture du premier ordre. Suivant la correspondance de Curry-Howard, DEDUKTI implémente à la fois un puissant langage de programmation et un système logique très expressif. Par ailleurs, ce langage est particulièrement bien adapté à l'encodage d'autres systèmes logiques. On peut, par exemple, importer dans DEDUKTI des théorèmes prouvés en utilisant d'autres outils tels que COQ, HOL ou encore ZENON, ouvrant ainsi la voie à l'interopérabilité entre tous ces systèmes. Le lambda-Pi-Calcul Modulo est un langage très expressif. En contrepartie, certaines propriétés fondamentales du système, telles que l'unicité des types ou la stabilité du typage par réduction, ne sont pas garanties dans le cas général et dépendent des règles de réécriture considérées. Or ces propriétés sont nécessaires pour garantir la cohérence des systèmes de preuve utilisés, mais aussi pour prouver la correction et la complétude des algorithmes de vérification de types implémentés par DEDUKTI. Malheureusement, ces propriétés sont indécidables. Dans cette thèse, nous avons donc cherché à concevoir des critères garantissant la stabilité du typage par réduction et l'unicité des types et qui soient décidables, de manière à pouvoir être implémentés par DEDUKTI. Pour cela, nous donnons une nouvelle définition du lambda-Pi-Calcul Modulo qui rend compte de l'aspect itératif de l'ajout des règles de réécriture dans le système en les explicitant dans le contexte. Une étude détaillée de ce nouveau calcul permet de comprendre qu'on peut ramener le problème de la stabilité du typage par réduction et de l'unicité des types à deux propriétés plus simples, qui sont la compatibilité du produit et le bon typage des règles de réécriture. Nous étudions donc ces deux propriétés séparément et en donnons des conditions suffisantes effectives. Ces idées ont été implémentées dans DEDUKTI, permettant d'augmenter grandement sa généralité et sa fiabilité.
Title: Typechecking in the lambda-Pi-Calculus Modulo : Theory and Practice
Description:
Vérification de typage pour le lambda-Pi-Calcul Modulo : théorie et pratique
La vérification automatique de preuves consiste à faire vérifier par un ordinateur la validité de démonstrations d'énoncés mathématiques.
Cette vérification étant purement calculatoire, elle offre un haut degré de confiance.
Elle est donc particulièrement utile pour vérifier qu'un logiciel critique, c'est-à-dire dont le bon fonctionnement a un impact important sur la sécurité ou la vie des personnes, des entreprises ou des biens, correspond exactement à sa spécification.
DEDUKTI est l'un de ces vérificateurs de preuves.
Il implémente un système de type, le lambda-Pi-Calcul Modulo, qui est une extension du lambda-calcul avec types dépendants avec des règles de réécriture du premier ordre.
Suivant la correspondance de Curry-Howard, DEDUKTI implémente à la fois un puissant langage de programmation et un système logique très expressif.
Par ailleurs, ce langage est particulièrement bien adapté à l'encodage d'autres systèmes logiques.
On peut, par exemple, importer dans DEDUKTI des théorèmes prouvés en utilisant d'autres outils tels que COQ, HOL ou encore ZENON, ouvrant ainsi la voie à l'interopérabilité entre tous ces systèmes.
Le lambda-Pi-Calcul Modulo est un langage très expressif.
En contrepartie, certaines propriétés fondamentales du système, telles que l'unicité des types ou la stabilité du typage par réduction, ne sont pas garanties dans le cas général et dépendent des règles de réécriture considérées.
Or ces propriétés sont nécessaires pour garantir la cohérence des systèmes de preuve utilisés, mais aussi pour prouver la correction et la complétude des algorithmes de vérification de types implémentés par DEDUKTI.
Malheureusement, ces propriétés sont indécidables.
Dans cette thèse, nous avons donc cherché à concevoir des critères garantissant la stabilité du typage par réduction et l'unicité des types et qui soient décidables, de manière à pouvoir être implémentés par DEDUKTI.
Pour cela, nous donnons une nouvelle définition du lambda-Pi-Calcul Modulo qui rend compte de l'aspect itératif de l'ajout des règles de réécriture dans le système en les explicitant dans le contexte.
Une étude détaillée de ce nouveau calcul permet de comprendre qu'on peut ramener le problème de la stabilité du typage par réduction et de l'unicité des types à deux propriétés plus simples, qui sont la compatibilité du produit et le bon typage des règles de réécriture.
Nous étudions donc ces deux propriétés séparément et en donnons des conditions suffisantes effectives.
Ces idées ont été implémentées dans DEDUKTI, permettant d'augmenter grandement sa généralité et sa fiabilité.
Related Results
North Syrian Mortaria and Other Late Roman Personal and Utility Objects Bearing Inscriptions of Good Luck
North Syrian Mortaria and Other Late Roman Personal and Utility Objects Bearing Inscriptions of Good Luck
<span style="font-size: 11pt; color: black; font-family: 'Times New Roman','serif'">ΠΗΛΙΝΑ ΙΓ&Delta...
Bipolar complex fuzzy semigroups
Bipolar complex fuzzy semigroups
<abstract>
<p>The notion of the bipolar complex fuzzy set (BCFS) is a fundamental notion to be considered for tackling tricky and intricate information. Here, in this ...
Un manoscritto equivocato del copista santo Theophilos († 1548)
Un manoscritto equivocato del copista santo Theophilos († 1548)
<p><font size="3"><span class="A1"><span style="font-family: 'Times New Roman','serif'">ΕΝΑ ΛΑΝ&...
Immunogenic and antigenic epitopes of Ig. XXV. Monoclonal antibodies that differentiate the Mcg+/Mcg- and Oz+/Oz- C region isotypes of human lambda L chains.
Immunogenic and antigenic epitopes of Ig. XXV. Monoclonal antibodies that differentiate the Mcg+/Mcg- and Oz+/Oz- C region isotypes of human lambda L chains.
Abstract
The C region of human lambda L chains is specified by multiple C lambda genes of which three--C lambda 1, C lambda 2, and C lambda 3--encode for the ...
Genomic structure of the human Ig lambda 1 gene suggests that it may be expressed as an Ig lambda 14.1-like protein or as a canonical B cell Ig lambda light chain: implications for Ig lambda gene evolution.
Genomic structure of the human Ig lambda 1 gene suggests that it may be expressed as an Ig lambda 14.1-like protein or as a canonical B cell Ig lambda light chain: implications for Ig lambda gene evolution.
In pre-B cells, immunoglobulin mu (Ig mu) is associated with pre-B cell-specific proteins to form a multimeric complex that is found on the cell surface. One of these proteins is e...
Hodge–Dirac, Hodge-Laplacian and Hodge–Stokes operators in $L^p$ spaces on Lipschitz domains
Hodge–Dirac, Hodge-Laplacian and Hodge–Stokes operators in $L^p$ spaces on Lipschitz domains
This paper concerns Hodge–Dirac operators
D_{{}^\Vert}=d+\underline{\delta}
acting in
...
Filosofi Kalkulus dalam Sejarah Matematika
Filosofi Kalkulus dalam Sejarah Matematika
In Mathematics there are many branches of mathematics, one of which is Calculus. Calculus is often considered a difficult branch of mathematics. However, even so, Calculus is very ...
Method for performing the operation of adding the remainder of numbers modulo
Method for performing the operation of adding the remainder of numbers modulo
One of the components of a computer system (CS) in a positional binary number system (PNS) is an adder of two numbers. In particular, adders modulo mi of two numbers are also compo...

