Théorème de Zeckendorf

Représentation de Zeckendorf des 89 premiers entiers. Les largeurs des rectangles sont des nombres de Fibonacci Fi, et les hauteurs correspondantes ont pour valeur Fi-1.
Les rectangles de même couleur ont mêmes dimensions.

Le théorème de Zeckendorf, dénommé ainsi en référence au mathématicien belge Édouard Zeckendorf, est un théorème de théorie additive des nombres qui garantit que tout entier naturel N peut être décomposé, de manière unique, comme somme de nombres de Fibonacci distincts et non consécutifs. Cette décomposition est appelée la représentation de Zeckendorf de N.

Énoncé et exemples

modifier

Théorème de Zeckendorf[1]  Pour tout entier naturel N, il existe une unique suite d’entiers c0, ... , ck, avec et ci+1 > ci + 1, tels que

,

Fn est le nombre de Fibonacci d'indice n.

Les nombres de Fibonacci de rang supérieur ou égal à deux utilisables dans une décomposition de Zeckendorf forment la suite suivante[2] :

F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15 ... Fn
1 2 3 5 8 13 21 34 55 89 144 233 377 610 ... Fn – 1 + Fn – 2

Exemples :

  • les entiers de 0 à 4 ont pour décompositions de Zeckendorf[3] :  ;
  • la décomposition de Zeckendorf du nombre cent est .

L'exemple du nombre cent permet d'illustrer l'importance, pour garantir l'unicité de la représentation, de la contrainte imposant de ne pas utiliser de nombres de Fibonacci consécutifs. Le nombre cent possède en effet d'autres décompositions comme somme de nombres de Fibonacci :

Mais ces décompositions contiennent toutes des nombres de Fibonacci consécutifs.

Démonstration

modifier

La démonstration du théorème se fait en deux parties :

1. Existence : L'existence de la représentation se démontre par l'emploi de l'algorithme glouton[4] ou par récurrence sur N, ce qui revient au même.

2. Unicité : Pour cette partie, on utilise le lemme suivant :

Lemme   La somme de tout ensemble non vide de nombres de Fibonacci distincts et non consécutifs, dont le plus grand élément est Fj, est strictement inférieure à Fj+1.

Corollaires

modifier

Les démonstrations précédentes établissent aussi les corollaires suivants :

  • La décomposition de Zeckendorf de tout entier naturel a pour plus grand terme le plus grand nombre de Fibonacci qui est inférieur ou égal à .
  • Les nombres de Fibonacci sont les seuls entiers naturels dont la décomposition de Zeckendorf ne contient qu'un nombre ( et pour  : ).

Note historique

modifier

Zeckendorf a publié sa démonstration du théorème en 1972[1], alors que l'énoncé était connu, sous le nom de « théorème de Zeckendorf », depuis longtemps. Ce paradoxe est expliqué dans l'introduction de l'article de Zeckendorf : un autre mathématicien, Gerrit Lekkerkerker (en), a rédigé la preuve du théorème (et d'autres résultats) à la suite d'un exposé de Zeckendorf, et l'a publié[5] en 1952, tout en en attribuant la paternité à Zeckendorf. D'après Clark Kimberling[6], c'est un article de David E. Daykin[7], publié dans un journal prestigieux, qui a contribué à faire connaître le résultat et son auteur.

Représentation des entiers

modifier

Numération de Zeckendorf

modifier

Le théorème de Zeckendorf signifie que tout nombre entier naturel est égal à une somme de la forme avec ou et la condition[8] , et ce d'une seule façon. Ceci définit un système de numération positionnelle à bases mixtes constituées par en position 1, en position 2, etc., et dont les chiffres sont "0" et "1". L'écriture de dans cette numération est [9]. Elle est dénommée "représentation de Zeckendorf" ou "représentation en base de nombres de Fibonacci" de .

Dans cette numération, en reprenant les exemples du début de l'article, on écrit donc : et , ou encore .

Les représentations en numération de Zeckendorf des entiers 1, 2, 3, etc. forment la suite A014417 de l'OEIS. La table suivante donne quelques éléments de cette suite, étant l'écriture en numération du nombre s'écrivant en base dix :

0 1 2 3 4 5 6 7 8 9 10 11 ... 98 99 100
0 1 10 100 101 1000 1001 1010 10000 10001 10010 10100 ... 1000010001 1000010010 1000010100

Christiane Frougny, de l’Institut de recherche en informatique fondamentale, à Paris, a découvert en 1991 un algorithme permettant d’additionner deux nombres en numération de Zeckendorf sans passer par une autre représentation[10],[11],[12].

De même, Tomasz Idziaszek a proposé un algorithme similaire pour la multiplication[13],[12].

Mots binaires

modifier

À la décomposition de Zeckendorf d'un entier N, on peut associer un mot binaire[14], dont la n-ième lettre en partant de la droite est 1 si figure dans la décomposition de N et 0 sinon[15].

L'ensemble de ces mots binaires forme un langage rationnel dont les mots sont le mot vide ainsi que tous les mots qui commencent (à gauche) par 1 et ne contiennent pas deux 1 consécutifs[16]. Une expression rationnelle de ce langage est : .

Dans ce langage, l'alternance des 0 et 1 à la fin des mots associés aux entiers naturels successifs correspond à l'absence ou la présence d'un rectangle dans la figure en tête de la page. La fin de ces mots constitue une suite qui commence par :

C'est le début du mot de Fibonacci. En effet, le N-ième symbole du mot de Fibonacci est 0 ou 1 selon que est « Fibonacci pair » (R(N) se termine par 0) ou « Fibonacci impair ».

Ce langage et ses mots sont notamment utilisés en informatique pour le codage de Fibonacci : pour un entier de N, ce codage est constitué du mot binaire associé à N, retourné et suivi d'un chiffre 1. Ainsi, le codage de Fibonacci du nombre cent est 00101000011.

Variantes et généralisations

modifier

Le théorème et la représentation de Zeckendorf ont fait l'objet de nombreux travaux visant à en explorer les conséquences, développer des opérations arithmétiques dans ce système de numération, construire des variantes de représentation utilisant d'autres "lettres" (par exemple -1), en utilisant les nombres de Fibonacci d'indices négatifs, en imposant aux nombres de Fibonacci utilisés dans une décomposition des contraintes autres que celle d'être non consécutifs[17], ou encore en utilisant des suites de Lucas en lieu et place de la suite de Fibonacci. Les résultats de certains de ces travaux sont présentés ci-dessous, en commençant par la réciproque du théorème de Zeckendorf.

Réciproque du théorème de Zeckendorf

modifier

À la fin des années 1950, le mathématicien D. E. Daykin a démontré que, si une suite de chiffres entiers naturels est telle que tout nombre entier naturel non nul s'écrive de façon unique comme la somme de nombres distincts et non consécutifs, alors la suite des est la suite des nombres de Fibonacci d'index supérieur ou égal à deux[7],[18].

Une démonstration partielle de cette réciproque est donnée ci-dessous :

Représentation par des nombres de Fibonacci d'indices négatifs

modifier

La suite des nombres de Fibonacci peut être étendue aux indices négatifs, puisque la relation

permet de calculer à partir de Fn et de . On a (voir la section correspondante de l'article sur les nombres de Fibonacci) :

La suite des nombres de Fibonacci d'indice strictement négatif commence comme suit :

F-1 F-2 F-3 F-4 F-5 F-6 F-7 F-8 F-9 F-10 F-11 F-12 F-13 F-14 F-15 ... F-n
...

Au début des années 1990, le mathématicien M. W. Bunder a démontré que tout entier relatif est somme de nombres de Fibonacci d'indices strictement négatifs la représentation étant unique si deux nombres utilisés ne sont pas consécutifs[19],[20]. Par exemple :

  •  ;
  •  ;
  •  ;

Comme plus haut, on associe à la représentation d'un entier N un mot binaire, dont la n-ième lettre est 1 si F-n figure dans la représentation de N et 0 sinon. Ainsi, 24 est représenté par le mot 100101001. On observe que l'entier N est positif si et seulement si la longueur du mot associé est impaire.

Multiplication de Fibonacci

modifier

Donald Knuth[21] définit une opération de multiplication dite produit de Fibonacci d'entiers naturels et et notée comme suit : étant donné les représentations et , leur produit de Fibonacci est l'entier

Par exemple, comme 2 = F3 et 4 = F4 + F2, on a .

D. Knuth a prouvé que cette opération est associative.

Autres suites

modifier

É. Zeckendorf prouve l'existence et l'unicité, sous condition, pour la représentation par les nombres de Lucas[1].

D. Knuth mentionne que le théorème de Zeckendorf reste vrai pour les suites de k-bonacci, sous réserve que l'on n'utilise pas k nombres consécutifs d'une telle suite[22].

Aviezri Fraenkel a donné un énoncé général qui étend les théorèmes précédents[23] : Soit une suite d'entiers. Tout entier naturel N a exactement une représentation de la forme

sont des entiers naturels, pourvu que

pour

Système d'Ostrowski

modifier

Tout nombre irrationnel α admet un développement en fraction continue . Si l'on pose , , , et , , on a . La suite forme une base pour un système de numération :

Théorème d'Ostrowski[24]  Soit α un nombre irrationnel, et soit (qn) la suite des dénominateurs des convergents de la fraction continue de α. Tout entier positif N s'écrit de manière unique sous la forme

où les bi sont des entiers satisfaisant les trois conditions suivantes :

  1.  ;
  2. pour  ;
  3. Pour , si , alors .

Pour le nombre d'or, les ai valent tous 1, les qn sont les nombres de Fibonacci et les trois conditions signifient que les termes de la somme sont distincts et non consécutifs.

Notes et références

modifier
(en) Cet article est partiellement ou en totalité issu de l’article de Wikipédia en anglais intitulé « Zeckendorf's theorem » (voir la liste des auteurs).
  1. 1 2 3 Édouard Zeckendorf, « Représentation des nombres naturels par une somme de nombres de Fibonacci ou de nombres de Lucas », Bull. Soc. Roy. Sci. Liège, vol. 41, , p. 179–182.
  2. La condition imposant que le rang de soit au moins égal à est très importante. En effet, dans la suite de Fibonacci, . Si on n'exclut pas , de nombreux nombres ont deux décompositions, même en respectant la contrainte de ne pas utiliser dans leur décomposition deux nombres de Fibonacci consécutifs. Par exemple : .
  3. 0 est représenté par la somme vide.
  4. (en) Ronald Graham,Donald Knuth, Oren Patashnik, Mathématiques concrètes, Thomson publishing, , p. 314 - 315
  5. (nl) Cornelis Gerrit Lekkerkerker, « Voorstelling van natuurlijke getallen door een som van getalle van Fibonacci » [« Représentation des nombres naturels par une somme de nombres de Fibonacci »], Simon Stevin, vol. 29, , p. 190-195.
  6. (en) Clark Kimberling, « Edouard Zeckendorf [1901–1983] », Fibonacci Quart., vol. 36, no 5, , p. 416–418.
  7. 1 2 (en) D. E. Daykin, « Representation of Natural Numbers as Sums of Generalised Fibonacci Numbers », Journal of the London Mathematical Society, vol. s1-35, no 2, , p. 143–160 (ISSN 1469-7750, DOI 10.1112/jlms/s1-35.2.143, lire en ligne, consulté le )
  8. Cette condition est celle qui interdit l'usage de deux nombres de Fibonacci consécutifs.
  9. Graham, Knuth et Patashnik 1990, p. 281-283.
  10. (en) C. Frougny, « Fibonacci representations and finite automata », IEEE Transactions on Information Theory, vol. 37, no 2, (lire en ligne Accès payant)
  11. (en) C. Ahlbach et al., « Efficient algorithms for Zeckendorf arithmetic », Fibonacci Quarterly, (arXiv 1207.4497, lire en ligne)
  12. 1 2 Jean-Paul Delahaye, « Des suites exotiques pour écrire les nombres », Pour la Science, no 568, , p. 74
  13. (en) T. Idziaszek, « Efficient algorithm for multiplication of numbers in Zeckendorf representation », FUN 2021, (lire en ligne)
  14. Ces mots sont dits "binaires" car ce langage n'utilise que deux "lettres" : 0 et 1.
  15. La dernière "lettre" en partant de la droite étant nécessairement "1".
  16. Christine Solnon, Théorie des langages (Cours), Lyon, LIRIS, 30 p. (lire en ligne [PDF]), chap. 3 (« Langages réguliers et Automates finis »), p. 15-24
  17. (en) Péter Hajnal, « A short note on Zeckendorf type numeration systems with negative digits allowed », Bulletin of the ICA, vol. 97, , p. 54-66 (lire en ligne [PDF])
  18. Julie Piraprez, Le théorème de Zeckendorf : généralisations et réciproques (Mémoire de fin d'études (Master)), Liège, Liège Université, , 91 p. (lire en ligne [PDF])
  19. (en) Donald Knuth, « Negafibonacci Numbers and the Hyperbolic Plane », Paper presented at the annual meeting of the MAA, The Fairmont Hotel, San Jose, CA. 2008-12-11 [présentation en ligne].
  20. (en) M. W. Bunder, « Zeckendorf representations using negative Fibonacci numbers », Fibonacci Quarterly, (lire en ligne [PDF])
  21. (en) Donald E. Knuth, « Fibonacci Multiplication », Applied Mathematics Letters, vol. 1, no 1, , p. 57-60 (DOI 10.1016/0893-9659(88)90176-0)
  22. Exercice 5.4.2-10 dans (en) Donald E. Knuth, The Art of Computer Programming, vol. 3 : Sorting and Searching, , 2e éd. [détail de l’édition].
  23. Aviezri S. Fraenkel, « Systems of Numeration », The American Mathematical Monthly, vol. 92, no 2, , p. 105–114 (ISSN 0002-9890, DOI 10.2307/2322638, lire en ligne, consulté le )
  24. Ce théorème est attribué à Alexander Ostrowski (1922). Voir : (en) Jean-Paul Allouche et Jeffrey Shallit, Automatic Sequences : Theory, Applications, Generalizations, Cambridge, Cambridge University Press, , 571 p. (ISBN 0-521-82332-3, MR 1997038, lire en ligne), Section 3.9.

Voir aussi

modifier

Articles connexes

modifier

Liens externes

modifier

Bibliographie

modifier
  • (en) Graham, Knuth et Patashnik, Concrete Mathematics, Massachusetts, Addison-Wesley Publishing, , 6e éd., 640 p. (ISBN 0-201-14236-8, lire en ligne), p. 282-283. Ouvrage utilisé pour la rédaction de l'article
  • Graham, Knuth et Patashnik, Mathématiques concrètes, Thomson publishing, , p. 314-315