Support for testing all possible sequences of
method invocations for a single object is describe in [XXX].
The approach relies, however,
on an algebraic specification of the
properties of the object and seems to be suitable
primarily for testing associativity
and commutativity properties of methods.
For example, it may be important to know
that a method has no influence on the
state of the object.
Algebraically, this may be expressed by allowing
the emthod to commute with every other method call,
since the method behaves as the identity on the
state of the object.
Also in a more general (that is state-based) approach
this property may be of importance. See section [X-corr].
Actually, the C++ specifier const
provides a facility to inform the compiler of this
property.