Achille Brocot, horloger de son état, introduisit en 1860 un arbre binaire particulier, aujourd’hui appelé « arbre de Stern-Brocot », avec l’aide duquel il souhaitait approximer tout réel par des rationnels aux numérateur et dénominateur limités. Cette restriction lui permettrait d’effectuer l’approximation dans ses horloges, avec des engrenages comportant peu de dents donc simples à fabriquer.
Bien plus tard, en 1999, Calkin et Wilf se basèrent sur cet arbre pour démontrer la dénombrabilité1 de . En 1999 ? Mais Cantor (Georg Ferdinand Ludwig Philipp de son petit nom, 1845–1918, mathématicien allemand) avait pourtant clos le sujet à la fin du 19ème siècle. Non sans remous d’ailleurs, puisqu’il paraissait en ces vieux temps aberrant que , dense dans , puisse comporter autant d’éléments que .
Pour comprendre cette indignation, il faut assimiler la notion de densité d’un ensemble dans un autre. « dense dans » signifie qu’entre deux réels distincts quelconques, il existe une infinité de rationnels. Par exemple, il existe une infinité de rationnels entre et , entre et … Notamment, il en existe une infinité entre et , entre et , entre et … ce qui n’a pas empêché Cantor de prouver qu’il y avait autant de nombres rationnels que d’entiers naturels !
Pour suivre cet article, il vous faut être à l’aise avec les ensembles et les fonctions, ainsi qu’avec l’arithmétique, principalement la notion de deux nombres premiers entre eux. Connaître le principe des arbres binaires est aussi nécessaire.
Il est utile de connaître les notions de dénombrabilité et de bijectivité, car elles ne seront que brièvement expliquées. Toutefois, les définitions fournies ici devraient suffire. Maîtriser le principe de récurrence vous permettra de comprendre l’ensemble des démonstrations.
Pour information, l’article est purement mathématique et n’est rattaché à aucune application de la vie courante. Les objectifs sont au nombre de trois :
- Vous introduire à la notion de dénombrabilité, avec l’exemple surprenant de ;
- Vous faire découvrir la structure qu’est l’arbre de Stern-Brocot ;
- Vous faire manipuler des arbres binaires, notamment au travers de récurrences.
- Un ensemble est dit dénombrable s’il comporte autant d’éléments que , c’est-à-dire si on peut énumérer ses éléments : le premier, le deuxième, le troisième, etc.↩
La méthode de Cantor
Pour démontrer ce résultat surprenant, Cantor commença par considérer comme une grille puis attribuer à chaque point deux coordonnées. Parcourir cette grille selon des diagonales nous permet alors de définir une bijection1 entre et .

Plus formellement, pour , la ème diagonale est l’ensemble suivant :
En ne conservant que les termes d’indice de colonne non nul et premier avec l’indice de ligne, on définit :
puis l’application suivante :
Par définition de , est bijective. On a alors successivement :
- , produit cartésien de deux ensembles dénombrables, est dénombrable ;
- , partie infinie d’un tel ensemble, est dénombrable ;
- , en bijection avec , est dénombrable ;
- est dénombrable par passage aux opposés ;
- , réunion de deux ensembles dénombrables, est dénombrable.
Il est donc effectivement possible d’énumérer les rationnels. Seulement, le faire de cette manière ne permet de prévoir simplement ni le nème rationnel, ni même le successeur d’un élément donné. Heureusement, Calkin et Wilf parviennent à se servir de l’arbre de Stern-Brocot pour retrouver le résultat de Cantor et pallier ses manques2.
- Une bijection est une application telle que tout élément de admette exactement un antécédent par . Autrement dit, une telle application permet de relier un à un les éléments de à ceux de . est dite bijective et et en bijection. De tels ensembles ont alors même nombre d’éléments.↩
- Ceux du résultat, pas de Cantor. Comprenons-nous bien : ce mec était une machine.↩
Dessine-moi un arbre !
Pour dresser l’arbre de Stern-Brocot, partons de la racine : . Puis prenons pour fils gauche et pour fils droit . Plus généralement, on définit le fils gauche d’un noeud par et le fils droit par . Ainsi, un noeud a pour fils gauche et pour fils droit . On obtient alors l’arbre suivant :

Il est clair que cet arbre ne contient que des rationnels strictement positifs et que n’apparaît qu’à la racine. En outre, pour tout noeud , on a directement :
- i.e. si le noeud est la racine ;
- i.e. si le noeud est un fils gauche ;
- i.e. si le noeud est un fils droit.
Introduisons maintenant plusieurs résultats dont nous nous servirons par la suite et dont les démonstrations sont intéressantes puisqu’elles constituent des exemples de récurrence sur un arbre binaire1.
Lemme
Si est un noeud de l’arbre, et sont premiers entre eux.
Démonstration
Le numérateur et le dénominateur de la racine sont clairement premiers entre eux.
Prenons un noeud quelconque de l’arbre, c’est-à-dire dans . On a alors :
Ainsi, si et premiers entre eux, le fils gauche du noeud la vérifie, de même que le fils droit .
Par induction structurelle sur le niveau d’exploration de l’arbre, on en déduit le lemme.
Lemme
Deux noeuds et ayant des fils gauches (ou droits) identiques vérifient et .
Démonstration
Prenons deux noeuds et ayant tous deux pour fils gauche .
Par définition :
Donc, on a successivement :
- car
Mais ces deux fractions sont irréductibles donc et .
On conclut de même dans le cas où les fils droits sont identiques.
Lemme
Pour tout et tout noeud de l’arbre, le noeud provenant d’une suite de fils gauches du noeud est .
Démonstration
Prenons un noeud de l’arbre.
Le premier fils gauche de est son fils gauche . Donc on a le résultat pour .
Prenons tel que le noeud provenant d’une suite de fils gauches du noeud soit .
Alors le fils gauche de ce noeud est :
Par principe de récurrence, le lemme est vérifié.
Remarque
On conclut de manière analogue que le noeud provenant d’une suite de fils droits du noeud est .
La bijection promise
Pour établir la dénombrabilité de , définissons une suite en posant puis en effectuant un parcours en largeur de l’arbre : niveau par niveau, de gauche à droite.

Ainsi, , , , , etc.
Cette suite peut paraître sans intérêt de prime abord, et pourtant :
Théorème
La suite est une bijection de dans .
Démonstration
Tout d’abord, est bien définie sur et à valeurs dans , par définition de l’arbre. Prouvons maintenant qu’elle est surjective puis injective.
- La surjectivité
La surjectivité est équivalente au fait que tout nombre rationnel strictement positif apparaît dans l’arbre. Supposons que ce ne soit pas le cas et, parmi les rationnels strictement positifs n’apparaissant pas dans l’arbre, prenons-en un de dénominateur positif minimal.
Comme est dans l’arbre, .
Si , a un dénominateur plus petit et positif donc apparaît dans l’arbre. Mais le fils gauche de est , ce qui est absurde puisque est absent de l’arbre par hypothèse.
On conclut de même dans le cas .
- L’injectivité
L’injectivité est équivalente au fait qu’aucun nombre rationnel apparaît deux fois dans l’arbre. Par l’absurde, prenons apparaissant plusieurs fois dans l’arbre et de dénominateur positif minimal.
Il a été vu plus haut que n’était présent qu’à la racine, donc . Si , on a :
Cet arbre sous-entend que est le seul père possible pour . Heureusement, c’est le cas, puisque est un père valable pour et deux noeuds ayant des fils gauches (ou droits) identiques ont les mêmes numérateur et dénominateur.
Donc, puisque , apparaît au moins une fois comme enfant d’un autre noeud, c’est-à-dire que apparaît plusieurs fois dans l’arbre, ce qui contredit la minimalité du dénominateur.
On conclut de même dans le cas .
On en conclut que est bijective puis que est dénombrable et que l’est.
Nous avons donc retrouvé le résultat de Cantor à l’aide de l’arbre de Stern-Brocot. Il est temps maintenant d’introduire un personnage : Stern.
- On parle d'induction structurelle. ↩
Toujours plus loin
Ce que l’on souhaite à présent, ce sont des méthodes pour déterminer facilement le nème rationnel dans l’énumération et le successeur d’un rationnel donné. Pour cela, reprenons notre arbre et dressons la liste des numérateurs des noeuds : … Cette liste forme en fait la suite de Stern1, introduite en 1858 par Moritz Stern (1807–1894, mathématicien allemand). On notera que la liste des dénominateurs des noeuds forme la suite de Stern privée de son premier terme, ce que nous prouvons plus bas.
Cette suite , au nombre de propriétés tout à fait incroyable, est définie comme suit :
Le théorème suivant nous fournit une expression simple des termes de la suite, lesquels nous permettront par la suite d’obtenir facilement le nème rationnel de l’énumération.
Théorème
où désigne le reste de la division euclidienne de par . Autrement dit, pour , le ème terme de la suite de Stern est le nombre d’entiers impairs sur la ème diagonale du triangle de Pascal :

Rationnel à un rang donné
Les termes de la suite de Stern s’avèrent simples à calculer et vont nous permettre de facilement déterminer le rationnel à un rang donné. Commençons par le résultat suivant, important.
Proposition
Si , est le fils gauche de . De même, si , alors est le fils droit de .
Démonstration
En considérant que la racine est au niveau , on obtient facilement que le ème niveau de l’arbre comporte éléments et que l’élément le plus à gauche a pour numéro .
Prenons alors et notons le noeud numéroté par dans notre parcours en largeur. désignera le niveau auquel se positionne .
Il y a noeuds à gauche et sur le même niveau que et à sa droite. Chaque noeud à sa gauche ayant deux fils, le fils gauche de aura pour numéro . Le numéro du fils droit est alors .
On en conclut la proposition.
Ce résultat est notamment utilisé dans le tri par tas et va nous servir à démontrer le théorème suivant, lequel va nous permettre d’exprimer le nème rationnel de l’énumération en fonction de termes de la suite de Stern, termes dont nous avons fourni une expression ci-dessus.
Théorème
Démonstration
Tout d’abord et . Le résultat est donc vérifié pour et .
Prenons dans tel que .
Alors, pour , est le fils gauche de et on a :
De même, si est le fils droit de , et on a :
Par induction structurelle, on en conclut le théorème.
Successeur d’un rationnel
Le second problème de la méthode de Cantor auquel nous souhaitons remédier est la détermination du successeur d’un rationnel. Le théorème suivant s’avère alors être une aubaine pour nous, puisqu’il fournit une expression de en fonction de .
Théorème
Démonstration
On a bien : et .
- Prenons, pour , pair.
Alors car et . D’où
Donc .
- Prenons, pour , impair et supposons que ne soit pas au bord droit de l’arbre.
Alors et ont un ancêtre commun, noté , niveaux au-dessus d’eux, , et provient d’une suite de fils droits du fils gauche de tandis que d’une suite de fils gauches du fils droit de .

Mais le fils droit d’un noeud est et son fils gauche est .
Donc et . Mais :
.
Donc .
- Prenons, pour , impair et supposons que soit au bord droit de l’arbre.
Notons tel que provienne d’une suite de fils droits en partant de la racine. Alors provient d’une suite de fils gauches en partant de la racine.

On a alors . Mais .
Donc .
En somme, le théorème est vérifié.
Nous avons commencé par un résultat surprenant : la dénombrabilité de , suivie de la méthode historique pour démontrer ce résultat. Puis, afin de pallier aux limitations de cette méthode, l’arbre de Stern-Brocot a été introduit. Cela a été l’occasion pour le lecteur d’effectuer des récurrences sur un arbre binaire.
Les curieux pourront consulter les ressources suivantes et se renseigner sur l’incroyable suite qu’est celle de Stern.
- Suites de Stern et énumération de rationnels
- La suite de Stern-Brocot, sœur de Fibonacci
- Achille Brocot, mathématicien à ses heures
- Approximation rationnelle des réels avec l’algorithme de Stern-Brocot
- Addition des cancres, suites de Brocot et friandises associées.
Concernant les images et leurs crédits :
- Le triangle de Pascal mettant en avant la suite de Stern a été adapté d'ici.
- Le logo de l’article provient de Hiteshsaldi, sur Wikicommons. Il est placé sous licence CC BY-SA.
- Le reste a été créé pour les besoins de l’article et est placé dans le domaine public.
Un grand merci à Holosmos, Saroupille et Looping pour leur relecture attentive, ainsi qu’à Algue-Rythme, validateur dévoué.