layout | title |
---|---|
post |
Théorie de la preuve |
La théorie de la preuve est la branche de la logique mathématique qui s'intéresse à la modélisation du raisonnement mathématique. Développée au début du siècle par Hilbert, Gödel, et les autres pionniers de la logique formelle, elle revenue à la mode à partir des années '50 grâce au développement de l'informatique et de l'intelligence artificielle ; elle est en effet à la base des preuves assistées par ordinateur et de la certification de code.
Normalement on présente la théorie de la preuve du Calcul des prédicats, car c'est de cette théorie qui découlent les résultats les plus intéressants. Néanmoins dans ce cours nous mettons l'accent sur la théorie de la preuve du Calcul des propositions, qui constitue un sous-ensemble de la précédente.
En Calcul des propositions, les notions de [modèle](Calcul des propositions#théorie-des-modeles) et de [vérité](Calcul des propositions#théorie-des-modeles) permettent de vérifier aisément (et en temps fini) si une formule donnée est valide ou pas. Néanmoins, quand un mathématicien veut montrer un théorème il ne commence pas par énumérer toutes les possibilités et vérifier que son énoncé reste vrai pour n’importe quel choix. C’est pour modéliser la façon de raisonner du mathématicien qu’on a développé le concept de preuve formelle.
La méthode de démonstration universellement acceptée en mathématiques est la méthode axiomatique. Un ensemble de vérités élémentaires, appelées axiomes, est initialement établi et accepté comme vrai sans aucune preuve. En général sont choisis comme axiomes des énoncés qui paraissent évidents et consensuels, comme par exemple “deux droites parallèles ne se rencontrent en aucun point”.
À partir des axiomes, le mathématicien s’autorise à déduire des théorèmes en appliquant un nombre restreint et universellement accepté de formes de raisonnement appelées règles d’inférence ou de déduction. La preuve est donc une opération purement syntaxique qui transforme des formules vraies en d’autres formules vraies indépendamment de la notion sémantique de vérité.
On appelle système de déduction (ou de preuve) le choix d’un ensemble d’axiomes et de règles d’inférence. Pour tout système formel ce choix n’est pas unique, et plusieurs systèmes de preuve différents vont aboutir aux mêmes théorèmes.
Un système de preuve pour le calcul propositionnel est la donne d’un ensemble (éventuellement infini ou même vide) de formules appelées axiomes, et d’un nombre fini de règles d’inférence. Une règle d'inférence est constitué d'une ou plusieurs prémisses et d'une conséquence.
On dit qu'une formule est un théorème
- si elle est un axiome, ou
- si elle est la conséquence d’une règle d’inférence dont les prémisses sont elles mêmes des théorèmes.
La suite des applications des règles d’inférence qui permettent de
dériver un théorème
Si une formule
Si
On dit qu’un système de preuve est
- correct si tout théorème est une tautologie,
- complet si toute tautologie est un théorème,
-
syntactiquement complet si pour toute formule
$$\phi$$ , au moins une formule parmi$$\phi$$ et$$\neg\phi$$ est démontrable.
Il y a plusieurs systèmes de preuve corrects et complets pour le calcul des propositions. Parmi eux, nous nous intéressons principalement à la déduction naturelle, car plus proche de la façon naturelle de penser.
La déduction naturelle se caractérise par un ensemble d’axiomes vide et par des règles d'inférence qui sont généralement notées à l'aide de séquents, c'est à dire des expressions de la forme
Par exemple, la règle d'introduction de la conjonction
est à interpréter comme
« si on peut démontrer
$$\phi$$ à partir de$$\Gamma$$ et si on peut démontrer$$\psi$$ à partir de$$\Gamma$$ , alors on peut démontrer$$\phi\wedge\psi$$ à partir de$$\Gamma$$ . »
Voici la liste complète des règles de la déduction naturelle
|Hypothèse |$$\dfrac{}{\Gamma,\phi\vdash\phi}H$$ |Tiers exclus |$$\dfrac{}{\Gamma\vdash\phi\vee\neg\phi}T$$ |Affaiblissement |$$\dfrac{\Gamma\vdash\phi}{\Gamma,\psi\vdash\phi}W$$ |Élimination du faux |$$\dfrac{\Gamma\vdash\psi\wedge\neg\psi}{\Gamma\vdash\phi}F$$ |Introduction du et |$$\dfrac{\Gamma\vdash\phi \qquad\Gamma\vdash\psi}{\Gamma\vdash\phi\wedge\psi}I_\wedge$$ |Élimination du et |$$\dfrac{\Gamma\vdash\phi\wedge\psi}{\Gamma\vdash\phi}L_\wedge$$ | |$$\dfrac{\Gamma\vdash\phi\wedge\psi}{\Gamma\vdash\psi}R_\wedge$$ |Introduction du ou |$$\dfrac{\Gamma\vdash\phi}{\Gamma\vdash\phi\vee\psi}L_\vee$$ | |$$\dfrac{\Gamma\vdash\psi}{\Gamma\vdash\phi\vee\psi}R_\vee$$ |Élimination du ou |$$\dfrac{\Gamma\vdash\phi\vee\psi \qquad \Gamma\vdash\phi\to\chi\quad \Gamma\vdash\psi\to\chi}{\Gamma\vdash\chi}E_\vee$$ |Modus ponens |$$\dfrac{\Gamma\vdash\phi \qquad\Gamma\vdash\phi\to\psi}{\Gamma\vdash\psi}M$$ |Déduction |$$\dfrac{\Gamma,\phi\vdash\psi}{\Gamma\vdash\phi\to\psi}D$$
Une preuve en déduction naturelle est une suite d'applications des
règles d'inférence. L'écriture sous forme de séquents permet de
représenter une preuve par un arbre de preuve. Par exemple, la
preuve de
Exercice : Prouver le théorème
Exercice : Prouver
La liste des règles d'inférence de la déduction naturelle est assez restrictive, et elle ne contient pas certaines formes de raisonnement très courantes comme par exemple
Cependant, il est pratique d'isoler certains enchaînements courants de règles pour en faire des règles dérivées. On peut ainsi réutiliser ces nouvelles règles dans des preuves complexes sans avoir à réécrire toute la preuve.
Par exemple, de l'extrait de preuve suivante
on déduit la règle de réduction à l'absurde
Exercice : Indiquer quelles règles ont été utilisées dans la preuve ci-dessus.
Exercice : Donner des preuves pour les deux règles dérivées
Exercice : La liste de règles non dérivées donnée dans la section précédente n'est pas la seule possible. Montrer que la règle du tiers exclus est dérivable de la réduction à l'absurde et des autres règles.
La déduction naturelle n'est pas le seul système de preuve correct et complet, ni historiquement premier.
Les systèmes à la Hilbert se caractérisent par l’emploi de la seule règle du modus ponens, exprimée par le séquent
On remarquera que la notation est simplifiée par rapport à la
déduction naturelle à cause de la disparition du symbole
D'un autre côté, les systèmes à la Hilbert possèdent un nombre relativement grand d’axiomes (de trois jusqu’à la dizaine). Voici un exemple de système d'axiomes à la Hilbert dû à Frege:
-
$$\phi \to (\psi \to \phi)$$ , -
$$(\phi \to (\psi \to \chi)) \to ((\phi\to\psi) \to (\phi\to\chi))$$ , -
$$(\phi \to (\psi \to \chi)) \to (\psi \to (\phi\to\chi))$$ , -
$$(\phi\to\psi) \to (\neg\psi\to\neg\phi)$$ , -
$$\neg\neg\phi \to \phi$$ , -
$$\phi \to \neg\neg\phi$$ .
Un exemple de preuve dans le système de Frege est le suivant:
où les deux prémisses du modus ponens sont obtenues par instanciation des axiomes 2 et 1 respectivement. On conclut que
Comme dans la déduction naturelle, on peut démontrer dans un système à
la Hilbert des résultats conditionnels où un théorème est dérivable
d’une ou plusieurs hypothèses. Par exemple on montre qu’à partir des
hypothèses
La preuve procède ainsi (par convention, on met une barre au dessus
des prémisses qui ne sont pas des axiomes, comme si on avait utilisé
la règle
La principale différence entre les systèmes à la Hilbert et la déduction naturelle est le manque de la règle de déduction
On peut cependant prouver un méta-théorème, dit théorème de
déduction qui permet de simplifier grandement les preuves. Ce
théorème affirme que si
dans un système à la Hilbert si et seulement si on peut prouver
Si passer de la deuxième preuve à la première revient juste à appliquer une fois le modus ponens, la construction explicite qui permet de passer de la première preuve à la deuxième est assez longue et compliquée, mais il est important (et confortant) de savoir qu’elle existe et est automatique. Ceci est à comparer avec la déduction naturelle, où les deux passages sont immédiats.
On remarque que la règle et le théorème de déduction donnent un
fondement formel à une technique de preuve utilisée largement en
mathématiques: pour prouver un énoncé de la forme
Łukasiewicz démontre que les trois schémas d’axiomes suivants
-
$$\phi \to (\psi \to \phi)$$ , -
$$(\phi \to (\psi \to \chi)) \to ((\phi\to\psi) \to (\phi\to\chi))$$ , -
$$(\neg\phi\to\neg\psi) \to (\psi\to\phi)$$ ,
avec le modus ponens sont suffisants à définir un système de preuve complet (et correct). Dans les Exercices on peut trouver quelques questions autour de systèmes similaires à celui de Łukasiewicz.
Par souci de coincision, il est classique de présenter les systèmes à la
Hilbert en utilisant seulement les symboles
-
$$(\phi\to\psi) \leftrightarrow (\neg\phi\vee\psi)$$ , -
$$(\phi\vee\psi) \leftrightarrow \neg(\neg\phi\wedge\neg\psi)$$ , -
$$(\phi\leftrightarrow\psi) \to (\phi\to\psi)$$ , -
$$(\phi\leftrightarrow\psi) \to (\psi\to\phi)$$ .
Voir http://fr.wikipedia.org/wiki/Calcul_des_séquents.
La théorie de la preuve du Calcul des prédicats est à peine plus riche de celle du calcul des propositions. Il s'agit, en effet, d'ajouter simplement les règles d'inférence concernant les quantificateurs. Comme pour les autres connecteurs logique, chacun des quantifieurs
On rappelle qu'une variable
Voici finalement les règles pour
|Généralisation |$$\dfrac{\Gamma\vdash\phi[y/x]}{\Gamma\vdash\forall x.\phi}I_\forall$$ |Spécialisation |$$\dfrac{\Gamma\vdash\forall x.\phi}{\Gamma\vdash\phi[t/x]}E_\forall$$ |Introduction de l'existentiel |$$\dfrac{\Gamma\vdash\phi[t/x]}{\Gamma\vdash\exists x.\phi}I_\exists$$ |Élimination de l'existentiel |$$\dfrac{\Gamma\vdash\exists x.\phi\qquad \Gamma,\phi[y/x]\vdash\psi}{\Gamma\vdash\psi}E_\exists$$
Intuitivement, la règle de généralisation dit que si on peut prouver
L'introduction de l'existentiel dit que si on peut prouver
Excercice : donner des exemples concrets de dérivations utilisant la règle de spécialisation ou la règle d'élimination de l'existentiel.
- A. Arnold, I. Guessarian. Mathématiques pour l’Informatique. Chapitres 4 et 5.
- R. David, K. Nour, Karim, C. Raffalli. Introduction à la logique: théorie de la démonstration cours et exercices corrigés. Chapitre 1. Chapitre 2 pour approfondissement.