Goto Chapter: Top 1 2 3 4 5 Bib Ind
 [Top of Book]  [Contents]   [Previous Chapter]   [Next Chapter] 

2 Preliminaries
 2.1 Local actions
 2.2 Finite balls
 2.3 Addresses and leaves

2 Preliminaries

We recall the following notation from the Introduction which is essential throughout this manual, cf. [Tor20]. Let \Omega be a set of cardinality d\in\mathbb{N}_{\ge 3} and let T_{d}=(V,E) denote the d-regular tree, following the graph theory notation in [Ser80]. A labelling l of T_{d} is a map l:E\to\Omega such that for every x\in V the restriction l_{x}:E(x)\to\Omega,\ e\mapsto l(e) is a bijection, and l(e)=l(\overline{e}) for all e\in E. For every k\in\mathbb{N}, fix a tree B_{d,k} which is isomorphic to a ball of radius k around a vertex in T_{d} and carry over the labelling of T_{d} to B_{d,k} via the chosen isomorphism. We denote the center of B_{d,k} by b.

For every x\in V there is a unique, label-respecting isomorphism l_{x}^{k}:B(x,k)\to B_{d,k}. We define the k-local action \sigma_{k}(g,x)\in\mathrm{Aut}(B_{d,k}) of an automorphism g\!\in\!\mathrm{Aut}(T_{d}) at a vertex x\in V via the map

\sigma_{k}:\mathrm{Aut}(T_{d})\times V\to\mathrm{Aut}(B_{d,k}), \sigma_{k}(g,x)\mapsto \sigma_{k}(g,x):=l_{gx}^{k}\circ g\circ (l_{x}^{k})^{-1}.

2.1 Local actions

In this package, local actions F\le\mathrm{Aut}(B_{d,k}) are handled as objects of the category IsLocalAction (2.1-1) and have several attributes and properties introduced throughout this manual. Most importantly, a local action always stores the degree d and the radius k of the ball B_{d,k} that it acts on.

2.1-1 IsLocalAction
‣ IsLocalAction( F )( filter )

Returns: true if F is an object of the category IsLocalAction, and false otherwise.

Local actions F\le\mathrm{Aut}(B_{d,k}) are stored together with their degree (see LocalActionDegree (2.1-4)), radius (see LocalActionRadius (2.1-5)) as well as other attributes and properties in this category. They can be initialised using the creator operation LocalAction (2.1-2).

gap> G:=WreathProduct(SymmetricGroup(2),SymmetricGroup(3));
Group([ (1,2), (3,4), (5,6), (1,3,5)(2,4,6), (1,3)(2,4) ])
gap> IsLocalAction(G);
false
gap> H:=AutBall(3,2);
Group([ (1,2), (3,4), (5,6), (1,3,5)(2,4,6), (1,3)(2,4) ])
gap> IsLocalAction(H);
true
gap> K:=LocalAction(3,2,G);
Group([ (1,2), (3,4), (5,6), (1,3,5)(2,4,6), (1,3)(2,4) ])
gap> IsLocalAction(K);
true

2.1-2 LocalAction
‣ LocalAction( d, k, F )( operation )

Returns: the regular rooted tree group G as an object of the category IsLocalAction (2.1-1), checking that F is indeed a subgroup of \mathrm{Aut}(B_{d,k}).

The arguments of this method are a degree d \in\mathbb{N}_{\ge 3}, a radius k \in\mathbb{N}_{0} and a group F \le\mathrm{Aut}(B_{d,k}).

gap> G:=WreathProduct(SymmetricGroup(2),SymmetricGroup(3));
Group([ (1,2), (3,4), (5,6), (1,3,5)(2,4,6), (1,3)(2,4) ])
gap> IsLocalAction(G);
false
gap> G:=LocalAction(3,2,G);
Group([ (1,2), (3,4), (5,6), (1,3,5)(2,4,6), (1,3)(2,4) ])
gap> IsLocalAction(G);
true

2.1-3 LocalActionNC
‣ LocalActionNC( d, k, F )( operation )

Returns: the regular rooted tree group G as an object of the category IsLocalAction (2.1-1), without checking that F is indeed a subgroup of \mathrm{Aut}(B_{d,k}).

The arguments of this method are a degree d \in\mathbb{N}_{\ge 3}, a radius k \in\mathbb{N}_{0} and a group F \le\mathrm{Aut}(B_{d,k}).

2.1-4 LocalActionDegree
‣ LocalActionDegree( F )( attribute )

Returns: the degree d of the ball B_{d,k} that F is acting on.

The argument of this attribute is a local action F \le\mathrm{Aut}(B_{d,k}) (see IsLocalAction (2.1-1)).

gap> A4:=LocalAction(4,1,AlternatingGroup(4));
Alt( [ 1 .. 4 ] )
gap> F:=LocalActionPhi(3,A4);
<permutation group with 18 generators>
gap> LocalActionDegree(F);
4

2.1-5 LocalActionRadius
‣ LocalActionRadius( F )( attribute )

Returns: the radius k of the ball B_{d,k} that F is acting on.

The argument of this attribute is a local action F \le\mathrm{Aut}(B_{d,k}) (see IsLocalAction (2.1-1)).

gap> A4:=LocalAction(4,1,AlternatingGroup(4));
Alt( [ 1 .. 4 ] )
gap> F:=LocalActionPhi(3,A4);
<permutation group with 18 generators>
gap> LocalActionRadius(F);
3

2.1-6 LocalAction
‣ LocalAction( r, d, k, aut, addr )( operation )

Returns: the r-local action \sigma_{r}(aut,addr) of the automorphism aut of B_{d,k} at the vertex represented by the address addr.

The arguments of this method are a radius r, a degree d \in\mathbb{N}_{\ge 3}, a radius k \in\mathbb{N}, an automorphism aut of B_{d,k}, and an address addr.

gap> a:=(1,3,5)(2,4,6);; a in AutBall(3,2);
true
gap> LocalAction(2,3,2,a,[]);
(1,3,5)(2,4,6)
gap> LocalAction(1,3,2,a,[]);
(1,2,3)
gap> LocalAction(1,3,2,a,[1]);
(1,2)
gap> mt:=RandomSource(IsMersenneTwister,1);;
gap> b:=Random(mt,AutBall(3,4));
(1,18,11,5,23,14,4,20,10,7,22,16)(2,17,12,6,24,13,3,19,9,8,21,15)
gap> LocalAction(2,3,4,b,[3,1]);
(1,2)(3,6,4,5)
gap> LocalAction(3,3,4,b,[3,1]);
Error, the sum of input argument r=3 and the length of input argument
addr=[ 3, 1 ] must not exceed input argument k=4

2.1-7 Projection
‣ Projection( F, r )( operation )

Returns: the restriction of the projection map \mathrm{Aut}(B_{d,k})\to\mathrm{Aut}(B_{d,r}) to F.

The arguments of this method are a local action F \le\mathrm{Aut}(B_{d,k}), and a projection radius r \le k.

gap> F:=LocalActionGamma(4,3,SymmetricGroup(3));
Group([ (1,16,19)(2,15,20)(3,13,18)(4,14,17)(5,10,23)(6,9,24)(7,12,22)
  (8,11,21), (1,9)(2,10)(3,12)(4,11)(5,15)(6,16)(7,13)(8,14)(17,21)(18,22)
  (19,24)(20,23) ])
gap> pr:=Projection(F,2);
<action homomorphism>
gap> mt:=RandomSource(IsMersenneTwister,1);;
gap> a:=Random(mt,F);; Image(pr,a);
(1,2)(3,5)(4,6)

2.1-8 ImageOfProjection
‣ ImageOfProjection( F, r )( function )

Returns: the local action \sigma_{r}(F,b)\le\mathrm{Aut}(B_{d,r}).

The arguments of this method are a local action F \le\mathrm{Aut}(B_{d,k}), and a projection radius r \le k. This method uses LocalAction (2.1-6) on generators rather than Projection (2.1-7) on the group to compute the image.

gap> AutBall(3,2);
Group([ (1,2), (3,4), (5,6), (1,3,5)(2,4,6), (1,3)(2,4) ])
gap> ImageOfProjection(AutBall(3,2),1);
Group([ (), (), (), (1,2,3), (1,2) ])

2.2 Finite balls

The automorphism groups of the finite labelled balls B_{d,k} lie at the center of this package. The method AutBall (2.2-1) produces these automorphism groups as iterated wreath products. The result is a permutation group on the set of leaves of B_{d,k}.

2.2-1 AutBall
‣ AutBall( d, k )( function )

Returns: the local action \mathrm{Aut}(B_{d,k}) as a permutation group of the d\cdot (d-1)^{k-1} leaves of B_{d,k}.

The arguments of this method are a degree d \in\mathbb{N}_{\ge 3} and a radius k \in\mathbb{N}_{0}.

gap> G:=AutBall(3,2);
Group([ (1,2), (3,4), (5,6), (1,3,5)(2,4,6), (1,3)(2,4) ])
gap> Size(G);
48

2.3 Addresses and leaves

The vertices at distance n from the center b of B_{d,k} are addressed as elements of the set

\Omega^{(n)}:=\{(\omega_{1},\ldots,\omega_{n})\in\Omega^{n}\mid \forall l\in\{1,\ldots,n-1\}:\ \omega_{l}\neq\omega_{l+1}\},

i.e. as lists of length n of elements from [1..d] such that no two consecutive entries are equal. They are ordered according to the lexicographic order on \Omega^{(n)}. The center b itself is addressed by the empty list []. Note that the leaves of B_{d,k} correspond to elements of \Omega^{(k)}.

2.3-1 BallAddresses
‣ BallAddresses( d, k )( function )

Returns: a list of all addresses of vertices in B_{d,k} in ascending order with respect to length, lexicographically ordered within each level. See AddressOfLeaf (2.3-3) and LeafOfAddress (2.3-4) for the correspondence between the leaves of B_{d,k} and addresses of length k.

The arguments of this method are a degree d \in\mathbb{N}_{\ge 3} and a radius k \in\mathbb{N}_{0}.

gap> BallAddresses(3,1);
[ [  ], [ 1 ], [ 2 ], [ 3 ] ]
gap> BallAddresses(3,2);
[ [  ], [ 1 ], [ 2 ], [ 3 ], [ 1, 2 ], [ 1, 3 ], [ 2, 1 ], [ 2, 3 ], 
  [ 3, 1 ], [ 3, 2 ] ]

2.3-2 LeafAddresses
‣ LeafAddresses( d, k )( function )

Returns: a list of addresses of the leaves of B_{d,k} in lexicographic order.

The arguments of this method are a degree d \in\mathbb{N}_{\ge 3} and a radius k \in\mathbb{N}_{0}.

gap> LeafAddresses(3,2);
[ [ 1, 2 ], [ 1, 3 ], [ 2, 1 ], [ 2, 3 ], [ 3, 1 ], [ 3, 2 ] ]

2.3-3 AddressOfLeaf
‣ AddressOfLeaf( d, k, lf )( function )

Returns: the address of the leaf lf of B_{d,k} with respect to the lexicographic order.

The arguments of this method are a degree d \in\mathbb{N}_{\ge 3}, a radius k \in\mathbb{N}, and a leaf lf of B_{d,k}.

gap> AddressOfLeaf(3,2,1);
[ 1, 2 ]
gap> AddressOfLeaf(3,3,1);
[ 1, 2, 1 ]

2.3-4 LeafOfAddress
‣ LeafOfAddress( d, k, addr )( function )

Returns: the smallest leaf (integer) whose address has addr as a prefix.

The arguments of this method are a degree d \in\mathbb{N}_{\ge 3}, a radius k \in\mathbb{N}, and an address addr.

gap> LeafOfAddress(3,2,[1,2]);
1
gap> LeafOfAddress(3,2,[3]);
5
gap> LeafOfAddress(3,2,[]);
1

2.3-5 ImageAddress
‣ ImageAddress( d, k, aut, addr )( function )

Returns: the address of the image of the vertex represented by the address addr under the automorphism aut of B_{d,k}.

The arguments of this method are a degree d \in\mathbb{N}_{\ge 3}, a radius k \in\mathbb{N}, an automorphism aut of B_{d,k}, and an address addr.

gap> ImageAddress(3,2,(1,2),[1,2]);
[ 1, 3 ]
gap> ImageAddress(3,2,(1,2),[1]);
[ 1 ]

2.3-6 ComposeAddresses
‣ ComposeAddresses( addr1, addr2 )( function )

Returns: the concatenation of the addresses addr1 and addr2 with reduction as per [Tor20, Section 3.2].

The arguments of this method are two addresses addr1 and addr2.

gap> ComposeAddresses([1,3],[2,1]);  
[ 1, 3, 2, 1 ]
gap> ComposeAddresses([1,3,2],[2,1]);
[ 1, 3, 1 ]
 [Top of Book]  [Contents]   [Previous Chapter]   [Next Chapter] 
Goto Chapter: Top 1 2 3 4 5 Bib Ind

generated by GAPDoc2HTML