A Purely Functional Computer Algebra System Embedded in Haskell

07/04/2018
by   Hiromi Ishii, et al.
0

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.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
09/27/2022

Clifford algebra in R

Here I present the 'clifford' package for working with Clifford algebras...
research
03/29/2018

The process of purely event-driven programs

Using process algebra, this paper describes the formalisation of the pro...
research
08/15/2019

Counting Immutable Beans: Reference Counting Optimized for Purely Functional Programming

Most functional languages rely on some garbage collection for automatic ...
research
08/18/2023

Field theory with the Maxima computer algebra system

The Maxima computer algebra system, the open-source successor to MACSYMA...
research
10/15/2021

Zipping Strategies and Attribute Grammars

Strategic term rewriting and attribute grammars are two powerful program...
research
07/15/2017

Memoisation: Purely, Left-recursively, and with (Continuation Passing) Style

Memoisation, or tabling, is a well-known technique that yields large imp...
research
03/29/2018

Proof-of-Concept Examples of Performance-Transparent Programming Models

Machine-specific optimizations command the machine to behave in a specif...

Please sign up or login with your details

Forgot password? Click here to reset