2000 character limit reached
A Purely Functional Computer Algebra System Embedded in Haskell (1807.01456v2)
Published 4 Jul 2018 in cs.SC and cs.PL
Abstract: We demonstrate how methods in Functional Programming can be used to implement a computer algebra system. As a proof-of-concept, we present the computational-algebra package. It is a computer algebra system implemented as an embedded domain-specific language in Haskell, a purely functional programming language. Utilising methods in functional programming and prominent features of Haskell, this library achieves safety, composability, and correctness at the same time. To demonstrate the advantages of our approach, we have implemented advanced Gr\"{o}bner basis algorithms, such as Faug`{e}re's $F_4$ and $F_5$, in a composable way.