Arithmétique et algorithmique en algèbre linéaire exacte pour la bibliothèque LinBox - TEL - Thèses en ligne Accéder directement au contenu
Thèse Année : 2004

Arithmetic and algorithmic in exact linear algebra for the LinBox library

Arithmétique et algorithmique en algèbre linéaire exacte pour la bibliothèque LinBox

Résumé

For a few decades, numerical linear algebra has seen intensive developments in both
mathematical and computer science theory which have led to genuine standard software like BLAS or LAPACK.
In computer algebra the situation has not advanced as much, in particular because of the diversity
of the problems and because of much of the theoretical progress have been done recently.
This thesis falls into a recent class of work which aims at uniforming high-performance codes from
many specialized libraries into a single platform of computation.
In particular, the emergence of robust and portable libraries like GMP or NTL for exact computation
has turned out to be a real asset for the development of applications in exact linear algebra.
In this thesis, we study the feasibility and the relevance of the re-use of specialized codes
to develop a high performance exact linear algebra library, namely the LinBox library.
We use the generic programming mechanisms of C++ (abstract class, template class) to provide an abstraction of
the mathematical objects and thus to allow the plugin of external components.
Our objective is then to design and validate, in LinBox, high level generic toolboxes for the
implementation of algorithms in exact linear algebra.
In particular, we propose "exact/numeric" hybrid computation routines for dense matrices over finite fields
which nearly match with the performance obtained by numerical libraries like LAPACK.
On a higher level, we reuse these hybrid routines to solve very efficiently a classical problem of
computer algebra: solving diophantine linear systems.
Hence, this allowed us to validate the principle of code reuse in LinBox library and more generally in computer algebra.
The LinBox library is available at www.linalg.org.
L'algèbre linéaire numérique a connu depuis quelques décennies des développements intensifs
autant au niveau mathématique qu'informatique qui ont permis d'aboutir à de véritable standard
logiciel comme BLAS ou LAPACK.
Dans le cadre du calcul exact ou formel, la situation n'est pas aussi avancée, en particulier
à cause de la diversité des problématiques et de la jeunesse des progrès théoriques.
Cette thèse s'inscrit dans une tendance récente qui vise à fédérer des codes performants
provenant de bibliothèques spécialisées au sein d'une unique plateforme de calcul.
En particulier, l'émergence de bibliothèques robustes et portables comme GMP ou NTL pour le calcul exact
s'avére être un réel atout pour le développement d'applications en algèbre linéaire exacte.
Dans cette thèse, nous étudions la faisabilité et la pertinence de la réutilisation de codes spécialisés pour
développer une bibliothèque d'algèbre linéaire exacte performante, à savoir la bibliothèque LinBox.
Nous nous appuyons sur les mécanismes C++ de programmation générique (classes abtraites, classes templates)
pour fournir une abstraction des composantes mathématiques et ainsi permettre le plugin de composants externes.
Notre objectif est alors de concevoir et de valider des boîtes à outils génériques haut niveau dans LinBox pour
l'implantation d'algorithmes en algèbre linéaire exacte.
En particulier, nous proposons des routines de calcul hybride "exact/numérique" pour des matrices denses sur un corps finis permettant d'approcher les performances obtenues par des bibliothèques numériques comme LAPACK.
À un plus haut niveau, ces routines nous permettent de valider la réutilisation de codes spécifiques sur un problème
classique du calcul formel: la résolution de systèmes linéaires diophantiens.
La bibliothèque LinBox est disponible à www.linalg.org.
Fichier principal
Vignette du fichier
tel-000089511.pdf (1.64 Mo) Télécharger le fichier
tel-00008951.pdf (4.48 Mo) Télécharger le fichier
Format : Autre

Dates et versions

tel-00008951 , version 1 (04-04-2005)

Identifiants

  • HAL Id : tel-00008951 , version 1

Citer

Pascal Giorgi. Arithmétique et algorithmique en algèbre linéaire exacte pour la bibliothèque LinBox. Génie logiciel [cs.SE]. Ecole normale supérieure de lyon - ENS LYON, 2004. Français. ⟨NNT : ⟩. ⟨tel-00008951⟩
267 Consultations
792 Téléchargements

Partager

Gmail Facebook X LinkedIn More