Théorie des types homotopiquesvignette| Couverture de la Théorie des types homotopiques : Fondations univalentes des mathématiques. Dans la logique mathématique et de l’informatique, la théorie des types homotopiques (en anglais : Homotopy Type Theory HoTT) fait référence à différentes lignes de développement de la théorie des types intuitionnistes, basée sur l’interprétation des types comme des objets auxquels l’intuition de la théorie de l’homotopie s’applique.
Agda (programming language)Agda is a dependently typed functional programming language originally developed by Ulf Norell at Chalmers University of Technology with implementation described in his PhD thesis. The original Agda system was developed at Chalmers by Catarina Coquand in 1999. The current version, originally known as Agda 2, is a full rewrite, which should be considered a new language that shares a name and tradition. Agda is also a proof assistant based on the propositions-as-types paradigm, but unlike Coq, has no separate tactics language, and proofs are written in a functional programming style.
Axiome d'extensionnalitéL’axiome d’extensionnalité est l’un des axiomes-clés de la plupart des théories des ensembles, en particulier, des théories des ensembles de Zermelo, et de Zermelo-Fraenkel (ZF). Il énonce essentiellement qu'il est suffisant de vérifier que deux ensembles ont les mêmes éléments pour montrer que ces deux ensembles sont égaux, au sens où ils ont les mêmes propriétés, aucune propriété ne permettra de distinguer un ensemble de l'autre.
Schéma d'axiomes de remplacementLe schéma d'axiomes de remplacement, ou schéma d'axiomes de substitution, est un schéma d'axiomes de la théorie des ensembles introduit en 1922 indépendamment par Abraham Adolf Fraenkel et Thoralf Skolem. Il assure l'existence d'ensembles qui ne pouvaient être obtenus dans la théorie des ensembles de Ernst Zermelo, et offre ainsi un cadre axiomatique plus fidèle à la théorie des ensembles de Georg Cantor. En ajoutant à la théorie de Zermelo le schéma d'axiomes de remplacement, on obtient la théorie de Zermelo-Fraenkel, notée ZFC ou ZF suivant que l'on comprend ou non l'axiome du choix.
Type inhabitationIn type theory, a branch of mathematical logic, in a given typed calculus, the type inhabitation problem for this calculus is the following problem: given a type and a typing environment , does there exist a -term M such that ? With an empty type environment, such an M is said to be an inhabitant of . In the case of simply typed lambda calculus, a type has an inhabitant if and only if its corresponding proposition is a tautology of minimal implicative logic.
TwelfTwelf is an implementation of the logical framework LF developed by Frank Pfenning and Carsten Schürmann at Carnegie Mellon University. It is used for logic programming and for the formalization of programming language theory. At its simplest, a Twelf program (called a "signature") is a collection of declarations of type families (relations) and constants that inhabit those type families. For example, the following is the standard definition of the natural numbers, with standing for zero and the successor operator.
ExtensionalityIn logic, extensionality, or extensional equality, refers to principles that judge objects to be equal if they have the same external properties. It stands in contrast to the concept of intensionality, which is concerned with whether the internal definitions of objects are the same. Consider the two functions f and g mapping from and to natural numbers, defined as follows: To find f(n), first add 5 to n, then multiply by 2. To find g(n), first multiply n by 2, then add 10.
Judgment (mathematical logic)In mathematical logic, a judgment (or judgement) or assertion is a statement or enunciation in a metalanguage. For example, typical judgments in first-order logic would be that a string is a well-formed formula, or that a proposition is true. Similarly, a judgment may assert the occurrence of a free variable in an expression of the object language, or the provability of a proposition. In general, a judgment may be any inductively definable assertion in the metatheory.
Isabelle (logiciel)The Isabelle automated theorem prover is a higher-order logic (HOL) theorem prover, written in Standard ML and Scala. As an LCF-style theorem prover, it is based on a small logical core (kernel) to increase the trustworthiness of proofs without requiring yet supporting explicit proof objects. Isabelle is available inside a flexible system framework allowing for logically safe extensions, which comprise both theories as well as implementations for code-generation, documentation, and specific support for a variety of formal methods.
Induction structurelleEn mathématiques et davantage en informatique, la définition récursive ou induction structurelle est un procédé de définition conjointe d'un type (classe ou ensemble) et d'objets (éléments) qui le compose au moyen de règles de construction (constructeurs) qui agencent ou structurent ces objets. L'on peut ainsi définir des nombres, des listes, des arbres, des relations, et plus généralement, toute structure mathématique (langage, système, ...). En permettant par le même principe de définir un prédicat total i.