33

Est-ce que quelqu'un connaît des ressources (livres, classes, notes de cours ou autre) sur la théorie générale des systèmes d'algèbre informatique (par exemple, mathematica, sympy)?Introduction aux systèmes d'algèbre informatique?

Les matériaux "d'introduction" sont préférés, mais je me rends compte qu'avec un tel sujet spécialisé, tout est forcément assez avancé.

Répondre

30

« Théorie générale » du CAS est un champ d'application assez énorme pour une question. Cela étant dit, je ferai de mon mieux pour couvrir autant que possible dans l'espoir que quelque chose vous aide à trouver ce que vous cherchez :)

Les travaux des groupes ISSAC et SIGSAM auront sans aucun doute quelques bonnes choses sur les techniques de construction de systèmes CAS. Une liste de divers sujets dans le domaine général de la construction CAS est disponible ici: http://www.cs.berkeley.edu/~fateman/algebra.html

Si vous êtes plus à la recherche d'informations sur la façon de coder certaines des mathématiques impliquées, je suis un fan de la "Recettes Numerical" séries; il fournit un exemple de code et une explication raisonnablement décente des mathématiques dans un large éventail de sujets. La dernière fois que j'ai vérifié, une version en ligne d'une ancienne révision du livre était disponible ici: http://www.nrbook.com/a/bookcpdf.php (Notez que ceci est la forme "Recettes numériques en C" du livre, il existe des versions dans d'autres langues aussi).

Pour la construction d'un CAS en général, un point de départ pourrait être ici: «Construire un environnement d'algèbre informatique par la composition d'outils collaboratifs» par Kajler et Safir; Un autre endroit que vous pouvez vérifier est ici: http://www.math.wpi.edu/IQP/BVCalcHist/calc5.html où une description de haut niveau de la façon dont quelques personnes mis en œuvre un CAS est répertoriée.

L'autre chose que vous pourriez essayer est plongée dans le code pour quelques projets de CAS open source qui existent: YACAS (encore un autre système d'algèbre informatique: Java), Axiom, etc. J'aime la liste ici: http://en.wikipedia.org/wiki/List_of_computer_algebra_systems

Espérer que quelque chose soit utile!

+0

Merci pour l'info, je vais vérifier les liens et peut-être vous harceler pour plus d'informations dans le futur. –

6

J'ai trouvé des algorithmes pour l'algèbre informatique par K.O. Geddes ... pour être très utile. Je suis un étudiant de premier cycle junior avec un fond de maths léger travaillant sur OpenAxiom (un CAS). Préparez-vous pour des maths lourds et lourds, mon meilleur conseil est d'avoir quelques livres si seulement pour avoir une perspective différente si vous êtes "coincé".

Il pourrait aider si vous proposez ce que vous cherchez dans, quels domaines vous intéresse, etc.

6

Les bases sont bien couvertes dans PAIP; le code source est free online - voir en particulier les fichiers source avec 'macsyma' dans le nom. Les sujets incluent les systèmes de réécriture de règles, la simplification à l'aide de formulaires canoniques, l'intégration et la différenciation, et la compilation et la mémorisation de règles de réécriture pour la vitesse.

1

Vous mentionnez SymPy dans votre question, donc je vais en parler brièvement.

Le projet et la communauté de SymPy sont en fait de très bonnes ressources.

  1. Il existe une variété d'expertise qui vérifie régulièrement et répond aux mailing list.
  2. Le code est ouvertement disponible on github.
  3. Le documentation est assez complet et inclut souvent des citations académiques.

Si vous êtes intéressé par CASs par. Les contributeurs aiment parler de ce sur quoi ils travaillent. Si vous êtes intéressé c'est easy to get started et ajoutez vos propres contributions.