- Arbre de Stern-Brocot
-
En mathématiques, l'arbre de Stern-Brocot est une représentation de tous les rationnels strictement positifs, sous forme de fractions irréductibles.
Il a été découvert presque simultanément par le mathématicien allemand Moritz Stern (en) (1858) et par l'horloger français Achille Brocot (en) (1861).
Sommaire
Construction
On part du couple de fractions irréductibles (0/1, 1/0), (on affirme que ).
Et on répète autant de fois que l'on le souhaite, le procédé suivant :Insérer entre et , la fraction appelée médian de m/n et m'/n' : On a tout d'abord donc : qui constituent les fondements de la construction.
A l'étape suivante on obtient donc :
On construit encore quatre fractions ensuite :
Et ainsi de suite... Mais ainsi défini, on peut imaginer la représentation de cette construction par un arbre binaire que l'on appelle Arbre de Stern-Brocot (voir image).
On remarque au passage que sur l'extrême-gauche se trouvent les fractions unitaires, sur l'extrême-droite, les nombres entiers écrits sous forme rationnelle, le dénominateur étant égal à 1.
Questions
Mais finalement, le procédé étant simple, pourquoi fonctionnerait-il ? Les réponses aux questions suivantes apporteront la preuve que la construction est justifiée.
Chaque fraction est-elle irréductible ?
On doit montrer cette relation par récurrence. On pose le fait fondamental :
Si m/n et m'/n' sont deux fractions consécutives sur un même niveau de l'arbre, alors : m'n − mn' = 1 À l'étage 0, c'est évident : on a 1.1 - 0.0 = 1.
Insérons un médian (m+m')/(n+n'), on doit donc vérifier la relation de récurrence pour ce médian avec m'/n' et avec m/n.
Il est donc évident de voir que :
Notre relation est vérifiée et on a l'équation de Bézout de (n+n') et (m+m') avec comme PGCD : 1. Les deux nombres sont donc premiers entre eux.
Une fraction apparait-elle deux fois ?
Non, parce que l'ordre est conservé tout au long de la construction.
Soient les deux fractions m/n et m'/n'. On vérifie donc :
On a encore utilisé la relation fondamentale que l'on a démontrée juste avant. On peut démontrer le même genre de relation avec m'/n'. Et on obtient donc :
On a gagné !
Tous les rationnels strictement positifs sont-ils dans l'arbre ?
Bien sûr, mais ce n'est pas immédiat ! Prenons a/b tel que a soit premier à b.
On a au départ : 0/1 < a/b < 1/0.
A une étape donnée, on a la configuration : m/n < a/b < m'/n'. En engendrant (m+m')/(n+n'), trois cas s'offrent à nous :- , et là on arrête le processus (puisqu'on a gagné).
- , on pose donc pour l'étape suivante m: = m + m' et n: = n + n'
- , on pose donc pour l'étape suivante m': = m + m' et n': = n + n'
Or cet algorithme au bout d'un moment s'arrête !
On a vu que les conditions : et entraînent que et .
Ce qui nous amène à écrire que :
et d'après notre première relation on a : .Au fur et à mesure des étapes, vous m'accorderez que m' + n' + m + n croit strictement. Donc l'algorithme s'arrêtera (au maximum en a+b étapes d'ailleurs).
Suite de Farey
La suite de Farey d'ordre N, que l'on note FN, est la suite croissante des fractions réduites comprises entre 0 et 1 dont le dénominateur est inférieur ou égal à N.
L'étroite relation entre Stern-Brocot et cette suite est développé dans l'article correspondant.
Déplacement dans l'arbre
Idée
Étant donné qu'un rationnel n'apparait qu'une et une seule fois dans l'arbre, alors on peut considérer cet arbre comme un pur système de numération. Prenons la suite des pas que l'on va faire dans l'arbre pour atteindre la fraction souhaité. On définit donc deux "pas" : le pas G (gauche) et le pas D (droite) (dans le livre cité en référence on a L et R mais pour des raisons évidentes de traduction, on mettra G et D). On peut donc représenter tout rationnel positif comme une unique suite de G et D qui représente son chemin dans l'arbre.
Prenons un exemple : considérons le mot GDDG, on part de 1/1 pour arriver à 1/2, puis on va à droite vers 2/3, encore à droite, 3/4, et enfin à gauche 5/7.
On remarque que l'on doit partir de 1/1 (pour avoir un point de départ bien fixé et on suppose que 0 n'est jamais demandé). Convenons pour l'instant de l'appeler "Identité".
Mais comment trouver de façon simple une fraction à partir d'un mot composé de G et de D.
Représentation matricielle
Soit un mot S composé de G et de D, on définit f(S) comme la fraction correspondant à S.
On aimerait trouver un moyen simple pour exprimer f.
Pour cela on va partir d'une représentation matricielle. Si vous ne comprenez pas les calculs ci-dessous, reportez vous à l'article sur les matrices. La théorie pure des matrices n'est pas vraiment utile ici, mais le calcul l'est, cela ne requiert donc aucun niveau d'algèbre linéaire.
On identifiera dans la suite la fraction à la matrice colonne . Étant donné une telle matrice colonne, on notera le rationnel associé. Étant donné deux matrices colonnes V1 et V2, leur médian est V1 + V2. De façon matricielle, si on définit M comme la matrice 2x2 constituée des deux blocs V1 et V2, leur médian est tout simplement .
Remarquons maintenant que chaque élément V de l'arbre de Stern-Brocot est associé de façon unique aux deux éléments de l'arbre V1 et V2 à partir desquels il a été obtenu lors de la construction de l'arbre avec q(V1) < q(V2). On note gen(V) la matrice par blocs .
Pour calculer f(S), l'idée est alors de calculer récursivement gen(f(S)), qu'on notera
On remarque tout d'abord (où représente le mot vide et I est la matrice identité).
Si , on a .
D'où :
et :
On peut alors définir deux matrices : .
Ainsi, on a une façon très agréable de calculer notre fraction puisque si S est le mot , on a et .
Reprenons l'exemple cité précédemment :
Réciproque / Algorithmes
Pour la réciproque, c’est-à-dire, pour trouver le chemin effectué pour atteindre une fraction quelconque m / n il faut utiliser le Théorème de Bezout : si on suppose que m / n est irréductible, c'est-à-dire que m et n sont premiers entre eux, alors il existe deux entiers m' et n' tels que mn' − m'n = 1; si de plus on suppose que m et n sont distincts et tous les deux non nuls, alors on peut choisir m' et n' de façon que et 0 < n' < n (les coefficients m' et n' satisfaisant toutes ces contraintes sont directement calculés par l'algorithme d'Euclide étendu). Dans ce cas les fractions m' / n' et m / n sont consécutives dans la suite de Farey d'ordre n.
On pose alors m'' = m − m' et n'' = n − n' ; par construction m / n est le médian de m' / n' et m'' / n'' et on a m' / n' < m / n < m'' / n''. Dans l'arbre de Stern-Brocot, la fraction m / n est la fille de celle des deux fractions m' / n' et m'' / n'' qui a le plus grand dénominateur, c'est-à-dire la fille droite de m' / n' si n' > n'', ou la fille gauche de m'' / n'' si au contraire n' < n''.
Par exemple si on considère la fraction 5 / 7 alors l'algorithme de d'Euclide nous donne . On en déduit que 2 / 3 et (5 − 2) / (7 − 3) = 3 / 4 sont les voisines de 5 / 7 dans la suite de Farey d'ordre 7; comme 4 > 3, on a que 5 / 7 est la fille de gauche de 3 / 4 dans l'arbre de Stern-Brocot.
Voir aussi
Articles connexes
Lien externe
- (en) Eric W. Weisstein, « Stern-Brocot Tree », MathWorld
Référence
- Mathématiques concrètes (2e édition) de Ronald Graham, Donald Knuth et Oren Patashnik (en), ISBN 2711748243
Wikimedia Foundation. 2010.