Computer algebra in modern functional languages
Autor(a) principal: | |
---|---|
Data de Publicação: | 2007 |
Tipo de documento: | Tese |
Idioma: | por |
Título da fonte: | Repositório Institucional da UFU |
Texto Completo: | https://repositorio.ufu.br/handle/123456789/14370 |
Resumo: | Many computer algebra systems have already been proposed and implemented. Most of them are implemented in or even implement languages without the referential transparency property, making it difficult, if not impractical, to reason about algebra programs. This thesis presents a computer algebra system implemented as a library in the Haskell programming language, a modern functional language with the desired referential transparency property. The author presents the foundations and basic algorithms for manipulation of algebraic expressions in a declarative context, compatible with Mathematics. The adequacy of the constructs provided by the Haskell programming language is considered when implementing such a library in a modular way, so that it can be easily extended with the inclusion of new algebraic formulas and manipulations. Such extensions should keep compatibility with prior versions of the library. This work also contributes for showing that modern functional languages like Haskell are viable for day to day programming, even beating conventional languages in some aspects, like level of abstraction. |
id |
UFU_79e0648aa8d1c894a16fe35577061cde |
---|---|
oai_identifier_str |
oai:repositorio.ufu.br:123456789/14370 |
network_acronym_str |
UFU |
network_name_str |
Repositório Institucional da UFU |
repository_id_str |
|
spelling |
Computer algebra in modern functional languagesProgramação funcional (Computação)Inteligência ArtificialComputação AlgébricaLinguagens FuncionaisProgramação FuncionalHaskellArtificial IntelligenceComputer AlgebraFunctional LanguagesFunctional ProgrammingHaskellCNPQ::ENGENHARIAS::ENGENHARIA ELETRICAMany computer algebra systems have already been proposed and implemented. Most of them are implemented in or even implement languages without the referential transparency property, making it difficult, if not impractical, to reason about algebra programs. This thesis presents a computer algebra system implemented as a library in the Haskell programming language, a modern functional language with the desired referential transparency property. The author presents the foundations and basic algorithms for manipulation of algebraic expressions in a declarative context, compatible with Mathematics. The adequacy of the constructs provided by the Haskell programming language is considered when implementing such a library in a modular way, so that it can be easily extended with the inclusion of new algebraic formulas and manipulations. Such extensions should keep compatibility with prior versions of the library. This work also contributes for showing that modern functional languages like Haskell are viable for day to day programming, even beating conventional languages in some aspects, like level of abstraction.Doutor em CiênciasMuitos sistemas de computação algébrica foram propostos e implementados. A maioria deles são implementados ou até mesmo implementam linguagens sem a propriedade da referência transparencial, o que torna difícil e até mesmo impraticável a prova de correção de programas. Esta tese apresenta um sistema de computação algébrica implementado como uma biblioteca na linguagem de programação Haskell, que é uma linguagem funcional moderna com a propriedade da referência transparencial desejada. O autor apresenta os fundamentos e algoritmos básicos para manipulação de expressões algébricas em um contexto declarativo, compatível com a Matemática. Examina-se a adequação de construções oferecidas pela linguagem Haskell para a implementação da biblioteca de uma forma modular, de forma que ela possa ser facilmente estendida com a inclusão de novas fórmulas algébricas e novas operações sobre fórmulas. Tais extensões devem ser compatíveis com versões anteriores da biblioteca. Esta tese também contribui por mostrar que linguagens funcionais modernas como Haskell são viáveis para a programação de sistemas práticos, até mesmo podendo ser melhores que linguagens convencionais em alguns aspectos, como nível de abstração.Universidade Federal de UberlândiaBRPrograma de Pós-graduação em Engenharia ElétricaEngenhariasUFUPereira, Antônio Eduardo Costahttp://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4703666E8Lima, Luciano Vieirahttp://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4707793J5Lopes, Carlos Robertohttp://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4788535Z4Malaquias, José Romildo2016-06-22T18:38:19Z2016-03-082016-06-22T18:38:19Z2007-02-26info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisapplication/pdfapplication/pdfMALAQUIAS, José Romildo. Computer algebra in modern functional languages. 2007. 140 f. Tese (Doutorado em Engenharias) - Universidade Federal de Uberlândia, Uberlândia, 2007.https://repositorio.ufu.br/handle/123456789/14370porinfo:eu-repo/semantics/openAccessreponame:Repositório Institucional da UFUinstname:Universidade Federal de Uberlândia (UFU)instacron:UFU2016-06-23T06:53:49Zoai:repositorio.ufu.br:123456789/14370Repositório InstitucionalONGhttp://repositorio.ufu.br/oai/requestdiinf@dirbi.ufu.bropendoar:2016-06-23T06:53:49Repositório Institucional da UFU - Universidade Federal de Uberlândia (UFU)false |
dc.title.none.fl_str_mv |
Computer algebra in modern functional languages |
title |
Computer algebra in modern functional languages |
spellingShingle |
Computer algebra in modern functional languages Malaquias, José Romildo Programação funcional (Computação) Inteligência Artificial Computação Algébrica Linguagens Funcionais Programação Funcional Haskell Artificial Intelligence Computer Algebra Functional Languages Functional Programming Haskell CNPQ::ENGENHARIAS::ENGENHARIA ELETRICA |
title_short |
Computer algebra in modern functional languages |
title_full |
Computer algebra in modern functional languages |
title_fullStr |
Computer algebra in modern functional languages |
title_full_unstemmed |
Computer algebra in modern functional languages |
title_sort |
Computer algebra in modern functional languages |
author |
Malaquias, José Romildo |
author_facet |
Malaquias, José Romildo |
author_role |
author |
dc.contributor.none.fl_str_mv |
Pereira, Antônio Eduardo Costa http://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4703666E8 Lima, Luciano Vieira http://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4707793J5 Lopes, Carlos Roberto http://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4788535Z4 |
dc.contributor.author.fl_str_mv |
Malaquias, José Romildo |
dc.subject.por.fl_str_mv |
Programação funcional (Computação) Inteligência Artificial Computação Algébrica Linguagens Funcionais Programação Funcional Haskell Artificial Intelligence Computer Algebra Functional Languages Functional Programming Haskell CNPQ::ENGENHARIAS::ENGENHARIA ELETRICA |
topic |
Programação funcional (Computação) Inteligência Artificial Computação Algébrica Linguagens Funcionais Programação Funcional Haskell Artificial Intelligence Computer Algebra Functional Languages Functional Programming Haskell CNPQ::ENGENHARIAS::ENGENHARIA ELETRICA |
description |
Many computer algebra systems have already been proposed and implemented. Most of them are implemented in or even implement languages without the referential transparency property, making it difficult, if not impractical, to reason about algebra programs. This thesis presents a computer algebra system implemented as a library in the Haskell programming language, a modern functional language with the desired referential transparency property. The author presents the foundations and basic algorithms for manipulation of algebraic expressions in a declarative context, compatible with Mathematics. The adequacy of the constructs provided by the Haskell programming language is considered when implementing such a library in a modular way, so that it can be easily extended with the inclusion of new algebraic formulas and manipulations. Such extensions should keep compatibility with prior versions of the library. This work also contributes for showing that modern functional languages like Haskell are viable for day to day programming, even beating conventional languages in some aspects, like level of abstraction. |
publishDate |
2007 |
dc.date.none.fl_str_mv |
2007-02-26 2016-06-22T18:38:19Z 2016-03-08 2016-06-22T18:38:19Z |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/doctoralThesis |
format |
doctoralThesis |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
MALAQUIAS, José Romildo. Computer algebra in modern functional languages. 2007. 140 f. Tese (Doutorado em Engenharias) - Universidade Federal de Uberlândia, Uberlândia, 2007. https://repositorio.ufu.br/handle/123456789/14370 |
identifier_str_mv |
MALAQUIAS, José Romildo. Computer algebra in modern functional languages. 2007. 140 f. Tese (Doutorado em Engenharias) - Universidade Federal de Uberlândia, Uberlândia, 2007. |
url |
https://repositorio.ufu.br/handle/123456789/14370 |
dc.language.iso.fl_str_mv |
por |
language |
por |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.format.none.fl_str_mv |
application/pdf application/pdf |
dc.publisher.none.fl_str_mv |
Universidade Federal de Uberlândia BR Programa de Pós-graduação em Engenharia Elétrica Engenharias UFU |
publisher.none.fl_str_mv |
Universidade Federal de Uberlândia BR Programa de Pós-graduação em Engenharia Elétrica Engenharias UFU |
dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UFU instname:Universidade Federal de Uberlândia (UFU) instacron:UFU |
instname_str |
Universidade Federal de Uberlândia (UFU) |
instacron_str |
UFU |
institution |
UFU |
reponame_str |
Repositório Institucional da UFU |
collection |
Repositório Institucional da UFU |
repository.name.fl_str_mv |
Repositório Institucional da UFU - Universidade Federal de Uberlândia (UFU) |
repository.mail.fl_str_mv |
diinf@dirbi.ufu.br |
_version_ |
1813711534847688704 |