GAP (XMod) - Chapter 10: Crossed modules of groupoids

Goto Chapter: Top 1 2 3 4 5 6 7 8 9 10 11 12 13 Bib Ind
[Top of Book] [Contents] [Previous Chapter] [Next Chapter]

[MathJax on]

10 Crossed modules of groupoids
10.1 Constructions for crossed modules of groupoids
10.1-1 SinglePiecePreXModWithObjects
10.1-2 IsXModWithObjects
10.1-3 IsPermPreXModWithObjects
10.1-4 Root2dGroup

### 10 Crossed modules of groupoids

The material documented in this chapter is experimental, and is likely to be changed very soon.

#### 10.1 Constructions for crossed modules of groupoids

A typical example of a crossed module calX over a groupoid has for its range a connected groupoid. This is a direct product of a group with a complete graph, and we call the vertices of the graph the objects of the crossed module. The source of calX is a groupoid, with the same objects, which is either discrete or connected. The boundary morphism is constant on objects. For details and other references see [AW10].

##### 10.1-1 SinglePiecePreXModWithObjects

`‣ SinglePiecePreXModWithObjects`( pxmod, obs, isdisc ) | ( operation )

At present the experimental operation `SinglePiecePreXModWithObjects` accepts a precrossed module `pxmod`, a set of objects `obs`, and a boolean `isdisc` which is `true` when the source groupoid is homogeneous and discrete and `false` when the source groupoid is connected. Other operations will be added as time permits.

In the example the crossed module `DX4` has discrete source, while the crossed module `CX4` has connected source. These are groupoid equivalents of `XModByNormalSubgroup` (2.1-2).

    gap> s4 := Group( (1,2,3,4), (3,4) );;
    gap> SetName( s4, "s4" );
    gap> a4 := Subgroup( s4, [ (1,2,3), (2,3,4) ] );;
    gap> SetName( a4, "a4" );
    gap> X4 := XModByNormalSubgroup( s4, a4 );;
    gap> DX4 := SinglePiecePreXModWithObjects( X4, [-9,-8,-7], true );
    precrossed module with source groupoid:
    homogeneous, discrete groupoid: < a4, [ -9, -8, -7 ] >
    and range groupoid:
    single piece groupoid: < s4, [ -9, -8, -7 ] >
    gap> Da4 := Source( DX4 );;
    gap> Ds4 := Range( DX4 );;
    gap> CX4 := SinglePiecePreXModWithObjects( X4, [-9,-8,-7], false );
    precrossed module with source groupoid:
    single piece groupoid: < a4, [ -9, -8, -7 ] >
    and range groupoid:
    single piece groupoid: < s4, [ -9, -8, -7 ] >
    gap> Ca4 := Source( CX4 );;
    gap> Cs4 := Range( CX4 );;

##### 10.1-2 IsXModWithObjects

`‣ IsXModWithObjects`( pxmod ) | ( property )

`‣ IsPreXModWithObjects`( pxmod ) | ( property )

`‣ IsDirectProductWithCompleteDigraphDomain`( pxmod ) | ( property )

The precrossed module `DX4` belongs to the category `Is2DimensionalGroupWithObjects` and is, of course, a crossed module.

    gap> IsXModWithObjects( DX4 );
    true
    gap> KnownPropertiesOfObject( DX4 );
    [ "CanEasilyCompareElements", "CanEasilySortElements", "IsDuplicateFree",
      "IsGeneratorsOfSemigroup", "IsSinglePieceDomain",
      "IsDirectProductWithCompleteDigraphDomain", "IsPreXModWithObjects",
      "IsXModWithObjects" ]

##### 10.1-3 IsPermPreXModWithObjects

`‣ IsPermPreXModWithObjects`( pxmod ) | ( property )

`‣ IsPcPreXModWithObjects`( pxmod ) | ( property )

`‣ IsFpPreXModWithObjects`( pxmod ) | ( property )

To test these properties we test the precrossed modules from which they were constructed.

    gap> IsPermPreXModWithObjects( CX4 );
    true
    gap> IsPcPreXModWithObjects( CX4 );
    false
    gap> IsFpPreXModWithObjects( CX4 );
    false

##### 10.1-4 Root2dGroup

`‣ Root2dGroup`( pxmod ) | ( attribute )

`‣ XModAction`( pxmod ) | ( attribute )

The attributes of a precrossed module with objects include the standard `Source`; `Range`; `Boundary` (2.1-9); and `XModAction` (2.1-9) as with precrossed modules of groups. There is also `ObjectList`, as in the groupoids package. Additionally there is `Root2dGroup` which is the underlying precrossed module used in the construction.

Note that `XModAction` is now a groupoid homomorphism from the source groupoid to a one-object groupoid (with object `0`) where the group is the automorphism group of the range groupoid.

    gap> Set( KnownAttributesOfObject( CX4 ) );
    [ "Boundary", "ObjectList", "Range", "Root2dGroup", "Source", "XModAction" ]
    gap> Root2dGroup( CX4 );
    [a4->s4]
    gap> act := XModAction( CX4 );;
    gap> r := Arrow( Cs4, (1,2,3,4), -7, -8 );;
    gap> ImageElm( act, r );
    [groupoid homomorphism :
    [ [ [(1,2,3) : -9 -> -9], [(2,3,4) : -9 -> -9], [() : -9 -> -8],
          [() : -9 -> -7] ],
      [ [(2,3,4) : -9 -> -9], [(1,3,4) : -9 -> -9], [() : -9 -> -7],
          [() : -9 -> -8] ] ] : 0 -> 0]
    gap> s := Arrow( Ca4, (1,2,4), -8, -8 );;
    gap> ##  calculate s^r
    gap> ims := ImageElmXModAction( CX4, s, r );
    [(1,2,3) : -7 -> -7]

There is much more to be done with these constructions.

[Top of Book] [Contents] [Previous Chapter] [Next Chapter]
Goto Chapter: Top 1 2 3 4 5 6 7 8 9 10 11 12 13 Bib Ind

generated by GAPDoc2HTML