<p>The <em>Bianchi groups</em> are the groups <span class="SimpleMath">\(G_{-d}=PSL_2({\cal O}_{-d})\)</span> where <span class="SimpleMath">\(d\)</span> is a square free positive integer and <span class="SimpleMath">\({\cal O}_{-d}\)</span> is the ring of integers of the imaginary quadratic field <span class="SimpleMath">\(\mathbb Q(\sqrt{-d})\)</span>. These groups act on <em>upper-half space</em></p>
<p>where we use the symbol <span class="SimpleMath">\(j\)</span> satisfying <span class="SimpleMath">\(j^2=-1\)</span>, <span class="SimpleMath">\(ij=-ji\)</span> and write <span class="SimpleMath">\(z+tj\)</span> instead of <span class="SimpleMath">\((z,t)\)</span>. Alternatively, the action is given by</p>
<p>We take the boundary <span class="SimpleMath">\(\partial {\frak h}^3\)</span> to be the Riemann sphere <span class="SimpleMath">\(\mathbb C \cup \infty\)</span> and let <span class="SimpleMath">\(\overline{\frak h}^3\)</span> denote the union of <span class="SimpleMath">\({\frak h}^3\)</span> and its boundary. The action of <span class="SimpleMath">\(G_{-d}\)</span> extends to the boundary. The element <span class="SimpleMath">\(\infty\)</span> and each element of the number field <span class="SimpleMath">\(\mathbb Q(\sqrt{-d})\)</span> are thought of as lying in the boundary <span class="SimpleMath">\(\partial {\frak h}^3\)</span> and are referred to as <em>cusps</em>. Let <span class="SimpleMath">\(X\)</span> denote the union of <span class="SimpleMath">\({\frak h}^3\)</span> with the set of cusps, <span class="SimpleMath">\(X={\frak h}^3 \cup \{\infty\} \cup \mathbb Q(\sqrt{-d})\)</span>. It follows from work of Bianchi and Humbert that the space <span class="SimpleMath">\(X\)</span> admits the structure of a regular CW-complex (depending on <span class="SimpleMath">\(d\)</span>) for which the action of <span class="SimpleMath">\(G_{-d}\)</span> on <span class="SimpleMath">\({\frak h}^3\)</span> extends to a cellular action on <span class="SimpleMath">\(X\)</span> which permutes cells. Moreover, <span class="SimpleMath">\(G_{-d}\)</span> acts transitively on the <span class="SimpleMath">\(3\)</span>-cells of <span class="SimpleMath">\(X\)</span> and each <span class="SimpleMath">\(3\)</span>-cell has trivial stabilizer in <span class="SimpleMath">\(G_{-d}\)</span>. Details are provided in Richard Swan's paper <a href="chapBib_mj.html#biBswanB">[Swa71b]</a>.</p>
<p>We refer to the closure in <span class="SimpleMath">\(X\)</span> of any one of these <span class="SimpleMath">\(3\)</span>-cells as a <em>fundamental domain</em> for the action <span class="SimpleMath">\(G_{-d}\)</span>. Cohomology of <span class="SimpleMath">\(G_{-d}\)</span> can be computed from a knowledge of the combinatorial structure of this fundamental domain together with a knowledge of the stabilizer groups of the cells of dimension <span class="SimpleMath">\(\le 2\)</span>.</p>
<h4>14.2 <span class="Heading">Swan's description of a fundamental domain</span></h4>
<p>A pair <span class="SimpleMath">\((a,b)\)</span> of elements in <span class="SimpleMath">\({\cal O}_{-d}\)</span> is said to be <em>unimodular</em> if the ideal generated by <span class="SimpleMath">\(a,b\)</span> is the whole ring <span class="SimpleMath">\({\cal O}_{-d}\)</span> and <span class="SimpleMath">\(a\ne 0\)</span>. A unimodular pair can be represented by a hemisphere in <span class="SimpleMath">\(\overline{\frak h}^3\)</span> with base centred at the point <span class="SimpleMath">\(b/a \in \mathbb C\)</span> and of radius <span class="SimpleMath">\(|1/a|\)</span>. The radius is <span class="SimpleMath">\(\le 1\)</span>. Think of the points in <span class="SimpleMath">\({\frak h}^3\)</span> as lying strictly above <span class="SimpleMath">\(\mathbb C\)</span>. Let <span class="SimpleMath">\(B\)</span> denote the space obtained by removing all such hemispheres from <span class="SimpleMath">\({\frak h}^3\)</span>.</p>
<p>It is explained in <a href="chapBib_mj.html#biBswanB">[Swa71b]</a> that <span class="java.lang.StringIndexOutOfBoundsException: Range [0, 98) out of bounds for length 7
<h4>14.3 <span class="Heading">Computing a fundamental domain</span></h4>
<p>Explicit fundamental domains for certain values of <span class="SimpleMath">\(d\)</span> were calculated by Bianchi in the 1890s and further calculations were made by Swan in 1971 <a href="chapBib_mj.html#biBswanB">[Swa71b]</a>. In the 1970s, building on Swan's work, <span class="URL"><a href="https://www.sciencedirect.com/science/article/pii/S0723086913000042">Robert Riley</a></span> developed a computer program for computing fundamental domains of certain Kleinian groups (including Bianchi groups). In their 2010 PhD theses <span class="URL"><a href="https://theses.hal.science/tel-00526976/en/">Alexander Rahm</a></span> and <span class="URL"><a href="https://wrap.warwick.ac.uk/id/eprint/35128/">M.T. Aranes</a></span> independently developed Pari/GP and Sage software based on Swan's ideas. In 2011 <span class="URL"><a href="https://mathstats.uncg.edu/sites/yasaki/publications/bianchipolytope.pdf">Dan Yasaki</a></span> used a different approach based on Voronoi's theory of perfect forms in his Magma software for fundamental domains of Bianchi groups. <span class="URL"><a href="http://www.normalesup.org/~page/Recherche/Logiciels/logiciels-en.html">Aurel Page</a></span> developed software for fundamental domains of Kleinian
<p>More recently a <strong class="button">GAP</strong> implementation of Swan's algorithm has been included in <strong class="button">HAP</strong>. The implementation uses exact computations in <span class="SimpleMath">\(\mathbb Q(\sqrt{-d})\)</span> and in <span class="SimpleMath">\(\mathbb Q(\sqrt{d})\)</span>. A bespoke implementation of these two fields is part of the implementation so as to avoid making apparently slower computations with cyclotomic numbers. The account of Swan's algorithm in the thesis of Alexander Rahm was the main reference during the implementation.</p>
<ndamental domain <class="impleMath"\=overline{ \ }<>(heretheoverline denotes ) boundary<span class="impleMath"\\artial D)</span involvingthe four verticalquadrilateral< "impleMath">(2\<span>-cells containedinthe four vertical quadrilateral span class=SimpleMath"\2\)<span>cells <span class="SimpleMath">\(\partial F\)</span>. We refer to these as the <em>vertical <span class="SimpleMath">\(2\)</span>-cells</em> of <span class="SimpleMath">\(D\)</span>. When visualizing <span class="SimpleMath">\(D\)</span> we ignore the <span class="SimpleMath">\(3\)</span>-cell and the four vertical <span class="SimpleMath">\(2\)</span>-cells entirely and visualize only the remaining <span class="SimpleMath">\(2\)</span>-cells. These <span class="SimpleMath">\(2\)</span>-cells can be viewed as a <span java.lang.StringIndexOutOfBoundsException: Range [0, 881) out of bounds for length 0
<p>A fundamental domain for <span java.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 0
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">D:=BianchiPolyhedron(-39);</span> 3-dimensional Bianchi polyhedron over OQ( Sqrt(-39) )
involving hemispheresminimum squared radius 1/
and non-cuspidal vertices of minimum squared height 1/49 .
<>A<>usp <class>(\</pan> isanyvertex of <spanclass"impleMath"\D<span> lying in <span class="SimpleMath">\(\mathbb C \cup \infty\)</span>. In the above visualizations for <span class="SimpleMath">\(G_{-39}\)</span> several cusp vertices in <span class="SimpleMath">\(\mathbb C\)</pan are :inthe2-dimensionalvisualizationtheyarerepresented java.lang.StringIndexOutOfBoundsException: Range [421, 420) out of bounds for length 899
<p>The following additional commands comvert the Bianchi polyhedron <span class="SimpleMath">\(D\)</span> to a regular CW-complex and then display its <span class="SimpleMath">\(1\)</span>-skeleton.</p>
<java.lang.StringIndexOutOfBoundsException: Range [11, 2) out of bounds for length 223
<p>Two cusps are visible in the visualizations for <span class="SimpleMath">\(G_{-22}\)</span>. They lie in a single orbitjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
<p>A fundamental domain for <span class="SimpleMath">\(G_{-163}\)</span> can be visualized using the following commands.</p>
<p><img src="images/bianchi3D163.png" align="center" height="550" alt="Fundamental domain for a Bianchi group"/> <img src="images/bianchi2D163.png" align="center" width="350" alt="Fundamental domain for a Bianchi group"/></p>
<p>There is just a single orbit of cusps in this example, the orbit containing <span class="SimpleMath">\(\infty\)</span>, since <span class="SimpleMath">\(\mathbb Q(\sqrt{-163})\)</span> is aprincipal ideal domain and hence has trivial class group.</p>
<p>A fundamental domain for <span class="SimpleMath">\(G_{-33}\)</span> is visualized using the following commands.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput
<prompt">gap><span span ="GAPinput"Display3D(,);;<span>
<java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 0
<>14..5 <span class=Heading">Establishing correctness of a fundamental domain</span></h4>
<p
<p>Forjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
<div
<=G"gapgts>java.lang.StringIndexOutOfBoundsException: Range [51, 50) out of bounds for length 95
Try
Bjava.lang.StringIndexOutOfBoundsException: Range [23, 22) out of bounds for length 29
for some guessed positive integer value <span class="GAPprompt">gap></span> <sp;<span
(Pjava.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
o if value Nwas enough the false you\ 'll need to try a larger value of N.
ApThereisjust single inthis example thejava.lang.StringIndexOutOfBoundsException: Range [68, 67) out of bounds for length 254
ich can be manually file/libCongruence.i
<span class="GAPprompt">gap></span> <span class="GAPinput">P:=BianchiPolyhedron(-46,600);</span> 3- Bianchi polyhedron (Sqrt
-46) ) involving hemispheres of minimum squared radius 1/ 441 and non-cuspidal vertices of minimum squared height 1/8280 .
<div class="example"><pre>
<span class=GAPprompt"gap&t;/span> <span class=GAPinput"Kjava.lang.StringIndexOutOfBoundsException: Range [81, 80) out of bounds for length 94
<p>The cusps of a fundamental domain can be calculated independently of the domain computation
<spanclass="GAPprompt">&t<span><class"GAPinput">:=TensorWithIntegers);/span>
<span class="GAPprompt">gap>
[ [ 0 ], [ 0, 0 ]=java.lang.StringIndexOutOfBoundsException: Range [24, 22) out of bounds for length 95 P(QN;
<span class="GAPprompt">gap></span> <span class="java.lang.StringIndexOutOfBoundsException: Index 54 out of bounds for length 26
<span class="GAPprompt">gap></span> <span java.lang.StringIndexOutOfBoundsException: Range [0, 50) out of bounds for length 36 span class=GAPprompt>apgt;/>< =G">ist(0..0],-gt;Homology(TensorWithIntegers()k)<span>
[ [ 0 ], [ 2, 2, 0, 0, be edited manually inthefile hap/Congruence/ianchigi.
[ 24,12 ,[ 2,2 ,6] 2 ,, 12 ] [,2,224]
[ 2, 4, 12 ], [ 46 involvinghemispheresminimum radius/
<span java.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 0
<span class
<span class=</>
,00 ,0,, ,, ,4 ,0 , ,
[ 2, 2, 2, 2, 24 ], [ 2, 2, 2, 4, 12 ], [ 2, 2, 2, 2, 24 ],
[ 2, 2, 2, 2, 24 ], [ 2, 2, 2, 4, 12 ] ]
</pre></java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
Thefollowing count number ofcusps(n additionto orbit of <span=java.lang.StringIndexOutOfBoundsException: Range [118, 114) out of bounds for length 547
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">K:=BianchiGcomplex(-43);;</span>
< class="GAPprompt"gapgt<span <span class="APinput"List.!0]kg;rder!stabilizer;/java.lang.StringIndexOutOfBoundsException: Range [128, 127) out of bounds for length 128
[ 24, 24, 6, 6, 4, 4, 12, 12 ]
<span class="GAPprompt">gap></span> <span class="GAPinput">K:=BianchiGcomplex(-10);;</span> span ="GAPprompt">gap></span> <span class="GAPinput">List([1..K!.dimension(0)],k->Order(K!.stabilizer(0,k)));</span>
[6, 64, 4, 6, infinity java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 27
<p>class"java.lang.StringIndexOutOfBoundsException: Range [23, 22) out of bounds for length 95
<> =java.lang.StringIndexOutOfBoundsException: Range [33, 27) out of bounds for length 62
<h5>14.7-1 <span ,[,00 ,[,,,4 ,0 ,, ,
<java.lang.StringIndexOutOfBoundsException: Range [2, 1) out of bounds for length 62
<p>One easy test to make in our computations is to check that , , ,[,2 ,2 ][ 2, 2, 24,12]
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="java.lang.StringIndexOutOfBoundsException: Index 58 out of bounds for length 0
< class=G>>span>< "">:0;/>
<span class="GAPprompt">gap></span> <span class="GAPinput">for
java.lang.StringIndexOutOfBoundsException: Range [24, 22) out of bounds for length 98
java.lang.StringIndexOutOfBoundsException: Range [12, 11) out of bounds for length 95
<span class="GAPprompt">></span> <span class="GAPinput">if g < infinity then [2424,6,64, 4,12, 12
<span class="GAPprompt""APprompt">&;span ="java.lang.StringIndexOutOfBoundsException: Range [67, 66) out of bounds for length 128
<span class="GAPprompt">gap></span> <span class="GAPinput">chi;</span>
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
</pre></div>
<p><a id="X852CDAFF84C5DF01" name="java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
<h5>14.7-2 <span class="Heading">Boundary squares to zero</span></h5>
<p>java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
<div class="<span class="GAPprompt><span><panclass=GAPinput>chi:;<span>
<java.lang.StringIndexOutOfBoundsException: Range [22, 5) out of bounds for length 94
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=FreeGResolution(K,10)< class="APprompt">gt<span><pan=GAPinput>for in1.!dimension) <span>
<span class="GAPprompt">gap></span> <span class="GAPinput">span class="&<span>span class="> &;infinity chi:chi+(-)/;fi</spanjava.lang.StringIndexOutOfBoundsException: Index 114 out of bounds for length 114
[ [ ], [ ], APprompt>gt< < =G">;/spanjava.lang.StringIndexOutOfBoundsException: Index 73 out of bounds for length 73
[ ] ] ,[ ,[ ,[ ,[ ] ,[ ,[ ,[ ,[ ,
[ ], [ ], [
<panclass"GAPprompt"gapg;/pan <class"GAPinput">n=;ist1.!dimension]&java.lang.StringIndexOutOfBoundsException: Range [127, 124) out of bounds for length 157
,]][] ]
[ ], [ ], [ ], [ ], [ ], [ ], [ ], [ ], [ ], [ ], [ ], [ ],
[ ,[ ,[
<span java.lang.StringIndexOutOfBoundsException: Range [0, 11) out of bounds for length 0
[ [ ], [ ], [ ]
[ ], [ ], [ ], [ ], [ ], [ ], [ ], [ ], [ ], [ ], [ ], [ ],
[ , [ ], []]
<span class="GAPprompt">gap></span> <span class="GAPinput">n:=5;;List([1..R!.dimensionspanclass=G">gt/ span class="=;List1.!.(n]k&;esolutionBoundaryOfWord-1R.oundary,k);/java.lang.StringIndexOutOfBoundsException: Index 157 out of bounds for length 157
, , , , ,[] ] ,[, ,[, ,
[ ], [ ] , ,[ java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 20
[ ], [ ], [ ] ]
/>
p"E64819A7C058EDD="7E64819A7C058EDD>/java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
< , ] ,[] [] ] ] [ ,[ ,[] ,[ ]
<p>Sebastian Schoennenbeck in his thesis work computed some contractible ,[ ] ]]
<p>The following commands test that Sebastian Schoennenbeck's <span class="SimpleMath[ ], ,[ ,[ ], [ ,[ ,[] [ , [] , [ ,[ ,
< ] [],[
<java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 0
<=""gap;<span><span""R=(,0);/>
<java.lang.StringIndexOutOfBoundsException: Range [60, 5) out of bounds for length 122
[[0],[1200, 0 ] [2, 2,12, 0, 0 ], [ 2, 2, 12 ] [2,2,12 ]
[ 2, 2, 12 ], [ 2, 2, 12 ], [ 2, 2, 12 ], [ 2, 2, 12 ], [ 2, 2, 12 ] ]
<p>The number of cusps (i.e. the number of orbits of vertices with infinite stabilizer subgroup) must be precisely one less than the number of elements in the ideal class java.lang.StringIndexOutOfBoundsException: Range [0, 176) out of bounds for length 0
<p>A visualization of the fundamental domain tells us a certain amount java.lang.StringIndexOutOfBoundsException: Range [0, 76) out of bounds for length 0
<
<p>a fundamental domain forp>The number of cusps (i.e. the number of orbits of vertices with infinite stabilizer subgroup)java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
<p>Swan's reason for studying fundamental domains was to obtain explicit group presentations for <span class="SimpleMath">\(SL_2({\mathcal O}_{-d})\)</span> for various values of <span class="SimpleMath">\(d\)</span>. The following commands obtain a presentation for <span class="SimpleMath">\(SL_2({\mathcal O}_{-23})\)</span>.</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">K:=BianchiGcomplex(-23);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">R:=FreeGResolution(K,2);;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">P:=PresentationOfResolution(R);</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">G:=SimplifiedFpGroup(P!.freeGroup/P!.relators);</span>
<fp group on the generators [ k, r, s, w, x ]>
<span class="GAPprompt">gap></span> <span class="GAPinput">RelatorsOfFpGroup(G);</span>
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
^^- 1
<span
<="GAPprompt">gap></span> <span class="GAPinput">GeneratorsOfGroup(P!.freeGroup);</span>
[ k, m, n, p, q, r, s, t, u, v, w, x "gap>/span> <span class="GAPinput">P!.gens;</span>
[ 19, 6, 6, 20, 6, 21, 22, 6span=">&;/><spanclass=">:=BianchiGcomplex(23));;/span>
<span class=" 10, 4, 4, 4, 4]
[ [ 1, 1 ],
<span class="GAPprompt">gap&java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
[ [ 3, 3 + -1 Sqrt(-23) ],
[ -3/2 + -1/2 Sqrt(-23), -5 ] ]
< G"&;span><span =GAPinput">:R22];/>
[ [ 2 + 1 Sqrt(-23), 13/2 + 1/2 class="GAPprompt">gap></span>:FreeGResolution(K2);;<span
[ 5/2 + -1/2 Sqrt(-23), -1 Sqrt(-23) ] ]
< =GAPprompt">apgt;/ span =java.lang.StringIndexOutOfBoundsException: Range [61, 60) out of bounds for length 83 2+/) 2 / 23 ,
[ r-w1*rw^x*sr-*k^-rk^java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 49
<span class="GAPprompt">gap></span> <span java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 0
[ [ 11/2 +< ">g;/pan span=java.lang.StringIndexOutOfBoundsException: Range [62, 60) out of bounds for length 101
[ -1 Sqrt(-23), -4 + -1 Sqrt(-23) ] s =G"java.lang.StringIndexOutOfBoundsException: Range [28, 27) out of bounds for length 77
<p>The following commands compute the integral homology of a congruence subgroup <span java.lang.StringIndexOutOfBoundsException: Range [2, 1) out of bounds for length 33
<div class="example"><pre[5/2 + -java.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42
<span class="GAPprompt">gap></span> <span class="GAPinput">OQ:=RingOfIntegers(QuadraticNumberField(-23));;</span>
<span class="GAPprompt">gap></span> <span class="GAPinput">I:=QuadraticIdeal(OQ,[Sqrt(-23)]);</span>
ideal of norm 23 in O(Q(span class="GAPprompt">gap></span> <span class="GAPinput">x:=R!.elts[50];</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> <java.lang.StringIndexOutOfBoundsException: Index 43 out of bounds for length 0 24
<div class="chlinkprevnextbot"> <a href="chap0_mj.html">[Top of Book]</a> <a href="chap0_mj.html#contents">[
<div class="chlinkbot"><span class="chlink1">Goto Chapter: </span><a href="chap0_mj./GAPp class<"/.math-java.lang.StringIndexOutOfBoundsException: Range [67, 66) out of bounds for length 112
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.