NombresArithmétiqueAlgèbre

De Wiki du LAMA (UMR 5127)
Aller à : navigation, rechercher

Description package

Boite à outils mathématique (arithmétique, algèbre, optim,...).

Wishlist

  • Template nombres entiers
    • avec une interface qui pourrait être compatible avec gmp (à l'instanciation, on aurait le choix entre les int, long int ou gmp_int)
    • J'ai regardé un peu comment faire en C++. Malheureusement, les "template typedef" n'existe pas (encore) apparemment. Bref, j'ai l'impression que, même en spécialisant les template, on remplacerait partout ainsi les "int" par des struct {int i}. De mémoire, ça change pas mal la vitesse d'exécution. Connaissez-vous une autre technique plus sioux ? --Lachaud 29 juin 2009 à 22:26 (CEST)
    • Bon, on peut aussi tout "templatiser" ainsi ExempleTemplateInteger Qu'en pensez-vous ? --Lachaud 30 juin 2009 à 18:12 (CEST)
    • Cela me fait bizarre de templater des fonctions qui ne sont pas methodes de classe... Pourquoi ne pas templater Interger (la classe) directement avec des traits pour faire l'introspection si besoin ? --dcoeurjo 1 juillet 2009 à 09:28 (CEST)
  • Arithmétique
    • pgcd, euclide généralisé, blankinship,...
  • Algèbre linéaire
    • Matrices
  • Classe de Polynômes
    • (besoins?)
  • Programmation linéaire
    • (voir si on créé une dépendance avec des choses existantes, en fonction de l'étendu des besoins)

Trucs existants

  • Dépendance avec Boost pour les aspects algèbre linéaire ?
  • Dépendance/Compatibilité avec GMP pour les nombres ?
    • Dans GMP, il me semble qu'il cache 4 représentations différentes suivant leur taille. Connaissez-vous des benchmarks sur les temps de calcul avec des petits entiers sur gmp ? Est-il compétitif avec un struct {int i } ? Il y a aussi une surcouche objet. --Lachaud 29 juin 2009 à 22:29 (CEST)