zbMATH — the first resource for mathematics

A purely functional computer algebra system embedded in Haskell. (English) Zbl 1453.68036
Gerdt, Vladimir P. (ed.) et al., Computer algebra in scientific computing. 20th international workshop, CASC 2018, Lille, France, September 17–21, 2018. Proceedings. Cham: Springer. Lect. Notes Comput. Sci. 11077, 288-303 (2018).
Summary: 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öbner basis algorithms, such as Faugère’s \(F_4\) and \(F_5\), in a composable way.
For the entire collection see [Zbl 1396.68014].
68N18 Functional programming and lambda calculus
68W30 Symbolic computation and algebraic computation
Full Text: DOI