DÉVELOPPEMENT : THÉORÈME DE LAMÉ [Skandalis algèbre p.2]

publicité
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.
Téléchargement