The new and improved version of this software is called Bella.
This is a computational package for dealing with the Riley slice of Schottky space [KS94, KS98] and its elliptic generalisations, along with the associated combinatorial group theory and geometry. In order to generate Farey polynomials, we use the results obtained in our paper [EMS22a]. We also have some further recent results on the Riley slice which are of interest from a computational point of view [EMS21]; in a later version of this software we will incorporate some of the insights from this paper. The program graphical_limits.py was inspired by the schottky software written by Danny Calegari and Alden Walker.
- Authorship
- Background material and related work
- The software included here
- Future features? Some easy, some (very) hard
- Dependencies
- References
Table of contents generated with markdown-toc
This software was written by Alex Elzenaar under the supervision of Gaven Martin (NZ Institute of Advanced Study, Massey University) and Jeroen Schillewaert (The University of Auckland).
For background material in Kleinian groups which underpins the mathematics we study using this software, see [B83,M87]. Background specific to the Riley slice may be found in the proceedings article [EMS22b] and in my MSc thesis [Elz22]. For a more practical introduction to some of the computational geometry and some very nice pictures, see [MSW02] and its associated website.
- graphical_limits.py -- this is a piece of GUI software which displays the various Riley slices and allows the user to click around to view the limit set of a particular group.
- limit_plotter.py -- a script to plot limit sets of general finitely-generated Kleinian groups (in colour!). Example output: the parabolic 1/2-cusp limit set (max word length 15, 50000 points)
- slice_plotter.py -- a script to plot Riley slices without all the extra machinery in graphical_limits.py.
- farey_graph.py -- a script to plot the Farey addition graph with the butterfly colouring. Example output: the addition graph, the Stern-Brocot tree
- cusps.py -- a script to plot the limit set at a given cusp point. If you have a powerful computer and want much better pictures, you probably want to use cusps_shaded.py instead which attempts to use datashader.
- generate_polynomials.py -- generate a file of Mathematica code containing lots of Farey polynomials.
- limit_set_with_circles.py -- plot limit sets together with the isometric circles.
- badpoints.py -- generate a graph of the `bad points' in the Farey tree, see Conjecture 6.7 of [EMS22a].
- indranecklace.py -- generate the `Indra's Necklace' limit sets from Chapter 8 of [MSW02]. Example output: the group from Fig. 8.5(iv).
There are three files containing general Python code which can be called in the Python interpreter or used in Python scripts.
- kleinian.py -- methods for general Kleinian groups (e.g. limit set calculations)
- farey.py -- methods for working with Farey words and polynomials
- riley.py -- methods for working with the Riley slices
- Draw the associated surface for a point (somehow) together with the corresponding foliation
- Plot pleating ray of given slope
- Check computationally if a point is in or out
- Zooming
- Trace curve & give animation
- Compute Teichmuller distance, draw Teichmuller geodesics. Perhaps this is best done by studying the associated foliations.
- Plot 2-bridge knot groups and other features of interest in the exterior. See for instance [ASWY07].
Disclaimer: this is academic software so may require some fiddling to get it to work on your machine.
- Python 3 (tested on 3.9.7)
- scipy (all)
- mpmath (all)
- mpsolve (optional, falls back to numpy if not installed - but produces much better results)
- matplotlib (limit_plotter.py, slice_plotter.py)
- tkinter (graphical_limits.py)
- pydot, networkx (farey_graph.py)
- datashader, pandas, and dask (cusps_shaded.py)
[ASWY07] Hirotaka Akiyoshi, Makoto Sakuma, Masaaki Wada, and Yasushi Yamashita. Punctured torus groups and 2-bridge knot groups I. Lecture Notes in Mathematics 1909. Springer, 2007
[B83] Alan F. Beardon. The geometry of discrete groups. Graduate Texts in Mathematics 91. Springer-Verlag, 1983.
[Elz22] Alex Elzenaar. “Deformation spaces of Kleinian groups”. MSc thesis. The University of Auckland, 2022.
[EMS21] Alex Elzenaar, Gaven Martin, and Jeroen Schillewaert. “Approximations of the Riley slice”. November 2021. arXiv:2111.03230 [math.GT].
[EMS22a] Alex Elzenaar, Gaven Martin, and Jeroen Schillewaert. “The combinatorics of Farey words and their traces”. April 2022. arXiv:2204.08076 [math.GT]. A version with minor corrections is on my website.
[EMS22b] Alex Elzenaar, Gaven Martin, and Jeroen Schillewaert. “Concrete one complex dimensional moduli spaces of hyperbolic manifolds and orbifolds”. In: 2021-22 MATRIX annals. Ed. by David R. Wood, Jan de Gier, Cheryl E. Prager, and Terrence Tao. MATRIX Book Series 5. Springer, to appear.
[KS94] Linda Keen and Caroline Series. “The Riley slice of Schottky space”. In: Proceedings of the London Mathematics Society 3.1 (69 1994), pp. 72–90.
[KS98] Yohei Komori and Caroline Series. “The Riley slice revisited”. In: The Epstein birthday schrift. Vol. 1. Geometry and Topology Monographs. 1998, pp. 303–316.
[M87] Bernard Maskit. Kleinian groups. Grundlehren der mathematischen Wissenshaften 287. Springer-Verlag, 1987.
[MSW02] David Mumford, Caroline Series, and David Wright. Indra’s pearls: The vision of Felix Klein. Cambridge University Press, 2002.