![[MONOiD]](monoid.png)
In addition to the usual components of a D class record, the record
representing the D class dClass of s in a transformation monoid can
have the following components. They are created by the function
SchutzenbergerGroup (see SchutzenbergerGroup) which is called
whenever the size, the list of elements of dClass, or a membership test
in dClass is asked for.
schutzenbergerGroup:H:dClass.representative.
L:dClass.representative.
R:dClass.representative.
rCosets:dClass.R.
The following functions have a special implementation in terms of these components.
Size( dClass )
returns the size of the D class dClass. This function calls
SchutzenbergerGroup and determines the size of dClass in terms of the
sizes of the resulting group and the Schaccent127utzenberger groups of
the R class dClass.R and the L class dClass.L.
Elements( dClass )
returns the set of elements of the D class dClass. This function calls
SchutzenbergerGroup and determines the set of elements of dClass as
the union of cosets of the Schaccent127utzenberger group of the L class
dClass.L determined through the multipliers dClass.rCosets and
dClass.R.rMults.
x in dClass
returns true if x is an element of the D class dClass and false
otherwise. This function calls SchutzenbergerGroup and tests whether
the quotient of the representative of dClass and a suitable translate
of x can be found in one of the cosets of the Schaccent127utzenberger
group of the L class dClass.L determined by the list
dClass.rCosets.
HClasses( dClass )
returns the list of H classes contained in the D class dClass.
LClasses( dClass )
returns the list of L classes contained in the D class dClass.
RClasses( dClass )
returns the list of R classes contained in the D class dClass.
Version 2.4 (May 1998)