  In order to study the axiomatization of the if-then-else construct over
possibly non-halting programs and tests, the notion of $C$-sets was introduced
in the literature by considering the tests from an abstract $C$-algebra. This
paper extends the notion of $C$-sets to $C$-monoids which include the
composition of programs as well as composition of programs with tests. For the
class of $C$-monoids where the $C$-algebras are adas a canonical representation
in terms of functional $C$-monoids is obtained.
