Implementing a computer algebra system in Haskell.

Nenhuma Miniatura disponível
Data
2007
Título da Revista
ISSN da Revista
Título de Volume
Editor
Resumo
There are basically two kinds of mathematical computation, numerical and symbolic. Numerical algorithms are usually implemented in strongly typed languages, and compiled with a view to efficiency. Symbolic algorithms are mostly written for interpreters in untyped languages. Therefore, symbolic mathematics is usually slow, and bug ridden. Since symbolic algorithms are usually more difficult to implement, there are also very few computer algebra systems. This paper presents a computer algebra system that is both fast, and implemented in a strongly typed language, and designed to accept compiled extensions. The authors describe a scheme to achieve these goals without creating difficulties for the end-user. The reason for creating this new computer algebra system is to make feasible mixed computation, i.e., programming software that needs both numerical computation and computer algebra. For instance, Finite Element Methods require a lot of number crunching as well as computer algebra to perform triangularization, manipulating shape functions, etc. Mixed computation requires speed and safety that interpreted computer algebra cannot provide.
Descrição
Palavras-chave
Computer algebra, Mixed computation, Functional programming, Haskell
Citação
MALAQUIAS, J. R.; LOPES, C. R. Implementing a computer algebra system in Haskell. Applied Mathematics and Computation, v. 192, p. 120-134, 2007. Disponível em: <http://www.sciencedirect.com/science/article/pii/S0096300307003013#>. Acesso em: 22 jan. 2015.