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`

:

set to the Schaccent127utzenberger group of`dClass`as a permutation group on the set of images of SchutzenbergerGroup for Transformation Monoids).`H`

:

set to the H class of

.`dClass`.representative

`L`

:

set to the L class of

.`dClass`.representative

`R`

:

set to the R class of

.`dClass`.representative`rCosets`

:

contains a list of (right) coset representatives of the Schaccent127utzenberger group of`dClass`in the Schaccent127utzenberger group of the R class

.`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

and the L class `dClass`.R

.
`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

determined through the multipliers `dClass`.L

and
`dClass`.rCosets

.
`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

determined by the list
`dClass`.L

.
`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`.