multiplication de grands nombres
ARITHMETIQUE
Les algorithmes de multiplication classiques permettent d’effectuer des multiplications sur des nombres de quelques chiffres mais deviennent très longs Ă appliquer pour des grands nombres. Par exemple le produit de deux nombres de 4 chiffres nĂ©cessite 16 multiplications Ă©lĂ©mentaires et des additions. Dans de nombreuses situations des recherches contemporaines il deviendraient totalement impossible de rĂ©aliser les calculs nĂ©cessaires.
L’algorithme de Karatsuba (1962) rĂ©duit Ă 9 le nombre de multiplications Ă©lĂ©mentaires (pour un produit de deux nombres de 4 chiffres). L’algorithme de Toom-Cook (1963 et 1966) l’amĂ©liore en en donnant une gĂ©nĂ©ralisation.
L’algorithme de Schönhage-Strassen (1971) basĂ© sur une transformĂ©e de Fourier a ensuite Ă©tĂ© le plus performant jusqu’en 2007 et la publication de l’algorithme de FĂĽrer.
Il a été dépassé en 2019 par les résultats (encore théoriques) de David Harvey et Joris van der Hoeven.
Hoeven cite cet exemple : avec un temps d’exĂ©cution d’une multiplication Ă©lĂ©mentaire d’une nanoseconde, une multiplication de deux nombres d’un milliard de chiffres prendrait: (109)2 ns = 32 ans. L’algorithme connu de Schönhage-Strassen rĂ©duit ce temps Ă une trentaine de secondes sur un ordinateur ordinaire d’aujourd’hui. Avec le nouvel algorithme de 2019, la durĂ©e serait encore rĂ©duite.