73.77 About derivations and sections

The Whitehead monoid rm{Der}({cal X}) of {cal X} was defined in xmodW2 to be the monoid of all it derivations from R to S, that is the set of all maps R to S, with composition circ , satisfying textbfDer 1: & chi(qr) & = & (chi q)^{r} ; (chi r)
textbfDer 2: & (chi_1 circ chi_2)(r) & = & (chi_1 r)(chi_2 r)(chi_1 partial chi_2 r).

noindent The zero map is the identity for this composition. Invertible elements in the monoid are called em regular. The Whitehead group of {cal X} is the group of regular derivations in rm{Der}({cal X} ). In section refAbout actors the em actor of {cal X} is defined as a crossed module whose source and range are permutation representations of the Whitehead group and the automorphism group of {cal X}.

The construction for cat1-groups equivalent to the derivation of a crossed module is the em section. The monoid of sections of {cal C} is the set of group homomorphisms xi : R to G, with composition circ , satisfying: textbfSect 1: & t xi = mathrm{id}_R,
textbfSect 2: & (xi_1 circ xi_2)(r) = (xi_{2}r)(e h xi_{2}r)^{-1}(xi_{1} h xi_{2}r). The embedding e is the identity for this composition, and h(xi_1 circ xi_2) = (h xi_1)(h xi_2). A section is em regular when h xi is an automorphism and, of course, the group of regular sections is isomorphic to the Whitehead group.

Derivations are stored like group homomorphisms by specifying the images of a generating set. Images of the remaining elements may then be obtained using axiom textbfDer 1. The function IsDerivation is automatically called to check that this procedure is well-defined.

    gap> X1;
    Crossed module [c5->PermAut(c5)]
    gap> chi1 := XModDerivationByImages( X1, [ () ] );
    XModDerivationByImages( PermAut(c5), c5, [ (1,2,4,3) ], [ () ] )
    gap> IsDerivation( chi1 );
    true  

A derivation is stored as a record chi with fields:

chi.source, & the range group R of {cal X},
chi.range, & the source group S of {cal X},
chi.generators, & a fixed generating set for R,
chi.genimages, & the chosen images of the generators,
chi.xmod, & the crossed module {cal X},
chi.operations, & special set of operations XModDerivationByImagesOps,
chi.isDerivation,& a boolean flag, normally true.

Sections emphare group homomorphisms, and are stored as such, but with a modified set of operations Cat1SectionByImagesOps which includes a special .Print function to display the section in the manner shown below. Functions SectionDerivation and DerivationSection convert derivations to sections, and vice-versa, calling Cat1XMod and XModCat1 automatically.

The equation xi r = (er)(chi r) determines a section xi of mathcal{C}, given a derivation chi of mathcal{X}, and conversely.

    gap> xi1 := SectionDerivation( chi1 );
    Cat1SectionByImages( PermAut(c5), Perm(PermAut(c5) 
|
X c5),
        [ (1,2,4,3) ], [ (2,3,5,4) ] )
    gap> xi1.cat1;
    cat1-group [Perm(PermAut(c5) 
|X c5) ==> PermAut(c5)]

There are two functions to determine all the elements of the Whitehead group and the Whitehead monoid of {cal X}, namely RegularDerivations and AllDerivations. If the whole monoid is needed at some stage, then the latter function should be used. A field D = X.derivations is created which stores all the required information:

D.areDerivations, & a boolean flag, normally true,
D.isReg, & true when only the regular derivations are known,
D.isAll, & true when all the derivations have been found,
D.generators, & a emphcopy of R.generators,
D.genimageList, & a list of .genimages lists for the derivations,
D.regular, & the number of regular derivations (if known),
D.xmod, & the crossed module {cal X},
D.operations, & a special set of operations XModDerivationsOps.

Using our standard example X1 we find that there are just five derivations, all of them regular, so the associated group is cyclic of size 5.

    gap> RegularDerivations( X1 );
    RegularDerivations record for crossed module [c5->PermAut(c5)],
    : 5 regular derivations, others not found.
    gap> AllDerivations( X1 );
    AllDerivations record for crossed module [c5->PermAut(c5)],
    : 5 derivations found but unsorted.
    gap> DerivationsSorted( X1 );
    true
    gap> imder1 := X1.derivations.genimageList;
    [ [()], [(1,2,3,4,5)], [(1,3,5,2,4)], [(1,4,2,5,3)], [(1,5,4,3,2)] ] 

The functions RegularSections and AllSections perform corresponding tasks for a cat1-group. Two strategies for calculating derivations and sections are implemented, see xmodAW1. The default method for AllDerivations is to search for all possible sets of images using a backtracking procedure, and when all the derivations are found it is not known which are regular. The function DerivationsSorted sorts the .genImageList field, placing the regular ones at the top of the list and adding the .regular field. The default method for AllSections( C ) computes all endomorphisms on the range group R of C as possibilities for the composite hxi. A backtrack method then finds possible images for such a section. When either the set of derivations or the set of sections already exists, the other set is computed using SectionDerivation or DerivationSection.

    gap> CX1 := Cat1XMod( X1 );
    cat1-group [Perm(PermAut(c5) 
|
X c5) ==> PermAut(c5)] 
    gap> CX1.source.name := "Hol(c5)";; Cat1Name( CX1 );
    gap> RegularSections( CX1 );
    RegularSections record for cat1-group [Hol(c5) ==> PermAut(c5)],
    : 5 regular sections, others not found.
    gap> CX1.sections.genimageList;
    [ [(2,3,5,4)], [(1,2,4,3)], [(1,3,2,5)], [(1,4,5,2)], [(1,5,3,4)] ]  

The derivation images and the composition table may be listed as follows.

    gap> chi2 := XModDerivationByImages( X1, imder1[2] ); 
    XModDerivationByImages( PermAut(c5), c5, [(1,2,4,3)], [(1,2,3,4,5)] )
    gap> DerivationImage( chi2, (1,4)(2,3) );
    ( 1, 4, 2, 5, 3)
    gap> DerivationImages( chi2 );
    [ 1, 2, 3, 4 ]
    gap> PrintList( DerivationTable( X1 ) )
    [ 1, 1, 1, 1 ]
    [ 1, 2, 3, 4 ]
    [ 1, 3, 5, 2 ]
    [ 1, 4, 2, 5 ]
    [ 1, 5, 4, 3 ]
    gap> PrintList( WhiteheadGroupTable( X1 ) );
    [ 1, 2, 3, 4, 5 ]
    [ 2, 3, 4, 5, 1 ]
    [ 3, 4, 5, 1, 2 ]
    [ 4, 5, 1, 2, 3 ]
    [ 5, 1, 2, 3, 4 ]  

Each chi or xi determines endomorphisms of R, S, G, {cal X} and {cal C}, namely: rho & : & R to R, & r mapsto r(partial chi r) = h xi r,
sigma & : & S to S, & s mapsto s(chi partial s),
gamma & : & G to G, & g mapsto (eh xi tg)(xi tg^{-1})g(ehg^{-1})(xi hg),
(sigma,rho) & : & {cal X} to {cal X},
(gamma,rho) & : & {cal C} to {cal C}.

When these endomorphisms are automorphisms, the derivation is regular. When the boundary of {cal X} is the zero map, both sigma and rho are identity homomorphisms, and every derivation is regular, which is the case in this example.

    gap> sigma2 := SourceEndomorphismDerivation( chi2 );
    GroupHomomorphismByImages( c5, c5, [ (1,2,3,4,5) ], [ (1,2,3,4,5) ] )
    gap> rho2 := RangeEndomorphismDerivation( chi2 );
    GroupHomomorphismByImages( PermAut(c5), PermAut(c5), [ (1,2,4,3) ], 
       [ (1,2,4,3) ] )
    gap> xi2 := SectionDerivation( chi2 );;
    gap> gamma2 := SourceEndomorphismSection( xi2 );
    GroupHomomorphismByImages( Hol(c5), Hol(c5), [(2,3,5,4),(1,2,3,4,5)],
       [(2,3,5,4),(1,2,3,4,5)] )
    gap> mor2 := XModMorphism( X1, X1, [sigma2,rho2] );
    Morphism of crossed modules <[c5->PermAut(c5)] >-> [c5->PermAut(c5)]>
    gap> mu2 := Cat1Morphism( CX1, CX1, [gamma2,rho2] );
    Morphism of cat1-groups <[Hol(c5) ==> PermAut(c5)]-->
       [Hol(c5) ==> PermAut(c5)]>  

Previous Up Top Next
Index

GAP 3.4.4
April 1997