Explaining algebraic theory with functional programs
Reference
Jeroen Fokker,
Explaining Algebraic Theory with Functional Programs.
In: Functional Programming Languages in Education,
Proceedings of the first international symposium FPLE'95
in Nijmegen, the Netherlands, december 1995.
(Pieter Hartel and Rinus Plasmeijer, eds).
Abstract
A hierarchy of six important structures from abstract algebra
(groups, rings, fields etc.)
is introduced as Gofer class definitions and laws about them.
Many instance declarations are provided, explaining the
algebraic construction of integers, quotients, adding $i$,
function spaces, polynomials, and matrices.
The definitions include generalized implementations
of polynomial division and matrix inversion.
Monadic parsers are provided for all constructs discussed.
As an application, a one-line program is given for calculating
the eigenvalue equation of a matrix.
Article text
Article
Gofer program source
Other relevant links