73.47 About cat1-groups

In xmodL1 Loday reformulated the notion of a crossed module as a cat1-group, namely a group G with a pair of homomorphisms t,h : G to G having a common image R and satisfying certain axioms. We find it convenient to define a cat1-group {cal C} = (e;t,h : G to R ) as having source group G, range group R, and three homomorphisms: two surjections t,h : G to R and an embedding e : R to G satisfying: textbfCat 1: & te = he = mathrm{id}_R ,
textbfCat 2: & [ker t, ker h] = { 1_G }. It follows that teh = h, ; het = t, ; tet = t, ; heh = h.

The maps t,h are often referred to as the em source and em target, but we choose to call them the em tail and em head of {cal C}, because em source is the GAP term for the domain of a function.

A morphism {cal C}_1 to {cal C}_2 of cat1-groups is a pair (gamma, rho) where gamma : G_1 to G_2 and rho : R_1 to R_2 are homomorphisms satisfying h_2 gamma = rho h_1, ;; t_2 gamma = rho t_1, ;; e_2 rho = gamma e_1, (see refCat1Morphism and subsequent sections).

In this implementation a cat1-group {cal C} is a record with the following fields:

C.source, & the source G,
C.range, & the range R,
C.tail, & the tail homomorphism t,
C.head, & the head homomorphism h,
C.embedRange, & the embedding of R in G,
C.kernel, & a permutation group isomorphic to the kernel of t,
C.embedKernel,& the inclusion of the kernel in G,
C.boundary, & the restriction of h to the kernel,
C.isDomain, & set true,
C.operations, & a special set of operations Cat1Ops (see refOperations for cat1-groups,
C.name, & a concatenation of the names of the source and range.
C.isCat1 & a boolean flag, normally true.

The following listing shows a simple example:

    gap> s3c4gen := s3c4.generators;
    [ (1,2), (2,3), (4,5,6,7) ]
    gap> t1 := GroupHomomorphismByImages( s3c4, s3, s3c4gen,
          [ (1,2), (2,3), () ] );;
    gap> C1 := Cat1( s3c4, t1, t1 );
    cat1-group [s3c4 ==> s3] 
    gap> Cat1Print( C1 );
    cat1-group [s3c4 ==> s3] :- 
    : source group has generators:
      [ (1,2), (2,3), (4,5,6,7) ]
    :  range group has generators:
      [ (1,2), (2,3) ]
    : tail homomorphism maps source generators to:
      [ ( 1, 2), ( 2, 3), () ]
    : head homomorphism maps source generators to:
      [ ( 1, 2), ( 2, 3), () ]
    : range embedding maps range generators to:
      [ (1,2), (2,3) ]
    : kernel has generators:
      [ (4,5,6,7) ]
    : boundary homomorphism maps generators of kernel to:
      [ () ]
    : kernel embedding maps generators of kernel to:
      [ (4,5,6,7) ]  

The category of crossed modules is equivalent to the category of cat1-groups, and the functors between these two categories may be described as follows.

Starting with the crossed module {cal X} = (partial : S to R) the group G is defined as the semidirect product G = R semidirect S using the action from {cal X}. The structural morphisms are given by t(r,s) = r, ; h(r,s) = r (partial s), ; er = (r,1).

On the other hand, starting with a cat1-group {cal C} = (e;t,h : G to R) we define S = ker t, the range R remains unchanged and partial = hmid_S . The action of R on S is conjugation in S via the embedding of R in G.

    gap> X1;
    Crossed module [c5->PermAut(c5)]
    gap> CX1 := Cat1XMod(X1);
    cat1-group [Perm(PermAut(c5) 
|
X c5) ==> PermAut(c5)] 
    gap> CX1.source.generators;
    [ (2,3,5,4), (1,2,3,4,5) ]
    gap>
    gap> XC1 := XModCat1( C1 );
    Crossed module [ker([s3c4 ==> s3])->s3]
    gap> WhatTypeXMod( XC1 );
    [ " triv, ", " zero, ", " RMod, " ]  

Previous Up Top Next
Index

GAP 3.4.4
April 1997