Loading AI tools
système de déduction mathématique De Wikipédia, l'encyclopédie libre
En logique mathématique et plus précisément en théorie de la démonstration, le calcul des séquents est un système de déduction créé par Gerhard Gentzen[1],[2],[3]. Le nom de ce formalisme fait référence à un style particulier de déduction ; le système original a été adapté à diverses logiques, telles que la logique classique, la logique intuitionniste et la logique linéaire. Un séquent est une suite d'hypothèses suivie d'une suite de conclusions, les deux suites étant usuellement séparées par le symbole (taquet droit[4]), « : » (deux-points[5]) ou encore (flèche droite) dans l'œuvre originale de Gentzen.
Un séquent représente une étape d'une démonstration, le calcul des séquents explicitant les opérations possibles sur ce séquent en vue d'obtenir une démonstration complète et correcte.
En 1934[2], Gentzen a proposé la déduction naturelle, un formalisme pour décrire les preuves du calcul des prédicats, dont l'idée était de coller au plus près à la manière dont les mathématiciens raisonnent. Il a ensuite tenté d'utiliser la déduction naturelle pour produire une preuve syntaxique de la cohérence de l'arithmétique, mais les difficultés techniques l'ont conduit à reformuler le formalisme en une version plus symétrique : le calcul des séquents. Contrairement à la déduction naturelle où un jugement est une suite d'hypothèses suivie d'une conclusion, dans le calcul des séquents, un jugement peut contenir plusieurs conclusions. C'est dans ce cadre qu'il a démontré ce qui devait devenir l'un des théorèmes principaux de la théorie de la démonstration : le théorème d'élimination des coupures. Dag Prawitz a montré en 1965 que ce théorème pouvait se transporter à la déduction naturelle[6].
Le terme calcul des séquents est une traduction de l'anglais sequent calculus, lui-même hérité de l'allemand Sequenzenkalkül[7].
L'objet de base du calcul est le séquent, qui est un couple de listes finies (éventuellement vides) de formules, séparées par un symbole qui se lit « thèse ». Les séquents sont ainsi usuellement notés :
où les sont les hypothèses (ou antécédents) et les sont les conclusions (ou conséquents, ou succédents) du séquent. Un autre point important à noter est qu'une même formule peut apparaître plusieurs fois à gauche et/ou à droite dans un séquent, par exemple peut être la même formule que ; on dit alors que cette formule a plusieurs occurrences dans le séquent.
La notation séquent peut se comprendre comme une astuce syntaxique pour dénoter des formules particulières ; la virgule à gauche s'interprète comme une conjonction, la virgule à droite comme une disjonction et le symbole comme une implication, si bien que le séquent ci-dessus peut se comprendre comme une notation pour la formule :
et se lit intuitivement :
et... et impliquent ou... ou
mais le sens précis de ces symboles n'est donné que par les règles formelles (axiomes) qui suivent.
Lorsque la liste d'hypothèses est vide, on peut l'interpréter comme le vrai (c'est-à-dire l'élément neutre de la conjonction) et lorsque la liste de conclusions est vide, on peut l'interpréter comme le faux (c'est-à-dire l'élément neutre de la disjonction).
Une règle d'un calcul de séquent est de la forme : . On note à droite le nom de la règle.
Des règles du calcul des séquents spécifient comment à partir d'un certain nombre (éventuellement nul) de séquents prémisses, on peut dériver un nouveau séquent conclusion.
Une des propriétés importante du calcul des séquents est la réversibilité (ou inversibilité) de certaines règles d'inférence, ce qui signifie l'équivalence logique entre les prémisses et les conclusions (voir plus bas pour le système LK de la logique classique du premier ordre) [8]. On peut prouver cette équivalence en utilisant la section Interprétation d'un séquent ci-dessus.
Gentzen[2] a introduit le système LK (pour “klassische Prädikatenlogik”) qui formalise la logique classique du premier ordre. On en donne ici une version légèrement modernisée[Par qui ?][réf. nécessaire]. La définition ci-dessous suppose un minimum de familiarité avec le calcul des prédicats. Dans chacune des règles les lettres grecques Gamma, Delta, etc. dénotent des suites de formules que l'on nomme des contextes : il s'agit de formules qui sont présentes dans la conclusion mais qui n'y sont pas introduites[9]. On fait figurer les séquents prémisses au-dessus, séparés par un trait horizontal du séquent conclusion. Les règles d'inférence se divisent en trois groupes : le groupe identité, le groupe structurel et le groupe logique (qui seront présentés dans les sections suivantes).
Il est important de noter que pour la plupart des règles (groupe logique et groupe identité), il existe deux types de formulation :
Cette distinction est très importante en pratique pour les algorithmes de recherche de preuves ou de construction de preuves[9].
Il est constitué de deux règles :
|
|
Une discussion sur la règle de coupure figure plus bas. Remarquons que la règle axiome est la seule de tout le calcul qui n'a pas de prémisse.
Pour les groupes structurel et logique, les règles viennent par paire selon le côté, gauche ou droit, du séquent où elles agissent.
La règle de coupure n'est pas réversible au sens défini plus haut. Elle est ici présentée ici sous sa forme multiplicative mais est irréversible y compris sous sa forme additive (on le perçoit intuitivement, dans la mesure où la formule A présente dans les deux séquents prémisses est absente de la conclusion).
Il est constitué de six règles :
|
|
|
|
|
|
Dans les règles d'échange la notation désigne une permutation des (occurrences de) formules figurant dans . Les règles d'échanges sont responsables de la commutativité de la logique. Par exemple, avec , on pourra avoir .
Les règles de contraction et d'affaiblissement expriment une forme d'idempotence des opérateurs « » et « » de la logique : une formule est équivalente aux formules et .
Les règles d'affaiblissement ne sont pas réversibles au sens défini plus haut.
Il est constitué de 12 règles :
|
|
| |
|
|
|
|
|
|
|
|
Les règles de quantificateurs sont soumises à des restrictions : dans les règles de -droite et -gauche, on demande que la variable n'ait pas d'occurrence libre dans une des formules de et .
La notation désigne la formule dans laquelle la variable est remplacée par un terme , toutefois ce remplacement doit être sain : ne doit pas contenir de sous-formule ou où serait une variable libre de apparaissant dans le terme . Par exemple, n'est pas une substitution saine dans car après remplacement de par , on obtient : , une variable (ici ) du terme remplaçant s'est fait capturer par le quantificateur .
Les règles droite et gauche ainsi définies ne sont pas réversibles [10]. Pour les autres règles, elles sont réversibles dans la présentation qui en est donnée ici (qui est un mélange de règles multiplicatives et additives), mais elles ne le sont pas en toute généralité, en particulier si l'on choisit de n'adopter que des règles additives ou que des règles multiplicatives[8].
Une démonstration de LK est un arbre de séquents construit au moyen des règles ci-dessus de façon que chaque séquent soit conclusion d'exactement une règle ; la démonstration est terminée si l'on arrive à ce que toutes les feuilles de l'arbre soient des règles axiome. Le séquent racine de l'arbre est la conclusion de la démonstration. Voici un exemple de démonstration du principe de contraposition de l'implication ; pour simplifier on a omis les utilisations de règles d'échange et représenté en gras les (occurrences de) formules dans les séquents prémisses sur lesquelles porte chaque règle :
Aussi connu sous le nom de « théorème de Gentzen » ou « Hauptsatz » (parce que c'était le théorème principal des deux articles fondateurs de Gentzen), ce théorème énonce que toute démonstration en calcul des séquents peut être transformée en une démonstration de même conclusion, mais qui n'utilise pas la règle de la coupure. La démonstration de Gentzen fournit un algorithme qui, appliqué à une démonstration quelconque, aboutit à une démonstration sans coupures du même séquent conclusion. Helena Rasiowa et Roman Sikorski ont publié en 1959 une preuve sémantique du théorème de Gentzen pour le cas classique, qui montre l'existence de la démonstration sans coupures, mais ne donne pas un procédé (de normalisation) qui y conduit étape par étape.
Le calcul des séquents, contrairement aux systèmes à la Hilbert ou à la déduction naturelle, n'a pas été créé pour être un formalisme intuitif qui refléterait une forme naturelle de raisonnement, car le propos de Gentzen était de résoudre certains problèmes techniques liés au fait que la règle de réduction à l'absurde brisait la symétrie intro/élim de la déduction naturelle. C'est pourquoi le calcul des séquents doit se penser comme un formalisme pour raisonner sur les preuves formelles plutôt que pour rédiger des preuves formelles. On peut toutefois facilement montrer que le calcul des séquents est équivalent à la déduction naturelle, au sens où les preuves formelles de l'un des formalismes se traduisent dans l'autre, et réciproquement[11].
L'intérêt du calcul des séquents est de rendre explicite un grand nombre de propriétés de la logique :
La règle de coupure est une généralisation du modus-ponens. Pour le voir il faut considérer le cas particulier de la règle où :
Dans ce cas particulier les deux séquents prémisses de la règle deviennent respectivement et tandis que le séquent conclusion devient .
La règle de coupure joue un rôle très particulier dans le calcul des séquents pour deux raisons :
La propriété de la sous-formule était très importante pour Gentzen car c'est elle qui permet de démontrer la cohérence du calcul. On peut en effet montrer que si le calcul mène à une contradiction, c'est-à-dire si l'on peut aussi bien prouver que , alors on peut, moyennant la règle de coupure, prouver le séquent vide : il suffit d'utiliser la règle de négation
puis la coupure
Ainsi, toute contradiction mène au séquent vide. On en déduit, par simple contraposition, que si le séquent vide n'est pas prouvable, c'est qu'il n'y a pas de contradiction.
Par ailleurs, il est évident que le séquent vide n'a pas de sous-formule... précisément parce qu'il est vide ! Donc aucune règle satisfaisant la propriété de la sous-formule (selon laquelle le séquent conclusion contient toutes les formules des séquents prémisses) ne peut se conclure par le séquent vide. Dans la mesure où toutes les règles satisfont cette propriété à l'exception de la coupure, on en déduit que si l'on peut démontrer le séquent vide, ce ne peut être qu'à partir de la règle de coupure.
Or l'élimination des coupures montre précisément que la règle de coupure n'est jamais nécessaire : on peut toujours remplacer une démonstration avec coupure par une démonstration sans coupure[12]. D'après ce qui précède, cela signifie en particulier que le séquent vide n'est pas démontrable, et plus généralement que le calcul des séquents ne contient aucune contradiction.
C'est en adaptant cette démonstration d'élimination des coupures au cas de l'arithmétique que Gentzen a produit sa preuve de cohérence de l'arithmétique en utilisant un principe d'induction jusqu'à l'ordinal dénombrable ε0[13].
On obtient un système de preuve pour la logique intuitionniste à partir du système de preuve classique mais en restreignant les séquents à n'avoir qu'au plus une conclusion[14]. Ce nouveau système s'appelle LJ. De même il existe un calcul des séquents pour la logique linéaire, appelé LL[15].
Le logiciel KeY (un outil de vérification formelle de programmes Java) utilise le calcul des séquents[16].
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.