In addition to the usual components of an H class record, the record
representing the H class `hClass` 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 `hClass`, or a membership test
in `hClass` is asked for.

`schutzenbergerGroup`

:

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

`R`

:

the R class of`hClass`.representative.

`L`

:

the L class of

The following functions have a special implementation in terms of these components.`hClass`.representative.

`Size( `

`hClass` )

returns the size of the H class `hClass`. This function calls
`SchutzenbergerGroup`

and determines the size of `hClass` as the size of
the resulting group.

`Elements( `

`hClass` )

returns the set of elements of the H class `hClass`. This function calls
`SchutzenbergerGroup`

and determines the set of elements of `hClass` as
the set of elements of the resulting group multiplied by the
representative of `hClass`.

`x` in `hClass`

returns `true`

if `x` is an element of the H class `hClass` and `false`

otherwise. This function calls `SchutzenbergerGroup`

and tests whether
the quotient of the representative of `hClass` and `x` (see
PermLeftQuoTrans) is in the resulting group.