Special operations defined for crossed modules are stored in the
record structure XModOps. Every crossed module X has
X.operations := XModOps;.
gap> RecFields( XModOps );
[ "name", "operations", "Elements", "IsFinite", "Size", "=", "<",
"in", "IsSubset", "Intersection", "Union", "IsParent", "Parent",
"Difference", "Representative", "Random", "Print", "Kernel",
"IsAspherical", "IsSimplyConnected", "IsConjugation",
"IsTrivialAction", "IsCentralExtension", "DirectProduct",
"IsAutomorphismXMod", "IsZeroBoundary", "IsRModule",
"InclusionMorphism", "WhiteheadPermGroup", "Whitehead", "Norrie",
"Lue", "Actor", "InnerMorphism", "Centre", "InnerActor",
"AutomorphismPermGroup", "IdentityMorphism", "InnerAutomorphism", ]
Crossed modules X,Y are considered equal if they have the same
source, boundary, range, and action. The remaining functions are
discussed below and following section About actors.
GAP 3.4.4