Participants : Marc Daumas,
Claire Finot-Moreau, Vincent Lefèvre, Jean-Michel
Muller.
Mots clés : virgule flottante, erreurs
d'arrondi, dilemme du fabricant de tables, fonctions
élémentaires .
Résumé :
Les algorithmes et des programmes permettant de
construire les pires cas pour le dilemme du fabricant de
tables que nous avions conÇus nous ont permis d'obtenir ces
pires cas pour la « double précision ». Ces pires
cas vont nous permettre de construire une bibliothèque
calculant les fonctions élémentaires avec « arrondi
exact ». Nous avons proposé de nouveaux programmes
pour le calcul de certaines fonctions élémentaires avec une
précision de l'ordre de la centaine de bits.
Vincent Lefèvre avait mis au point un algorithme et une
« batterie » de programmes permettant de construire
les pires cas, pour le format virgule flottante « double
précision » du dilemme du fabricant de tables. Cet
algorithme a été présenté dans sa thèse soutenue cette
année [5,12], et nous avons travaillé à son
amélioration dans plusieurs cas particuliers. Nous avons
publié les résultats obtenus dans un rapport de
recherches [35], soumis à la conférence IEEE
Arith-15. Nous avons présenté les conséquences de notre étude
à l'occasion d'une communication à la 34th Asilomar Conference on Circuits and
Systems [29] (où J.M. Muller était conférencier
invité).
Nous rendons publique une liste restreinte de pire cas à
l'URL
Cette liste ne contient pas tous les pires cas trouvés,
car nous désirons d'une part prendre un peu d'avance dans
l'utilisation de nos pires cas pour la conception de
fonctions, et d'autre part valoriser les résultats trouvés en
ne les diffusant qu'à un « club de partenaires » de
notre projet.
Par exemple, la table suivante donne les pires cas trouvés
pour le logarithme népérien.

Tomas
Lang (University of California at Irvine) et Jean-Michel
Muller ont regardé s'il était possible d'obtenir directement
des pires cas pour le dilemme du fabricant de tables lorsque
la fonction calculée est algébrique. Ils ont obtenu une borne
permettant de savoir avec quelle précision une approximation
de la fonction doit être évaluée pour que l'on soit certain
qu'arrondir l'approximation est équivalent à arrondir la
fonction. Ils ont montré que pour certaines fonctions
courantes, la borne était atteinte (ce qui n'est en général
pas le cas). Les résultats sont en cours de
publication [32].
Pour certains problèmes de calcul, la « double
précision » de la norme IEEE-754 est insuffisante même
si une précision multiple (i.e., plusieurs centaines de bits)
n'est pas nécessaire et serait souvent trop lente. Les codes
correspondants ne sont pas instables, mais les puissances de
calcul disponibles permettent d'envisager de travailler avec
des échelles très différentes et dans ce cas, une précision
quadruple s'avère nécessaire.
Une bibliothèque de calcul est actuellement disponible et
distribuée sur le réseau par des laboratoires américains
dépendant du Department of
Energy. Cette bibliothèque utilise le format double
précision comme « brique de base » pour atteindre
une précision proche de la quadruple précision. Ces
développements permettent ainsi de fournir aujourd'hui la
quadruple précision, et quand cette dernière sera disponible
au niveau matériel, ils se transposeront pour atteindre sans
travail supplémentaire l'octuple précision. Nous travaillons
avec David Bailey le responsable du développement de cette
bibliothèque dans le cadre d'un financement France-Berkeley
que nous avons obtenu l'an dernier. Suite à une étude
systématique des choix possibles, nous avons proposé de
nouvelles routines pour certaines fonctions élémentaires
(sinus, cosinus, exponentielle) [18,17].
L'étude systématique a été menée à l'aide du logiciel
Maple et les fichiers sources seront bientÔt disponibles sur
Internet pour permettre à d'autres équipes d'explorer de
nouvelles possibilités. Dans cette optique nous avons mené
des travaux avec le LIRMM et le LIM pour étudier la
possibilité d'utiliser l'algorithme CORDIC ou une de ses
variantes [23].
Ces travaux pourront être utilisés dans le cadre de
l'implantation de fonctions élémentaires avec arrondi
correct. Les développements sous Maple pourront
éventuellement être transcrits sous un environnement de
preuve tel COQ.
Une phase critique (du point de vue de la précision) du
calcul des fonctions élémentaires est la réduction d'argument, qui consiste à se
ramener à l'intervalle dans lequel l'approximation choisie
converge. Vincent Lefèvre et Jean-Michel Muller ont proposé
un algorithme effectuant cette réduction d'argument « au
vol » [34,28].