DÉVELOPPEMENT : THÉORÈME DE LAMÉ [Skandalis algèbre p.2] Le nombre d’étapes de l’algorithme d’Euclide ne dépasse pas 5𝑘 où 𝑘 est le nombre de chiffres de l’écriture en base 10 de 𝑏. Autrement dit, si 𝑏 < 10𝑘 alors on fera moins de 5𝑘 divisions euclidiennes. Quelques notations & résultats préliminaires 1) On note 𝐹𝑛 les termes de la suite de Fibonacci tels que : 2) Rappels sur le nombre d’or : 𝜑 = 1+√5 2 𝐹0 = 0 et 𝐹1 = 1 ∀𝑛 ≥ 2, 𝐹𝑛 = 𝐹𝑛−1 + 𝐹𝑛−2 solution de 𝑥² − 𝑥 − 1 = 0 donc : 𝜑² = 𝜑 + 1 1 𝜑 = 1+𝜑 3) On montre par récurrence que ∀𝑛 > 0 on a : 𝐹𝑛 ≥ 𝜑𝑛−2 Démonstration 1) À toute étape de l’algorithme on a : 𝑟𝑛+2 = 𝑟𝑛 − 𝑞𝑛+2 𝑟𝑛+1 et 𝑞𝑛+2 ≥ 1 donc : 𝑟𝑛+1 + 𝑟𝑛+2 = 𝑟𝑛+1 + 𝑟𝑛 − 𝑞𝑛+2 𝑟𝑛+1 = 𝑟𝑛 − 𝑟𝑛+1 (𝑞𝑛+2 − 1) ≤ 𝑟𝑛 2) On note 𝑁 le nombre d’étapes de l’algorithme, comme 𝑟0 et 𝑟1 ne sont pas obtenus par division, on le termine avec : 𝑟𝑁−1 = 𝑟𝑁 × 𝑞 + 0 avec 𝑞 ≥ 2 𝑟𝑁+1 = 0 𝑟𝑁 ≥ 1 = 𝐹2 𝑟𝑁−1 ≥ 2𝑟𝑁 ≥ 2 = 𝐹3 𝑟𝑁−2 ≥ 𝑟𝑁−1 + 𝑟𝑁 ≥ 𝐹2 + 𝐹3 = 𝐹4 𝑟𝑁−3 ≥ 𝑟𝑁−2 + 𝑟𝑁−1 ≥ 𝐹3 + 𝐹4 = 𝐹5 … 𝑏 = 𝑟1 = 𝑟𝑁−(𝑁−1) ≥ 𝐹𝑁+1 On vient de montrer que 𝑏 majore le nombre 𝑁 de divisions euclidiennes, par l’intermédiaire de la suite de Fibonacci. Par exemple, si on cherche le PGCD de 𝑎 et de 𝑏 < 10 000, on sait que 𝐹𝑁+1 ne peut pas dépasser 10 000 et il suffit de chercher dans la suite de Fibonacci l’indice maximal possible : 𝐹20 = 6765 et 𝐹21 = 10946 donc il y aura au maximum 19 étapes. 3) Résumons dans le cas où 𝑏 s’écrit avec 𝑘 chiffres : 10𝑘 > 𝑏 ≥ 𝐹𝑁+1 ≥ 𝜑𝑁−1 log(10𝑘 ) > log(𝜑𝑁−1 ) 𝑘 > (𝑁 − 1)log(𝜑) > 𝑁−1 5 𝑁 < 5𝑘 − 1 ≤ 5𝑘 Efficacité de la majoration Si on cherche par exemple le PGCD de 𝐹20 (4 chiffres) et 𝐹21 , on a besoin de 19 divisions (on est dans le « pire » cas où 𝑞 = 1 à chaque étape). On a quasiment le maximum prévu par Lamé : 4 × 5 = 20.