Using the functions available for pcp groups in the share package polycyclic it is now easy to redo some of the calculations of KD. As a first example we check whether the groups indicated as torsion free in KD are also determined as torsion free ones by GAP. In KD these almost Bieberbach groups are listed as ``AB-groups''. So for type ``013'' these are the groups with parameters (k,0,1,0,1,0) where k is an even integer. Let's look at some examples in GAP:
gap> G:=AlmostCrystallographicPcpDim4("013",[8,0,1,0,1,0]); Pcp-group with orders [ 2, 2, 0, 0, 0, 0 ] gap> IsTorsionFree(G); true gap> G:=AlmostCrystallographicPcpDim4("013",[9,0,1,0,1,0]); Pcp-group with orders [ 2, 2, 0, 0, 0, 0 ] gap> IsTorsionFree(G); false
Further, there is also some cohomology information in the tables of KD. In fact, the groups in this library were obtained as extensions E of the form
|
where, in the 4-dimensional case Q = E/〈d 〉. The cohomology information for the particular example above shows that the groups determined by a parameter set (k1,k2,k3,k4,k4,k6) are equivalent as extensions to the groups determined by the parameters (k1, k2 mod 2, k3 mod 2, k4 mod 2, k5 mod 2, 0). This is also visible in finding torsion:
gap> G:=AlmostCrystallographicPcpDim4("013",[10,0,2,0,1,0]); Pcp-group with orders [ 2, 2, 0, 0, 0, 0 ] gap> IsTorsionFree(G); false gap> G:=AlmostCrystallographicPcpDim4("013",[10,0,3,0,1,9]); Pcp-group with orders [ 2, 2, 0, 0, 0, 0 ] gap> IsTorsionFree(G); true
The computation of cohomology groups played an important role in the classification of the almost Bieberbach groups in KD. Using GAP, it is now possible to check these computations. As an example we consider the 4-dimensional almost crystallographic groups of type 85 on page 202 of KD. This group E has 6 generators. In the table, one also finds the information
|
for Q=E/〈d 〉 as above. Moreover, the Q--module Z is in fact the group 〈d 〉, where the Q-action comes from conjugation inside E. In the case of groups of type 85, Z is a trivial Q-module. The following example demonstrates how to (re)compute this two-cohomology group H2(Q,Z).
gap> G:=AlmostCrystallographicPcpGroup(4, "085", false); Pcp group with orders [ 2, 4, 0, 0, 0, 0 ] gap> GroupGeneratedByd:=Subgroup(G, [G.6] ); Pcp group with orders [ 0 ] gap> Q:=G/GroupGeneratedByd; Pcp group with orders [ 2, 4, 0, 0, 0 ] gap> action:=List( Pcp(Q), x -> [[1]] ); [ [ [ 1 ] ], [ [ 1 ] ], [ [ 1 ] ], [ [ 1 ] ], [ [ 1 ] ] ] gap> C:=CRRecordByMats( Q, action);; gap> TwoCohomologyCR( C ).factor.rels; [ 2, 2, 4, 0 ]
This last line gives us the abelian invariants of the second cohomology group H2(Q,Z). So we should read this line as
|
which indeed coincides with the information in KD.
As another application of the capabilities of the combination of
aclib
and polycyclic we check some computations of DM.
Section 5 of the paper DM is completely devoted to an example of the computation of the P-localization of a virtually nilpotent group, where P is a set of primes. Although it is not our intention to develop the theory of P-localization of groups at this place, let us summarize some of the main results concerning this topic here.
For a set of primes P, we say that n ∈ P if and only if n is a product of primes in P. A group G is said to be P-local if and only if the map μn:G→ G: g → gn is bijective for all n ∈ P′, where P′ is the set of all primes not in P. The P-localization of a group G, is a P-local group GP together with a morphism α:G → GP which satisfy the following universal property: For each P-local group L and any morphism φ: G → L, there exists a unique morphism ψ:GP → L, such that ψ°α = φ.
This concept of localization is well developed for finite groups and for nilpotent groups. For a finite group G, the P-localization is the largest quotient of G, having no elements with an order belonging to P′ (the morphism α, mentioned above is the natural projection).
In DM a contribution is made towards the localization of virtually nilpotent groups. The theory developed in the paper is then illustrated in the last section of the paper by means of the computation of the P-localization of an almost crystallographic group. For their example the authors have chosen an almost crystallographic group G of dimension 3 and type 17. For the set of parameters (k1,k2,k3,k4) they have considered all cases of the form (k1,k2,k3,k4)=(2,0,0,k4).
Here we will check their computations in two cases k4=0 and k4=1
using the set of primes P={2}. The holonomy group of these almost
crystallographic groups G is the dihedral group D6 of order
12. Thus there is a short exact sequence of the form
|
As a first step in their computation, Descheemaeker and Malfait determine the group IP′D6, which is the unique subgroup of order 3 in D6. One of the main objects in DM is the group K=p−1 (IP′D6), where p is the natural projection of G onto its holonomy group. It is known that the P-localization of G coincides with the P-localization of G/γ3(K), where γ3(K) is the third term in the lower central series of K. As G/γ3(K) is finite in this example, we exactly know what this P-localization is. Let us now show, how GAP can be used to compute this P-localization in two cases:
First case: The parameters are (k1,k2,k3,k4)=(2,0,0,0)
gap> G := AlmostCrystallographicPcpGroup(3, 17, [2,0,0,0] ); Pcp group with orders [ 2, 6, 0, 0, 0 ] gap> projection := NaturalHomomorphismOnHolonomyGroup( G ); [ g1, g2, g3, g4, g5 ] -> [ g1, g2, identity, identity, identity ] gap> F := HolonomyGroup( G ); Pcp group with orders [ 2, 6 ] gap> IPprimeD6 := Subgroup( F , [F.2^2] ); Pcp group with orders [ 3 ] gap> K := PreImage( projection, IPprimeD6 ); Pcp group with orders [ 3, 0, 0, 0 ] gap> PrintPcpPresentation( K ); pcp presentation on generators [ g2^2, g3, g4, g5 ] g2^2 ^ 3 = identity g3 ^ g2^2 = g3^-1*g4^-1 g3 ^ g2^2^-1 = g4*g5^-2 g4 ^ g2^2 = g3*g5^2 g4 ^ g2^2^-1 = g3^-1*g4^-1*g5^2 g4 ^ g3 = g4*g5^2 g4 ^ g3^-1 = g4*g5^-2 gap> Gamma3K := CommutatorSubgroup( K, CommutatorSubgroup( K, K )); Pcp group with orders [ 0, 0, 0 ] gap> quotient := G/Gamma3K; Pcp group with orders [ 2, 6, 3, 3, 2 ] gap> S := SylowSubgroup( quotient, 3); Pcp group with orders [ 3, 3, 3 ] gap> N := NormalClosure( quotient, S); Pcp group with orders [ 3, 3, 3 ] gap> localization := quotient/N; Pcp group with orders [ 2, 2, 2 ] gap> PrintPcpPresentation( localization ); pcp presentation on generators [ g1, g2, g3 ] g1 ^ 2 = identity g2 ^ 2 = identity g3 ^ 2 = identityThis shows that GP ≅ Z23.
Second case: The parameters are (k1,k2,k3,k4)=(2,0,0,1)
gap> G := AlmostCrystallographicPcpGroup(3, 17, [2,0,0,1]);; gap> projection := NaturalHomomorphismOnHolonomyGroup( G );; gap> F := HolonomyGroup( G );; gap> IPprimeD6 := Subgroup( F , [F.2^2] );; gap> K := PreImage( projection, IPprimeD6 );; gap> Gamma3K := CommutatorSubgroup( K, CommutatorSubgroup( K, K ));; gap> quotient := G/Gamma3K;; gap> S := SylowSubgroup( quotient, 3);; gap> N := NormalClosure( quotient, S);; gap> localization := quotient/N; Pcp group with orders [ 2, 2, 2 ] gap> PrintPcpPresentation( localization ); pcp presentation on generators [ g1, g2, g3 ] g1 ^ 2 = identity g2 ^ 2 = g3 g3 ^ 2 = identity g2 ^ g1 = g2*g3 g2 ^ g1^-1 = g2*g3
In this case, we see that GP=D4.
The reader can check that these results coincide with those obtained in DM. Note also that we used a somewhat different scheme to compute this localization than the one used in DM. We invite the reader to check the same computations, tracing exactly the steps made in DM.
aclib manual