The central notion of this work is that of a functor between categories of
finitely presented modules over so-called computable rings, i.e. rings R where
one can algorithmically solve inhomogeneous linear equations with coefficients
in R. The paper describes a way allowing one to realize such functors, e.g.
Hom, tensor product, Ext, Tor, as a mathematical object in a computer algebra
system. Once this is achieved, one can compose and derive functors and even
iterate this process without the need of any specific knowledge of these
functors. These ideas are realized in the ring independent package homalg. It
is designed to extend any computer algebra software implementing the
arithmetics of a computable ring R, as soon as the latter contains algorithms
to solve inhomogeneous linear equations with coefficients in R. Beside
explaining how this suffices, the paper describes the nature of the extensions
provided by homalg.Comment: clarified some points, added references and more interesting example