| products/Sources/formale Sprachen/GAP/pkg/hap/tutorial/chap11.html |
 |
<?xml version= "1.0" encoding= "UTF-8"?>
<! DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
< html xmlns= "http://www.w3.org/1999/xhtml" xml:lang= "en">
< head>
< title>GAP (HAP commands) - Chapter 11: Resolutions</ title>
< meta http-equiv= "content-type" content= "text/html; charset=UTF-8" />
< meta name= "generator" content= "GAPDoc2HTML" />
< link rel= "stylesheet" type= "text/css" href= "manual.css" />
< script src= "manual.js" type= "text/javascript"></ script>
< script type= "text/javascript">overwriteStyle();</ script>
</ head>
< body class= "chap11" onload= "jscontent()">
< div class= "chlinktop">< span class= "chlink1">Goto Chapter: </ span>< a href= "chap0.html">Top</ a> < a href="chap1.html">1</a> <a href="chap2.html">2</a> <a href="chap3.html">3</a> <a href="chap4.html">4</a> <a href="chap5.html">5</a> <a href="chap6.html">6</a> <a href="chap7.html">7</a> <a href="chap8.html">8</a> <a href="chap9.html">9</a> <a href="chap10.html">10</a> <a href="chap11.html">11</a> <a href="chap12.html">12</a> <a href="chap13.html">13</a> <a href="chap14.html">14</a> <a href="chap15.html">15</a> <a href="chap16.html">16</a> <a href="chapBib.html">Bib</a> <a href="chapInd.html">Ind</a> </div>
<div class="chlinkprevnexttop"> <a href="chap0.html">[Top of Book]</a> <a href="chap0.html#contents">[Contents]</a> <a href="chap10.html">[Previous Chapter]</a> <a href="chap12.html">[Next Chapter]</a> </div>
<p id="mathjaxlink" class="pcenter"><a href="chap11_mj.html">[MathJax on]</a></p>
<p><a id="X7C0B125E7D5415B4" name="X7C0B125E7D5415B4"></a></p>
<div class="ChapSects"><a href="chap11.html#X7C0B125E7D5415B4">11 <span class="Heading">Resolutions</span></a>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap11.html#X83E8F9DA7CDC0DA7">11.1 <span class="Heading">Resolutions for small finite groups</span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap11.html#X7EEA738385CC3AEA">11.2 <span class="Heading">Resolutions for very small finite groups</span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap11.html#X86C0983E81F706F5">11.3 <span class="Heading">Resolutions for finite groups acting on orbit polytopes</span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap11.html#X85374EA47E3D97CF">11.4 <span class="Heading">Minimal resolutions for finite <span class="SimpleMath">p</span>-groups over <span class="SimpleMath">F_p</span></span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap11.html#X866C8D91871D1170">11.5 <span class="Heading">Resolutions for abelian groups</span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap11.html#X7B332CBE85120B38">11.6 <span class="Heading">Resolutions for nilpotent groups</span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap11.html#X7B03997084E00509">11.7 <span class="Heading">Resolutions for groups with subnormal series</span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap11.html#X814FFCE080B3A826">11.8 <span class="Heading">Resolutions for groups with normal series</span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap11.html#X81227BF185C417AF">11.9 <span class="Heading">Resolutions for polycyclic (almost) crystallographic groups </span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap11.html#X814BCDD6837BB9C5">11.10 <span class="Heading">Resolutions for Bieberbach groups </span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap11.html#X87ADCB7D7FC0B4D3">11.11 <span class="Heading">Resolutions for arbitrary crystallographic groups</span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap11.html#X7B9B3AF487338A9B">11.12 <span class="Heading">Resolutions for crystallographic groups admitting cubical fundamental domain</span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap11.html#X78DD8D068349065A">11.13 <span class="Heading">Resolutions for Coxeter groups </span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap11.html#X7C69E7227F919CC9">11.14 <span class="Heading">Resolutions for Artin groups </span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap11.html#X8032647F8734F4EB">11.15 <span class="Heading">Resolutions for <span class="SimpleMath">G=SL_2( Z[1/m])</span></span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap11.html#X7BE4DE82801CD38E">11.16 <span class="Heading">Resolutions for selected groups
<span class="SimpleMath">G=SL_2( mathcal O( Q(sqrtd) )</span></span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap11.html#X7D9CCB2C7DAA2310">11.17 <span class="Heading">Resolutions for selected groups
<span class="SimpleMath">G=PSL_2( mathcal O( Q(sqrtd) )</span></span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap11.html#X7F699587845E6DB1">11.18 <span class="Heading">Resolutions for a few higher-dimensional arithmetic groups
</span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap11.html#X7812EB3F7AC45F87">11.19 <span class="Heading">Resolutions for finite-index subgroups
</span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap11.html#X84CAAA697FAC8E0D">11.20 <span class="Heading">Simplifying resolutions
</span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap11.html#X780C3F038148A1C7">11.21 <span class="Heading">Resolutions for graphs of groups and for groups with aspherical presentations
</span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap11.html#X85AB973F8566690A">11.22 <span class="Heading">Resolutions for <span class="SimpleMath">FG</span>-modules
</span></a>
</span>
</div>
</div>
<h3>11 <span class="Heading">Resolutions</span></h3>
<p>There is a range of functions in HAP that input a group <span class="SimpleMath">G</span>, integer <span class="SimpleMath">n</span>, and attempt to return the first <span class="SimpleMath">n</span> terms of a free <span class="SimpleMath">ZG</span>-resolution <span class="SimpleMath">R_∗</span> of the trivial module <span class="SimpleMath">Z</span>. In some cases an explicit contracting homotopy is provided on the resolution. The function <code class="code">Size(R)</code> returns a list whose <span class="SimpleMath">k</span>th term is the sum of the lengths of the boundaries of the generators in degree <span class="SimpleMath">k</span>.</p>
<p><a id="X83E8F9DA7CDC0DA7" name="X83E8F9DA7CDC0DA7"></a></p>
<h4>11.1 <span class="Heading">Resolutions for small finite groups</span></h4>
<p>The following uses discrete Morse theory to construct a resolution.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">G:=SymmetricGroup(6);; n:=6;;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionFiniteGroup(G,n);</span>
Resolution of length 6 in characteristic 0 for Group([ (1,2), (1,2,3,4,5,6)
]) .
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(R);</span>
[ 10, 58, 186, 452, 906, 1436 ]
</pre></div>
<p><a id="X7EEA738385CC3AEA" name="X7EEA738385CC3AEA"></a></p>
<h4>11.2 <span class="Heading">Resolutions for very small finite groups</span></h4>
<p>The following uses linear algebra over <span class="SimpleMath">Z</span> to construct a resolution.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">Q:=QuaternionGroup(128);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionSmallGroup(Q,20);</span>
Resolution of length 20 in characteristic 0 for <pc group of size 128 with
2 generators> .
No contracting homotopy available.
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(R);</span>
[ 4, 42, 8, 128, 4, 42, 8, 128, 4, 42, 8, 128, 4, 42, 8, 128, 4, 42, 8, 128 ]
</pre></div>
<p>The suspicion that this resolution <span class="SimpleMath">R_∗</span> is periodic of period <span class="SimpleMath">4</span> can be confirmed by constructing the chain complex <span class="SimpleMath">C_∗=R_∗⊗_ Z ZG</span> and verifying that boundary matrices repeat with period <span class="SimpleMath">4</span>.</p>
<p>A second example of a periodic resolution, for the Dihedral group <span class="SimpleMath">D_2k+1=⟨ x, y | x^2= xy^kx^-1y^-k-1 = 1⟩</span> of order <span class="SimpleMath">2k+2</span> in the case <span class="SimpleMath">k=1</span>, is constructed and verified for periodicity in the next example.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">F:=FreeGroup(2);;D:=F/[F.1^2,F.1*F.2*F.1^-1*F.2^-2];;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionSmallGroup(D,15);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(R);</span>
[ 4, 7, 8, 6, 4, 8, 8, 6, 4, 8, 8, 6, 4, 8, 8 ]
<span class="GAPprompt">gap></span> <span class="GAPinput">C:=TensorWithIntegersOverSubgroup(R,Group(One(D)));;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">n:=4;;BoundaryMatrix(C,n)=BoundaryMatrix(C,n+4);</span>
true
<span class="GAPprompt">gap></span> <span class="GAPinput">n:=5;;BoundaryMatrix(C,n)=BoundaryMatrix(C,n+4);</span>
true
<span class="GAPprompt">gap></span> <span class="GAPinput">n:=6;;BoundaryMatrix(C,n)=BoundaryMatrix(C,n+4);</span>
true
<span class="GAPprompt">gap></span> <span class="GAPinput">n:=7;;BoundaryMatrix(C,n)=BoundaryMatrix(C,n+4);</span>
true
<span class="GAPprompt">gap></span> <span class="GAPinput">n:=8;;BoundaryMatrix(C,n)=BoundaryMatrix(C,n+4);</span>
true
</pre></div>
<p>This periodic resolution for <span class="SimpleMath">D_3</span> can be found in a paper by R. Swan <a href="chapBib.html#biBswan2">[Swa60]</a>. The resolution was proved for arbitrary <span class="SimpleMath">D_2k+1</span> by Irina Kholodna <a href="chapBib.html#biBkholodna">[Kho01]</a> (Corollary 5.5) and is the cellular chain complex of the universal cover of a CW-complex <span class="SimpleMath">X</span> with two cells in dimensions <span class="SimpleMath">1, 2 mod 4</span> and one cell in dimensions <span class="SimpleMath">0,3 mod 4</span>. The <span class="SimpleMath">2</span>-skelecton is the <span class="SimpleMath">2</span>-complex for the given presentation of <span class="SimpleMath">D_2k+1</span> and an attaching map for the <span class="SimpleMath">3</span>-cell is represented as follows.</p>
<p><img src="images/syzygyjsc.jpg" align="center" height="300" alt="homotopical syzygy"/></p>
<p>A slightly different periodic resolution for <span class="SimpleMath">D_2k+1</span> has been obtain more recently by FEA Johnson <a href="chapBib.html#biBjohnson">[Joh16]</a>. Johnson's resolution has two free generators in each degree. Interestingly, running the following code for many values of <span class="SimpleMath">k >1</span> seems to produce a periodic resolution with two free generators in each degree for most values of <span class="SimpleMath">k</span>.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">k:=20;;rels:=[x^2,x*y^k*x^-1*y^(-1-k)];;D:=F/rels;;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionSmallGroup(D,7);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">List([0..7],R!.dimension);</span>
[ 1, 2, 2, 2, 2, 2, 2, 2 ]
</pre></div>
<p>The performance of the function <code class="code">ResolutionSmallGroup(G,n)</code> is very sensistive to the choice of presentation for the input group <span class="SimpleMath">G</span>. If <span class="SimpleMath">G</span> is an fp-group then the defining presentation for <span class="SimpleMath">G</span> is used. If <span class="SimpleMath">G</span> is a permutaion group or finite matrix group then <strong class="button">GAP</strong> functions are invoked to find a presentation for <span class="SimpleMath">G</span>. The following commands use a geometrically derived presentation for <span class="SimpleMath">SL(2,5)</span> as input in order to obtain the first few terms of a periodic resolution for this group of period <span class="SimpleMath">4</span>.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">Y:=PoincareDodecahedronCWComplex( </span>
<span class="GAPprompt">></span> <span class="GAPinput">[[1,2,3,4,5],[6,7,8,9,10]],</span>
<span class="GAPprompt">></span> <span class="GAPinput">[[1,11,16,12,2],[19,9,8,18,14]],</span>
<span class="GAPprompt">></span> <span class="GAPinput">[[2,12,17,13,3],[20,10,9,19,15]],</span>
<span class="GAPprompt">></span> <span class="GAPinput">[[3,13,18,14,4],[16,6,10,20,11]],</span>
<span class="GAPprompt">></span> <span class="GAPinput">[[4,14,19,15,5],[17,7,6,16,12]],</span>
<span class="GAPprompt">></span> <span class="GAPinput">[[5,15,20,11,1],[18,8,7,17,13]]);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">G:=FundamentalGroup(Y);</span>
<fp group on the generators [ f1, f2 ]>
<span class="GAPprompt">gap></span> <span class="GAPinput">RelatorsOfFpGroup(G);</span>
[ f2^-1*f1^-1*f2*f1^-1*f2^-1*f1, f2^-1*f1*f2^2*f1*f2^-1*f1^-1 ]
<span class="GAPprompt">gap></span> <span class="GAPinput">StructureDescription(G);</span>
"SL(2,5)"
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionSmallGroup(G,3);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">List([0..3],R!.dimension); </span>
[ 1, 2, 2, 1 ]
</pre></div>
<p><a id="X86C0983E81F706F5" name="X86C0983E81F706F5"></a></p>
<h4>11.3 <span class="Heading">Resolutions for finite groups acting on orbit polytopes</span></h4>
<p>The following uses Polymake convex hull computations and homological perturbation theory to construct a resolution.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">G:=SignedPermutationGroup(5);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">StructureDescription(G);</span>
"C2 x ((C2 x C2 x C2 x C2) : S5)"
<span class="GAPprompt">gap></span> <span class="GAPinput">v:=[1,2,3,4,5];; #The resolution depends on the choice of vector.</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">P:=PolytopalComplex(G,[1,2,3,4,5]);</span>
Non-free resolution in characteristic 0 for <matrix group of size 3840 with
9 generators> .
No contracting homotopy available.
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=FreeGResolution(P,6);</span>
Resolution of length 5 in characteristic 0 for <matrix group of size
3840 with 9 generators> .
No contracting homotopy available.
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(R);</span>
[ 10, 60, 214, 694, 6247, 273600 ]
</pre></div>
<p>The convex polytope <span class="SimpleMath">P_G(v)= Convex~Hull{g⋅ v | g∈ G}</span> used in the resolution depends on the choice of vector <span class="SimpleMath">v∈ R^n</span>. Two such polytopes for the alternating group <span class="SimpleMath">G=A_4</span> acting on <span class="SimpleMath">R^4</span> can be visualized as follows.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">G:=AlternatingGroup(4);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">OrbitPolytope(G,[1,2,3,4],["VISUAL"]);</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">OrbitPolytope(G,[1,1,3,4],["VISUAL"]);</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">P1:=PolytopalComplex(G,[1,2,3,4]);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">P2:=PolytopalComplex(G,[1,1,3,4]);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">R1:=FreeGResolution(P1,20);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">R2:=FreeGResolution(P2,20);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(R1);</span>
[ 6, 11, 32, 24, 36, 60, 65, 102, 116, 168, 172, 248, 323, 628, 650, 1093,
1107, 2456, 2344, 6115 ]
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(R2);</span>
[ 4, 11, 20, 24, 36, 60, 65, 102, 116, 168, 172, 248, 323, 628, 650, 1093,
1107, 2456, 2344, 6115 ]
</pre></div>
<p><img src="images/orb-poly-1.png" align="center" height="300" alt="an orbit polytope"/> <img src="images/orb-poly-2.png" align="center" height="300" alt="an orbit polytope"/></p>
<p><a id="X85374EA47E3D97CF" name="X85374EA47E3D97CF"></a></p>
<h4>11.4 <span class="Heading">Minimal resolutions for finite <span class="SimpleMath">p</span>-groups over <span class="SimpleMath">F_p</span></span></h4>
<p>The following uses linear algebra to construct a minimal free <span class="SimpleMath">F_pG</span>-resolution of the trivial module <span class="SimpleMath">F</span>.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">P:=SylowSubgroup(MathieuGroup(12),2);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionPrimePowerGroup(P,20);</span>
Resolution of length 20 in characteristic 2 for Group(
[ (2,8,4,12)(3,11,7,9), (2,3)(4,7)(6,10)(9,11), (3,7)(6,10)(8,11)(9,12),
(1,10)(3,7)(5,6)(8,12), (2,4)(3,7)(8,12)(9,11), (1,5)(6,10)(8,12)(9,11)
]) .
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(R);</span>
[ 6, 62, 282, 740, 1810, 3518, 6440, 10600, 17040, 24162, 34774, 49874,
62416, 81780, 106406, 145368, 172282, 208926, 262938, 320558 ]
</pre></div>
<p>The resolution has the minimum number of generators possible in each degree and can be used to guess a formula for the Poincare series</p>
<p><span class="SimpleMath">P(x) = Σ_k≥ 0 dim_ F_pH^k(G, F_p)x^k</span>.</p>
<p>The guess is certainly correct for the coefficients of <span class="SimpleMath">x^k</span> for <span class="SimpleMath">k≤ 20</span> and can be used to guess the dimension of say <span class="SimpleMath">H^2000(G, F_p)</span>.</p>
<p>Most likely <span class="SimpleMath">dim_ F_2H^2000(G, F_2) = 2001000</span>.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">P:=PoincareSeries(R,20);</span>
(1)/(-x_1^3+3*x_1^2-3*x_1+1)
<span class="GAPprompt">gap></span> <span class="GAPinput">ExpansionOfRationalFunction(P,2000)[2000];</span>
2001000
</pre></div>
<p><a id="X866C8D91871D1170" name="X866C8D91871D1170"></a></p>
<h4>11.5 <span class="Heading">Resolutions for abelian groups</span></h4>
<p>The following uses the formula for the tensor product of chain complexes to construct a resolution.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">A:=AbelianPcpGroup([2,4,8,0,0]);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">StructureDescription(A);</span>
"Z x Z x C8 x C4 x C2"
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionAbelianGroup(A,10);</span>
Resolution of length 10 in characteristic 0 for Pcp-group with orders
[ 2, 4, 8, 0, 0 ] .
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(R);</span>
[ 14, 90, 296, 680, 1256, 2024, 2984, 4136, 5480, 7016 ]
</pre></div>
<p><a id="X7B332CBE85120B38" name="X7B332CBE85120B38"></a></p>
<h4>11.6 <span class="Heading">Resolutions for nilpotent groups</span></h4>
<p>The following uses the NQ package to express the free nilpotent group of class <span class="SimpleMath">3</span> on three generators as a Pcp group <span class="SimpleMath">G</span>, and then uses homological perturbation on the lower central series to construct a resolution. The resolution is used to exhibit <span class="SimpleMath">2</span>-torsion in <span class="SimpleMath">H_4(G, Z)</span>.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">F:=FreeGroup(3);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">G:=Image(NqEpimorphismNilpotentQuotient(F,3));;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionNilpotentGroup(G,5);</span>
Resolution of length 5 in characteristic 0 for Pcp-group with orders
[ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ] .
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(R);</span>
[ 28, 377, 2377, 9369, 25850 ]
<span class="GAPprompt">gap></span> <span class="GAPinput">Homology(TensorWithIntegers(R),4);</span>
[ 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
</pre></div>
<p>The following example uses a simplification procedure for resolutions to construct a resolution <span class="SimpleMath">S_∗</span> for the free nilpotent group <span class="SimpleMath">G</span> of class <span class="SimpleMath">2</span> on <span class="SimpleMath">3</span> generators that has the minimal possible number of free generators in each degree.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">G:=Image(NqEpimorphismNilpotentQuotient(FreeGroup(3),2));;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionNilpotentGroup(G,10);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">S:=ContractedComplex(R);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">C:=TensorWithIntegers(S);; </span>
<span class="GAPprompt">gap></span> <span class="GAPinput">List([1..10],i->IsZero(BoundaryMatrix(C,i)));</span>
[ true, true, true, true, true, true, true, true, true, true ]
</pre></div>
<p>The following example uses homological perturbation on the lower central series to construct a resolution for the Sylow <span class="SimpleMath">2</span>-subgroup <span class="SimpleMath">P=Syl_2(M_12)</span> of the Mathieu simple group <span class="SimpleMath">M_12</span>.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">G:=MathieuGroup(12);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">P:=SylowSubgroup(G,2);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">StructureDescription(P);</span>
"((C4 x C4) : C2) : C2"
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionNilpotentGroup(P,9);</span>
Resolution of length 9 in characteristic
0 for <permutation group with 279 generators> .
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(R);</span>
[ 12, 80, 310, 939, 2556, 6768, 19302, 61786, 237068 ]
</pre></div>
<p><a id="X7B03997084E00509" name="X7B03997084E00509"></a></p>
<h4>11.7 <span class="Heading">Resolutions for groups with subnormal series</span></h4>
<p>The following uses homological perturbation on a subnormal series to construct a resolution for the Sylow <span class="SimpleMath">2</span>-subgroup <span class="SimpleMath">P=Syl_2(M_12)</span> of the Mathieu simple group <span class="SimpleMath">M_12</span>.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">P:=SylowSubgroup(MathieuGroup(12),2);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">sn:=ElementaryAbelianSeries(P);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionSubnormalSeries(sn,9);</span>
Resolution of length 9 in characteristic
0 for <permutation group with 64 generators> .
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(R);</span>
[ 12, 78, 288, 812, 1950, 4256, 8837, 18230, 39120 ]
</pre></div>
<p><a id="X814FFCE080B3A826" name="X814FFCE080B3A826"></a></p>
<h4>11.8 <span class="Heading">Resolutions for groups with normal series</span></h4>
<p>The following uses homological perturbation on a normal series to construct a resolution for the Sylow <span class="SimpleMath">2</span>-subgroup <span class="SimpleMath">P=Syl_2(M_12)</span> of the Mathieu simple group <span class="SimpleMath">M_12</span>.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">P:=SylowSubgroup(MathieuGroup(12),2);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">P1:=EfficientNormalSubgroups(P)[1];;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">P2:=Intersection(DerivedSubgroup(P),P1);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">P3:=Group(One(P));;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionNormalSeries([P,P1,P2,P3],9);</span>
Resolution of length 9 in characteristic
0 for <permutation group with 64 generators> .
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(R);</span>
[ 10, 60, 200, 532, 1238, 2804, 6338, 15528, 40649 ]
</pre></div>
<p><a id="X81227BF185C417AF" name="X81227BF185C417AF"></a></p>
<h4>11.9 <span class="Heading">Resolutions for polycyclic (almost) crystallographic groups </span></h4>
<p>The following uses the Polycyclic package and homological perturbation to construct a resolution for the crystallographic group <code class="code">G:=SpaceGroup(3,165)</code>.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">G:=SpaceGroup(3,165);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">G:=Image(IsomorphismPcpGroup(G));;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionAlmostCrystalGroup(G,20);</span>
Resolution of length 20 in characteristic 0 for Pcp-group with orders
[ 3, 2, 0, 0, 0 ] .
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(R);</span>
[ 10, 49, 117, 195, 273, 351, 429, 507, 585, 663, 741, 819, 897, 975, 1053,
1131, 1209, 1287, 1365, 1443 ]
</pre></div>
<p>The following constructs a resolution for an almost crystallographic Pcp group <span class="SimpleMath">G</span>. The final commands establish that <span class="SimpleMath">G</span> is not isomorphic to a crystallographic group.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">G:=AlmostCrystallographicPcpGroup( 4, 50, [ 1, -4, 1, 2 ] );;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionAlmostCrystalGroup(G,20);</span>
Resolution of length 20 in characteristic 0 for Pcp-group with orders
[ 4, 0, 0, 0, 0 ] .
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(R);</span>
[ 10, 53, 137, 207, 223, 223, 223, 223, 223, 223, 223, 223, 223, 223, 223,
223, 223, 223, 223, 223 ]
<span class="GAPprompt">gap></span> <span class="GAPinput">T:=Kernel(NaturalHomomorphismOnHolonomyGroup(G));;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">IsAbelian(T);</span>
false
</pre></div>
<p><a id="X814BCDD6837BB9C5" name="X814BCDD6837BB9C5"></a></p>
<h4>11.10 <span class="Heading">Resolutions for Bieberbach groups </span></h4>
<p>The following constructs a resolution for the Bieberbach group <code class="code">G=SpaceGroup(3,165)</code> by using convex hull algorithms to construct a Dirichlet domain for its free action on Euclidean space <span class="SimpleMath">R^3</span>. By construction the resolution is trivial in degrees <span class="SimpleMath">≥ 3</span>.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">G:=SpaceGroup(3,165);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionBieberbachGroup(G);</span>
Resolution of length 4 in characteristic
0 for SpaceGroupOnRightBBNWZ( 3, 6, 1, 1, 4 ) .
No contracting homotopy available.
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(R);</span>
[ 10, 18, 8, 0 ]
</pre></div>
<p>The fundamental domain constructed for the above resolution can be visualized using the following commands.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">F:=FundamentalDomainBieberbachGroup(G);</span>
<polymake object>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display(F);</span>
</pre></div>
<p><img src="images/3-165-0.png" align="center" height="300" alt="a Dirichlet domain"/></p>
<p>A different fundamental domain and resolution for <span class="SimpleMath">G</span> can be obtained by changing the choice of vector <span class="SimpleMath">v∈ R^3</span> in the definition of the Dirichlet domain</p>
<p><span class="SimpleMath">D(v) = {x∈ R^3 | ||x-v|| ≤ ||x-g.v|| for~all~ g∈ G}</span>.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionBieberbachGroup(G,[1/2,1/2,1/2]);</span>
Resolution of length 4 in characteristic
0 for SpaceGroupOnRightBBNWZ( 3, 6, 1, 1, 4 ) .
No contracting homotopy available.
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(R);</span>
[ 28, 42, 16, 0 ]
<span class="GAPprompt">gap></span> <span class="GAPinput">F:=FundamentalDomainBieberbachGroup(G);</span>
<polymake object>
<span class="GAPprompt">gap></span> <span class="GAPinput">Display(F);</span>
</pre></div>
<p><img src="images/3-165-1.png" align="center" height="300" alt="a Dirichlet domain"/></p>
<p>A higher dimensional example is handled in the next session. A list of the <span class="SimpleMath">62</span> <span class="SimpleMath">7</span>-dimensional Hantze-Wendt Bieberbach groups is loaded and a resolution is computed for the first group in the list.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">file:=HapFile("HW-7dim.txt");;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">Read(file);</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">G:=HWO7Gr[1];</span>
<matrix group with 7 generators>
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionBieberbachGroup(G);</span>
Resolution of length 8 in characteristic 0 for <matrix group with
7 generators> .
No contracting homotopy available.
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(R);</span>
[ 284, 1512, 3780, 4480, 2520, 840, 84, 0 ]
</pre></div>
<p>The homological perturbation techniques needed to extend this method to crystallographic groups acting non-freely on <span class="SimpleMath">R^n</span> has not yet been implemenyed. This is on the TO-DO list.</p>
<p><a id="X87ADCB7D7FC0B4D3" name="X87ADCB7D7FC0B4D3"></a></p>
<h4>11.11 <span class="Heading">Resolutions for arbitrary crystallographic groups</span></h4>
<p>An implementation of the above method for Bieberbach groups is also available for arbitrary crystallographic groups. The following example constructs a resolution for the group <code class="code">G:=SpaceGroupIT(3,227)</code>.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">G:=SpaceGroupIT(3,227);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionSpaceGroup(G,11);</span>
Resolution of length 11 in characteristic 0 for <matrix group with
8 generators> .
No contracting homotopy available.
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(R);</span>
[ 38, 246, 456, 644, 980, 1427, 2141, 2957, 3993, 4911, 6179 ]
</pre></div>
<p><a id="X7B9B3AF487338A9B" name="X7B9B3AF487338A9B"></a></p>
<h4>11.12 <span class="Heading">Resolutions for crystallographic groups admitting cubical fundamental domain</span></h4>
<p>The following uses subdivision techniques to construct a resolution for the Bieberbach group <code class="code">G:=SpaceGroup(4,122)</code>. The resolution is endowed with a contracting homotopy.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">G:=SpaceGroup(4,122);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionCubicalCrystGroup(G,20);</span>
Resolution of length 20 in characteristic 0 for <matrix group with
6 generators> .
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(R);</span>
[ 8, 24, 24, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
</pre></div>
<p>Subdivision and homological perturbation are used to construct the following resolution (with contracting homotopy) for a crystallographic group with non-free action.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">G:=SpaceGroup(4,1100);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionCubicalCrystGroup(G,20);</span>
Resolution of length 20 in characteristic 0 for <matrix group with
8 generators> .
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(R);</span>
[ 40, 215, 522, 738, 962, 1198, 1466, 1734, 2034, 2334, 2666, 2998, 3362,
3726, 4122, 4518, 4946, 5374, 5834, 6294 ]
</pre></div>
<p><a id="X78DD8D068349065A" name="X78DD8D068349065A"></a></p>
<h4>11.13 <span class="Heading">Resolutions for Coxeter groups </span></h4>
<p>The following session constructs the Coxeter diagram for the Coxeter group <span class="SimpleMath">B=B_7</span> of order <span class="SimpleMath">645120</span>. A resolution for <span class="SimpleMath">G</span> is then computed.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">D:=[[1,[2,3]],[2,[3,3]],[3,[4,3]],[4,[5,3]],[5,[6,3]],[6,[7,4]]];;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">CoxeterDiagramDisplay(D);;</span>
</pre></div>
<p><img src="images/coxeter-diagram-b7.png" align="center" height="150" alt="a Dirichlet domain"/></p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionCoxeterGroup(D,5);</span>
Resolution of length 5 in characteristic
0 for <permutation group of size 645120 with 7 generators> .
No contracting homotopy available.
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(R);</span>
[ 14, 112, 492, 1604, 5048 ]
</pre></div>
<p>The routine extension of this method to infinite Coxeter groups is on the TO-DO list.</p>
<p><a id="X7C69E7227F919CC9" name="X7C69E7227F919CC9"></a></p>
<h4>11.14 <span class="Heading">Resolutions for Artin groups </span></h4>
<p>The following session constructs a resolution for the infinite Artin group <span class="SimpleMath">G</span> associated to the Coxeter group <span class="SimpleMath">B_7</span>. Exactness of the resolution depends on the solution to the <span class="SimpleMath">K(π,1)</span> Conjecture for Artin groups of spherical type.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionArtinGroup(D,8);</span>
Resolution of length 8 in characteristic 0 for <fp group on the generators
[ f1, f2, f3, f4, f5, f6, f7 ]> .
No contracting homotopy available.
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(R);</span>
[ 14, 98, 310, 610, 918, 1326, 2186, 0 ]
</pre></div>
<p><a id="X8032647F8734F4EB" name="X8032647F8734F4EB"></a></p>
<h4>11.15 <span class="Heading">Resolutions for <span class="SimpleMath">G=SL_2( Z[1/m])</span></span></h4>
<p>The following uses homological perturbation to construct a resolution for <span class="SimpleMath">G=SL_2( Z[1/6])</span>.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionSL2Z(6,10);</span>
Resolution of length 10 in characteristic 0 for SL(2,Z[1/6]) .
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(R);</span>
[ 44, 679, 6910, 21304, 24362, 48506, 43846, 90928, 86039, 196210 ]
</pre></div>
<p><a id="X7BE4DE82801CD38E" name="X7BE4DE82801CD38E"></a></p>
<h4>11.16 <span class="Heading">Resolutions for selected groups
<span class="SimpleMath">G=SL_2( mathcal O( Q(sqrtd) )</span></span></h4>
<p>The following uses finite "Voronoi complexes" and homological perturbation to construct a resolution for <span class="SimpleMath">G=SL_2(mathcal O( Q(sqrt-5))</span>. The finite complexes were contributed independently by A. Rahm, M. Dutour-Scikiric and S. Schoenenbeck and are stored in the folder <code class="code">~pkg/Hap1.v/lib/Perturbations/Gcomplexes</code>.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionSL2QuadraticIntegers(-5,10);</span>
Resolution of length 10 in characteristic 0 for matrix group .
No contracting homotopy available.
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(R);</span>
[ 22, 114, 120, 200, 146, 156, 136, 254, 168, 170 ]
</pre></div>
<p><a id="X7D9CCB2C7DAA2310" name="X7D9CCB2C7DAA2310"></a></p>
<h4>11.17 <span class="Heading">Resolutions for selected groups
<span class="SimpleMath">G=PSL_2( mathcal O( Q(sqrtd) )</span></span></h4>
<p>The following uses finite "Voronoi complexes" and homological perturbation to construct a resolution for <span class="SimpleMath">G=PSL_2(mathcal O( Q(sqrt-11))</span>. The finite complexes were contributed independently by A. Rahm, M. Dutour-Scikiric and S. Schoenenbeck and are stored in the folder <code class="code">~pkg/Hap1.v/lib/Perturbations/Gcomplexes</code>.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionPSL2QuadraticIntegers(-11,10);</span>
Resolution of length 10 in characteristic 0 for PSL(2,O-11) .
No contracting homotopy available.
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(R);</span>
[ 12, 59, 89, 107, 125, 230, 208, 270, 326, 515 ]
</pre></div>
<p><a id="X7F699587845E6DB1" name="X7F699587845E6DB1"></a></p>
<h4>11.18 <span class="Heading">Resolutions for a few higher-dimensional arithmetic groups
</span></h4>
<p>The following uses finite "Voronoi complexes" and homological perturbation to construct a resolution for <span class="SimpleMath">G=PSL_4( Z)</span>. The finite complexes were contributed by M. Dutour-Scikiric and are stored in the folder <code class="code">~pkg/Hap1.v/lib/Perturbations/Gcomplexes</code>.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput"> V:=ContractibleGcomplex("PSL(4,Z)_d");</span>
Non-free resolution in characteristic 0 for matrix group .
No contracting homotopy available.
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=FreeGResolution(V,5);</span>
Resolution of length 5 in characteristic 0 for matrix group .
No contracting homotopy available.
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(R);</span>
[ 18, 210, 1444, 26813 ]
</pre></div>
<p><a id="X7812EB3F7AC45F87" name="X7812EB3F7AC45F87"></a></p>
<h4>11.19 <span class="Heading">Resolutions for finite-index subgroups
</span></h4>
<p>The next commands first construct the congruence subgroup <span class="SimpleMath">Γ_0(I)</span> of index <span class="SimpleMath">144</span> in <span class="SimpleMath">SL_2(cal O Q(sqrt-2))</span> for the ideal <span class="SimpleMath">I</span> in <span class="SimpleMath">cal O Q(sqrt-2)</span> generated by <span class="SimpleMath">4+5sqrt-2</span>. The commands then compute a resolution for the congruence subgroup <span class="SimpleMath">G=Γ_0(I) ≤ SL_2(cal O Q(sqrt-2))</span></p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">Q:=QuadraticNumberField(-2);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">OQ:=RingOfIntegers(Q);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">I:=QuadraticIdeal(OQ,4+5*Sqrt(-2));;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">G:=HAP_CongruenceSubgroupGamma0(I);</span>
<[group of 2x2 matrices in characteristic 0>
<span class="GAPprompt">gap></span> <span class="GAPinput"></span>
<span class="GAPprompt">gap></span> <span class="GAPinput">IndexInSL2O(G);</span>
144
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionSL2QuadraticIntegers(-2,4,true);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">S:=ResolutionFiniteSubgroup(R,G);</span>
Resolution of length 4 in characteristic 0 for <matrix group with
290 generators> .
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(S);</span>
[ 1152, 8496, 30960, 59616 ]
</pre></div>
<p><a id="X84CAAA697FAC8E0D" name="X84CAAA697FAC8E0D"></a></p>
<h4>11.20 <span class="Heading">Simplifying resolutions
</span></h4>
<p>The next commands construct a resolution <span class="SimpleMath">R_∗</span> for the symmetric group <span class="SimpleMath">S_5</span> and convert it to a resolution <span class="SimpleMath">S_∗</span> for the finite index subgroup <span class="SimpleMath">A_4 < S_5</span>. An heuristic algorithm is applied to <span class="SimpleMath">S_∗</span> in the hope of obtaining a smaller resolution <span class="SimpleMath">T_∗</span> for the alternating group <span class="SimpleMath">A_4</span>.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionFiniteGroup(SymmetricGroup(5),5);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">S:=ResolutionFiniteSubgroup(R,AlternatingGroup(4));</span>
Resolution of length 5 in characteristic 0 for Alt( [ 1 .. 4 ] ) .
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(S);</span>
[ 80, 380, 1000, 2040, 3400 ]
<span class="GAPprompt">gap></span> <span class="GAPinput">T:=SimplifiedComplex(S);</span>
Resolution of length 5 in characteristic 0 for Alt( [ 1 .. 4 ] ) .
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(T);</span>
[ 4, 34, 22, 19, 196 ]
</pre></div>
<p><a id="X780C3F038148A1C7" name="X780C3F038148A1C7"></a></p>
<h4>11.21 <span class="Heading">Resolutions for graphs of groups and for groups with aspherical presentations
</span></h4>
<p>The following example constructs a resolution for a finitely presented group whose presentation is known to have the property that its associated <span class="SimpleMath">2</span>-complex is aspherical.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">F:=FreeGroup(3);;x:=F.1;;y:=F.2;;z:=F.3;;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">rels:=[x*y*x*(y*x*y)^-1, y*z*y*(z*y*z)^-1, z*x*z*(x*z*x)^-1];;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">G:=F/rels;;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionAsphericalPresentation(G,10);</span>
Resolution of length 10 in characteristic 0 for <fp group on the generators
[ f1, f2, f3 ]> .
No contracting homotopy available.
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(R);</span>
[ 6, 18, 0, 0, 0, 0, 0, 0, 0, 0 ]
</pre></div>
<p>The following commands create a resolution for a graph of groups corresponding to the amalgamated product <span class="SimpleMath">G=H∗_AK</span> where <span class="SimpleMath">H=S_5</span> is the symmetric group of degree <span class="SimpleMath">5</span>, <span class="SimpleMath">K=S_4</span> is the symmetric group of degree <span class="SimpleMath">4</span> and the common subgroup is <span class="SimpleMath">A=S_3</span>.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">S5:=SymmetricGroup(5);SetName(S5,"S5");;</span>
Sym( [ 1 .. 5 ] )
<span class="GAPprompt">gap></span> <span class="GAPinput">S4:=SymmetricGroup(4);SetName(S4,"S4");;</span>
Sym( [ 1 .. 4 ] )
<span class="GAPprompt">gap></span> <span class="GAPinput">A:=SymmetricGroup(3);SetName(A,"S3");;</span>
Sym( [ 1 .. 3 ] )
<span class="GAPprompt">gap></span> <span class="GAPinput">AS5:=GroupHomomorphismByFunction(A,S5,x->x);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">AS4:=GroupHomomorphismByFunction(A,S4,x->x);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">D:=[S5,S4,[AS5,AS4]];;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">GraphOfGroupsDisplay(D);;</span>
</pre></div>
<p><img src="images/graphOFgroups.gif" align="center" height="100" alt="graph of groups"/></p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionGraphOfGroups(D,8);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">Size(R);</span>
[ 16, 68, 162, 302, 480, 627, 869, 1290 ]
</pre></div>
<p><a id="X85AB973F8566690A" name="X85AB973F8566690A"></a></p>
<h4>11.22 <span class="Heading">Resolutions for <span class="SimpleMath">FG</span>-modules
</span></h4>
<p>Let <span class="SimpleMath">F= F_p</span> be the field of <span class="SimpleMath">p</span> elements and let <span class="SimpleMath">M</span> be some <span class="SimpleMath">FG</span>-module for <span class="SimpleMath">G</span> a finite <span class="SimpleMath">p</span>-group. We might wish to construct a free <span class="SimpleMath">FG</span>-resolution for <span class="SimpleMath">M</span>. We can handle this by constructing a short exact sequence</p>
<p><span class="SimpleMath">DM ↣ P ↠ M</span></p>
<p>in which <span class="SimpleMath">P</span> is free (or projective). Then any resolution of <span class="SimpleMath">DM</span> yields a resolution of <span class="SimpleMath">M</span> and we can represent <span class="SimpleMath">DM</span> as a submodule of <span class="SimpleMath">P</span>. We refer to <span class="SimpleMath">DM</span> as the <em>desuspension</em> of <span class="SimpleMath">M</span>. Consider for instance <span class="SimpleMath">G=Syl_2(GL(4,2))</span> and <span class="SimpleMath">F= F_2</span>. The matrix group <span class="SimpleMath">G</span> acts via matrix multiplication on <span class="SimpleMath">M= F^4</span>. The following example constructs a free <span class="SimpleMath">FG</span>-resolution for <span class="SimpleMath">M</span>.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">G:=GL(4,2);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">S:=SylowSubgroup(G,2);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">M:=GModuleByMats(GeneratorsOfGroup(S),GF(2));;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">DM:=DesuspensionMtxModule(M);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=ResolutionFpGModule(DM,20);</span>
Resolution of length 20 in characteristic 2 for <matrix group of
size 64 with 3 generators> .
<span class="GAPprompt">gap></span> <span class="GAPinput">List([0..20],R!.dimension);</span>
[ 3, 6, 10, 15, 21, 28, 36, 45, 55, 66, 78, 91, 105, 120, 136,
153, 171, 190, 210, 231, 253 ]
</pre></div>
<div class="chlinkprevnextbot"> <a href="chap0.html">[Top of Book]</a> <a href="chap0.html#contents">[Contents]</a> <a href="chap10.html">[Previous Chapter]</a> <a href="chap12.html">[Next Chapter]</a> </div>
<div class="chlinkbot"><span class="chlink1">Goto Chapter: </span><a href="chap0.html">Top</a> <a href="chap1.html">1</a> <a href="chap2.html">2</a> <a href="chap3.html">3</a> <a href="chap4.html">4</a> <a href="chap5.html">5</a> <a href="chap6.html">6</a> <a href="chap7.html">7</a> <a href="chap8.html">8</a> <a href="chap9.html">9</a> <a href="chap10.html">10</a> <a href="chap11.html">11</a> <a href="chap12.html">12</a> <a href="chap13.html">13</a> <a href="chap14.html">14</a> <a href="chap15.html">15</a> <a href="chap16.html">16</a> <a href="chapBib.html">Bib</a> <a href="chapInd.html">Ind</a> </div>
<hr />
<p class="foot">generated by <a href="https://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc">GAPDoc2HTML</a></p>
</body>
</html>
¤ Dauer der Verarbeitung: 0.35 Sekunden
¤
*© Formatika GbR, Deutschland
|
|