NormalSubXMods( X )
This function takes pairs of normal subgroups from the source and
range of X and constructs a normal sub-crossed module whenever the
axioms are satisfied. Appropriate names are chosen where possible.
gap> NSX := NormalSubXMods( SX );
[ Crossed module [Id[q8->sl(2,3)]], Crossed module [I->?],
Crossed module [Sub[q8->sl(2,3)]], Crossed module [?->q8],
Crossed module [?->q8], Crossed module [q8->sl(2,3)] ]
GAP 3.4.4