Implementing a computer algebra system in Haskell.
| Autor(a) principal: | |
|---|---|
| Data de Publicação: | 2007 |
| Outros Autores: | |
| Tipo de documento: | Artigo |
| Idioma: | eng |
| Título da fonte: | Repositório Institucional da UFOP |
| dARK ID: | ark:/61566/001300000dqh7 |
| Texto Completo: | http://www.repositorio.ufop.br/handle/123456789/4361 https://doi.org/10.1016/j.amc.2007.02.126 |
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. |
| id |
UFOP_d0734924a705dcad1877a7c596cec0c8 |
|---|---|
| oai_identifier_str |
oai:repositorio.ufop.br:123456789/4361 |
| network_acronym_str |
UFOP |
| network_name_str |
Repositório Institucional da UFOP |
| repository_id_str |
3233 |
| spelling |
Implementing a computer algebra system in Haskell.Computer algebraMixed computationFunctional programmingHaskellThere 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.2015-01-26T11:13:30Z2015-01-26T11:13:30Z2007info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/articleapplication/pdfMALAQUIAS, 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.0096-3003http://www.repositorio.ufop.br/handle/123456789/4361https://doi.org/10.1016/j.amc.2007.02.126ark:/61566/001300000dqh7O periódico Applied Mathematics and Computation concede permissão para depósito do artigo no Repositório Institucional da UFOP. Número da licença: 3552530048141.info:eu-repo/semantics/openAccessMalaquias, José RomildoLopes, Carlos Robertoengreponame:Repositório Institucional da UFOPinstname:Universidade Federal de Ouro Preto (UFOP)instacron:UFOP2024-11-11T01:46:37Zoai:repositorio.ufop.br:123456789/4361Repositório InstitucionalPUBhttp://www.repositorio.ufop.br/oai/requestrepositorio@ufop.edu.bropendoar:32332024-11-11T01:46:37Repositório Institucional da UFOP - Universidade Federal de Ouro Preto (UFOP)false |
| dc.title.none.fl_str_mv |
Implementing a computer algebra system in Haskell. |
| title |
Implementing a computer algebra system in Haskell. |
| spellingShingle |
Implementing a computer algebra system in Haskell. Malaquias, José Romildo Computer algebra Mixed computation Functional programming Haskell |
| title_short |
Implementing a computer algebra system in Haskell. |
| title_full |
Implementing a computer algebra system in Haskell. |
| title_fullStr |
Implementing a computer algebra system in Haskell. |
| title_full_unstemmed |
Implementing a computer algebra system in Haskell. |
| title_sort |
Implementing a computer algebra system in Haskell. |
| author |
Malaquias, José Romildo |
| author_facet |
Malaquias, José Romildo Lopes, Carlos Roberto |
| author_role |
author |
| author2 |
Lopes, Carlos Roberto |
| author2_role |
author |
| dc.contributor.author.fl_str_mv |
Malaquias, José Romildo Lopes, Carlos Roberto |
| dc.subject.por.fl_str_mv |
Computer algebra Mixed computation Functional programming Haskell |
| topic |
Computer algebra Mixed computation Functional programming Haskell |
| description |
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. |
| publishDate |
2007 |
| dc.date.none.fl_str_mv |
2007 2015-01-26T11:13:30Z 2015-01-26T11:13:30Z |
| dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
| dc.type.driver.fl_str_mv |
info:eu-repo/semantics/article |
| format |
article |
| status_str |
publishedVersion |
| dc.identifier.uri.fl_str_mv |
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. 0096-3003 http://www.repositorio.ufop.br/handle/123456789/4361 https://doi.org/10.1016/j.amc.2007.02.126 |
| dc.identifier.dark.fl_str_mv |
ark:/61566/001300000dqh7 |
| identifier_str_mv |
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. 0096-3003 ark:/61566/001300000dqh7 |
| url |
http://www.repositorio.ufop.br/handle/123456789/4361 https://doi.org/10.1016/j.amc.2007.02.126 |
| dc.language.iso.fl_str_mv |
eng |
| language |
eng |
| dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
| eu_rights_str_mv |
openAccess |
| dc.format.none.fl_str_mv |
application/pdf |
| dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UFOP instname:Universidade Federal de Ouro Preto (UFOP) instacron:UFOP |
| instname_str |
Universidade Federal de Ouro Preto (UFOP) |
| instacron_str |
UFOP |
| institution |
UFOP |
| reponame_str |
Repositório Institucional da UFOP |
| collection |
Repositório Institucional da UFOP |
| repository.name.fl_str_mv |
Repositório Institucional da UFOP - Universidade Federal de Ouro Preto (UFOP) |
| repository.mail.fl_str_mv |
repositorio@ufop.edu.br |
| _version_ |
1846632452704960512 |