[Up] [Previous] [Next] [Index]

# 5 Approximating the Schur multiplier

The algorithm in Har09 approximates the Schur multiplier of an invariantly finitely L-presented group by the quotients in its Dwyer-filtration. This is implemented in the NQL-package and the following methods are available:

- `GeneratingSetOfMultiplier(` LpGroup`) A`

  uses Tietze transformations for computing an equivalent set of relators for LpGroup so that a generating set for its Schur multiplier can be read off easily.

- `FiniteRankSchurMultiplier(` LpGroup`,` c`) O`

  computes a finitely generated quotient of the Schur multiplier of LpGroup. The method computes the image of the Schur multiplier of LpGroup in the Schur multiplier of its class-c quotient.

- `EndomorphismsOfFRSchurMultiplier (` LpGroup`,` c`) O`

  computes a list of endomorphisms of the `FiniteRankSchurMultiplier` of LpGroup. These are the endomorphisms of the invariant L-presentation induced to `FiniteRankSchurMultiplier`.

- `EpimorphismCoveringGroups(` LpGroup`,` d`,` c`) O`

  computes an epimorphism of the covering group of the class-d quotient onto the covering group of the class-c quotient.

- `EpimorphismFiniteRankSchurMultiplier(` LpGroup`,` d`,` c`) O`

  computes an epimorphism of the d-th `FiniteRankSchurMultiplier` of the invariant LpGroup onto the c-th `FiniteRankSchurMultiplier`. Its restricts the epimorphism `EpimorphismCoveringGroups` to the corresponding finite rank multipliers.

- `ImageInFiniteRankSchurMultiplier(` LpGroup`,` c`,` elm`) F`

  computes the image of the free group element elm in the c-th `FiniteRankSchurMultiplier`. Note that elm must be a relator contained in the Schur multiplier of LpGroup; otherwise, the function fails in computing the image.

  vskip3ex

  The following example tackels the Schur multiplier of the Grigorchuk group.

      gap> G := ExamplesOfLPresentations( 1 );;
      gap> gens := GeneratingSetOfMultiplier( G );
      rec( FixedGens := [ b^-2*c^-2*d^-2*b*c*d*b*c*d ],
        IteratedGens := [ d^-1*a^-1*d^-1*a*d*a^-1*d*a,
            d^-1*a^-1*c^-1*a^-1*c^-1*a^-1*d^-1*a*c*a*c*a*d*a^-1*c^-1*a^-1*c^-1*a^
              -1*d*a*c*a*c*a ],
        BasisGens := [ a^2, b*c*d, b^-2*d^-2*b*c*d*b*c*d, b^-2*c^-2*b*c*d*b*c*d ],
        Endomorphisms := [ [ a, b, c, d ] -> [ a^-1*c*a, d, b, c ] ] )
      gap> H := FiniteRankSchurMultiplier( G, 5 );
      Pcp-group with orders [ 2, 2, 2 ]
      gap> GeneratorsOfGroup( H );
      [ g15, g17, g16 ]
      gap> EndomorphismsOfFRSchurMultiplier( G, 5 );
      [ [ g15, g16, g17 ] -> [ g15, id, g16 ] ]
      gap> Kernel( last[1] );
      Pcp-group with orders [ 2 ]
      gap> GeneratorsOfGroup( last );
      [ g16 ]
      gap> EpimorphismFiniteRankSchurMultipliers( G, 5, 2 );
      [ g15, g16, g17 ] -> [ g10, id, g13 ]
      gap> Range( last ) = FiniteRankSchurMultiplier( G, 2 );
      true
      gap> Kernel( EpimorphismFiniteRankSchurMultipliers( G, 5, 2 ) );
      Pcp-group with orders [ 2 ]
      gap> GeneratorsOfGroup( last );
      [ g16 ]
      gap> Kernel( EpimorphismFiniteRankSchurMultipliers( G, 5, 2 ) ) =
      > Kernel( EndomorphismsOfFRSchurMultiplier( G, 5 )[1] );
      true
      gap> ImageInFiniteRankSchurMultiplier( G, 5, gens.FixedGens[1] );
      g15
      gap> ImageInFiniteRankSchurMultiplier(G,5,Image(gens.Endomorphisms[1],
      > gens.IteratedGens[1] ) );
      g16
      gap> ImageInFiniteRankSchurMultiplier(G,5,gens.IteratedGens[1] );
      g17

  [Up] [Previous] [Next] [Index]