8 3d-groups and 3d-mappings : crossed squares and cat^2-groups

The term *3d-group* refers to a set of equivalent categories of which the most common are the categories of *crossed squares* and *cat^2-groups*.

Crossed squares were introduced by Guin-Waléry and Loday (see, for example, [BL87]) as fundamental crossed squares of commutative squares of spaces, but are also of purely algebraic interest. We denote by [n] the set {1,2,...,n}. We use the n=2 version of the definition of crossed n-cube as given by Ellis and Steiner [ES87].

A *crossed square* mathcalS consists of the following:

groups S_J for each of the four subsets J ⊆ [2];

a commutative diagram of group homomorphisms:

\ddot{\partial}_1 : S_{[2]} \to S_{\{2\}}, \quad \ddot{\partial}_2 : S_{[2]} \to S_{\{1\}}, \quad \dot{\partial}_1 : S_{\{1\}} \to S_{\emptyset}, \quad \dot{\partial}_2 : S_{\{2\}} \to S_{\emptyset};

actions of S_∅ on S_{1}, S_{2} and S_[2] which determine actions of S_{1} on S_{2} and S_[2] via dot∂_1 and actions of S_{2} on S_{1} and S_[2] via dot∂_2;

a function ⊠ : S_{1} × S_{2} -> S_[2].

Here is a picture of the situation:

\vcenter{\xymatrix{ & & S_{[2]} \ar[rr]^{\ddot{\partial}_1} \ar[dd]_{\ddot{\partial}_2} && S_{\{2\}} \ar[dd]^{\dot{\partial}_2} & \\ \mathcal{S} & = & && \\ & & S_{\{1\}} \ar[rr]_{\dot{\partial}_1} && S_{\emptyset} }} }}

The following axioms must be satisfied for all l ∈ S_[2], m,m_1,m_2 ∈ S_{1}, n,n_1,n_2 ∈ S_{2}, p ∈ S_∅:

the homomorphisms ddot∂_1, ddot∂_2 preserve the action of S_∅;

each of the upper, left-hand, lower, and right-hand sides of the square,

\ddot{\mathcal{S}}_1 = (\ddot{\partial}_1 : S_{[2]} \to S_{\{2\}}), \ddot{\mathcal{S}}_2 = (\ddot{\partial}_2 : S_{[2]} \to S_{\{1\}}), \dot{\mathcal{S}}_1 = (\dot{\partial}_1 : S_{\{1\}} \to S_{\emptyset}), \dot{\mathcal{S}}_2 = (\dot{\partial}_2 : S_{\{2\}} \to S_{\emptyset}),

and the diagonal

\mathcal{S}_{12} = (\partial_{12} := \dot{\partial}_1\ddot{\partial}_2 = \dot{\partial}_2\ddot{\partial}_1 : S_{[2]} \to S_{\emptyset})

are crossed modules (with actions via S_∅);

⊠ is a

*crossed pairing*:(m_1m_2 ⊠ n) = (m_1 ⊠ n)^m_2 (m_2 ⊠ n),

(m ⊠ n_1n_2) = (m ⊠ n_2) (m ⊠ n_1)^n_2,

(m ⊠ n)^p = (m^p ⊠ n^p);

ddot∂_1 (m ⊠ n) = (n^-1)^m n quad mboxand quad ddot∂_2 (m ⊠ n) = m^-1 m^n,

(m ⊠ ddot∂_1 l) = (l^-1)^m l quad mboxand quad (ddot∂_2 l ⊠ n) = l^-1 l^n.

Note that the actions of S_{1} on S_{2} and S_{2} on S_{1} via S_∅ are compatible since

{m_1}^{(n^m)} \;=\; {m_1}^{\dot{\partial}_2(n^m)} \;=\; {m_1}^{m^{-1}(\dot{\partial}_2 n)m} \;=\; (({m_1}^{m^{-1}})^n)^m.

(A *precrossed square* is a similar structure which satisfies some subset of these axioms. [More needed here.])

In what follows we shall generally use the following notation for the S_J, namely L = S_[2];~ M = S_{1};~ N = S_{2} and P = S_∅.

Crossed squares are the n=2 case of a crossed n-cube of groups, defined as follows. (This is an attempt to translate Definition 2.1 in Ronnie's *Computing homotopy types using crossed n-cubes of groups* into right actions -- but this definition is not yet completely understood!)

A *crossed* n*-cube of groups* consists of the following:

groups S_A for every subset A ⊆ [n];

a commutative diagram of group homomorphisms ∂_i : S_A -> S_A ∖ {i}, i ∈ [n]; with composites ∂_B : S_A -> S_A ∖ B, B ⊆ [n];

actions of S_∅ on each S_A; and hence actions of S_B on S_A via ∂_B for each B ⊆ [n];

functions ⊠_A,B : S_A × S_B -> S_A ∪ B, (A,B ⊆ [n]).

The following axioms must be satisfied (long list to be added).

Analogously to the data structure used for crossed modules, crossed squares are implemented as `3d-groups`

. When times allows, cat^2-groups will also be implemented, with conversion between the two types of structure. Some standard constructions of crossed squares are listed below. At present, a limited number of constructions are implemented. Morphisms of crossed squares have also been implemented, though there is a lot still to be done.

`‣ CrossedSquare` ( args ) | ( function ) |

`‣ CrossedSquareByNormalSubgroups` ( P, N, M, L ) | ( operation ) |

`‣ ActorCrossedSquare` ( X0 ) | ( operation ) |

`‣ Transpose3dGroup` ( S0 ) | ( attribute ) |

`‣ Name` ( S0 ) | ( attribute ) |

Here are some standard examples of crossed squares.

If M, N are normal subgroups of a group P, and L = M ∩ N, then the four inclusions, L -> N,~ L -> M,~ M -> P,~ N -> P, together with the actions of P on M, N and L given by conjugation, form a crossed square with crossed pairing

\boxtimes \;:\; M \times N \to M\cap N, \quad (m,n) \mapsto [m,n] \,=\, m^{-1}n^{-1}mn \,=\,(n^{-1})^mn \,=\, m^{-1}m^n\,.

This construction is implemented as

`CrossedSquareByNormalSubgroups(P,N,M,L);`

.The actor mathcalA(mathcalX_0) of a crossed module mathcalX_0 has been described in Chapter 5. The crossed pairing is given by

\boxtimes \;:\; R \times W \,\to\, S, \quad (r,\chi) \,\mapsto\, \chi r~.

This is implemented as

`ActorCrossedSquare( X0 );`

.The

*transpose*of mathcalS is the crossed square tildemathcalS} obtained by interchanging S_{1} with S_{2}, ddot∂_1 with ddot∂_2, and dot∂_1 with dot∂_2. The crossed pairing is given by\tilde{\boxtimes} \;:\; S_{\{2\}} \times S_{\{1\}} \to S_{[2]}, \quad (n,m) \;\mapsto\; n\,\tilde{\boxtimes}\,m := (m \boxtimes n)^{-1}~.

gap> d20 := DihedralGroup( IsPermGroup, 20 );; gap> gend20 := GeneratorsOfGroup( d20 ); [ (1,2,3,4,5,6,7,8,9,10), (2,10)(3,9)(4,8)(5,7) ] gap> p1 := gend20[1];; p2 := gend20[2];; p12 := p1*p2; (1,10)(2,9)(3,8)(4,7)(5,6) gap> d10a := Subgroup( d20, [ p1^2, p2 ] );; gap> d10b := Subgroup( d20, [ p1^2, p12 ] );; gap> c5d := Subgroup( d20, [ p1^2 ] );; gap> SetName( d20, "d20" ); SetName( d10a, "d10a" ); gap> SetName( d10b, "d10b" ); SetName( c5d, "c5d" ); gap> XSconj := CrossedSquareByNormalSubgroups( d20, d10b, d10a, c5d ); [ c5d -> d10b ] [ | | ] [ d10a -> d20 ] gap> Name( XSconj ); "[c5d->d10b,d10a->d20]" gap> XStrans := Transpose3dGroup( XSconj ); [ c5d -> d10a ] [ | | ] [ d10b -> d20 ] gap> X20 := XModByNormalSubgroup( d20, d10a ); [d10a->d20] gap> XSact := ActorCrossedSquare( X20 ); crossed square with: up = Whitehead[d10a->d20] left = [d10a->d20] down = Norrie[d10a->d20] right = Actor[d10a->d20]

`‣ CentralQuotient` ( X0 ) | ( attribute ) |

The central quotient of a crossed module mathcalX = (∂ : S -> R) is the crossed square where:

the left crossed module is mathcalX;

the right crossed module is the quotient mathcalX/Z(mathcalX) (see

`CentreXMod`

(4.1-7));the top and bottom homomorphisms are the natural homomorphisms onto the quotient groups;

the crossed pairing ⊠ : (R × F) -> S, where F = Fix(mathcalX,S,R), is the displacement element ⊠(r,Fs) = ⟨ r,s ⟩ = (s^-1)^rsquad (see

`Displacement`

(4.1-3) and section 4.3).

This is the special case of an intended function `CrossedSquareByCentralExtension`

which has not yet been implemented. In the example `Xn7`

⊴ `X24`

, constructed in section 4.1.

gap> pos7 := Position( ids, [ [12,2], [24,5] ] );; gap> Xn7 := nsx[pos7]; [Group( [ f2, f3, f4 ] )->Group( [ f1, f2, f4, f5 ] )] gap> IdGroup( CentreXMod(Xn7) ); [ [ 4, 1 ], [ 4, 1 ] ] gap> CQXn7 := CentralQuotient( Xn7 ); crossed square with: up = [Group( [ f2, f3, f4 ] )->Group( [ f1 ] )] left = [Group( [ f2, f3, f4 ] )->Group( [ f1, f2, f4, f5 ] )] down = [Group( [ f1, f2, f4, f5 ] )->Group( [ f1, f2 ] )] right = [Group( [ f1 ] )->Group( [ f1, f2 ] )] gap> IdGroup( CQXn7 ); [ [ [ 12, 2 ], [ 3, 1 ] ], [ [ 24, 5 ], [ 6, 1 ] ] ]

`‣ IsCrossedSquare` ( obj ) | ( property ) |

`‣ Is3dObject` ( obj ) | ( property ) |

`‣ IsPerm3dObject` ( obj ) | ( property ) |

`‣ IsPc3dObject` ( obj ) | ( property ) |

`‣ IsFp3dObject` ( obj ) | ( property ) |

`‣ IsPreCrossedSquare` ( obj ) | ( property ) |

These are the basic properties for 3d-groups, and crossed squares in particular.

`‣ Up2DimensionalGroup` ( XS ) | ( attribute ) |

`‣ Left2DimensionalGroup` ( XS ) | ( attribute ) |

`‣ Down2DimensionalGroup` ( XS ) | ( attribute ) |

`‣ Right2DimensionalGroup` ( XS ) | ( attribute ) |

`‣ DiagonalAction` ( XS ) | ( attribute ) |

`‣ CrossedPairing` ( XS ) | ( attribute ) |

`‣ ImageElmCrossedPairing` ( XS, pair ) | ( operation ) |

In this implementation the attributes used in the construction of a crossed square `XS`

are the four crossed modules (2d-groups) on the sides of the square (up; down, left; and right); the diagonal action of P on L; and the crossed pairing.

The **GAP** development team have suggested that crossed pairings should be implemented as a special case of `BinaryMappings`

-- a structure which does not yet exist in **GAP**. As a temporary measure, crossed pairings have been implemented using `Mapping2ArgumentsByFunction`

.

gap> Up2DimensionalGroup( XSconj ); [c5d->d10b] gap> Right2DimensionalGroup( XSact ); Actor[d10a->d20] gap> xpconj := CrossedPairing( XSconj );; gap> ImageElmCrossedPairing( xpconj, [ p2, p12 ] ); (1,9,7,5,3)(2,10,8,6,4) gap> diag := DiagonalAction( XSact ); [ (1,3,5,2,4)(6,10,14,8,12)(7,11,15,9,13), (1,2,5,4)(6,8,14,12)(7,11,13,9) ] -> [ (1,3,5,2,4)(6,10,14,8,12)(7,11,15,9,13), (1,2,5,4)(6,8,14,12)(7,11,13,9) ] -> [ ^(1,3,5,7,9)(2,4,6,8,10), ^(1,2,5,4)(3,8)(6,7,10,9) ]

This section describes an initial implementation of morphisms of (pre-)crossed squares.

`‣ Source` ( map ) | ( attribute ) |

`‣ Range` ( map ) | ( attribute ) |

`‣ Up2DimensionalMorphism` ( map ) | ( attribute ) |

`‣ Left2DimensionalMorphism` ( map ) | ( attribute ) |

`‣ Down2DimensionalMorphism` ( map ) | ( attribute ) |

`‣ Right2DimensionalMorphism` ( map ) | ( attribute ) |

Morphisms of `3dObjects`

are implemented as `3dMappings`

. These have a pair of 3d-groups as source and range, together with four 2d-morphisms mapping between the four pairs of crossed modules on the four sides of the squares. These functions return `fail`

when invalid data is supplied.

`‣ IsCrossedSquareMorphism` ( map ) | ( property ) |

`‣ IsPreCrossedSquareMorphism` ( map ) | ( property ) |

`‣ IsBijective` ( mor ) | ( property ) |

`‣ IsEndomorphism3dObject` ( mor ) | ( property ) |

`‣ IsAutomorphism3dObject` ( mor ) | ( property ) |

A morphism `mor`

between two pre-crossed squares mathcalS_1 and mathcalS_2 consists of four crossed module morphisms `Up2DimensionalMorphism(mor)`

, mapping the `Up2DimensionalGroup`

of mathcalS_1 to that of mathcalS_2, `Left2DimensionalMorphism(mor)`

, `Down2DimensionalMorphism(mor)`

and `Right2DimensionalMorphism(mor)`

. These four morphisms are required to commute with the four boundary maps and to preserve the rest of the structure. The current version of `IsCrossedSquareMorphism`

does not perform all the required checks.

gap> ad20 := GroupHomomorphismByImages( d20, d20, [p1,p2], [p1,p2^p1] );; gap> ad10a := GroupHomomorphismByImages( d10a, d10a, [p1^2,p2], [p1^2,p2^p1] );; gap> ad10b := GroupHomomorphismByImages( d10b, d10b, [p1^2,p12], [p1^2,p12^p1] );; gap> idc5d := IdentityMapping( c5d );; gap> upconj := Up2DimensionalGroup( XSconj );; gap> leftconj := Left2DimensionalGroup( XSconj );; gap> downconj := Down2DimensionalGroup( XSconj );; gap> rightconj := Right2DimensionalGroup( XSconj );; gap> up := XModMorphismByHoms( upconj, upconj, idc5d, ad10b ); [[c5d->d10b] => [c5d->d10b]] gap> left := XModMorphismByHoms( leftconj, leftconj, idc5d, ad10a ); [[c5d->d10a] => [c5d->d10a]] gap> down := XModMorphismByHoms( downconj, downconj, ad10a, ad20 ); [[d10a->d20] => [d10a->d20]] gap> right := XModMorphismByHoms( rightconj, rightconj, ad10b, ad20 ); [[d10b->d20] => [d10b->d20]] gap> autoconj := CrossedSquareMorphism( XSconj, XSconj, up, left, right, down );; gap> ord := Order( autoconj );; gap> Display( autoconj ); Morphism of crossed squares :- : Source = [c5d->d10b,d10a->d20] : Range = [c5d->d10b,d10a->d20] : order = 5 : up-left: [ [ ( 1, 3, 5, 7, 9)( 2, 4, 6, 8,10) ], [ ( 1, 3, 5, 7, 9)( 2, 4, 6, 8,10) ] ] : up-right: [ [ ( 1, 3, 5, 7, 9)( 2, 4, 6, 8,10), ( 1,10)( 2, 9)( 3, 8)( 4, 7)( 5, 6) ], [ ( 1, 3, 5, 7, 9)( 2, 4, 6, 8,10), ( 1, 2)( 3,10)( 4, 9)( 5, 8)( 6, 7) ] ] : down-left: [ [ ( 1, 3, 5, 7, 9)( 2, 4, 6, 8,10), ( 2,10)( 3, 9)( 4, 8)( 5, 7) ], [ ( 1, 3, 5, 7, 9)( 2, 4, 6, 8,10), ( 1, 3)( 4,10)( 5, 9)( 6, 8) ] ] : down-right: [ [ ( 1, 2, 3, 4, 5, 6, 7, 8, 9,10), ( 2,10)( 3, 9)( 4, 8)( 5, 7) ], [ ( 1, 2, 3, 4, 5, 6, 7, 8, 9,10), ( 1, 3)( 4,10)( 5, 9)( 6, 8) ] ] gap> IsAutomorphismHigherDimensionalDomain( autoconj ); true gap> KnownPropertiesOfObject( autoconj ); [ "CanEasilyCompareElements", "CanEasilySortElements", "IsTotal", "IsSingleValued", "IsInjective", "IsSurjective", "IsPreCrossedSquareMorphism", "IsCrossedSquareMorphism", "IsEndomorphismHigherDimensionalDomain", "IsAutomorphismHigherDimensionalDomain" ]

We shall give three definitions of cat^2-groups and show that they are equivalent. When we come to define cat^n-groups we shall give a similar set of three definitions.

Firstly, we take the definition of a cat^2-group from Section 5 of Brown and Loday [BL87], suitably modified. A cat^2-group mathcalC = (C_[2],C_{2},C_{1},C_∅) comprises four groups (one for each of the subsets of [2]) and 15 homomorphisms, as shown in the following diagram:

\vcenter{\xymatrix{ & C_{[2]} \ar[ddd] <-1.2ex> \ar[ddd] <-2.0ex>_{\ddot{t}_2,\ddot{h}_2} \ar[rrr] <+1.2ex> \ar[rrr] <+2.0ex>^{\ddot{t}_1,\ddot{h}_1} \ar[dddrrr] <-0.2ex> \ar[dddrrr] <-1.0ex>_(0.55){t_{[2]},h_{[2]}} &&& C_{\{2\}} \ar[lll]^{\ddot{e}_1} \ar[ddd]<+1.2ex> \ar[ddd] <+2.0ex>^{\dot{t}_2,\dot{h}_2} \\ \mathcal{C} \quad = \quad & &&& \\ & &&& \\ & C_{\{1\}} \ar[uuu]_{\ddot{e}_2} \ar[rrr] <-1.2ex> \ar[rrr] <-2.0ex>_{\dot{t}_1,\dot{h}_1} &&& C_{\emptyset} \ar[uuu]^{\dot{e}_2} \ar[lll]_{\dot{e}_1} \ar[uuulll] <-1.0ex>_{e_{[2]}} \\ }}

The following axioms are satisfied by these homomorphisms:

the four sides of the square are cat^1-groups, denoted ddotmathcalC}_1, ddotmathcalC}_2, dotmathcalC}_1, dotmathcalC}_2,

dott_1∘ddoth_2 = doth_2∘ddott_1, ~ dott_2∘ddoth_1 = doth_1∘ddott_2, ~ dote_1∘dott_2 = ddott_2∘ddote_1, ~ dote_2∘dott_1 = ddott_1∘ddote_2, ~ dote_1∘doth_2 = ddoth_2∘ddote_1, ~ dote_2∘doth_1 = ddoth_1∘ddote_2,

dott_1∘ddott_2 = dott_2∘ddott_1 = t_[2], ~ doth_1∘ddoth_2 = doth_2∘ddoth_1 = h_[2], ~ dote_1∘ddote_2 = dote_2∘ddote_1 = e_[2], making the diagonal a cat^1-group (e_[2]; t_[2], h_[2] : C_[2] -> C_∅).

It follows from these identities that (ddott_1,dott_1),(ddoth_1,doth_1) and (ddote_1,dote_1) are morphisms of cat^1-groups.

Secondly, we give the simplest of the three definitions, adapted from Ellis-Steiner [ES87]. A cat^2-group mathcalC consists of groups G, R_1,R_2 and six homomorphisms t_1,h_1 : G -> R_2,~ e_1 : R_2 -> G,~ t_2,h_2 : G -> R_1,~ e_2 : R_1 -> G, satisfying the following axioms for all 1 leqslant i leqslant 2,

(t_i ∘ e_i)r = r,~ (h_i ∘ e_i)r = r,~ ∀ r ∈ R_[2] ∖ {i}, quad [ker t_i, ker h_i] = 1,

(e_1 ∘ t_1) ∘ (e_2 ∘ t_2) = (e_2 ∘ t_2) ∘ (e_1 ∘ t_1), quad (e_1 ∘ h_1) ∘ (e_2 ∘ h_2) = (e_2 ∘ h_2) ∘ (e_1 ∘ h_1),

(e_1 ∘ t_1) ∘ (e_2 ∘ h_2) = (e_2 ∘ h_2) ∘ (e_1 ∘ t_1), quad (e_2 ∘ t_2) ∘ (e_1 ∘ h_1) = (e_1 ∘ h_1) ∘ (e_2 ∘ t_2).

Our third definition defines a cat^2-group as a "cat^1-group of cat^1-groups". A cat^2-group mathcalC consists of two cat^1-groups mathcalC_1 = (e_1;t_1,h_1 : G_1 -> R_1) and mathcalC_2 = (e_2;t_2,h_2 : G_2 -> R_2) and cat^1-morphisms t = (ddott,dott), h = (ddoth,doth) : mathcalC_1 -> mathcalC_2, e = (ddote,dote) : mathcalC_2 -> mathcalC_1, subject to the following conditions:

(t \circ e) ~\mbox{and}~ (h \circ e) ~\mbox{are the identity mapping on}~ \mathcal{C}_2, \qquad [\ker t, \ker h] = \{ 1_{\mathcal{C}_1} \},

where ker t = (ker ddott, ker dott), and similarly for ker h.

`‣ Cat2Group` ( args ) | ( function ) |

`‣ PreCat2Group` ( args ) | ( function ) |

`‣ PreCat2GroupByPreCat1Groups` ( L ) | ( operation ) |

The global functions `Cat2Group`

and `PreCat2Group`

are normally called with a single argument, a list of cat1-groups.

gap> CC6 := Cat2Group( Cat1Group(6,2,2), Cat1Group(6,2,3) ); generating (pre-)cat1-groups: 1 : [C6=>Group( [ f1 ] )] 2 : [C6=>Group( [ f2 ] )] gap> IsCat2Group( CC6 ); true

`‣ Cat2GroupOfCrossedSquare` ( xsq ) | ( attribute ) |

`‣ CrossedSquareOfCat2Group` ( CC ) | ( attribute ) |

*These functions are very experimental, and should not be relied on!*

These functions provide the conversion from crossed square to cat2-group, and conversely. (They are the 3-dimensional equivalents of `Cat1GroupOfXMod`

and `XModOfCat1Group`

.)

gap> xsCC6 := CrossedSquareOfCat2Group( CC6 ); crossed square with: up = [Group( () )->Group( [ (1,2) ] )] left = [Group( () )->Group( [ (), (3,4,5) ] )] down = [Group( [ (), (3,4,5) ] ) -> Group( () )] right = [Group( [ (1,2) ] ) -> Group( () )] gap> Cat2GroupOfCrossedSquare( XSact ); Warning: these conversion functions are still under development fail

In this chapter we are interested in cat^2-groups, but it is convenient in this section to give the more general definition. There are three equivalent description of a cat^n-group.

A *cat^n-group* consists of the following.

2^n groups G_A, one for each subset A of [n], the

*vertices*of an n-cube.Group homomorphisms forming n2^n-1 commuting cat^1-groups,

\mathcal{C}_{A,i} ~=~ (e_{A,i};\; t_{A,i},\; h_{A,i} \ :\ G_A \to G_{A \setminus \{i\}}), \quad\mbox{for all} \quad A \subseteq [n],~ i \in A,

the

*edges*of the cube.These cat^1-groups combine (in sets of 4) to form n(n-1)2^n-3 cat^2-groups mathcalC_A,{i,j} for all {i,j} ⊆ A ⊆ [n],~ i ≠ j, the

*faces*of the cube.

Note that, since the t_A,i, h_A,i and e_A,i commute, composite homomorphisms t_A,B, h_A,B : G_A -> G_A ∖ B and e_A,B : G_A ∖ B -> G_A are well defined for all B ⊆ A ⊆ [n].

Secondly, we give the simplest of the three descriptions, again adapted from Ellis-Steiner [ES87].

A cat^n-group mathcalC consists of 2^n groups G_A, one for each subset A of [n], and 3n homomorphisms

t_{[n],i}, h_{[n],i} : G_{[n]} \to G_{[n] \setminus \{i\}},~ e_{[n],i} : G_{[n] \setminus \{i\}} \to G_{[n]},

satisfying the following axioms for all 1 leqslant i leqslant n,}

the mathcalC_[n],i ~=~ (e_[n],i; t_[n],i, h_[n],i : G_[n] -> G_[n] ∖ {i})~ are

*commuting*cat^1-groups, so that:(e_1 ∘ t_1) ∘ (e_2 ∘ t_2) = (e_2 ∘ t_2) ∘ (e_1 ∘ t_1), quad (e_1 ∘ h_1) ∘ (e_2 ∘ h_2) = (e_2 ∘ h_2) ∘ (e_1 ∘ h_1),

(e_1 ∘ t_1) ∘ (e_2 ∘ h_2) = (e_2 ∘ h_2) ∘ (e_1 ∘ t_1), quad (e_2 ∘ t_2) ∘ (e_1 ∘ h_1) = (e_1 ∘ h_1) ∘ (e_2 ∘ t_2).

Our third description defines a cat^n-group as a "cat^1-group of cat^(n-1)-groups".

A *cat^n-group* mathcalC consists of two cat^(n-1)-groups:

mathcalA with groups G_A, A ⊆ [n-1], and homomorphisms ddott_A,i, ddoth_A,i, ddote_A,i,

mathcalB with groups H_B, B ⊆ [n-1], and homomorphisms dott_B,i, doth_B,i, dote_B,i, and

cat^(n-1)-morphisms t,h : mathcalA -> mathcalB and e : mathcalB -> mathcalA subject to the following conditions:

(t \circ e) ~\mbox{and}~ (h \circ e) ~\mbox{are the identity mapping on}~ \mathcal{B}, \qquad [\ker t, \ker h] = \{ 1_{\mathcal{A}} \}.

generated by GAPDoc2HTML