The term 4d-group refers to a set of equivalent categories of which the most common are the categories of crossed cubes and cat^3-groups. A 4d-mapping is a function between two 4d-groups which preserves all the structure.
The material in this chapter should be considered very experimental. As yet there are no functions for crossed cubes.
We shall use the following standard orientation of a cat^3-group calE on a group G. calE contains 8 groups; 12 cat^1-groups and 6 cat^2-groups forming the vertices; edges and faces of a cube, as shown in the following diagram.
\vcenter{\xymatrix{ & H \ar[dddd] <+0.5ex> \ar[dddd] <+0.0ex> \ar[rrrr] <+0.5ex> \ar[rrrr] <+0.0ex> \ar[dr] <+0.6ex> & & & & N \ar[llll] <+0.6ex> \ar[dddd] <+0.6ex> \ar[dddd] <+0.0ex> \ar[dr] <+0.6ex> & \\ & & G \ar[dddd] <+0.5ex> \ar[dddd] <+0.0ex> \ar[rrrr] <+0.5ex> \ar[rrrr] <+0.0ex> \ar[ul] <+0.5ex> \ar[ul] <+0.0ex> & & & & R \ar[llll] <+0.6ex> \ar[dddd] <+0.5ex> \ar[dddd] <+0.0ex> \ar[ul] <+0.5ex> \ar[ul] <+0.0ex> \\ & & & & & & \\ & & & & & & \\ & M \ar[uuuu] <+0.6ex> \ar[rrrr] <+0.5ex> \ar[rrrr] <+0.0ex> \ar[dr] <+0.6ex> & & & & L \ar[uuuu] <+0.6ex> \ar[llll] <+0.6ex> \ar[dr] <+0.6ex> & \\ & & Q \ar[uuuu] <+0.6ex> \ar[rrrr] <+0.5ex> \ar[rrrr] <+0.0ex> \ar[ul] <+0.5ex> \ar[ul] <+0.0ex> & & & & P \ar[uuuu] <+0.6ex> \ar[llll] <+0.6ex> \ar[ul] <+0.5ex> \ar[ul] <+0.0ex> \\ }}
By definition, calE is generated by three commuting cat^1-groups (G ⇒ R), (G ⇒ Q) and (G ⇒ H), but it is more convenient to think of calE as generated by two cat^2-groups
front(calE), generated by (G ⇒ R) and (G ⇒ Q);
left(calE), generated by (G ⇒ Q) and (G ⇒ H).
Because the tail, head and embedding maps all commute, it follows that up(calE), generated by (G ⇒ H) and (G ⇒ R), is a third cat^2-group. The three remaining faces (cat^2-groups) right(calE), down(calE) and back(calE) are then easily constructed. We shall always use the order [front,up,left,right,down,back] for the six faces.
‣ Cat3Group ( args ) | ( function ) |
‣ PreCat3Group ( args ) | ( function ) |
‣ IsCat3Group ( C ) | ( property ) |
‣ PreCat3GroupByPreCat2Groups ( L ) | ( operation ) |
The global functions Cat3Group
and PreCat3Group
are normally take as arguments a pair of cat^2-groups or a trio of cat^1-groups. In subsection AllCat2GroupsIterator
(8.5-4) the list of pairs CatnGroupLists(d12).pairs
contains the three entries [6,8],[8,11]
and [6,11]
. It follows that the sixth, eighth and eleventh cat^1-groups for d12
generate a cat^3-group.
gap> all1 := AllCat1Groups( d12 );; gap> C68 := Cat2Group( all1[6], all1[8] );; gap> C811 := Cat2Group( all1[8], all1[11] );; gap> C3Ga := Cat3Group( C68, C811 ); cat3-group with generating (pre-)cat1-groups: 1 : [d12 => Group( [ (), (1,6)(2,5)(3,4) ] )] 2 : [d12 => Group( [ (1,4)(2,5)(3,6), (1,3)(4,6) ] )] 3 : [d12 => Group( [ (1,5,3)(2,6,4), (1,4)(2,3)(5,6) ] )] gap> C3Gb := Cat3Group( all1[6], all1[8], all1[11] ); cat3-group with generating (pre-)cat1-groups: 1 : [d12 => Group( [ (), (1,6)(2,5)(3,4) ] )] 2 : [d12 => Group( [ (1,4)(2,5)(3,6), (1,3)(4,6) ] )] 3 : [d12 => Group( [ (1,5,3)(2,6,4), (1,4)(2,3)(5,6) ] )] gap> C3Ga = C3Gb; true
‣ Front3DimensionalGroup ( C3 ) | ( attribute ) |
‣ Up3DimensionalGroup ( C3 ) | ( attribute ) |
‣ Left3DimensionalGroup ( C3 ) | ( attribute ) |
‣ Right3DimensionalGroup ( C3 ) | ( attribute ) |
‣ Down3DimensionalGroup ( C3 ) | ( attribute ) |
‣ Back3DimensionalGroup ( C3 ) | ( attribute ) |
The six faces of a cat^3-group are stored as these attributes.
gap> C116 := Cat2Group( all1[11], all1[6] );; gap> Up3DimensionalGroup( C3Ga ) = C116; true
Once the list CatnGroupLists(G).pairs
has been obtained we may seek all triples [i,j],[j,k] and [k,i] or [i,k] of pairs in this list and then, for each such triple, construct a cat^3-group generated by the i-th, j-th and k-th cat^1-group on G.
‣ AllCat3GroupTriples ( G ) | ( operation ) |
‣ AllCat3GroupsNumber ( G ) | ( attribute ) |
‣ AllCat3Groups ( G ) | ( operation ) |
The list of triples returned by the operation AllCat3GroupTriples
is saved as CatnGroupLists(G).cat3triples
. The length of this list is the number of cat^3-groups on G, and is saved as CatnGroupNumbers(G).cat3
.
As yet there is no operation AllCat3GroupsUpToIsomorphism(G)
.
gap> triples := AllCat3GroupTriples( d12 );; gap> CatnGroupNumbers( d12 ).cat3; 94 gap> triples[46]; [ 5, 7, 11 ] gap> all1 := AllCat1Groups( d12 );; gap> Cat3Group( all1[5], all1[7], all1[11] ); cat3-group with generating (pre-)cat1-groups: 1 : [d12 => Group( [ (), (1,4)(2,3)(5,6) ] )] 2 : [d12 => Group( [ (1,4)(2,5)(3,6), (2,6)(3,5) ] )] 3 : [d12 => Group( [ (1,5,3)(2,6,4), (1,4)(2,3)(5,6) ] )]
In this chapter and the previous one we are interested in cat^2-groups and cat^3-groups, and it is convenient in this section to give the more general definition. There are three equivalent descriptions 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,
\calC_{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 calC_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 calC 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 calC_[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 calC consists of two cat^(n-1)-groups:
calA with groups G_A, A ⊆ [n-1], and homomorphisms ddott_A,i, ddoth_A,i, ddote_A,i,
calB 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 : calA -> calB and e : calB -> calA subject to the following conditions:
(t \circ e) ~\mbox{and}~ (h \circ e) ~\mbox{are the identity mapping on}~ \calB, \qquad [\ker t, \ker h] = \{ 1_{\calA} \}.
‣ PreCatnGroup ( L ) | ( operation ) |
‣ CatnGroup ( L ) | ( operation ) |
The operation (Pre)CatnGroup
expects as input a list of cat^1-groups.
gap> PC4 := PreCatnGroup( [ all1[5], all1[7], all1[11], all1[12] ] ); (pre-)cat4-group with generating (pre-)cat1-groups: 1 : [d12 => Group( [ (), (1,4)(2,3)(5,6) ] )] 2 : [d12 => Group( [ (1,4)(2,5)(3,6), (2,6)(3,5) ] )] 3 : [d12 => Group( [ (1,5,3)(2,6,4), (1,4)(2,3)(5,6) ] )] 4 : [d12 => Group( [ (1,2,3,4,5,6), (2,6)(3,5) ] )] gap> IsCatnGroup( PC4 ); true gap> HigherDimension( PC4 ); 5
generated by GAPDoc2HTML