Un défi contre la calculatrice
sur une idée de Diophante.fr



LE PROBLEME

Il s'agit d'un problème provenant de Diophante et de la revue La Jaune et la Rouge d'octobre et novembre 2015.


Quelle peut être la limite pour n infini de la suite Xn définie par
X0 = 11/2,
X1 = 61/11,
Xn+1 = 111 - 1130/ Xn + 3000 / (Xn * Xn-1)
 ?




SOLUTION

Calculons
et observons :

La première idée est de lancer un petit calculateur et d'observer les résultats obtenus :
X0 = 11/2
X1 = 61/11

X2 ~ 5.590163934426229...
X3 ~ 5.633431085043981...
X4 ~ 5.674648620510027...
X5 ~ 5.7133290523783415
X6 ~ 5.749120919664605...
X7 ~ 5.781810919824309...
...

X12 ~ 5.898177025615013...
X13 ~ 5.897965247556456...
.
X16 négatif
X17
> 100
X19 ~ 100.02351860606016
.
X21 ~ 100.00008385279583
X22 ~ 100.00000501313878
.
X25 ~ 100.00000000107462 ET
à partir de X30 nous trouvons toujours 100.

De là à penser que la limite est 100 il n'y a qu'un petit pas qu'il ne faut surtout pas franchir.

La limite n'est pas 100 !

Voici les calculs obtenus sur machine : ils sont exacts pendant un certain temps puis catastrophe !
Notons que les résultats fractionnaires sont valables plus longtemps que les calculs avec notations décimales encore plus approximatifs.

A partir de n=15, les résultats divergent...
Le calcul fractionnaire est encore correct mais ce n'est plus le cas du calcul décimal sur machine.

Le résultat approximé en décimal, du deuxième calcul est obtenu à partir du quotient du numérateur par le dénominateur, ces deux entiers sont calculés exactement sans aucune approximation.
Malgré tout quand ces entiers deviennent très grands (pour le calculateur utilisé), ils sont notés en écriture exponentielle.
CEPENDANT le résultat mémorisé en machine est correct et l'approximation décimale du dernier rapport
est correcte et tend bien vers la valeur 6.

PLEIN ECRAN



Que se passe-t-il ?

Une machine aussi performante soit-elle, ne peut mémoriser qu'un nombre fini (même s'il peut être grand) de décimales.
Elle travaille donc avec des valeurs approchées qui ici, dans le premier calcul automatique avec valeurs décimales, provoquent des erreurs qui se cumulent d'étape en étape. Les résultats au bout d'un certain temps deviennent aléatoires.

C'est le cas ici à partir du terme X15.

Ce genre d'erreur, se produit quelle que soit la performance et quelles que soient les capacités du calculateur utilisé.
Inutile de changer de machine, cela ne fera que déplacer le problème.

Nous DEVONS raisonner rigoureusement avant de lancer un calcul mécanique.

RAISONNONS et calculons rigoureusement

Xn+1 = 111 - 1130/ Xn + 3000 / (Xn * Xn-1)
La relation précédente,  implique avec une petite transformation, la relation de récurrence suivante :

Xn+1 * Xn - 11 Xn + 30 = 100 /Xn-1 * (Xn * Xn-1 - 11 Xn-1 + 30 )
En poursuivant cette relation avec les valeurs décroissantes de n, nous obtenons :
Xn+1 * Xn - 11 Xn + 30 = 100 /Xn-1 * 100 /Xn-2 * (Xn-1 * Xn-2 - 11 Xn-2 + 30 )
Xn+1 * Xn - 11 Xn + 30 = 100 /Xn-1 * 100 /Xn-2 *... * 100 /X0 * (X1 * X0 - 11 X0 + 30 )
OR   (X1 * X0 - 11 X0 + 30 ) = 0
Nous déduisons :
Xn+1 * Xn - 11 Xn + 30 = 0      (*)

ET si Xn a pour limite L, nous devons avoir :
L² - 11 L + 30 = 0
OR cette expression a deux seules racines qui sont 5 et 6
et 100 n'est pas solution de
(*). DONC 100 ne peut pas être la limite de cette suite.



CHERCHONS la bonne limite entre 5 OU 6

Avec la relation  (*) nous avons :
Xn+1 = 11 - 30/ Xn .

Calculons le rapport (6-Xn+1) par (Xn+1-5) :
(6-Xn+1) / (Xn+1-5) = ( 6 - 11 + 30/Xn ) / ( 11 - 30/Xn - 5 )
(6-xn+1) / (Xn+1-5) = ( -5Xn + 30) / ( 6Xn - 30)
(6-Xn+1) / (Xn+1-5) = (5/6) * ( 6 - Xn ) / ( Xn - 5) = (10/12) * ( 6 - Xn ) / ( Xn - 5)
(6-Xn+1) / (Xn+1-5) = (1/1.2) * ( 6 - Xn ) / ( Xn - 5)
                   = (1/1.2²) * ( 6 - Xn-1 ) / ( Xn-1 - 5)
                    .
                    = (1/1.2n+1) * ( 6 - X0 ) / ( X0 - 5)  = (1/1.2n+1) * ( 6 - 11/2 ) / ( 11/2 - 5) = (1/1.2n+1) * 1

FINALEMENT

(6-Xn+1) / (Xn+1-5) = 1/(1.2 n+1)

Quand n tend vers l'infini cette dernière expression tend vers 0.
Le numérateur de la fraction doit tendre vers 0

Et la suite
Xn tend vers la limite 6.

Pour ceux qui sont motivés... CHERCHONS l'expression exacte de Xn

Reprenons la relation  (*) :
Xn+1*Xn - 11 Xn + 30 = 0   qui peut s'écrire :
Xn+1*Xn - 5 Xn = (6/Xn-1) * (Xn*Xn-1 - 5 Xn-1)    (**)

Posons : Xn = Yn+1/Yn avec X0 = 11/2, X1 = 61/11 donc Y0 = 2, Y1 = 11, Y2= 61

Les calculs fractionnaires de l'animation précédente sont effectués en respectant cette écriture.

En itérant sur n, la relation
(**), nous avons :

Xn+1*Xn - 5 Xn = (6/(Xn-1)(6/(Xn-2) * (Xn-1*Xn-2 - 5*Xn-2)
.
Xn+1*Xn - 5 Xn = (6/(Xn-1)(6/(Xn-2) ...(6/(X1)(6/(X0) * (X1*X0 - 5*X0)       qui s'écrit :
Xn+1*Xn - 5 Xn = 6n / (Yn/ Y0) * (X1*X0 - 5*X0)      soit avec Xn = Yn+1/Yn :

(Yn+2* / Yn+1 ) * (Yn+1/ Yn) - 5 (Yn+1 * / Yn) = 6n / (Yn/ Y0) (61/2 - 55/2)       OU
(Yn+2* / Yn+1 ) * (Yn+1/ Yn) - 5 (Yn+1 * / Yn) = (2*6n /Yn ) * (3)       OU
Yn+2 / Yn - 5 Yn+1 * / Yn = 6n+1 / Yn    

ET finalement :

Yn+2 - 5 Yn+1 = 6n+1         OU

Yn+2 = 6n+1 + 5 Yn+1
5*Yn+1 = 5*6n + 5² Yn
.
5n+1*Y1 = 5n+1*60 + 5n+2Y0
-------------------------------
Yn+2 = 6n+1 + 5*6n +... 5n+1*60
    + 5n+2 * 2
On a au début de cette expression la somme d'une progression géométrique de raison 6/5   et de premier terme      5n+1*60  
Et nous obtenons :

Yn+2 = 5n+1 * ((6/5)n+2 - 1 ) / (6/5 - 1 )     + 5n+2 * 2
Après simplification nous trouvons :
Yn+2 =
6n+2 + 5n+2       SOIT
Yn = 6n + 5n      

ENFIN le résultat rigoureux :

Xn = (6n+1 + 5n+1) / (6n + 5n)

Quand n tend vers l'infini, nous retrouvons bien la limite 6 =
6n+1/ 6n

CONCLUSION
Se méfier des résultats approximatifs des calculatrices tout spécialement lorsque les calculs se répètent : les erreurs sont cumulées.
Il faut user avec modération des calculatrices.




Menu Paradoxes  Accueil