Vrai ou démontrable ? En 1931, Gödel démontre que les systèmes d’axiomes formalisés ne pourront jamais restituer toute la richesse des mathématiques. Le rêve de Hilbert s’effondre… G ödel se sent de plus en plus autrichien et surtout viennois : il aime la ville, son atmosphère intellectuelle et sa vie universitaire. Il demande, à la fin de l’été 1928, la nationalité autrichienne et n’est officiellement plus tchèque le 26 février 1929, trois jours après la mort de son père. Malgré son deuil, Gödel termine sa thèse de doctorat Sur la complétude du calcul logique qu’il présente le 6 juillet 1929 à son directeur de thèse Hans Hahn et à un de ses rapporteurs, Philipp Furtwängler. Dans ce mémoire dactylographié de 30 pages, le jeune mathématicien, âgé de 23 ans, expose divers résultats très importants de logique que nous allons détailler dans ce chapitre. Il démontre la complétude sémantique de la logique des prédicats du premier ordre, ce qui est satisfaisant pour l’esprit, et en déduit que tout système d’axiomes du premier ordre non contradictoire possède un modèle : il existe un ensemble d’objets qui vérifient les axiomes du système. Construire un modèle, c’est « ajouter de la chair autour des os » d’un système axiomatique, et ainsi établir qu’il est cohérent, c’est-à-dire non contradictoire. On distingue deux définitions de la complétude: 1) Un système d’axiomes est complet (comme l’est une boîte à outils bien fournie qui permet de réaliser tous les travaux nécessaires) quand toutes les propositions vraies de la théorie visée (par exemple l’arithmétique) se déduisent du système d’axiomes. Cette complétude est sémantique. 2) Un système d’axiomes est complet comme une boîte à outils où l’on ne peut rien ajouter. Toute tentative pour adjoindre un axiome indépendant au système amène une contradiction. La complétude est alors syntaxique. Dans leurs Éléments de la logique théorique de 1928, Hilbert et Ackermann définissaient les deux complétudes : [Par complétude d’un système d’axiomes,] on peut comprendre d’une part qu’il est possible, à partir du système d’axiomes, de déduire toutes les formules exactes d’un certain domaine. [Transposée en langage informatique, cette première définition signifie que toutes les déclarations vraies de la logique peuvent être répertoriées par un ordinateur.] Mais on peut également prendre le concept de complétude dans un sens plus strict, de sorte qu’un système d’axiomes ne peut être qualifié de complet que si l’adjonction au système des formules de base d’une formule jusque-là non déductible amène toujours une contradiction. Gödel prend le terme complétude au premier sens et montre que toute formule logiquement vraie du calcul des prédicats du premier ordre est démontrable avec les axiomes classiques du calcul du premier ordre. Pour Gödel, ce résultat « constitue un complément théorique à la méthode de démonstration habituelle de la non-contradiction ». La méthode habituelle consiste à construire un modèle, c’est-à-dire à donner une interprétation sémantique (par exemple géométrique) du système considéré ; si la théorie admet un modèle, alors elle est non-contradictoire. Dans sa thèse, Gödel démontre la réciproque de cette propriété : tout système d’axiomes non contradictoire du premier ordre admet un modèle. © POUR LA SCIENCE Olga Taussky Todd Un pas en faveur du programme de Hilbert 39 En 1928, Karl Menger (1902-1985, ci-dessus) fonda à l’Université de Vienne un colloque de mathématiques en s’inspirant du Cercle de Schlick. Gödel en devint un membre actif et en édita les bulletins, « Ergebnisse eines mathematischen Kolloquium » (Résultats d’un colloque de mathématiques). AXIOMES ET MODÈLES Pour montrer la cohérence (c’est-àdire la non-contradiction) d’une théorie, on recherche un « modèle » qui vérifie les axiomes de base de la théorie. En d’autres termes, on recherche une interprétation sémantique du système d’axiomes. Donnons un exemple : un système d’axiomes de base concerne deux ensembles M et N, dont la nature n’est pas initialement précisée. Ces axiomes sont : 1) M et N ont le même nombre d’éléments. 2) Aucun élément de N ne contient plus de deux éléments de M. 3) Aucun élément de M n’est contenu dans plus de deux éléments de N. Ce système d’axiomes est-il cohérent, c’est-à-dire ne contient-il pas de contradictions ? Oui, car on peut lui associer le modèle géométrique suivant : soit M l’ensemble des sommets d’un carré, et N l’ensemble des arêtes du carré. M M N N N N M M Par «un élément de N contient un élément de M», on entend: un sommet du carré est sur une arête. On constate aisément que ce modèle géométrique vérifie les trois axiomes, ce qui prouve leur cohérence. Ce résultat semble confirmer l’espoir formaliste de Hilbert, mais Gödel reste prudent; Hahn, enthousiaste, l’encourage à publier une version abrégée de sa thèse. L’article, La complétude des axiomes du calcul logique des fonctions, paraît en 1930 dans les «Monatshefte für Mathematik und Physik». Détail intéressant, Gödel n’y reprend aucun élément de l’introduction de sa thèse, où il avait mis son résultat en relation avec les débats sur les fondements des mathématiques. Réserve judicieuse? Contraintes éditoriales de longueur? Nul ne le sait. Les mathématiques sont inépuisables Voici le résumé de l’article que Gödel envoie aux «Monatshefte»: Dans les fondements axiomatiques de la logique, tels qu’ils sont établis par exemple dans les Principia Mathematica, est soulevée la question suivante: les axiomes placés en tête sont-ils «complets», c’est-à-dire suffisent-ils pour déduire toute proposition importante de la logique par la voie formelle? Ce problème n’est résolu jusqu’ici que pour les propositions logiques les plus simples, notamment celles du calcul propositionnel. La réponse est positive, c’est-à-dire que toute proposition vraie (valide en général) découle des axiomes des Principia Mathematica. L’auteur montre comment on étend ce théorème aux formules du calcul des fonctions [calcul des prédicats] du premier ordre [dont les quantificateurs ne portent pas sur des fonctions et des prédicats]. Dans sa thèse, Gödel prend encore parti pour Hilbert et contre Brouwer. Il justifie dans l’introduction sa position formaliste: «Toutes les notions prises en considération ici (démontrable, non contradictoire, etc.) n’ont de sens exact que si on délimite avec précision les méthodes de déduction admises.» Les intuitionnistes me reprocheront d’utiliser le principe du tiers exclu pour les ensembles infinis, qui pour eux n’affirme «rien d’autre que la décidabilité de tout problème», poursuit-il. Mais il ajoute aussitôt que «premièrement, le principe du tiers exclu n’est interprété de cette façon que par les intuitionnistes»; deuxièmement, cette interprétation intuitionniste signifie que tout problème est résoluble à l’aide de tous moyens concevables, et non à l’aide de moyens déterminés. Or, «dans les présents travaux, il est justement démontré que toute expression valide en général se déduit par des règles d’inférence parfaitement déterminées et dénombrées». Si Gödel n’adhère pas à l’intuitionnisme de Brouwer, certaines idées du néerlandais influencent le doctorant. Nous ne savons pas si Gödel assista aux deux conférences que Brouwer donna à Vienne en mars 1928, sur l’invitation de Menger, mais Gödel en connaissait le contenu au moins par le compte rendu que Menger avait mis à sa disposition. Dans la première de ces deux conférences, intitulée Mathématiques, sciences et langage, Brouwer ironise sur les tentatives que déploient les formalistes (Hilbert) pour préciser le langage. En mathématiques pures, il n’existe pas plus qu’ailleurs de langage absolument sûr, pense-t-il, c’està-dire de langage excluant tout malentendu et où la mémoire évite les erreurs (par Le théorème de Herbrand E 40 n 1930, Herbrand démontra que l’on pouvait toujours ramener une formule du calcul des prédicats du premier ordre à une suite de formules du calcul des propositions, et qu’il suffisait que l’une de ces formules soit démontrable pour que la formule initiale le soit aussi. Considérons une formule A de la logique du premier ordre. On peut toujours la ramener à une expression qui commence par une suite de quantificateurs et finit par une phrase logique sans quantificateur, du type Qx1…Qxn B(x1,…,xn), où Q représente les quantificateurs, B une proposition exempte de quantificateurs et les xi les variables de la formule. Herbrand s’intéresse alors aux « instances » de B, c’est-à-dire aux phrases B(a1,…,an), pour des valeurs données ai des xi. Les « formules propositionnelles » auxquelles il fait allusion dans son théorème sont ces ins- tances. Le point important, c'est la manière dont les individus a1,…,an (qui forment l'« univers de Herbrand » de la formule A) sont progressivement engendrés pour parcourir tout l’ensemble des xi. Partant d'un objet quelconque (disons « a »), on les construit en appliquant aux objets déjà obtenus les « fonctions de Skolem », qui résultent de la structure de la formule A. Prenons un exemple : soit A la formule « Pour tout x, il existe y tel que B(x,y) ». La vérité de A équivaut à la vérité de la formule « Pour tout x, B(x,f(y))», où « f » (« fonction de Skolem ») exprime la dépendance de y par rapport à x. De manière générale, on remplace tous les quantificateurs existentiels par des fonctions de Skolem des variables universelles qui les précèdent dans l'écriture de A. On engendre ainsi des formules du type B(a,f(a),b,g(a,b)) telles que la vérité de l'une garantit celle de A. © POUR LA SCIENCE exemple la confusion entre entités mathématiques).Par conséquent, il lui semble impossible de remédier à cette situation en «soumettant, comme le fait l’école formaliste, le langage mathématique à un traitement mathématique et en s’exprimant sur lui dans un langage de second ordre ou dans un métalangage». La mésentente entre Brouwer et Gödel est aussi affaire d’interprétation: alors que Brouwer voit un aveu de faiblesse dans l’impossibilité d’un langage d’une absolue précision, pour Gödel, au contraire, cette même difficulté montre que les mathématiques sont inépuisables et qu’il est normal qu’elles ne se laissent pas circonscrire facilement. Les notes prises le 23 décembre 1929 par Carnap, alors Privatdozent, après une conversation de trois heures avec Gödel sur les mathématiques et le formalisme, confirment cette vision: Toute formalisation des mathématiques entraîne des problèmes que l’on peut exprimer et expliciter dans la langue courante, mais pour lesquels il n’existe pas d’expression appropriée dans le formalisme lui-même. Il s’ensuit (Brouwer fut cité ici) que les mathématiques sont inépuisables: il faut toujours revenir en arrière, pour «se fortifier aux sources de l’intuition». Il n’y aurait donc pas de lingua characteristica universalis, pas de langue formelle pour l’ensemble des mathématiques. […] Il n’y a qu’une quantité dénombrable d’expressions dans un langage et le continu [l’ensemble des nombres réels] n’existe qu’en mathématiques. Nous ne disposons que d’un seul langage, mais les précisions construites par notre esprit sont inépuisables parce qu’elles recourent toujours à quelque nouvelle intuition. L’inépuisabilité des mathématiques deviendra pour Gödel une sorte de leitmotiv de ses résultats ultérieurs, le théorème d’incomplétude et ses conséquences. Un autre résultat de la thèse de Gödel, mais qui ne ressort clairement que dans l’article paru dans les «Monatshefte», est le théorème de compacité: pour qu’un système comprenant une infinité dénombrable de formules soit cohérent, il faut et il suffit que chaque partie finie du système le soit. Ce théorème est à peine remarqué lors de sa publication, sans doute à cause des préjugés de l’époque sur l’infini. Il deviendra pourtant, à partir des années 1940, un des principaux outils conceptuels du développement de la théorie des modèles. Un projet d’envergure Ce sont sans doute ces mêmes préjugés qui empêchent un autre jeune logicien brillant, le Français Jacques Herbrand (1908-1931), d’aboutir au théorème de complétude dans sa thèse, soutenue en 1929 à la Sorbonne. Celle-ci, publiée en 1930 sous le titre Recherches sur la théorie de la démonstration, s’avère révolutionnaire dans une autre perspective. Herbrand y démontre que l’on peut associer à toute formule du calcul des prédicats du premier ordre une suite infinie de formules de la logique propositionnelle, de sorte que la formule initiale est démontrable dans le calcul des prédicats si et seulement si au moins une des formules de la suite l’est aussi dans le calcul propositionnel (voir l’encadré page cicontre). Herbrand donne ainsi une méthode pour tester une formule du calcul des prédicats du premier ordre: il suffit de tester la validité de la suite de formules propositionnelles associée pour déterminer si la formule initiale est démontrable. Ce test étant mécanique, le théorème d’Herbrand joue un rôle important dans les logiciels actuels de démonstration de théorèmes. Dans sa thèse, Herbrand envisage la possibilité d’en déduire le théorème de complétude, mais il ne se le permet pas, car la démonstration met en œuvre des procédures non finies. De telles précautions en théorie de la démonstration ne sont pas étrangères à Gödel. Il évite ainsi d’expliciter dans sa thèse la notion de « vérité ». Plus tard, il estimera « qu’en raison des préjugés philosophiques de l’époque, un concept de vérité mathématique différent de la démontrabilité paraissait hautement suspect et était le plus souvent rejeté comme dépourvu de sens ». Le théorème de complétude représente indubitablement un résultat remarquable. Toutefois, pour obtenir le poste de Privatdozent qu’il brigue et l’accès à la carrière universitaire, Gödel doit démontrer quelque chose de «plus grand». On comprend que le génie Gödel, avec toute la prudence qu’il a exprimée dans © POUR LA SCIENCE Luitzen Brouwer (1881-1966) donna en 1931 deux conférences très attendues à Vienne sur les principes de son intuitionnisme. S’il n’adhéra pas à sa théorie, Gödel ne resta pas insensible à ses arguments. 41 L’arithmétique de Peano E n 1889, le mathématicien italien Giuseppe Peano (1858-1932) répertoria les caractéristiques structurelles des nombres naturels dans une liste d’axiomes énoncés dans la symbolique logique. Cette dernière est un langage du premier ordre (c’est-à-dire un langage dans lequel il n’y a que des prédicats sur des objets du langage, et pas de propositions sur les propositions), incluant l’identité. L’identité (dont le symbole est « = ») est définie par deux propriétés : ➤ a = a ; a = b → b = a ; (a = b et b = c) → a = c (1) ➤ a1 = a2 → ϕ(a1) = ϕ(a2). (2) Cela signifie que : 1) l’égalité est une relation réflexive, symétrique et transitive et 2) quand deux objets sont identiques, lorsque l’un des objets possède une propriété ù, le second objet la possède également. Le concept central de l’arithmétique de Peano est celui de successeur : tout nombre naturel x a un successeur. Celuici ne peut être écrit x + 1, car l’addition n’est pas encore définie. Peano note donc s(x) (« successeur ») le nombre qui suit x et précise que la fonction s est définie pour tout nombre naturel x. Il a ainsi formalisé une propriété importante des nombres naturels (« on peut toujours compter un de plus ») et établi « tacitement » qu’il existe un nombre infini de nombres naturels. Les constantes du langage de l’arithmétique de Peano sont les suivantes : 0 (le nombre zéro), s (la fonction successeur), « + » et « × », les opérations d’addition et de multiplication. La signification de ces constantes est définie par les axiomes suivants : ➤ ∀x (¬s(x) = 0) (0 n’est pas le successeur d’un nombre naturel). ➤ ∀x ∀y (s(x) = s(y) → x = y) (des nombres distincts ont des successeurs différents). ➤ ∀α (α (0) ∧ ∀x (α (x) → α (s (x))) → ∀x α (x)) Ceci est le principe d’induction complète : si une propriété α est vraie pour le zéro et si la phrase « Si α est vraie pour un nombre x, α est aussi vraie pour son successeur s(x) » est exacte, alors la propriété α est vraie pour tout entier naturel. ➤ ∀x ∀y (x + 0 = x) ∧ x + s(y) = s(x + y) ➤ ∀x ∀y (x × 0 = 0) ∧ x × s(y) = x × y + x Ces deux axiomes définissent par induction l’addition et la multiplication. sa thèse, s’attaque précisément à la pierre angulaire du programme de Hilbert: la démonstration de la cohérence (non-contradiction) de l’analyse et ce, à l’aide de moyens finis. Ce problème est le second d’une liste de 23 problèmes que Hilbert a dressée en 1900 au Congrès international des mathématiques de Paris et qui est déjà, à l’époque, considérée comme une feuille de route pour les mathématiques du XXe siècle. Celui qui résoudra cette question entrera au panthéon des mathématiques et aura une carrière universitaire fulgurante. L’idée de Gödel n’est pas de s’attaquer de front à la question de la noncontradiction de l’analyse; il souhaite démontrer que l’analyse est cohérente si et seulement si l’arithmétique (théorie des nombres) est cohérente. Cette cohérence relative obtenue, il «suffira» à Gödel de démontrer la cohérence de la théorie des nombres, où l’utilisation de moyens finis semble plus aisée. Toutefois, le projet est osé, car la méthode de démonstration de la cohérence relative n’a encore jamais été utilisée en dehors de la géométrie (elle a été utilisée pour démontrer la cohérence relative de la géométrie non euclidienne par rapport à la géométrie euclidienne). Gödel pénètre donc en terrain inconnu. Des axiomes pour l’arithmétique 42 Le but de Gödel n’est nullement de provoquer la chute du programme de Hilbert. Au contraire, il se voit plutôt comme un des mathématiciens de la nouvelle génération, auxquels le grand Hilbert a lancé un appel seulement deux ans auparavant, lors du congrès de Bologne. Il se place donc dans la tradition de l’axiomatisation – celle de l’arithmétique – pour élaborer sa démonstration. Une axiomatisation de la théorie des nombres avait été donnée fin 1888 par le mathématicien allemand Richard Dedekind, dans son traité révolutionnaire Les nombres: que sont-ils et à quoi servent-ils?, où il cherchait à dégager «les propriétés de la succession ω des nombres naturels, qui sont indépendantes, c’est-àdire qui ne peuvent se déduire les unes des autres, mais à partir desquelles on peut construire toutes les autres». Il avait ainsi construit la théorie des nombres sur les axiomes suivants: 1) 1 est un nombre, 2) le successeur de tout nombre est un nombre, 3) des nombres distincts ont des successeurs distincts, 4) 1 n’est le successeur d’aucun nombre, 5) l’ensemble des nombres naturels est le plus petit ensemble S tel que si 1 appartient à S et si le successeur de tout élément de S appartient aussi à S, alors tous les nombres appartiennent à S. Ce dernier axiome, © POUR LA SCIENCE fondé sur le principe d’induction (ou de récurrence), avait permis à Dedekind d’exclure des modèles de sa théorie les structures qui contenaient, en plus des nombres naturels, des éléments «étranges» (des nombres que l’on nommera par la suite non-standards) et de démontrer la possibilité de définir exactement la structure des nombres naturels. Toutefois, pour construire son système d’axiomes, Dedekind avait utilisé de façon informelle la théorie des ensembles, mettant sur le même niveau les objets, les expressions qui les combinent et les expressions combinant des expressions (voir son axiome 5): son arithmétique était du deuxième ordre. L’étape décisive suivante vers l’axiomatisation des mathématiques est due au mathématicien italien Giuseppe Peano. Dans ses Arithmetices Principia nova methodo exposita, publiés un an après les travaux de Dedekind, Peano présenta un système d’axiomes pour les nombres naturels qui ressemblait étonnamment à celui de Dedekind, bien qu’il l’eût conçu indépendamment. Toutefois, le mathématicien italien ne construisit pas sa théorie dans un contexte ensembliste, et il introduisit une notation (qui deviendra standard, à quelques variantes près) destinée à contourner les ambiguïtés inhérentes à la langue naturelle (voir l’encadré page cicontre). Son but était de mieux cerner la nature logique du principe d’induction, c’est-à-dire la logique du deuxième ordre. Le principe d’induction est un mode d’emploi pour la construction d’une échelle de Jacob. L’échelle a une longueur infinie et ne peut donc être construite au moyen d’une quantité finie de nombres. Le principe d’induction consiste en un élément de base («Une propriété α est valable pour zéro») et une instruction permettant de poser sur un segment d’échelle déjà existant l’échelon suivant («Si α est valide pour le nombre x, elle l’est aussi pour son successeur s(x)»). On allonge l’échelle à volonté (on démontre la validité de la propriété α pour toute valeur de x) en réitérant cette instruction à volonté. En langage mathématique, le principe d’induction s’énonce comme suit: ∀α (α (0) ∧ ∀x (α (x) → α (s(x))) → ∀x α (x)). (pour toute propriété α, si α est vraie pour le zéro et si la proposition «si α est vraie pour un nombre x, α est aussi vraie pour son successeur» est vraie, alors la propriété α est vraie pour tout nombre naturel). Cette phrase mathématique n’est pas une formule de la logique des prédicats du premier ordre, mais du deuxième ordre: en effet, le premier quantificateur n’est pas appliqué à un individu de la logique du premier ordre, mais à une propriété α d’entiers (voir l’encadré page 36). Ainsi, les objets du principe d’induction ne sont plus les individus euxmêmes (les nombres naturels), mais des propriétés d’entiers, c’est-à-dire des sous-ensembles de N. Dans son système axiomatique, Peano garde cette formulation du principe, et précise qu’il s’agit d’un axiome du second ordre. Giuseppe Peano (1858-1932) Une page des Arithmetices Principia nova methodo exposita de Peano. Vérité et démontrabilité La distinction entre axiomes du premier et du second ordre a été établie par le logicien polonais Alfred Tarski (1902-1983) pour distinguer le langage-objet d’une étude, c’est-à-dire le langage utilisé pour parler d’objets quelconques, du métalangage correspondant, c’est-à-dire du langage utilisé pour parler du langage-objet. Il existe de même un méta-métalangage, qui permet de parler du métalangage, etc.. Tous ces niveaux de langage se superposent comme des couches successives et, pour certaines études logiques, il est déterminant de séparer minutieusement ces couches. L’exploit de Gödel sera d’inventer un moyen de surmonter la barrière entre les différents niveaux de langage. Mais revenons à ses recherches. Gödel, nous l’avons vu, souhaite démontrer la non-contradiction relative de l’analyse par rapport à l’arithmétique de Peano. Cette entreprise l’entraîne alors déjà au cœur du problème vérité-démontrabilité: une proposition vraie est-elle toujours démontrable? Dans un brouillon de lettre de la fin des années 1960, il décrira ainsi son projet de l’époque: Ma tentative de démonstration, par la théorie des modèles, de la cohérence relative de l’analyse par rapport à l’arithmétique fut aussi l’occasion de comparer vérité et démontrabilité, car cette démonstration conduit presque obligatoirement à une telle comparaison. Un modèle arithmétique de l’analyse [c’est-à-dire, © POUR LA SCIENCE 43 Musée historique de la Ville de Vienne Le Burgtheater à Vienne en 1888. Après l’installation de la mère de Gödel dans la capitale autrichienne, la famille allait plus fréquemment au théâtre et aux concerts, un train de vie dispendieux malgré les difficultés financières. Kurt et Rudolf avaient en effet bien entamé l’héritage paternel, et l’appartement de la très onéreuse Josefstadt coûtait cher. Le mathématicien allemand Richard Dedekind (1831-1916) accomplit, dans son ouvrage Les nombres : que sont-ils et à quoi servent-ils ? (1888), d’importants travaux préparatoires pour la théorie axiomatique des ensembles. 44 pour Gödel, un modèle arithmétique du second ordre, où les variables sont des ensembles de nombres] n’est en effet rien d’autre qu’une relation ∈ satisfaisant l’axiome de compréhension suivant: ∃n ∀x (x ∈ n ↔ ϕ(x)) [Il existe un ensemble n tel que pour tout nombre x, si x est un élément de n, alors la propriété ϕ(x) est vraie et vice versa]. Quand on remplace «ϕ(x)» par «ϕ(x) est démontrable», une telle relation ∈ est facile à définir. Donc si les termes vérité et démontrabilité étaient équivalents, nous aurions atteint notre but. Il découle cependant de la solution correcte des paradoxes sémantiques, que la «vérité» des propositions d’un langage ne pourra jamais s’exprimer dans ce même langage, contrairement à la démontrabilité (qui est une relation arithmétique). Par conséquent, vrai ≠ démontrable. Dans les années 1930, le problème que pose la formulation, dans une langue donnée, d’une définition de la notion de vérité pour ce même langage est bien évidemment une question amplement discutée lors des réunions du cercle de Vienne: peut-on définir précisément le sens de l’expression «est une proposition vraie dans la langue L»? En février 1930, Menger invite Tarski pour une série de conférences, au cours desquelles le mathématicien polonais souligne que nombre de concepts utilisés en logique sont exprimés, non en langage-objet, mais en métalangage, et qu’il est donc important de distinguer ces deux types de langages. À cette occasion, Gödel demande à Menger un entretien privé avec Tarski. Si Gödel accepte l’argumentation de Tarski sur le concept de vérité, il est plus réticent sur le même type d’argumentation appliqué à la non-contradiction et à la démontrabilité. Tant et si bien que, abandonnant l’idée de construire un modèle arithmétique de l’analyse (probablement à cause des réserves émises à l’époque vis-à-vis de démonstrations incluant le concept de vérité), il décide de prouver que la démontrabilité et la non-contradiction peuvent, même indirectement, être exprimées dans le langage-objet de la théorie, sans que cela entraîne des antinomies fatales. La numérotation de Gödel Pour conférer à la métamathématique la rigueur requise, Gödel tente de la formaliser dans une théorie possédant deux propriétés essentielles: d’une part, une théorie si puissante que la métathéorie syntaxique y soit exprimable, d’autre part, une théorie constructible en un nombre fini d’étapes, conformément à l’exigence © POUR LA SCIENCE finitiste. L’arithmétique de Peano, qui présente ces deux propriétés, sera cette théorie. L’enjeu est donc de traduire des énoncés du métalangage de l’arithmétique de Peano dans le langage-objet de l’arithmétique. Les objets du langageobjet sont des nombres, ceux du métalangage des assertions sur les nombres: Gödel doit trouver un moyen d’exprimer de telles assertions à l’aide de nombres. Il procède comme suit: à chaque symbole de l’arithmétique de Peano, il attribue de manière univoque un nombre, appelé son nombre de Gödel. Toutes les autres expressions de l’arithmétique de Peano, toutes les formules et toutes les suites finies de formules reçoivent aussi leur propre nombre de Gödel. L’efficacité de la méthode est garantie par le fait que l’arithmétisation s’accomplit par étapes: toute fonction de l’arithmétique se déduit à l’aide de fonctions de base nommées fonctions récursives primitives qui sont toujours calculables par construction (voir l’encadré ci-dessous). Par une table de correspondance, Gödel attribue à chaque symbole de l’arithmétique de Peano un nombre impair: «0» est traduit par 1, le successeur s par 3, la négation par 5, «∨» (le signe «ou») par 7, ∀ par 9, «(» par 11, «)» par 13, et les variables de type n par des nombres de la forme pn, où p est un nombre premier supérieur à 13. Une formule de l’arithmétique de Peano, qui est une suite de ces symboles, est donc transposée en une suite des nombres impairs correspondants: n1, n2, …, nk. Cette suite est à son tour transformée en un nombre unique m, au moyen de l’instruction suivante (qui est une fonction primitive récursive): m = 2n × 3n × … × pkn où pk est le k-ième nombre premier (en d’autres termes, le deuxième membre est la décomposition en facteurs premiers de m). Le nombre m est le nombre de Gödel de la formule. Ainsi, n1, n2, …, nk sont les nombres de Gödel des symboles d’une formule de l’arithmétique de Peano, et m est le nombre de Gödel de cette formule. Le processus peut ensuite être réitéré sur une suite de nombres de Gödel associés à une suite de formules de l’arithmétique de Peano, 1 2 k Les fonctions récursives primitives U ne fonction est calculable quand il existe un algorithme (une méthode) qui, pour tout argument donné, fournit la valeur de la fonction en un nombre fini d’étapes. Pour venir à bout de la multitude d’algorithmes imaginables, on considère une sous-classe des fonctions calculables, les fonctions récursives primitives. Elles ont toujours pour arguments des nombres naturels et sont définies selon le principe suivant : on déclare d’abord récursives primitives certaines fonctions très simples, dénommées fonctions de base. Puis on appelle récursive primitive toute fonction pouvant se construire selon certaines règles à partir de fonctions que l’on sait déjà être récursives primitives. La démonstration du théorème d’incomplétude de Gödel repose sur une suite de fonctions récursives primitives, déduites les unes des autres. Les fonctions de base sont les suivantes : ➤ la fonction nulle Nulk avec k arguments, donc la valeur est toujours zéro : Nulk(x1,…, xk) = 0 ; ➤ les fonctions successeurs, qui transforment leur argument x en son successeur s(x) (c’est le même que celui de l’arithmétique de Peano) ; ➤ la projection sur le ième argument : (1DiDk) Proji(x1,…, xk) = xi (la projection de k variables x1, …, xk sur la ième variable donne la variable xi). Les règles de composition de « nouvelles » fonctions récursives primitives à partir « d’anciennes » sont : © POUR LA SCIENCE ➤ la règle de composition : Si g(y1, … , ym), h1(x1, … , xn), … , hm(x1, … , xn) sont des fonctions récursives primitives, alors cela vaut également pour f(x1, … , xn) = g(h1(x1, … , xn), … , hm(x1, … ,xn)) (à la place des arguments de fonctions récursives primitives, on peut mettre des fonctions récursives primitives). ➤ la règle de récursion : Si g est une fonction récursive primitive, il en est de même pour la fonction f définie par : f(x1, … , xn, 0) = n0 f(x1, … , xn, s(k)) = g(k, f(x1, … , xn, k)) Cette définition permet de calculer f pour tout nombre s(k). Prenons par exemple f(x1, … , xn, 7). Par définition, on a : f(x1, … , xn, 7) = g(6, f(x1, … , xn, 6)). On exprime de même f(x1, … , xn, 6) en fonction de f(x1, … , xn, 5), puis on réitère le procédé jusqu'à ce que le dernier argument soit nul. On obtient alors : f(x1, … , xn, 7) = g(6, g(5, g(4, g(3, g(2, g(1, g(0, n0))))))). L e concept de fonction récursive primitive est puissant. Il permet de définir des fonctions de n’importe quelle complexité et la définition d’une fonction fournit en même temps l’algorithme (ou le programme informatique) pour son calcul. Les opérations arithmétiques classiques sont récursives primitives. L’addition, par exemple, peut se définir ainsi : +(n, 0) = n +(n, s(m)) = s(+(n, m)) 45 donnant alors le nombre de Gödel correspondant à la suite de formules. Le codage des suites de formules est important, car les démonstrations ne sont rien d’autre que des suites finies de formules, dont chacune, soit est un axiome, soit découle des précédentes. Les théorèmes de la théorie des nombres assurent que la numérotation de Gödel est univoque, c’est-à-dire qu’à un symbole, une formule ou une suite de formules correspond un unique nombre de Gödel. En outre, du fait de l’unicité de la décomposition en facteurs premiers, il est possible de savoir, pour chaque nombre naturel, s’il est un nombre de Gödel et si, dans ce cas, il est le nombre de Gödel d’un symbole, d’une formule ou d’une suite de formules. La méthode de Gödel (ou gödelisation), présentée ici pour des formules et des démonstrations du système formel de l’arithmétique de Peano, peut être utilisée de la même façon pour n’importe quel texte (notamment des textes de programmes). On attribue des nombres aux éléments du texte (lettres, mots, caractères spéciaux) et on forme de nouveaux nombres à partir de la suite de ces nombres, selon l’instruction récursive ci-dessus. Grâce à la gödelisation, les concepts métalinguistiques de la syntaxe de l’arithmétique de Peano sont traduits en propriétés, fonctions ou relations sur des nombres. Par exemple, le concept «est une formule» correspond à la propriété «est un nombre dont les exposants de la décomposition en facteurs premiers sont tous impairs» De même, le concept métathéorique «x est une formule démontrable», indiqué par le signe Dém (pour démontrable) peut être exprimé à l’aide de relations arithmétiques. Alfred Tarski (à gauche) et Kurt Gödel à Vienne en 1935. Tarski précisa la distinction entre langage et métalangage, et étudia la relation entre les expressions et ce qu’elles désignent. Avec sa numérotation, Kurt Gödel construisit un moyen de passer formellement d’un niveau de langage à un autre. Alfred Tarski Le théorème d’incomplétude Après avoir établi en quatre théorèmes une méthode pour construire des fonctions récursives, Gödel énonce une suite de 45 propriétés, «dont chacune est définie par les précédentes suivant la procédure donnée dans les théorèmes I-IV ». La fonction n°45 est une fonction D à deux variables : yDx signifie «la suite de formules de nombre de Gödel y est une démonstration pour la formule de nombre de Gödel x». Sous le numéro 46, il définit enfin la démontrabilité: Dém(x) ≡ (∃y) yDx, ajoutant entre parenthèses: «Dém(x) est l’unique concept parmi ceux définis de 1 à 46 dont nous ne pouvons affirmer qu’il est récursif». La formule 46 est interprétable ainsi: «La formule x est démontrable si et seulement s’il existe une suite de formules y qui démontre x.» Il existe donc une formule pour la phrase «x est une formule démontrable», tout comme pour sa négation. Gödel montre en outre que la fonction de substitution subst, qui permet de remplacer une variable par une valeur numérique dans une formule, est une fonction récursive primitive. Subst est d’une importance capitale pour la démonstration de Gödel, car elle est la clé de l’autoréférence: elle permet d’insérer le nombre de Gödel de la formule «Cette proposition n’est pas démontrable» dans la formule elle-même. Appelons F(x) la formule «La proposition de nombre de Gödel x n’est pas démontrable» et nommons f son nombre de Gödel. La fonction de substitution nous permet de remplacer x par ce nombre de Gödel f dans F(x). Nous obtenons ainsi la formule F(f): «La proposition de nombre de Gödel f n’est pas démontrable», c’est-à-dire «La proposition “La proposition de nombre de Gödel x n’est pas démontrable” n’est pas démontrable». Cela signifie que dans un système d’axiomes non contradictoire la formule F(f) n’est pas démontrable formellement; la proposition F(f) est donc indécidable. Dans une étape suivante, Gödel démontre que la formule F(f), bien que non déductible formellement, est une proposition arithmétique vraie pour tous les nombres entiers. La formule F(f) est donc à la fois vraie et formellement indécidable. Arrivé à ce résultat, Gödel observe : « La méthode de démonstration que l’on vient d’exposer peut s’appliquer à tout système formel qui, en premier lieu, interprété comme système de concepts et de propositions, offre des moyens d’expression suffisants pour définir les concepts qui figurent dans le raisonnement précédent (en particulier le concept de “ formule démontrable ”) et dans lequel, en second lieu, toute formule démontrable est vraie dans l’interprétation © POUR LA SCIENCE De l’incomplétude au hasard Paulson Casino Supplies of New Jersey, Inc. É piménide le Crétois aurait dit au VIe siècle avant notre ère : « Tous les Crétois sont des menteurs. » Cette phrase est une antinomie, car elle contient l’assertion : « Je suis un menteur ». Le paradoxe est reformulable ainsi : « Cette proposition (que je suis en train de formuler) n’est pas vraie. » Cette phrase est vraie si et seulement si elle est fausse… Le théorème d’incomplétude de Gödel présente des similitudes avec ce paradoxe, où l’on aurait remplacé le qualificatif « vrai » par « démontrable formellement » : « Cette proposition n’est pas démontrable formellement ». Dans un système formel non-contradictoire contenant l’arithmétique, cette proposition n’est démontrable que si elle est fausse. Ainsi, ou quelque chose de logiquement faux est démontrable dans le système de l’arithmétique de Peano (ce qui veut dire que le système, contrairement à l’hypothèse, est contradictoire), ou la déclaration « Cette proposition n’est pas démontrable formellement » est vraie et donc non démontrable formellement, donc le système est incomplet. Dans la deuxième moitié du XXe siècle, le mathématicien Gregory Chaitin transposa le résultat de Gödel à la théorie de l’information. Gregory Chaitin définit la complexité d’une suite de n bits (c’est-à-dire d’un nombre) comme la taille minimale d’un programme écrivant cette suite. Ainsi, le nombre 000000...000 (un million de fois) comporte un million de nombres et le programme « écrire un million de fois 0 » est plus court. Pour les nombres aléatoires, il n’existe pas de programme plus court que la liste de leurs chiffres. G. Chaitin démontra la propriété suivante : « Bien que la plupart des nombres soient des nombres aléatoires [des nombres pour lesquels il n’existe pas de programme de calcul plus court qu’eux-mêmes], un système formel donné, aussi puissant soit-il, ne peut démontrer le caractère aléatoire que d’un nombre fini de nombres. » Dans son livre Cinq règles en or : les grandes théories mathématiques du XXe siècle (1997), le mathématicien John Casti commente : « Détaillons ce résultat remarquable : supposons que nous ayons un système formel, dont les axiomes et les règles de déduction peuvent être décrits par n bits ; le programme de la machine de Turing [automate fictif capable d’effectuer tous les calculs] aurait ainsi une longueur de n bits. Ce programme ne peut donc montrer, pour aucun nombre plus long que n bits, s’il est un nombre aléatoire ou non. Pourquoi en est-il ainsi ? Supposons qu’il existe dans ce système une démonstration qui prouve, pour un nombre plus long que n, qu’il est un nombre aléatoire. Nous aurions alors un programme de n bits de long capable d’exprimer ce nombre aléatoire. Être un nombre aléatoire signifie cependant, par définition, qu’on ne peut produire ce nombre par un programme plus court que le nombre luimême. Nous obtenons donc une contradiction montrant qu’il ne peut exister un tel programme. Tout compte fait, cela mène à une démonstration mathématique du fait communément connu qu’on ne peut tirer d’un système plus d’information qu’on n’en rentre. » considérée. » Gödel est arrivé à son théorème d’incomplétude, que nous énoncerons ainsi : « Toute théorie non contradictoire axiomatisée suffisamment puissante (c’est-à-dire en mesure d’exprimer l’arithmétique) est incomplète. » Contrairement à ce que laissent entendre de nombreuses vulgarisations de ce résultat révolutionnaire, soulignera Jaakko Hintikka dans son ouvrage Sur Gödel, le premier théorème de Gödel ne démontre pas «qu’il existe en arithmétique (ou dans un autre système) des propositions vraies, mais absolument indémontrables. Il montre plutôt que toutes les propositions vraies de l’arithmétique ne peuvent pas être démontrées dans un seul et unique système formel donné.» Pour Gödel, système formel et procédure déterministe et mécanique vont de pair. Ainsi, convaincu que les fonctions récursives primitives ne rendent pas compte du concept de procédure mécanique de façon satisfaisante, il tente de développer une version généralisée de la récursivité. En 1936, le logicien américain Alonzo Church (1903-1995) démontrera, à partir de ces recherches, l’indécidabilité de la logique des prédicats du premier ordre : il est impossible d’établir, dans la logique des prédicats du premier ordre, une procédure de calcul générale qui déterminerait, pour toute formule, si elle est valide ou non. Son théorème, connu aujourd’hui sous le nom de théorème de Church, répond ainsi négativement au problème de la décision posé par Hilbert dans son programme : « Un problème mathématique donné , pensait Hilbert, doit obligatoirement pouvoir admettre une solution exacte, soit sous la forme d’une réponse directe à une question posée, soit par la démonstration de son insolubilité et de © POUR LA SCIENCE 47 l’échec inévitable de toute tentative qui y est lié. » Fondés aussi sur les recherches de Gödel, les travaux du logicien britannique Alan Turing (19121954) constitueront le pendant du théorème de Church en informatique théorique. Turing démontrera en effet l’indécidabilité du problème de l’arrêt d’un programme : il n’existe pas de procédé permettant, pour tout programme P, de décider si P s’arrête ou non. Il n’existe donc pas d’algorithme capable de vérifier au préalable la présence de boucles sans fin dans un programme. Dans son livre paru en 2001, En explorant le hasard, le mathématicien Gregory Chaitin écrira en post-scriptum à une jeune lectrice : «La théorie algorithmique de l’information est le vrai fondement des mathématiques. Les mathématiques traitent de l’information mathématique contenue dans des axiomes, exactement comme l’information biologique est contenue dans des séquences d’ADN, qui constituent le fondement de la biologie. En tentant d’enterrer la vérité mathématique dans un système formel rigide, Hilbert s’est fourvoyé. Les mathématiques, comme la biologie, sont en devenir et non pas données une fois pour toutes. Gödel et Turing ne sont que la partie visible de l’iceberg.» Il existe certainement « une raison profonde de l’incomplétude et une explication naturelle au fait qu’aucun ensemble fini d’axiomes n’est complet». Que reste-t-il du rêve de Hilbert? MATHÉMATIQUES ET ESPRIT Hao Wang proposa plusieurs versions du théorème de Gödel en langage courant : ➤ Les mathématiques sont inépuisables : elles ne peuvent être complétées. ➤ Toute théorie formelle non contradictoire des mathématiques contient obligatoirement des propositions indécidables. ➤ Aucun programme informatique ne peut démontrer toutes les propositions vraies des mathématiques et seulement elles. ➤ Aucun système formel des mathématiques (englobant au minimum la théorie des nombres naturels) ne peut être à la fois non contradictoire et complet. ➤ Les mathématiques sont mécaniquement (ou « algorithmiquement ») inépuisables. 48 Wang écrivit sur l’importance du théorème « en dehors des mathématiques » : « L’inépuisabilité algorithmique montre, selon Gödel, que soit l’esprit humain est supérieur à tous les ordinateurs, soit les mathématiques ne sont pas l’œuvre de l’esprit humain ; ou encore il montre les deux à la fois. Il est donc manifeste que le théorème présente de l’importance tant pour la philosophie de l’esprit que pour la philosophie des mathématiques. » Du théorème d’incomplétude découle une conséquence étonnante. Nous avons vu, dans la démonstration du premier théorème, que la non-contradiction de l’arithmétique de Peano – arithmétique que nous noterons AP – entraîne l’indécidabilité d’une proposition F(f) et qu’inversement l’indécidabilité de F(f) garantit la non-contradiction de AP (d’une théorie contradictoire on peut déduire toute proposition exprimable dans le langage de la théorie, que celle-ci ait un sens ou non, ce qui rend la théorie inutile). Cette argumentation peut à son tour être formalisée dans le cadre des métamathématiques: notons NCAP la propriété métamathématique «AP est noncontradictoire». De même que toutes les formules métamathématiques, NCAP devient, dans la numérotation de Gödel, une formule de l’arithmétique de Peano, que nous noterons NC*AP. Il est alors possible de démontrer, dans l’arithmétique de Peano, que NC*AP et la proposition F(f) de Gödel sont équivalentes (Gödel a seulement «esquissé cette démonstration dans ses grandes lignes», elle ne sera explicitée que plus tard, par le mathématicien américain Solomon Feferman). La proposition F(f) étant indécidable, NCAP l’est donc aussi, ce qui signifie qu’en arithmétique et, plus généralement, dans toute théorie axiomatisée, non contradictoire et suffisamment riche, la non-contradiction de la théorie elle-même n’est pas démontrable dans le langage de la théorie! Ainsi, cette conséquence du théorème d’incomplétude fixe les limites de la méthode formelle, faisant s’écrouler le programme hilbertien sous sa forme initiale. Notons bien: le programme sous sa forme initiale. En effet, cette conséquence ne signifie pas que la non-contradiction ne sera pas démontrable dans un métalangage, mais qu’elle ne peut l’être dans le langage de la théorie en question: Je tiens à faire expressément remarquer, conclut Gödel, que le théorème XI [le théorème d’incomplétude] (et les résultats correspondants pour M et A [respectivement le système d’axiomes de la théorie des ensembles et celui des mathématiques classiques]) ne contredisent pas le point de vue formaliste de Hilbert. Ce point de vue ne présuppose en effet que l’existence d’une démonstration de cohérence dans laquelle apparaissent exclusivement des méthodes finitistes, et on peut concevoir qu’il existe des démonstrations finitistes que l’on ne peut pas exprimer dans le formalisme de AP (ou de M ou de A) [mais que l’on peut exprimer dans les métalangages correspondants]. Une autre conséquence du théorème de Gödel mérite que l’on s’y arrête. Comme F(f) est indécidable, on peut adjoindre aux axiomes de l’arithmétique de Peano tantôt F(f), tantôt ¬F(f) ; on obtient ainsi deux nouvelles théories non contradictoires, la théorie AP + F(f) , et la théorie AP + ¬F(f). D’après le théorème de complétude démontré par Gödel pendant sa thèse (un ensemble d’énoncés est logiquement cohérent si et seulement si les énoncés © POUR LA SCIENCE Gallery/Stratford, Ontario Invoking the Googul Plex (sic), de John Scott. Le Googleplex est le 100 nombre 1010 . Le principe d’induction (ou de récurrence) permet de démontrer des propriétés ϕ(x) même quand les arguments x sont trop grands pour que nous puissions les manipuler, tel le Googleplex. admettent un modèle, voir page 39), il existe donc un modèle pour chacune des théories AP + F(f) et AP + ¬F(f). En outre, ces deux modèles ne sont pas isomorphes, c’est-à-dire mathématiquement identiques, car dans un modèle F(f) est vraie et dans l’autre ¬F(f) est vraie. Ainsi, bien que l’arithmétique de Peano possède son modèle standard (la théorie des nombres naturels), il existe aussi, pour l’arithmétique, des modèles non standard avec des objets « singuliers ». Cette découverte du Norvégien Skolem jouera un rôle important dans le développement de l’analyse non standard par Abraham Robinson, un ami de Gödel, au milieu des années 1960. Nous sommes donc dans la situation délicate: il existe des propositions qui sont vraies dans le modèle standard de la théorie, mais qui sont indémontrables dans cette théorie. Dans les années 1950, Leon Henkin démontrera qu’en élargissant le concept de modèle, on peut retrouver la complétude sémantique pour le langage du second ordre (pour cela, il introduira une sémantique «non standard», où les variables de second ordre ne sont plus seulement les propriétés des variables du premier ordre: elles peuvent aussi prendre leurs valeurs dans un autre domaine, contrairement aux variables de la sémantique standard). À la lecture des travaux de Gödel, une question émerge, que Michael Detlefsen formula ainsi : « Le concept de proposition vraie en arithmétique était, pour Gödel, un concept défini de façon objective. Toutefois, dès 1931, il découvrit qu’il était impossible de le définir en arithmétique. Malgré cela, il n’énonça jamais ce résultat (ce fut Tarski qui le fit, indépendamment de Gödel, en 1933) et, en 1931, il s’efforça de tenir le concept de vérité à l’écart de ses résultats les plus importants. Pourquoi ? » Par crainte d’affronter les préjugés philosophiques de l’époque. Carnap écrira, en 1963, à propos du congrès de 1935 où Tarski exposa ses idées sur le concept de vérité dans les langages formalisés : « Il n’est pas facile pour les jeunes d’aujourd’hui d’imaginer la force du scepticisme de l’époque et le dynamisme de la résistance à ses débuts. » ■ © POUR LA SCIENCE 49