Un Calcul très Simple peut prendre l'Ordinateur en Défaut |
L'ordinateur est-il vraiment un as du calcul ? Quand on lui demande de soustraire 4095,1 à 4096,1 la réponse stockée dans sa mémoire n'est pas 1 mais une valeur proche de 1,000000001 !
"Cette erreur est une conséquence directe de la façon dont le nombre sont représentées au sein des ordinateurs", explique Jean-François Colonna, du centre de mathématiques appliquées de l'école polytechnique de Paris. Pour mémoriser un nombre, l'ordinateur utilise les 2 bits 0 et 1 au lieu des 10 chiffres habituels, et ne dispose que d'une combinaison de 64 bits. Conséquence : la quantité de nombre qu'il peut appréhender est finie (de l'ordre de 10 milliards de milliards), les autres n'étant pris en compte qu'approximativement - certaines valeurs simples à décrire en base décimale, comme 0,2 ou 4095,1 ne peuvent être traduites avec un nombre fini de 0 et de 1 point l'erreur dans la soustraction précédente est ainsi inévitable. Certes, elle est minime et n'apparaît pas à l'écran si le calcul s'arrête là. Mais Jean-François Colonna exhibe un tel cumul interactif tout simple, inspirée de se réaliser en physique, qui amplifie ce bit incorrect de manière explosive. "Dans un ordinateur, les propriétés mathématiques d'associativité et de distributivité des opérations d'additions et de multiplications sont perdues, ce qui rend les résultats sensibles à l'ordre dans lequel les opérations sont effectuées : dans certaines conditions, un même programme exécuté sur des machines différentes pourra produire des résultats différents", conclut-il, regrettant que ces limites du calcul informatique ne soient pas plus étudiées.
H.P. - SCIENCE & VIE > Août > 2010 |
|