|
| |||||||||||||
![]()
Isaac Newton
Algorithme de Newton1 La racine de tous les mauxImaginez que l’on vous demande les premières décimales de![]() ![]() ![]() Toujours prolifique, Newton proposa vers 1669 (!) un processus itératif convergeant de manière
quadratique vers de telles solutions, c’est-à-dire que le nombre de décimales exactes de la solution proposéee
double à chaque itération. Du coup, cela ramèna la complexite algorithmique de la division et de l’extraction
de racines carrées à celle de la multiplication. Une aubaine pour les calculateurs modernes, confrontés dans
leur quête du record de décimales de
2 Enoncé de l’algorithme de NewtonL’algorithme de Newton, vieux de plus de trois siècles, est à l’origine utilisé pour approcher numériquement
une racine Newton avait proposé dès 1669 un processus itératif pour trouver les racines d’équations polynomiales et Raphson le mit sous forme plus algorithmique en 1690. Simpson, Mourraille, Cauchy et Kantorovich ajoutèrent des raffinements et proposèrent des généralisations pour arriver à l’énoncé moderne suivant
Theorem 2.1 Soit
converge uniformément et quadratiquement vers Cet algorithme s’accompagne d’une propriété étonnante d’auto-compensation des erreurs : si Une conséquence directe est que pour calculer
3 Applications
3.1 Inverse d’un nombrePrenons l’exemple d’un nombre
qui utilise uniquement des multiplications et additions. L’expression
illustre la convergence quadratique de l’algorithme. Initions maintenant l’itération avec une décimale exacte, soit
Grâce à la propriété d’auto-correction de la méthode de Newton, à l’itération
Il est en effet raisonnable d’envisager
3.2 Extraction de racines carréesLes choses se passent aussi bien. On peut utiliser la fonction
ce qui conduit en pratique à une complexité finale d’environ Une alternative plus naturelle est d’utiliser directement la fonction
Cependant, Schönhage, qui ne manquait pas d’idées (voir page FFT), a proposé en 1971 de remplacer Ce processus, où On trouvera de nombreux raffinements de la méthode de Newton dans [1, 4] et l’équivalence de la complexité de la multiplication, la division et l’extraction de racines est abordée dans [2, 3].
References
[1] J. Arndt, C. Haenel, ” [2] R. Brent, “Fast multiple-precision evaluation of elementary fonctions”, Journal of the Association of Computing Machinery, 1976, pp.242-251. [3] S. A. Cook, S. O. Aanderaa, “On the minimum computation of functions”, Trans. AMS, 1969, vol. 142, pp291-314. [4] M. D. Householder, “The Numerical Treatment of a Single Nonlinear Equation”, 1970, MacGraw-Hill, New-York. [5] A. Schönhage, V. Strassen, “Schennelle Multiplikation grosser Zahlen”, Computing, 1971, vol. 7, pp. 281-292. Retour à la page d'accueil |