26 mars 2023 — Logique, Incomplétude, Gödel
Le but de cet article est d’introduire, à l’aide de quelques exemples de théories arithmétiques, la notion d’incomplétude en logique (du premier ordre).
Nous évoquerons aussi le (premier) théorème d’incomplétude de Gödel, que nous tâcherons d’éclairer par différents exemples d’application et de non-application.
Les définitions seront informelles et nous donnerons peu de preuves — pour un cours d’introduction à la logique, vous pouvez par exemple consulter le livre de Jacques Patarin.
La logique du premier ordre s’intéresse à des formules construites en utilisant les différents symboles :
En fonction de la théorie étudiée, les formules pourront également comporter des symboles non logiques :
Par exemple, est une formule de la logique du premier ordre d’une théorie dont le langage comporte les symboles et .
Dans cette formule, et quantifient respectivement les variables et .
Les quantificateurs servent à lier les variables et une formule sans variable libre (non liée) est appelée un énoncé.
Les règles d’inférence permettent de construire des formules vraies à partir d’autres formules. Nous considérerons ici les règles de la logique classique.
En particulier, si est une formule quelconque, les formule (principe du tiers-exclu) et (reductio ad absurdum) sont vraies (d’autres logiques existent).
L’arithmétique de Robinson est une théorie qui introduit
Et qui pose les axiomes (énoncés de la logique du premier ordre que l’on décrète vrais) suivants :
Exercice : Démontrer dans l’arithmétique de Robinson.
La formule , que l’on notera , est un autre énoncé de l’arithmétique de Robinson.
Nous allons montrer que et sont deux énoncés indémontrables de l’arithmétique de Robinson.
L’existence d’un tel énoncé (indémontrable et dont la négation est indémontrable) signifie que la théorie est incomplète.
Un modèle de l’arithmétique de Robinson est une structure telle que :
muni de ses opérations usuelles est un modèle de l’arithmétique de Robinson dans lequel est vraie : tout nombre entier est pair ou impair.
Comme c’est généralement que l’on a en tête lorsque l’on définit une théorie de l’arithmétique, on dira que est le modèle standard de cette théorie.
Si était un théorème de l’arithmétique de Robinson, ne serait pas vraie dans .
Ainsi : n’est pas démontrable dans l’arithmétique de Robinson.
Considérons l’ensemble des polynômes à coefficients entiers dont le coefficient dominant est positif ou nul.
Je vous laisse vérifier les affirmations suivantes :
étant faux dans ce modèle, il ne peut être un théorème de l’arithmétique de Robinson.
Ces deux résultats nous permettent d’affirmer que l’arithmétique de Robinson est incomplète.
Cet exemple est inspiré d’une réponse sur math.stackexchange.com.
L’arithmétique de Peano s’obtient en enrichissant l’arithmétique de Robinson d’un schéma d’axiomes, qui formalisent le raisonnement par récurrence.
Pour toute formule à une variable libre , on ajoute l’axiome suivant :
💡 Notons que ces axiomes sont énumérables par un algorithme. Par ailleurs, ce schéma d’axiomes est parfois présenté sous une forme légèrement différente (notamment sur Wikipedia). Ces deux formulations sont équivalentes.
Nous n’avons pas vraiment défini ce que sont les entiers naturels, j’affirme donc sans justification particulière qu’ils vérifient les axiomes et donc que est un modèle de l’arithmétique de Peano (là encore, le modèle standard).
En particulier, n’est (toujours) pas démontrable dans l’arithmétique de Peano.
En revanche, et je vous laisse en construire une preuve, est un théorème de l’arithmétique de Peano (indice : utiliser l’axiome correspondant à la formule ).
Cela n’indique pas pour autant que l’arithmétique de Peano soit complète et d’ailleurs, comme nous allons le voir, elle ne l’est pas…
Pour tout entier , la séquence de Goodstein de graine consiste en la suite définie par et la relation de récurrence suivante :
Voici un programme en Python qui calcule cette séquence et en voici ci-dessous des exemples pour certaines graines.
Pour , la séquence atteint en itérations :
base | représentation héréditaire | valeur | |
---|---|---|---|
b=2 | 3 | ||
b=3 | 3 | ||
b=4 | 3 | ||
b=5 | 2 | ||
b=6 | 1 | ||
b=7 | 0 |
Pour , la croissance est extrêmement rapide :
base | représentation héréditaire | valeur | |
---|---|---|---|
b=2 | 7 | ||
b=3 | 30 | ||
b=4 | 259 | ||
b=5 | 3127 | ||
b=6 | 46657 | ||
b=7 | 823543 | ||
b=8 | 16777215 |
Considérons l’énoncé . Il signifie que toutes les séquences de Goodstein atteignent en un nombre fini d’itérations.
Nous allons ci-dessous énoncer trois affirmations à propos de . Ces affirmations sont non triviales, nous en donnerons au mieux une ébauche de justification.
Ceci n’a a priori rien d’évident car la formule n’est pas écrite dans le langage de l’arithmétique de Peano, qui ne connait pas le symbole .
Néanmoins, on pourrait — mais ce serait très fastidieux — la réécrire comme une formule à deux variables libres utilisant les symboles .
💡 En fait, pour toute fonction pouvant être calculée par un algorithme (ce qui est le cas de ), les formules comme peuvent se réécrire dans le langage de l’arithmétique de Peano.
Le modèle standard de l’arithmétique est , mais qu’est-ce que ?
Pour le définir, il faut faire appel à la théorie des ensembles, une théorie de la logique du premier ordre dont le langage comporte en particulier la constante et la relation .
Cette théorie permet de construire un ensemble noté .
Elle permet aussi de construire d’autres objets et notamment les nombres ordinaux.
En particulier, on peut définir un ordinal , des opérations (addition, multiplication et exponentiation) et une relation d’ordre sur les ordinaux tels que l’inégalité suivante ait un sens :
(J’ai ici réécrit la séquence des représentations héréditaires en base des en remplaçant les lettres par des .)
En généralisant cette observation, on montre que si la suite n’est pas nulle à partir d’un certain rang, on peut lui faire correspondre une suite strictement décroissante d’ordinaux, ce qui est impossible — tout ensemble d’ordinaux admet un plus petit élément.
On en déduit que est vrai dans : c’est le théorème de Goodstein.
💡 L’addition et la multiplication des ordinaux ne sont pas commutatives, par exemple
dans la somme développée plus haut.
Cette entrée du blog de David Madore permet d’appréhender
la notion d’ordinal et les opérations sur ceux-ci — on pourra voir également ici
pour un cours sur le sujet.
La preuve décrite ci-dessus du théorème de Goodstein sur les entiers naturels fait appel à d’autres constructions de la théorie des ensembles, à savoir les ordinaux (jusqu’à ).
En 1982, il a été montré par les mathématiciens Kirby et Paris que l’énoncé de Goodstein n’est pas démontrable dans l’arithmétique de Peano (cet article en dit un peu plus à ce sujet).
💡 On peut en déduire qu’il existe un modèle non standard de l’arithmétique de Peano dans lequel l’énoncé de Goodstein est faux. Un tel modèle est cependant difficile à expliciter et je ne développerai pas cet aspect ici.
C’est une conséquence des points (a) + (b) + (c) ci-dessus.
Ceci étant, ce n’est pas la façon la plus directe d’arriver à ce résultat, ni la façon dont il fut prouvé historiquement.
En 1931, Gödel a en effet démontré un résultat concernant les théories du premier ordre qui contiennent l’arithmétique de Peano. Ce résultat fut amélioré par Rosser en 1936 et peut s’énoncer ainsi :
Si une théorie (de la logique du premier ordre) vérifie :
Alors est incomplète.
De façon très informelle, la démonstration consiste à construire un énoncé de la théorie qui dit « Je ne suis pas démontrable. ». Un tel énoncé est formulable dans une théorie qui vérifie les deux premières hypothèses ci-dessus. Une preuve de ou de ne peut alors exister sans rendre la théorie incohérente.
Je termine cet article en donnant un exemple de non application de ce théorème, qui illustre l’importance des hypothèses.
L’arithmétique de Presburger est la théorie obtenue en retirant à l’arithmétique de Peano le symbole : on conserve donc uniquement les axiomes 1 à 5 et les axiomes du schéma de récurrence où n’utilise pas ce symbole.
L’arithmétique de Presburger vérifie les conditions 1 et 3 du théorème d’incomplétude, mais pas la condition 2.
L’arithmétique de Presburger est complète : elle permet de démontrer ou pour tout énoncé qu’elle est capable d’exprimer.
💡 Cette théorie a en fait une expressivité beaucoup plus faible que l’arithmétique de Peano. L’ajout de la multiplication permet par exemple (notamment grâce à la fonction de Gödel), d’exprimer arithmétiquement les formules faisant intervenir des fonctions calculables par un algorithme — nous l’avons mentionné dans le point (a) à propos du théorème de Goodstein. Ce n’est pas possible dans l’arithmétique de Presburger.
Maths et applications, avec les mains et avec du code 💻
Suivre sur Twitter