Hyperbolic Groups#
A hyperbolic reflection group is a group generated by reflections in hyperbolic space. A Coxeter group is called hyperbolic if it is infinite, nonaffine, and it has a representation as a discrete, properly acting, hyperbolic reflection group whose Tits’ cone consists entirely of vectors with negative norm (see [Bourbaki, 1968] for more details). A hyperbolic reflection group is compact hyperbolic if it is hyperbolic with a compact fundamental region.
Every infinite nonaffine Coxeter group of rank 3 is hyperbolic. There are only 72 hyperbolic groups of rank larger than 3 which, for convenience, are numbered from 1 to 72. The numbering is essentially arbitrary.
- IsCoxeterHyperbolic(M): AlgMatElt -> BoolElt#
- IsCoxeterCompactHyperbolic(M): AlgMatElt -> BoolElt#
Returns
trueif, and only if, the matrix \(M\) is the Coxeter matrix of a (compact) hyperbolic Coxeter group.
- IsCoxeterHyperbolic(G): GrphUnd -> BoolElt#
- IsCoxeterCompactHyperbolic(G): GrphUnd -> BoolElt#
Returns
trueif, and only if, the graph \(G\) is the Coxeter graph of a (compact) hyperbolic Coxeter group.
- HyperbolicCoxeterMatrix(i): RngIntElt -> AlgMatElt#
The Coxeter matrix of the \(i\)th hyperbolic Coxeter group of rank larger than 3.
- HyperbolicCoxeterGraph(i): RngIntElt -> GrphUnd#
The Coxeter graph of the \(i\)th hyperbolic Coxeter group of rank larger than 3.
- Example: Hyperbolic (ex-4b6e52)#
> for i in [1..72] do > if IsCoxeterCompactHyperbolic(HyperbolicCoxeterMatrix(i)) then > printf "%o, ", i; > end if; > end for; 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,