Euler, Lagrange et calcul mental des racines cinquièmes

Racine cinquième

Élever un nombre à la puissance 5, c’est le multiplier 5 fois par lui même:

a5 = a.a.a.a.a

Par exemple:

25=2.2.2.2.2 = 32

L’opération inverse consiste à calculer la racine cinquième du nombre:

= 2

Si élever à la puissance cinq de tête un nombre n’est pas facile, en calculer la racine cinquième semble encore plus ardu. Et pourtant, il existe peut être un moyen d’impressionner vos amis …

Premier constat

Élevons à la puissance 5 les chiffres de 0 à 9. Une simple commande shell suffit:

$ for i in `seq 0 10`; do i5=$(($i*$i*$i*$i*$i)); echo "$i => $i5"; done
0 => 0
1 => 1
2 => 32
3 => 243
4 => 1024
5 => 3125
6 => 7776
7 => 16807
8 => 32768
9 => 59049

On constate immédiatement que le dernier chiffre du résultat est le chiffre de départ. Si l’on demande à quelqu’un de prendre un chiffre entre 0 et 10, de le multiplier 5 fois par lui même, et de nous donner le résultat, on peut retrouver facilement ce chiffre.

Malheureusement, ce n’est pas très impressionnant. On aurait très bien pu apprendre par cœur ces 10 nombres, ou même simplement leur ordre de grandeur.

Pourrait on étendre cette idée au nombres de 0 à 100 ? Soit n un nombre à deux chiffres qui s’écrirait xy (c’est à dire que x est le premier chiffre et y le second). Ou plus précisément, n = 10*x + y avec 0 ≤ y < 10 et x > 0.

Lorsque l’on multiplie n par lui même, on à:

n2 = (10*x + y) * (10*x + y) = 100*x2 + 20*x*y + y2

Tous les membres de l’addition sont des multiples de 10 et finissent donc par 0, sauf potentiellement y2. Le dernier chiffre de n est donc le même que celui de y2.

Le même résultat peut être étendu à n3, n4 puis n5 (et par récurrence, à n’importe quelle valeur d’exposant).

Le résultat que l’on a obtenu pour un seul chiffre peut donc s’étendre à un nombre quelconque: le dernier chiffre du résultat de l’élévation à la puissance 5 est toujours égal au dernier chiffre du nombre de départ.

Mais comment deviner les chiffres précédents ? Cette fois, on peut apprendre par cœur l’ordre de grandeur d’une dizaine de valeurs, qui nous permettra de déduire la réponse pour n’importe quel nombre de départ entre 0 et 100:

$ for i in `seq 0 10 100`; do i5=$(($i*$i*$i*$i*$i)); echo "$i => $i5"; done
0 => 0
10 => 100000
20 => 3200000
30 => 24300000
40 => 102400000
50 => 312500000
60 => 777600000
70 => 1680700000
80 => 3276800000
90 => 5904900000
100 => 10000000000

Ce sont beaucoup de zéros. Mais en réfléchissant, ce sont les mêmes valeurs que précédemment, multipliées par 105 = 100000. Certaines d’entre elles ( 2, 4, 8 ) ne seront pas dépaysantes pour un informaticien puisque ce sont des puissances de 2.

Maintenant, lorsque l’on vous donne un nombre en sachant que c’est une puissance de 5, il suffit de trouver entre lesquels des 11 valeurs données ci-dessus il se trouve pour connaître le chiffre des dizaines. Accolez-y le dernier chiffre du nombre que l’on vous a donné, et vous avez trouvé sa racine cinquième.

Par exemple 844 596 301. il se situe entre 777 600 000 et 1 680 700 000. Sa racine cinquième est donc entre 60 et 70. Il se termine par 1, sa racine cinquième est donc 61 !

Il paraît difficile d’aller au delà de 100 sans apprendre par cœur un grand nombre de valeurs, qui deviendront de plus en plus longue. Mais déjà être capable de calculer la racine cinquième de 8 587 340 257 est assez impressionnant non ?

Un petit programme en python permet de s’entraîner avant d’essayer d’impressionner ses amis.

Théorèmes

Nous avons trouvé une technique, mais est-ce un hasard si elle fonctionne ? Peut-elle être étendue à d’autres valeurs d’exponentiation ? D’autres bases ?

En fait, ce n’est pas un hasard. Le fait que cette méthode fonctionne, peut s’expliquer par les théorèmes d’Euler et de Lagrange, à l’aide d’un peu d’arithmétique modulaire.

Première approche – théorèmes d’Euler et de Fermat

Le théorème d’Euler indique que pour n un entier strictement positif et a un entier premier avec n:

Ou φ désigne la fonction indicatrice d’Euler.

φ(10) = 4 car 1, 3, 7 et 9 sont premiers avec 10.

Appliqué à notre cas, cela signifie que les nombres se terminant par 1, 3, 7 et 9 (qui sont premiers avec 10) donnent un nombre se terminant par 1 une fois élevés à la puissance 4. Et qu’ils donnent donc un nombre se terminant par le même chiffre une fois élevés à la puissance 5 !

Mais qu’en est-il des cas pour d’autres valeurs de a ? Le théorème d’Euler ne permet pas de conclure, mais le petit théorème de Fermat aide.

Le petit théorème de Fermat dit que si p est un nombre premier et si a est un entier non divisible par p, alors a p-1 – 1 est un multiple de p.

Donc pour p = 5 (qui est premier), les nombres 1, 2, 3, 4, 6, 7, 8, 9 (non divisibles par p) élevés à la puissance 4 donnent un nombre se terminant par 1 ou 6 (puisque congru à 1 modulo 5). Pour les nombres 2, 4, 6 et 8 qui sont pairs, nous pouvons déterminer que ce sera un 6 puisqu’un nombre se terminant par 1 ne serait pas pair et ne pourrait donc être le multiple d’un nombre pair. Mais pour ces 4 chiffres, la multiplication par 6 donne un nombre se terminant par le même chiffre (6*2 = 12 , 6*4 = 24 , 6*6 = 36, 6*8 = 48).

Enfin, pour a = 5, tous les multiples de 5 se terminent toujours par 5 ou 0. Or si l’on ne multiplie entre eux que des nombres impairs, on obtiendra toujours des nombres impairs. Donc les puissances de 5 se terminent toutes par 5.

Seconde approche – théorème de Lagrange

Une autre approche est de considérer l’anneau ℤ/nℤ

En effet pour n > 0, l’ordre du groupe des unités de ℤ/nℤ est égal à φ(n), où φ désigne la fonction indicatrice d’Euler.

Dans le cas qui nous intéresse, φ(10) = 4 car 1, 3, 7 et 9 sont premiers avec 10.

Le théorème de Lagrange nous dit que l’ordre de tout élément du groupe est un diviseur de l’ordre du groupe. Ainsi, l’ordre de tout élément de ℤ/10ℤ est soit 1, soit 2, soit 4.

On le vérifie aisément en regardant la longueur des cycles pour les 10 éléments du groupe:

0 – 1 (toujours 0)
1 – 1 (toujours 1)
2 – 4 (2 – 4 – 8 – 6)
3 – 4 (3 – 9 – 7 – 1)
4 – 2 (4 – 6)
5 – 1 (toujours 5)
6 – 1 (toujours 6)
7 – 4 (7 – 9 – 3 – 1)
8 – 4 (8 – 4 – 2 – 6)
9 – 2 (9 – 1)

Cela signifie qu’en élevant à la puissance φ(10)+1 = 5 on retombera toujours sur un nombre se terminant par notre chiffre initial.

Autres cas

Maintenant que l’on a mieux compris le mécanisme derrière cette méthode, on peut imaginer l’étendre.

Y’a-t-il d’autres puissances pour lesquels on peut utiliser le même mécanisme ? D’autres bases dans lesquels obtenir des résultats intéressants ? Peut-on trouver des « tours » demandant encore moins d’apprentissage ?

N’hésitez pas à partager vos trouvailles dans les commentaires !

Pour aller plus loin

http://fr.wikipedia.org/wiki/Théorème_d’Euler_(arithmétique)
http://fr.wikipedia.org/wiki/Petit_théorème_de_Fermat
http://fr.wikipedia.org/wiki/Théorème_de_Lagrange_sur_les_groupes
http://fr.wikipedia.org/wiki/Anneau_Z/nZ

Cette entrée a été publiée dans Mathématiques. Vous pouvez la mettre en favoris avec ce permalien.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

− six = two