  This paper gives a generic form of the diamond lemma, which includes support
for additive and topological structures of the base set, and which does not
require any further structure (e.g. an associative multiplication operation) to
be present. This result is intended to be used as the core of diamond lemmas
for particular algebraic structures, taking care of all the common
technicalities. With this generic diamond lemma, the main steps needed to prove
a specialised diamond lemma is to define the reduction maps and analyse the
structure of critical ambiguities.
  The abstract machinery is backed up with concrete suggestions for how one
should set things up in order to reproduce traditional results in the general
setting. Several instances of the fundamental theorem of Groebner basis theory
are derived as corollaries of the main result.
