Les causeries de Poincaré : passer du fini à l’infini

Carte de la série Les causeries de Poincaré : « Un instrument qui permet de passer du fini à l’infini. », Henri Poincaré sur le raisonnement par récurrence, La Science et l’Hypothèse, 1902

La Science et l’Hypothèse paraît en 1902, et c’est le livre qui rend Poincaré célèbre bien au-delà des mathématiciens. Il s’ouvre sur une énigme, reprise d’un article paru en 1894 dans la Revue de métaphysique et de morale. Si les mathématiques ne font que déduire, avec la logique, des conséquences de quelques axiomes, alors elles n’apprennent rien : tout était déjà dans les axiomes. Faut-il admettre que tous ces théorèmes « ne soient que des manières détournées de dire que A est A ? » Et si elles apprennent vraiment quelque chose, d’où leur vient cette rigueur que personne ne conteste ?

Sa réponse tient en un mot, qu’un élève de terminale rencontre aujourd’hui dans son programme : la récurrence.

Poincaré en poche : La Science et l’Hypothèse, présentée par Étienne Ghys (Champs, Flammarion).
Le livre de cet épisode : La Science et l’Hypothèse, en poche chez Champs, présentée par Étienne Ghys. Le raisonnement par récurrence en est le premier chapitre.

2 + 2 = 4 n’est pas une démonstration

Poincaré commence par une démonstration célèbre, celle que Leibniz donnait de 2 + 2 = 4. On définit 2, 3 et 4 par 1 + 1 = 2, 2 + 1 = 3, 3 + 1 = 4, et l’opération « ajouter 2 » par x + 2 = (x + 1) + 1. Alors 2 + 2 = (2 + 1) + 1 = 3 + 1 = 4. C’est irréprochable, et c’est sans intérêt :

On ne saurait nier que ce raisonnement ne soit purement analytique. Mais interrogez un mathématicien quelconque : « Ce n’est pas une démonstration proprement dite, vous répondra-t-il, c’est une vérification ». On s’est borné à rapprocher l’une de l’autre deux définitions purement conventionnelles et on a constaté leur identité ; on n’a rien appris de nouveau.

Henri Poincaré, La Science et l’Hypothèse, 1902

Une vérification ne porte que sur un cas particulier. Une démonstration véritable dit quelque chose de tous les nombres, et c’est pour cela qu’elle est féconde. D’où la formule : « Il n’y a de science que du général. » Et, au passage, une pique qui plaira aux lecteurs de ce blog : « un joueur d’échecs, par exemple, ne crée pas une science en gagnant une partie. »

Reconstruire l’addition avec une seule opération

Pour trouver où se cache le raisonnement qui apprend quelque chose, Poincaré refait les premières pages de l’arithmétique avec une rigueur complète. Il suppose seulement qu’on sait ajouter 1. Pour ajouter un nombre quelconque a, il pose :

x + a = [x + (a - 1)] + 1

On sait ce qu’est x + a dès qu’on sait ce qu’est x + (a - 1), et, de proche en proche, on remonte jusqu’à x + 1. Il le remarque aussitôt : cette égalité « contient en effet une infinité de définitions distinctes, chacune d’elles n’ayant un sens que quand on connaît celle qui la précède ». La multiplication se construit de la même façon, avec a \times 1 = a et a \times b = [a \times (b - 1)] + a.

Il démontre ensuite l’associativité, la commutativité et la distributivité, toujours de la même manière. On vérifie la propriété pour 1, puis on montre que si elle est vraie pour un nombre, elle est vraie pour le suivant. Il finit par s’arrêter : « J’arrête là cette série monotone de raisonnements. Mais cette monotonie même a mieux fait ressortir le procédé qui est uniforme et qu’on retrouve à chaque pas. » Ce procédé, c’est le raisonnement par récurrence, qu’il appelle « le raisonnement mathématique par excellence ».

Une infinité de syllogismes en une phrase

Voici le cœur du chapitre. Poincaré déplie la récurrence pour montrer ce qu’elle contient :

Le théorème est vrai du nombre 1. Or s’il est vrai de 1, il est vrai de 2. Donc il est vrai de 2. Or s’il est vrai de 2, il est vrai de 3. Donc il est vrai de 3, et ainsi de suite.

Chaque étape est un raisonnement banal, que la logique seule permet de faire. Mais il y en a une infinité, et c’est là toute la différence. Pour le nombre 10, il suffit de neuf étapes ; pour un million, de 999 999. Aussi loin qu’on aille, on reste dans le particulier, et « il faudrait franchir un abîme que la patience de l’analyste, réduit aux seules ressources de la logique formelle, ne parviendra jamais à combler ». La récurrence franchit cet abîme en une phrase : c’est un instrument « qui permet de passer du fini à l’infini ».

Poincaré reprend alors le joueur d’échecs, pour une autre raison. Même un calculateur prodigieux, qui voit cinq coups à l’avance, ne verra jamais qu’un nombre fini de coups. Transporté en arithmétique, il ne pourrait donc pas saisir d’un coup d’œil une vérité qui porte sur tous les nombres. D’où vient alors que nous acceptions la récurrence avec une telle certitude ? Poincaré répond qu’elle « n’est que l’affirmation de la puissance de l’esprit qui se sait capable de concevoir la répétition indéfinie d’un même acte dès que cet acte est une fois possible ».

Vérifier mille cas ne prouve rien

Reste une objection. En sciences physiques, on voit une loi vérifiée cent fois et on la tient pour vraie. Pourquoi ne pas faire de même en arithmétique ? Poincaré répond que les deux démarches se ressemblent mais n’ont pas le même fondement. L’induction des physiciens « est toujours incertaine, parce qu’elle repose sur la croyance à un ordre général de l’Univers ». La récurrence, au contraire, « s’impose […] nécessairement ».

Ce passage se prête à un calcul. Le programme ci-dessous fait deux choses. Il reconstruit d’abord l’addition et la multiplication de Poincaré, en ne s’autorisant qu’à ajouter 1. Il met ensuite à l’épreuve trois lois qui paraissent évidentes quand on essaie les premiers nombres :

from math import comb, isqrt

# 1. L'addition de Poincaré : on ne sait qu'ajouter 1, et tout le reste se définit par récurrence.
def plus_un(x):
    return x + 1                       # « l'opération x + 1 », supposée connue

def plus(x, a):
    """x + a = [x + (a − 1)] + 1, et x + 1 est connu."""
    return plus_un(x) if a == 1 else plus_un(plus(x, a - 1))

def fois(a, b):
    """a × 1 = a, et a × b = [a × (b − 1)] + a."""
    return a if b == 1 else plus(fois(a, b - 1), a)

print("2 + 2 =", plus(2, 2), "  7 × 6 =", fois(7, 6))

# 2. Trois « lois manifestes », vérifiées sur les premiers entiers.
def premier(n):
    return n > 1 and all(n % d for d in range(2, isqrt(n) + 1))

def premiere_exception(loi, jusqua=10**6):
    for n in range(1, jusqua + 1):
        if not loi(n):
            return n
    return None

lois = {
    "n² + n + 41 est premier":                        lambda n: premier(n*n + n + 41),
    "n points sur un cercle découpent 2^(n−1) régions": lambda n: comb(n, 4) + comb(n, 2) + 1 == 2**(n - 1),
    "1 + 3 + 5 + … + (2n − 1) = n²":                  lambda n: sum(range(1, 2*n, 2)) == n*n,
}
for nom, loi in lois.items():
    e = premiere_exception(loi, 3000)
    print(f"{nom:50} ", "vraie jusqu'à 3000" if e is None else f"fausse pour n = {e}")
  • n^2 + n + 41 est premier : 43, 47, 53, 61, 71… La formule, due à Euler, donne un nombre premier pour les quarante premières valeurs, de 0 à 39. Et pour n = 40, on obtient 1\,681 = 41^2. Quarante vérifications ne prouvaient rien.
  • Les régions du cercle : on place n points sur un cercle, on trace toutes les cordes, et on compte les régions. On trouve 1, 2, 4, 8, 16… La loi « on double à chaque fois » semble évidente. Pour six points, on obtient 31, et la vraie formule est \binom{n}{4} + \binom{n}{2} + 1.
  • La somme des nombres impairs : 1 + 3 + 5 + \dots + (2n - 1) = n^2. Le programme la vérifie jusqu’à 3 000, et il pourrait continuer jusqu’au milliard sans rien prouver de plus.

La troisième loi, pourtant, est vraie pour tous les entiers, et deux lignes suffisent à le démontrer. Elle est vraie pour n = 1, puisque 1 = 1^2. Et si la somme des n premiers impairs vaut n^2, celle des n + 1 premiers vaut n^2 + (2n + 1) = (n + 1)^2. C’est toute la distance que décrit Poincaré entre la vérification, qui s’arrête toujours quelque part, et la démonstration, qui atteint tous les nombres d’un coup.

Ce qu’on lit aujourd’hui

La démonstration de Leibniz avait un trou, et Poincaré l’a bouché sans le dire. Dans ses Nouveaux essais sur l’entendement humain, Leibniz définit « ajouter 2 » comme « ajouter 1 + 1 ». Sa démonstration passe alors de 2 + (1 + 1) à (2 + 1) + 1 sans justification, c’est-à-dire qu’elle suppose l’associativité. Gottlob Frege l’a relevé en 1884. La version de Poincaré définit directement x + 2 = (x + 1) + 1, et la difficulté disparaît. L’associativité, il la démontre plus loin, par récurrence.

Le débat sur la récurrence est resté ouvert, mais il a changé de forme. Poincaré écrivait contre les logiciens de son temps, Russell et Couturat en tête, qui voulaient ramener toute l’arithmétique à la logique pure. Pour lui, la récurrence ne se démontre pas : elle est un « jugement synthétique a priori », une intuition de l’esprit. Aujourd’hui, on la pose comme un axiome, celui des entiers de Peano (1889). Dans la théorie des ensembles, on peut la démontrer, mais seulement à condition d’admettre un axiome qui affirme l’existence d’un ensemble infini. D’une façon ou d’une autre, il faut accepter l’infini au départ : c’est exactement ce que disait Poincaré.

Ce que ça change, concrètement

Distinguer vérifier et démontrer, dès le collège. La récurrence n’est au programme qu’en terminale, mais la leçon de Poincaré sert bien avant. Un élève qui essaie trois valeurs et conclut « donc c’est toujours vrai » fait de l’induction de physicien. La formule d’Euler est le meilleur antidote : quarante succès, puis un échec. Elle trouve naturellement sa place dans un cours sur les nombres premiers en troisième.

Faire compter les régions du cercle. Tracer les cordes pour 2, 3, 4 et 5 points, faire deviner la suite, puis tracer pour 6. Le moment où la classe compte 31 au lieu de 32 vaut toutes les mises en garde. C’est le même travail de dénombrement que dans l’activité dénombrer des triangles.

Montrer l’escalier. La somme des impairs se voit aussi en dessin : chaque nouvel impair est une équerre qui agrandit le carré d’une rangée. C’est une récurrence qu’on peut montrer à un élève de cinquième, sans le mot. Et pour discuter de ce qu’est un nombre, il y a la séquence Derrière les nombres de l’option Maths-Philo.

À vous

  • quelle est votre « loi manifeste » préférée, celle qui tient longtemps avant de tomber ?
  • comment faites-vous comprendre à vos élèves qu’essayer des exemples ne suffit pas, sans les décourager d’en essayer ?
  • et la question qui fâche : faut-il vraiment attendre la terminale pour montrer une récurrence ?

Les commentaires sont ouverts.

Dans la même série. Les causeries de Poincaré parcourent les quatre livres qu’Henri Poincaré a écrits pour le grand public. Les épisodes précédents venaient de Science et méthode : l’idée qui monta dans l’omnibus, un cercle, c’est un rond et pourquoi la roulette est honnête. Tous les épisodes : la série complète.


« Sur la nature du raisonnement mathématique », paru dans la Revue de métaphysique et de morale en 1894 et repris comme premier chapitre de La Science et l’Hypothèse (Flammarion, 1902). Poincaré est mort en 1912 : le texte est dans le domaine public, et se lit en entier sur Wikisource. Les citations sont reproduites telles quelles, vérifiées sur le fac-similé de l’édition Flammarion. Pour le lire sur papier, La Science et l’Hypothèse existe en poche chez Champs, présentée par Étienne Ghys.

Votre commentaire

Pas de compte à créer. Votre adresse ne sera ni publiée, ni transmise : elle ne sert qu’à vous prévenir si je vous réponds.

Le premier message d’un nouveau visiteur attend ma relecture avant d’apparaître ; les suivants sont publiés aussitôt.