Even More Infinite Ball Packings from Lorentzian Root Systems

Boyd (1974) proposed a class of infinite ball packings that are generated by inversions. Later, Maxwell (1983) interpreted Boyd's construction in terms of root systems in Lorentz space. In particular, he showed that the space-like weight vectors correspond to a ball packing if and only if the associated Coxeter graph is of"level $2$."In Maxwell's work, the simple roots form a basis of the representations space of the Coxeter group. In several recent studies, the more general based root system is considered, where the simple roots are only required to be positively independent. In this paper, we propose a geometric version of"level"for the root system to replace Maxwell's graph theoretical"level."Then we show that Maxwell's results naturally extend to the more general root systems with positively independent simple roots. In particular, the space-like extreme rays of the Tits cone correspond to a ball packing if and only if the root system is of level $2$. We also present a partial classification of level-$2$ root systems, namely the Coxeter $d$-polytopes of level-$2$ with $d+2$ facets.


Introduction
The title refers to a paper of Boyd titled "A new class of infinite sphere packings" [Boy74], in which he described a class of infinite ball packings that are generated by inversions, generalising the famous Apollonian disk packing.
Maxwell [Max82] generalized Boyd's construction by interpreting the ball packing as the spacelike weights of an infinite root system in Lorentz space. In particular, Maxwell defined the "level" of a Coxeter graph as the smallest integer l such that the deletion of any l vertices leaves a Coxeter graph for finite or affine Coxeter system. He then proved that the space-like weights correspond to a ball packing if and only if the associated Coxeter graph is of level 2.
Labbé and the author [CL14] revisited Maxwell's work, and found connections with recent works on limit roots. Limit roots are accumulation points of the roots in projective space. The notion was introduced and studied in [HLR14], where the authors also proved that limit roots lie on the isotropic cone of the quadratic space. The relations between limit roots and the imaginary cone are investigated in [Dye13] and [DHR13].
For root systems in Lorentz space, the set of limit roots is equal to the limit set of the Coxeter group seen as a Kleinian group acting on the hyperbolic space [HPR]. In [CL14], we proved that the accumulation points of the roots and of the weights coincide on the light cone in the projective space. As a consequence, when the Coxeter graph is of level 2, the set of limit roots is the residue set of the ball packing described by Boyd and Maxwell. Furthermore, we gave a geometric interpretation for Maxwell's notion of level, described the tangency graph of the Boyd-Maxwell ball packing in terms of the Coxeter complex, and completed the enumeration of 326 Coxeter graphs of level 2.
Comparing to [Max82], the root systems considered in most studies of limit roots (e.g. [DHR13,HLR14]) are more general in several ways: First, the root systems considered in [DHR13,HLR14] are not necessarily in a Lorentz space. For non-Lorentzian root systems, we conjectured in [CL14] that the accumulation points of roots still coincide with the accumulation points of weights.
Second, even if the root system is Lorentzian, the associated Coxeter graph is not necessarily of level 2. The cases of level = 2 were also investigated in [CL14]. It turns out that no ball appears if the Coxeter graph is of level 1, and balls may intersect if the Coxeter graph is of level > 2. In either case, it remains true that the set of limit roots is the residue set of the balls corresponding to the space-like weights.
The current paper deals with a third gap. Maxwell only considered the case where the simple roots form a basis of the representation space, so one can define the fundamental weights as the dual basis. However, in [DHR13] and [HLR14], the more general based root system is considered, which only requires the simple roots to be positively independent, but not necessarily linearly independent.
In order to extend Maxwell's results to based root systems, we propose the notion of "level" for root systems to replace Maxwell's graph theoretical "level". The definition is based on the geometric interpretation in [CL14]. When the simple roots are linearly independent as in [Max82], our level for the root system and Maxwell's level for the Coxeter graph coincide. Moreover, in place of the weight vectors, we will look at the extreme rays of the Tits cone. Then we show in Section 3 that all the results in [Max82] and [CL14] extend to the more general setting. In particular: The correspondance will be explained in Section 3.2. We consider the ball packing in the theorem as associated to the based root system, then Theorem 1.2 (extending [CL14, Theorem 3.8]). The set of limit roots of a Lorentzian root system of level 2 is equal to the residual set of the associated ball packing.
Maxwell's proofs rely on the decomposition of vectors into basis vectors (i.e. the simple roots), which is not possible in our setting. Hence many proofs need to be revised. Our proofs will make heavy use of projective geometry.
For many Lorentzian root systems of level 2, the associated Coxeter graph is not of level 2 in Maxwell's sense. So our results imply many new infinite ball packings generated by inversions. In Section 4, we provide a partial classification of Lorentzian root systems of level 2. More specifically, we try to classify the Coxeter d-polytopes of level 2 with d + 2 facets. For this, we follow the approach of [Kap74,Ess96,Tum04] for enumerating hyperbolic Coxeter d-polytopes with d+2 facets, and take advantage of previous enumerations of Coxeter systems, such as [Lan50,Che69,CL14]. Our enumeration makes contribution to the study of infinite-covolume hyperbolic reflection groups.
2. Level of Lorentzian root systems 2.1. Lorentz space. A quadratic space is a pair (V, B) where V is a real vector space and B is a symmetric bilinear form on V . Two vectors x, y ∈ V are said to be orthogonal if B(x, y) = 0. For a subspace U ⊆ V , its orthogonal companion is the set The orthogonal companion V ⊥ of the whole space V is called the radical. We say that (V, B) is degenerate if the radical V ⊥ contains non-zero vectors. In this case, the matrix of B = (B(e i , e j )) is singular for any basis {e i } of V .
The signature of (V, B) is the triple (n + , n 0 , n − ) indicating the number of positive, zero and negative eigenvalues of the matrix B. For non-degenerate spaces we have n 0 = 0. A non-degenerate space is an Euclidean space if n − = 0 (i.e. B is positive definite), or a Lorentz space if n − = 1.
The group of linear transformations of V that preserve the bilinear form B is called an orthogonal group, and is denoted by O B (V ). The orthogonal group of a Lorentz space is called a Lorentz group.
The set Q = {x ∈ V | B(x, x) = 0} is called the isotropic cone, and vectors in Q are said to be isotropic. In Lorentz space, the isotropic cone is called the light cone, and isotropic vectors are said to be light-like. Two light-like vectors are orthogonal if and only if one is the scalar multiple of the other. A non-isotropic vector x ∈ V is said to be space-like (resp. time-like) if B(x, x) > 0 (resp. < 0). A subspace U ⊆ V is said to be space-like if its non-zero vectors are all space-like, light-like if it contains some non-zero light-like  vector but no time-like vector, or time-like if it contains time-like vectors. For a non-isotropic vector α ∈ V , the reflection in α is defined as the map The orthogonal companion of αR, is the hyperplane fixed by the reflection s α , and is called the reflecting hyperplane of α. One verifies that α is space-like (resp. time-like) if and only if H α is time-like (resp. space-like).
2.2. Based root systems. The based root system has been the framework of several recent studies of infinite Coxeter systems, including [HRT97,Kra09,DHR13,HLR14] etc., and traces back to Vinberg [Vin71].
Recall that an abstract Coxeter system is a pair (W, S), where S is a finite set of generators and the Coxeter group W is generated by S with the relations (st) mst = e where s, t ∈ S, m ss = 1 and m st = m ts ≥ 2 or = ∞ if s = t. The cardinality n = |S| is the rank of the Coxeter system (W, S). For an element w ∈ W , the length of w, denoted by (w), is the smallest natural number k such that w = s 1 s 2 . . . s k for s i ∈ S. Readers unfamiliar with Coxeter groups are invited to consult [Bou68,Hum92] for basics.
(3) ∆ is positively independent. That is, a linear combination of ∆ with non-negative coefficient only vanishes when all the coefficients vanish. We assume that ∆ spans V . If this is not the case, we replace V by the subspace Span(∆), and B by its restriction on Span(∆).
Following [HRT97], we call ∆ a free root basis if it also forms a basis of V . Following [Kra09], we call a free root basis ∆ classical if B(α, β) ≥ −1 for all α, β ∈ ∆. The classical root basis is presented in textbooks such as [Bou68,Hum92].
Let S = {s α | α ∈ ∆} be the set of reflections in vectors of ∆, and W be the reflection subgroup of O B (V ) generated by S. Then (W, S) is a Coxeter system, where the order of s α s β is k if B(α, β) = − cos(π/k), or ∞ if B(α, β) ≤ −1. Let Φ := W (∆) be the orbit of ∆ under the action of W , then the pair (∆, Φ) is called a based root system in (V, B) with associated Coxeter system (W, S). Vectors in ∆ are called simple roots, and vectors in Φ are called roots. The roots Φ are partitioned into positive roots Φ + = Cone(∆) ∩ Φ and negative roots Φ − = −Φ + . The rank of (∆, Φ) is the cardinality of ∆. In the following, we write w(x) for the action of w ∈ W on V , and the word "based" is often omitted. A based root system in Euclidean space has a classical root basis, in which case the associated Coxeter system is of finite type, and we say the root system is finite.
the based root system (∆, Φ) in (V, B) also has a classical root basis; in this case, we say that (∆, Φ) is affine since the associated Coxeter system must be of affine type. If (V, B) is a Lorentz space, we say that the root system (∆, Φ) is Lorentzian. Finally, (∆, Φ) is said to be non-degenerate if (V, B) is. A based root system is irreducible if there is no proper partition ∆ = ∆ I ∆ J such that B(α, β) = 0 for all α ∈ ∆ I and β ∈ ∆ J , in which case the associated Coxeter group is also irreducible.
2.3. Geometric representations of Coxeter systems. Given an abstract Coxeter system (W, S) of rank n. We introduce a matrix B such that for s, t ∈ S, where c st are chosen arbitrarily with c st = c ts ≥ 1. Note that if m st is finite for all s, t ∈ S, there is only one choice for the matrix B. This is the case when, for instance, (W, S) is of finite or affine type (with the exception of I ∞ ). In [CL14], the Coxeter system (W, S) associated with the matrix B is referred to as a geometric Coxeter system, and denoted by (W, S) B . With the matrix B, there is a canonical way to associate (W, S) to a root system with free root basis. Let V be a real vector space of dimension n with basis {e s } s∈S indexed by the elements in S. Then the matrix B defines a bilinear form B on V by B(e s , e t ) = e s Be t for s, t ∈ S. The basis {e s } s∈S form a free root basis in (V, B). The homomorphism that maps s ∈ S to the reflection in e s is a faithful geometric representation of the Coxeter group W as a discrete reflection subgroup of the orthogonal group O B (V ). This is the representation considered in Maxwell [Max82].
In the present paper, we focus on based root systems in Lorentz space, which is non-degenerate. Moreover, we are particularly interested in root basis that is not linearly independent. Hence we prefer non-degenerate root systems. With the free root basis above, there is a canonical way to obtain a non-degenerate root system by "dividing out the radical" [Kra09, Section 6.1].
If the matrix B is singular with rank d, then the dimension of the radical V ⊥ is n − d. The bilinear form B restricted on the quotient space U = V /V ⊥ is non-degenerate. Let α s be the projection of e s onto U for all s ∈ S. If the root system induced by {e s } s∈S is not affine, the vectors ∆ = {α s | s ∈ S} are positively independent and form a root basis in (U, B) such that B(α s , α t ) = B st [Kra09, Proposition 6.1.2]. The homomorphism that maps s ∈ S to the reflection in α s is a faithful geometric representation of the Coxeter group W as a discrete reflection subgroup of the orthogonal group O B (U ).
This process does not work for affine root systems. We call a root system canonical if it is non-degenerate or affine. The process described in the previous paragraph is called canonicalization. Unless otherwise stated, root systems in this paper are all canonical.
We adopt Vinberg's convention to encode the matrix B into the Coxeter graph. That is, if c st > 1 the edge st is dotted and labeled by −c st . This convention is also used by Abramenko-Brown [AB08, Section 10.3.3] and Maxwell [Max82, Section 1]. The Coxeter graph is connected if and only if the Coxeter system it represents is irreducible.
Maxwell proposed the following definition: Definition 2.1 (Level of a Coxeter graph). The level of a Coxeter graph is the smallest integer l such that deletion of any l vertices leaves a Coxeter graph of a finite or affine root system.
2.4. Facials subsets and the level of root systems. The readers are assumed to be familiar with convex cones. Otherwise we recommend [Roc70] or the appendix of [Dye13] for reference. Let (∆, Φ) be a canonical root basis in (V, B) with associated Coxeter system (W, S). Because of the positive independence, the cone C = Cone(∆) is a pointed polyhedral cone. We call C the positive cone since it is also spanned by the positive roots, i.e. C = Cone(Φ + ). The extreme rays of C are spanned by the simple roots in ∆.
A subset ∆ of ∆ is said to be k-facial, 1 ≤ k ≤ d, if Cone(∆ ) is a face of codimension k of C. In this case, we say that I = {s α | α ∈ ∆ } ⊂ S is a k-facial subset of S, and use the notation ∆ I in place of ∆ . We also write W I = I , V I = Span(∆ I ) and Φ I = W I (∆ I ). Then a k-facial subset I of S induce a based root system (∆ I , Φ I ) in (V I , B) with associated Coxeter system (W I , I). We call (∆ I , Φ I ) a k-facial root subsystem. We agree on the convention that ∆ and S themselves are 0-facial.
We now define the central notion of this paper.
Definition 2.2 (Level of a root system). Let (∆, Φ) be a root system in (V, B) with canonical root basis ∆ and associated Coxeter system (W, S). The level of (∆, Φ) is the smallest integer l such that every l-facial subsystem is (after canonicalization if necessary) finite or affine.
So root systems of finite or affine type are of level 0. If a root system is of level l and every l-facial subsystem is of finite type, we say that it is strictly of level l.
Remark. We only defined the notion of "facial" and "level" for canonical root basis. However, it is possible that a facial root subsystem is not canonical. This does not happen for Lorentzian root systems, whose facial root subsystems are either finite, affine or Lorentzian. Hence in this paper, the canonicalization in the definition of "level" is never needed. For non-Lorentzian root systems, we propose for the moment to first canonicalize a facial root subsystem if necessary. This is however open for future discussions.
For free root basis, the level of the root system equals the level of the Coxeter graph. Otherwise, the two levels are different in general. We will show that Definition 2.2 is more suitable for geometric studies. Given a root system of level l, the bilinear form B is positive semidefinite on Span(∆ I ) for every l-facial I ⊂ S, and indefinite for at least one (l − 1)-facial I ⊂ S. If the root system (∆, Φ) is Lorentzian, we can reformulate Definition 2.2 in terms of its positive cone C: The level of (∆, Φ) is 1+ the maximum codimension of the time-like faces of C. Here, we use the conventions that a face of codimension 0 is the polytope itself.
2.5. Fundamental cone, Tits cone and imaginary cone. In this part, we assume that the root system is non-degenerate, so that we can identify the dual space V * with V . For definitions for degenerate root systems, see the remark in [Dye13, §1.9].
The dual cone C * of the positive cone is called the fundamental chamber. Recall that The fundamental chamber is the fundamental domain for the action of W on V . Since (V, B) is non-degenerate, C * is also a pointed polyhedral cone. The supporting hyperplanes at the facets of C * are the reflecting hyperplanes of the simple roots. So the Coxeter group W is isomorphic to the group generated by reflections in the facets of Cone(∆ * ), and the stabilizer of a face of Cone(∆ * ) is generated by reflections in the facets that contains this face.
The extreme rays of C * correspond to the facets of C. For each 1-facial subset I ⊂ S, we define the vector ω I by So ω I is a representative on the extremal ray of C * associated to the facet Cone(∆ I ) of C. We write ∆ * := {ω I | I is a 1-facial subset of S}. If ∆ is a free root basis, then ∆ * is the dual basis, i.e. the set of fundamental weights. We use Ω to denote the orbit W (∆ * ) under the action of W . We define the Tits cone as the union of the orbits of C * under the action of W , i.e.  2.6. Projective picture and limit roots. As observed in [HLR14, Section 2.1], the roots Φ have no accumulation point. To study the asymptotic behavior of roots, we pass to the projective representation space PV , i.e. the space of 1-subspaces of V ; see [HLR14, Remark 2.2]. For a non-zero vector x ∈ V , we denote by x ∈ PV the 1-subspace spanned by x. The geometric representation then induces a projective representation For a set X ⊂ V , we have the corresponding projective set In this sense, we have the projective simple roots ∆, projective roots Φ and the projective isotropic cone Q. We use Conv( X) and Aff( X) to denote Cone(X) and Span(X) respectively.
The limit roots are the accumulation points of Φ ⊂ PV . In [HLR14], it was proved that the limit roots lies on Q. For free root basis, it was proved in [CL14] that limit roots are also the accumulation points of Ω. Limit roots are the projectivization of the extreme rays of the imaginary cone [Dye13,DHR13].
The projective space PV can be identified with an affine subspace plus a hyperplane at infinity. We usually fix a vector v and take the affine subspace For Lorentzian root systems, two choices of v turn out to be very convenient. One is One verifies from the definition of based root system that t is time-like. So the subspace H t = t ⊥ is space-like and divides the space into two parts, each containing half of the light cone. Vectors on the same side as t are said to be past-directed ; they have negative inner products with t. Those on the other side are said to be future directed. It then makes sense to call t the direction of past. It turns out that the fundamental chamber is past-directed. Hence on the affine hyperplane H 1 t , the light cone Q appears as a closed surface projectively equivalent to a sphere, and the fundamental chamber appears as a bounded polytope. We call C * the Coxeter polytope. We can view the interior of Q as the Klein model for the hyperbolic space. Then the study on Lorentzian root systems can be seen as a study of hyperbolic Coxeter polytopes.
The other is One verifies that B(h, α) > 0 for all the simple roots α ∈ Φ + , so the affine hyperplane H 1 h is transverse for the positive cone C. This is useful for the visualization of the root system, see [HLR14, § 5.2], and also for a technical reason. An important technical notion in [CL14] is the height h(x) for a vector x ∈ V ; see [CL14, Theorem 3.2] and [HLR14, Theorem 2.7]. For non-degenerate root systems, we define h(x) = B(h, x). One verifies that h(x) is a L 1 -norm on the positive roots Φ + . If the root basis is free, our definition coincides with the definition in [CL14], where h(x) is the sum of the coordinates with simple roots as basis.

Extending Maxwell's results
In this part, we extend one by one the major results of [Max82] to canonical root systems. Detailed proofs are given only if there is a significant difference from Maxwell's proof. For the statement of the results, we mimic intentionally the formulations in [Max82]. Remember that the level of a root system is in general different from the level of its Coxeter graph.
First of all, the following two results are proved in [Max82] for free root basis, and are extended to canonical root basis in [HRT97]; see also [Dye13,§9.4].  We will need the following lemma: Lemma 3.3. Let P be a polytope of dimension d ≥ 3, and x be a point in the exterior of P. Then there is a line L that passes through x and two points u ∈ F and v ∈ G, where F and G are two disjoint faces of P. Moreover, the following are equivalent: (i) For any L with the property, either u or v is in the interior of a facet.
(ii) x is not on the affine hull of any facet, and is either beyond all but one facet, or beneath all but one facet.
Here, we say that x is beyond (resp. beneath) a facet F of P if x is on the opposite (resp. same) side of Aff F as the interior of P; see [Grü03].
Proof. Let H be any hyperplane that separates x and P. For any point w on the boundary of P, let π(w) be the projection of w on H from x, i.e. π(w) is the intersection point of H with the segment [x, w]. So π(P) models the polytope P seen from x; see Figure 1 for an example. If the segment [x, w] is disjoint from the interior of P, we say that w is visible (from x). In Figure 1, visible edges are solid while invisible edges are dashed. The existence of L with the given property follows from a generalization of Radon's theorem [BB79], which guarantees two disjoint faces, F and G, of P such that π(F ) ∩ π(G) = ∅. Then L is given by any point in the intersection. For the equivalence, we only prove that (i) implies (ii) by contraposition. The other direction is obvious.
If x ∈ Aff F for some facet F of P, we apply the generalized Radon's theorem to F , and conclude that there are two disjoint faces of F whose images under π intersect. Any point in the intersection gives a line violating (i).
Assume that x is beneath at least two facets and beyond at least two other facets, i.e. there are at least two visible facets and two invisible facets. Let F and G be two disjoint faces predicted by the generalized Radon's theorem, where F is visible while G is not. By going to the boundary if necessary, we may assume that one of them, say F , is of dimension < d − 1. If G is also of dimension < d − 1, any point in the intersection gives a line violating (i), so G must be a facet. We further assume π(F ) ⊂ Int π(G), otherwise π(F ) intersects the boundary of π(G) and any point in the intersection gives a line violating (i). In Figure 1, F is the thick edge, and G is the gray face.
Consider the visible faces of dimension < d − 1 that are disjoint from G. In Figure 1, they happen to be the solid edges and their vertices. The projection of their union is a connected set (because d ≥ 3) that contains π(F ) ⊂ Int π(G). Since G is not the only invisible facet, there is a visible vertex w on the boundary of π(P) such that π(w) ∈ π(G). So the projection of the union intersects the boundary of π(G). Any point in the intersection gives a line violating (i).
To conclude, whenever x does not satisfy (ii), we are able to find a line violating (i), which finishes the proof.
3.1. Lorentzian root systems of level 1 or 2. Two vectors x, y in (V, B) are said to be disjoint if B(x, y) ≤ 0 and B is not positive definite on the subspace Span{x, y}.
The proofs of the following results are apparently very different from Maxwell's argument [Max82]. Indeed, while Maxwell's proofs make heavy use of basis, our proofs rely primarily on projective geometry. However, the basic idea is the same. In the case of free root basis, our proofs are just geometric interpretations of Maxwell's proofs. Proof. Let (∆, Φ) be a canonical root system of level 1 in (V, B) with associated Coxeter system (W, S).
For a vector x such that B(x, x) ≤ 0, we claim that x ∈ C. Assume without loss of generality that h(x) ≥ 0. If the claim is not true, we can find two vectors x + ∈ Cone(∆ I ) and Now assume that the representation space V is not a Lorentz space. Then, as noticed by Maxwell [Max82], there is a pair of orthogonal vectors u and v such that B(u, u) < 0 and B(v, v) = 0. For any linear combination x = λu + µv we have B(x, x) < 0 as long as λ = 0. The subspace Span{u, v} intersect the hyperplanes Span ∆ I at a ray R + x I for every 1-facial subset I ⊂ S; see Figure 2 (right) for the projective picture (modeled on H 1 t ). This means that each of these supporting hyperplanes contains a time-like ray R + x I , with at most one exception (namely R + v). This contradicts the fact that (∆, Φ) is of level 1. We then proved that (∆, Φ) is Lorentzian.
Let I be any 1-facial subset of S. Since (∆, Φ) is of level 1, the subspace Span ∆ I is not time-like, so its orthogonal companion ω I R is not space-like. This proves that no vector in ∆ * is space-like.
It is clear that any two vectors in ∆ * span a Lorentz space. For the disjointness, we only needs to prove that B(ω I , ω J ) ≤ 0 for any two 1-facial subsets I = J ⊂ S. Since ω I is not space-like, we have seen that ω I ∈ C, so B(ω I , ω J ) has the same sign (possibly 0) for all 1-facial J ⊂ S, which is ≤ 0 when ω I is time-like (take the sign of B(ω I , ω I )). If ω I is light-like, notice that ω I ∈ Cone ∆ I , i.e. ω I can be written as a linear combination of ∆ I with coefficients of the same sign (possibly 0). For any s / ∈ I, we have B(ω I , α s ) > 0 and B(α t , α s ) ≤ 0 for any t ∈ I, so ω I must be a negative combination of ∆ I . We then conclude that B(ω I , ω J ) ≤ 0 since B(α t , ω J ) are all ≥ 0.
As a consequence, the Tits cone of a level-1 root system equals the set of non-space-like vectors; see also [Dye13,Proposition 9.4]. Proof. Let (∆, Φ) be a canonical root system of level 2 in (V, B) with associated Coxeter system (W, S). If V is of dimension 3, it is immediate that (∆, Φ) is Lorentzian. So we assume that the dimension of V is at least 4.
We argue as in the proof of Proposition 3.4. If the representation space V is not a Lorentz space, it contains a pair of orthogonal vectors u and v such that B(u, u) < 0 and B(v, v) = 0. Then, for any linear combination x = λu + µv, we have B(x, x) < 0 as long as λ = 0. The subspace Span(u, v) intersect the hyperplanes Span(∆ I ) at a ray R + x I for every 1-facial subset I ⊂ S. Since the 1-facial root subsystems are all of level ≤ 1, we see from the proof of Proposition 3.4 that, whenever Span(∆ I ) contains a time-like ray R + x I , it must be in the interior of the facet Cone(∆ I ). In the projective picture (modeled on H 1 t ), Span{u, v} appears as a line L intersecting every facet of C such that every intersection point are in the interior of a facet, with at most one exception (namely v) on the boundary of a facet. But L intersects the boundary of C only at two points. Now that one is in the interior of a facet, the other must be the intersection of all other facets, hence a vertex. The only possibility is that C is a pyramid, in which case L pass through the apex and an interior point of the base facet. But the apex is a projective simple root α, and B(α, α) > 0, so α / ∈ L. This contradiction proves that V is a Lorentz space. Let x be a vector with B(x, x) ≤ 0 and assume h(x) ≥ 0. Contrary to the case of level 1, it is possible that x / ∈ C. In this case, we can again write is of level 2, the 1-facial root subsystems are all of level ≤ 1, so we must have either x + or x − in the interior of a facet of C by Proposition 3.4. In the projective picture, it means that for any line through x that intersects two disjoint faces of C, one intersection point must be in the interior of a facet. We then conclude from Lemma 3.3 that B(x, ω) are non zero, and have the same sign for all but one ω ∈ ∆ * . On the other hand, if x ∈ C, only when B(x, x) = 0 is it possible that x lies on a codimension-2 face of C.
Consequently, the intersection Span ∆ I ∩ Span ∆ J is not time-like for any two 1-facial subsets I = J ⊂ S. The orthogonal companion of the intersection is the subspace Span{ω I , ω J }, which is not space-like. For proving the disjointness, one still needs to prove that B(ω I , ω J ) ≤ 0.
Assume that ω I is not space-like. A similar argument as in the proof of Proposition 3.4 shows that B(ω I , ω J ) ≤ 0 for all J = I with at most one exception. Let K = I be this exception. Pick a generator s ∈ I \ K, we can write ω I = λα s − ω I , where ω I is a linear combination of ∆ K with coefficients of same sign, which is also the sign of λ. We have B(α s , ω I ) = 0 by definition, but this is not the case since B(α s , α t ) ≤ 0 for t ∈ K while B(α s , α s ) = 1. Therefore, the exception K does not exist.
If ω I is space-like, then the subspace Span ∆ I is time-like, so (Span ∆ I , B) is a (non-degenerate) Lorentz space. This proves that (∆ I , Φ I ) is of level 1. Then, for a simple root α / ∈ ∆ I , let Let J be a 1-facial subset such that α ∈ ∆ J , and be the projection of ω J on Span ∆ I . Then, since α ∈ C * , which proves that B(ω I , ω J ) ≤ 0. Since J can be chosen as any 1-facial subset J = I ⊂ S, this finish the proof of disjointness.
The proposition has an interesting consequence.
Corollary 3.6. Let ∆ be a canonical root basis of level 2 in (V, B), then the set is a canonical root basis of level 1.
The following proposition is proved for free root basis in, for instance, [Bou68, Ch. V, § 4.4, Theorem 1; AB08, Lemma 2.58]. An extension for canonical root basis can be found in [Kra09, Theorem 1.2.2(b)], who refers to [Vin71] for proof. Note that C * is closed in the present paper, so the inequalities are not strict.  We only need to prove the disjointness. We first prove that, for any ω I , ω J ∈ ∆ * and w ∈ W , (2) B(ω I , w(ω J )) ≤ 0 by induction on the length of w ∈ W . The case of w = e is already known. One may assume that (tw) > (w) for all t ∈ I, otherwise one may replace w by tw in (2). So w = sw for some s / ∈ I and (w) > (w ). We then have B(ω I , w(ω J )) = (s(ω I ), w (ω J )) = B(ω I , w (ω J )) − 2B(α s , ω I )B(α s , w (ω J )).
It remains to prove that B is not positive definite on the subspace Span(ω I , w(ω J )). Assume the opposite. Then ω I is space-like hence (∆ I , Φ I ) is of level 1. Let v be the projection of w(ω J ) on ω ⊥ On the other hand, for all t ∈ I, B(α t , w(ω J )) ≥ 0 because (tw) ≥ (w). We then conclude that v is in the Coxeter polytope of (∆ I , Φ I ), so v must be time-like. This contradiction finishes the proof of disjointness.
(b)⇒(a): Since B is not positive definite on Span{ω I , ω J } for any ω I = ω J ∈ ∆ * , the orthogonal companion of these subspaces, which contains the codimension-2 faces of C * , are not time-like. So B is positive semidefinite on all codimension-2 faces, which proves that (∆, Φ) is of level 1 or 2.    Remark. It is not obvious that the statement is equivalent to Theorem 1.1. A vector ω ∈ Ω r is in the form of w(ω I ) for some w ∈ W and ω I ∈ ∆ * . The stabilizer of ω is then the parabolic facial subgroup in the form of wW I w −1 . Since ω I is space-like, W I is of level 1, and its Coxeter graph must be connected. Facial subgroups with no finite irreducible components are said to be special in [Dye13]; see also [Loo80]. Hence by [Dye13, §10.3], vectors in Ω r span the space-like extreme rays of the Tits cone T , which proves the equivalence. As we will see later, this does not hold for root systems of level ≥ 3.
In the following, the ball packing in the theorem is referred to as the Boyd-Maxwell packing associated to the Lorentzian root system. A ball packing is maximal if one can not add any additional ball into the packing without overlapping other balls. Sketch of proof. The proof of [Max82, Theorem 3.3] applies directly for free root basis. Hence, the theorem is proved as long as the condition Cone Ω r = Cone Ω is verified.
For Lorentzian free root basis of level ≥ 2, the condition is confirmed to be true in [Max89, Theorem 6.1]. The proof applies here with slight modification, so we only give a sketch. What we need to prove is that if ω I ∈ Ω is not space-like, then ω I ∈ Cone Ω r .
If B(ω I , ω I ) < 0, W I is finite. Choose any space-like ω ∈ ∆ * . Then v = w∈W I w(ω) is fixed by W I , hence v is a scalar multiple of ω I .
If B(ω I , ω I ) = 0, then (∆ I , Φ I ) is affine and ω I spans the radical of (V I , B). Again, choose any space-like ω ∈ ∆ * . Then, by a similar argument as in the proof of [Max89, Proposition 5.15], we have ω I ∈ Cone(W I ω).
We have extended most of the major results of [Max82]. We now continue to extend results from [CL14].
The residual set of a collection of balls is the complement of the interiors of the balls. With the modified height function h(x) in Section 2.6, the proofs in [CL14] applies directly. We then obtain Theorem 1.2 for level 2, and the following theorem for level ≥ 3: Theorem 3.11 (extending [CL14, Theorem 1.1; §3.4]). For a Lorentzian root system of level ≥ 3, {Ball(ω) | ω ∈ Ω r } is a maximal collection of balls with no heavily overlapping pairs, and the set of limit roots is again equal to the residual set.
Remark. This time, the theorem can not be formulated in terms of extreme rays as in Theorem 1.1. It is possible that the stabilizer of some space-like ω I ∈ ∆ * has a finite component, hence not a special subgroup. In this case, the rays spanned by W (ω I ) might not be extreme for T .
The projective polytopes in the orbit W · C * are called chambers. Analogous to the situation of free root basis ( C * is a simplex) [AB08], the chambers form a cell decomposition C of the projective Tits cone T called Coxeter complex. It is a pure polyhedral cell complex of dimension d − 1 (dimension of PV ). The set of vertices of C is Ω. The 1-cells of C are called edges, and (d − 2)-cells are called panels.
Since C * is the fundamental domain for the action of W on the projective Tits cone T , the orbit of two different fundamental weights are disjoint. So the vertices of the Coxeter complex admits a coloring by ∆ * , i.e. a vertex u is colored by ω ∈ ∆ * if u ∈ W · ω. Panels are orbits of the facets of ∆ * , therefore they can be colored by the simple roots, i.e. a panel is colored by α ∈ ∆ if it is the orbit of the facet of ∆ * corresponding to α.
The tangency graph of a ball packing takes the balls as vertices and the tangent pairs as edges. We now try to describe the tangency graph in term of the Coxeter complex. Vertices with time-or light-like colors are called imaginary vertices; vertices with space-like colors are called real vertices because they correspond to balls in the packing, and are therefore vertices in the tangency graph. An edge of the Coxeter complex connecting two real vertices of color ω and ω is said to be real if B(ω, ω ) = −1. Real edges correspond to tangent pairs in the packing, and are therefore edges in the tangency graph. For a Lorentzian root system of level 2, real vertices colored by ω ∈ ∆ * such that B(ω, ω) = 1 are said to be surreal. Two distinct surreal vertices of the same color ω are said to be adjacent if they are vertices of two chambers sharing a panel of color α such that B(ω, α) = 1. One verifies that pairs of adjacent surreal vertices are also edges in the tangency graph.
With the definitions above (compare [CL14, §3.3]), the following theorem follows by modifying the proof of (2) in the same way as in the proof of [CL14, Theorem 3.7].  . The projective Tits cone T of a Lorentzian root system of level 2 is an edge-tangent infinite polytope, i.e. its edges are all tangent to the projective light cone. Furthermore, the 1-skeleton of T is the tangency graph of the ball packing associated to the root system.

Partial classification of level-2 root systems
To provide examples of new infinite ball packings, we devote this section to a partial enumeration of based root systems of level 2.
The enumeration will be based on analysis of the Coxeter polytope, and the results will be given in the form of Coxeter graphs. For convenience, we will talk about the level for Coxeter polytopes and (by abuse of language) for Coxeter graphs, which is actually the level of the associated root system. For Coxeter graphs, this leads to a confusion with Maxwell's definition, but should not cause any problem within this section.
We will enumerate the Coxeter d-polytopes with d + 2 facets. The enumeration is implemented by computer programs. The current section only contains the main ideas of the procedures. Readers are encouraged to consult previous enumerations such as [Kap74,Ess96,Tum04], since our algorithm is based on these works.

Preparation.
Recall that a simple system ∆ in (V, B) can be represented by the Coxeter graph G with Vinberg's convention. Simple roots correspond to vertices of G. If two simple roots α, β ∈ ∆ are not orthogonal, they are connected by an edge, which is solid with label The label 3 on solid edges are often omitted.
If we consider the Coxeter polytope P, then vertices of the Coxeter graph G correspond to facets of P. A solid edge of G with integer label means that the intersection of two facets is time-like; a solid edge with label ∞ means that the intersection is light-like; and a dashed edge means that the intersection is space-like.
Let G be a Coxeter graph, G 1 and G 2 be two subgraphs of G. We use G 1 + G 2 to denote the subgraph induced by the vertices of G 1 and G 2 , use G 1 − G 2 to denote the subgraph induced by the vertices of G 1 that are not in G 2 . A subgraph with only one vertex is denoted by the vertex.
For a based root system (∆, Φ), the corank of it's Coxeter polytope P is defined as the nullity of the Gram matrix B of ∆. A Coxeter polytope of dimension d and corank k has d + k + 1 facets. In particular, a Coxeter polytope of corank 0 is a simplex. In this case, the level of the Coxeter graph coincide with Maxwell's definition. For convenience, a Coxeter polytope of level l and corank k is said to be a (l, k)-polytope, or (l s , k)-polytope if the level is strict. All these notions and notations are also used for the corresponding Coxeter graphs.
In the affine picture of the projective space PV , the projective light cone Q appears as a closed surface that is projectively equivalent to a sphere. We can consider the interior of the sphere (time-like part) as the Klein model of the hyperbolic space. With this point of view, a Coxeter polytope P ∈ PV is a hyperbolic polytope, and is the fundamental domain of the hyperbolic reflection group generated by the reflections in its facets [Vin85]. By Proposition 3.4, Coxeter polytopes of level 1 correspond to finite-volume hyperbolic polytopes, or even compact if the level is strict.
Vinberg [Vin84] proved that there is no strict level-1 Coxeter polytopes of dimension 30 or higher, and Prokhorov [Pro86] proved that there is no level-1 Coxeter polytopes in hyperbolic spaces of dimension 996 or higher. On the other hand, Allcock [All06] proved that there are infinitely many level-1 (resp. strictly level-1) Coxeter polytopes in every hyperbolic space of dimension 19 (resp. 6) or lower, which suggests that a complete enumeration of level-1 Coxeter polytopes is hopeless.
In this section, we study Coxeter polytopes of level 2. Recall that a Coxeter polytope is of level 2 if all its edges are time-like or light-like, but some vertices are space-like.
In view of Corollary 3.6, we deduce immediately from the result of [Pro86] that there is no level-2 Coxeter polytopes in hyperbolic spaces of dimension 996 or higher. However, in the shadow of [All06], there might be infinitely many level-2 Coxeter polytopes in lower dimensions, so a complete classification may be hopeless. A (2, 0)-graph is either a connected graph, or a disjoint union of an isolated vertex and a (1, 0)-graph. The enumeration of connected (2, 0)-graphs was initiated in [Max82] and completed in [CL14]. In this section, we would like to enumerate (2, 1)-graphs.
A k-face of a d-polytope is said to be simple if it is the intersection of d − k facets, or almost simple if every face containing it is simple. A polytope is said to be k-simple (resp. almost k-simple) if all its k-faces are simple (resp. almost simple). For a Coxeter polytope, the stabilizer of a time-like (resp. light-like) face is of finite (resp. affine) type. Therefore, every time-like (resp. light-like) face is simple (resp. almost simple). We then conclude the following proposition from the definition of level.
Proposition 4.1. A Coxeter polytope of level l (resp. strictly of level l) is almost l-simple (resp. l-simple).
From the Gale diagram [Grü03, §6.3; Tum04, §2] and by Proposition 4.1, we know that there are three possibilities for the combinatorial type of a (2, 1)-polytope: • a product of two simplices, abbreviated as × ; • the pyramid over a product of two simplices, abbreviated as Pyr( × ); • the 2-fold pyramid over a product of two simplices, abbreviated as Pyr 2 ( × ). We now analyse the three types separately. 4.2. P has the type of × . In this case, vertices of P are all simple. The Coxeter graph G consists of two parts, say G 1 and G 2 , corresponding to the two simplices. A k-face of P correspond to a subgraph of G obtained by deleting k + 2 vertices, including at least one vertex from both G 1 and G 2 .
For a (1, 0)-graph, a vertex is said to be ideal if its removal leaves an affine Coxeter graph. For a (2, 0)-graph, a vertex is said to be real if its removal leaves a (1, 0)-graph. If the (2, 0)-graph is not connected, then the isolated vertex is the only real vertex.
Lemma 4.2. If a (2, 1)-polytope has the type of × , then (i) Its Coxeter graph G consists of two (1, 0)-graphs G 1 and G 2 and they are connected to each other. (ii) For any v 1 ∈ G 1 and v 2 ∈ G 2 , the graphs G 1 + v 2 and G 2 + v 1 are (2, 0)-graphs. (iii) If one of the simplices, say the one represented by G 2 , is of dimension > 1, then the level of G 1 and G 1 + v 2 are strict, and v 2 is the only real vertex of G 1 + v 2 .
Proof. The two simplices are represented by Coxeter graphs G 1 and G 2 respectively. By [Vin85, Theorem 3.1], a subgraph of G correspond to a time-like face of P if and only if it is of finite type. By [Vin85, Theorem 3.2], a subgraph of G correspond to a light-like face of P if and only if it is of affine type. Since G 1 and G 2 are of corank 0 and do not correspond to any face of P, they are not of level 0. For any vertex v 1 of G 1 , the graph G 1 − v 1 is obtained from G by removing at least 3 vertices. Therefore, it corresponds to a simple face of P of dimension ≥ 1. We then conclude that G 1 is a (1, 0)-graph (therefore connected). Same argument applies to G 2 . G = G 1 + G 2 must be connected, otherwise the bilinear form B has two negative eigenvalues, and the root system is not Lorentzian.
For any v 2 ∈ G 2 , the graph G 1 + v 2 is not of level 1 because G 1 is. It is of corank 0 since its positive polytope is a simplex. It is of level 2 because further deletion of any two vertices leaves a level-0 Coxeter graph corresponding to a simple face of P of dimension ≥ 1. Same argument applies to G 2 + v 1 .
If the simplex represented by G 2 is of dimension > 1, then G 2 has more than two vertices. In this case, the dimensions of the faces mentioned above are all strictly > 1, so the levels of G 1 and G 1 + v 2 are strict. Furthermore, for any vertex v 1 ∈ G 1 , the graph G 1 + v 2 − v 1 is of level 0 since it corresponds to a face of P of dimension ≥ 1. So v 2 is the only real vertex of G 1 + v 2 .
Remark. The same type of argument applies for many other lemmas in this section, and we will not repeat them in detail.
We now sketch the procedure for enumerating Coxeter polytopes of this type. We need to distinguish two sub-cases. 4.2.1. One of the simplices is of dimension 1. In this case, P has the combinatorial type of a simplicial prism. In the Coxeter graph, we may assume that the two vertices of G 2 correspond to the base facets of P, while the vertices of G 1 correspond to lateral facets. By Lemma 4.2(i), G 2 is a (1, 0)-graph, so the vertices of G 2 are connected by a dashed edge, meaning that the two base facets do not intersect inside the hyperbolic space.
A prism is orthogonally based if one of the base facets is orthogonal to all the lateral facets. Any prism of level-2 can be cut into two orthogonally based prisms, and two orthogonally based prisms can be spliced into one prism if they share the same base. Therefore, we only need to consider orthogonally based prisms, as also argued by Kaplinskaja [Kap74]. In the Coxeter graph of an orthogonally based prism, one vertex of G 2 is not connected to any vertex of G 1 . By Lemma 4.2(ii), deletion of this vertex leaves a (2, 0)-graph. Therefore, we construct a candidate graph for (2, 1)-simplicial prism by attaching a vertex to a real vertex of a (2, 0)-graph with a dashed edge.
Any candidate graph obtained in this way represents a Coxeter polytope of level 1 or 2. In fact, by attaching a vertex u to a real vertex v with a dashed edge, we are truncating the Coxeter simplex at a space-like vertex. The truncating facet intersects all the lateral faces orthogonally. In the Coxeter graph G, u is the vertex for the truncating facet, v is for the other base facet. Each vertex of the truncating facet corresponds to a graph of the form G 1 + u − w where w ∈ G 1 and u is isolated. Such a graph is of level 0 because G 1 is of level 1. Consequently, if the truncated vertex is the only space-like vertex, the Coxeter polytope we obtain has no space-like vertex, and its level is 1. Otherwise, the polytope is of level 2.
For each candidate graph, we still need calculate the label for the dashed edge. For this, we make use of the fact that the determinant of the matrix B is 0. The Coxeter polytope has the combinatorial type of a orthogonally based simplicial prism if this label is < −1. Otherwise, if the label = −1, the dashed edge should be replaced by a solid edge with label ∞. In this case, the truncating facet truncates "too much" and meets another vertex, so the Coxeter polytope has the combinatorial type of a pyramid over a simplicial prism, which will be classified later.
The list of (2, 0)-graphs with at least five vertices can be found in [CL14], where real vertices are colored in white or grey. By attaching a vertex to each of these real vertices, we obtain 655 candidate Coxeter graphs. Among them, 129 graphs correspond to pyramids over simplicial prisms; 17 graphs correspond to simplicial prisms of level 1, as also enumerated in [Kap74]; the remaining 509 graphs correspond to orthogonally based prisms of level 2. Due to the large number of graphs, we do not give the list in this paper.
A Coxeter graph with three vertices is always of level ≤ 2, and the number of real vertices equals the number of dashed edges. We then obtain level-2 Coxeter graphs in the form of .
It corresponds to a two dimensional square. A Coxeter graph with four vertices is of level ≤ 2 as long as there is no dashed edge, and the number of real vertices equals the number triangles representing hyperbolic triangle subgroups. This completes the classification of orthogonally based simplicial prisms of level 1 or 2. The complete list of prisms of level 1 or 2 is obtained by splicing two orthogonally based prisms of level 1 or 2 if they share a same orthogonal base. In other words, if two Coxeter graphs of orthogonally based prism of level 1 or 2 share the same subgraph G 1 , we can identify this subgraph, and merge the dashed edge into one, as shown below.
The result is of level 1 if the two orthogonally based prisms are both (1, 1)-polytopes, or of level 2 otherwise.
4.2.2. The two simplices are both of dimension > 1. A vertex u of a (1, 0)-graph H is called a port of H if there is a (2, 0)-graph in the form of H + v in which v is the only real vertex and u is a neighbor of v.
We construct a candidate (2, 1)-graph by connecting the ports of two (1 s , 0)-graphs in all possible ways that satisfy Lemma 4.2. For each candidate, we calculate its corank, and verify its level of G by checking the level of G − v 1 − v 2 for each v 1 ∈ G 1 and v 2 ∈ G 2 . Recall that G is of level 2 if the level of G − v 1 − v 2 is always ≤ 1 but not always 0.
In practice, ports are detected with the help of the following lemma. For each port u of H, we find all the (2 s , 0)-graphs in the form of H + v in which v is the only real vertex and u is a neighbor of v. These (2 s , 0) graphs indicate the possible ways for connecting H to other (1, 0)-graphs.
Some (1 s , 0)-graphs with ports are listed in Figure 6, where ports are colored in white and marked with numbers. We exclude hyperbolic triangle groups with label 7, 9 or ≥ 11. By the same technique as in [Ess96, § 4.1, Step 3) 4)], we verified by computer that these triangle groups can not be used to form any Coxeter graph of positive corank. In Table 1, we list all the 28 Coxeter polytopes of the type × , with both simplices of dimension > 1. For each polytope, we give the position of G 1 and G 2 in Figure 6, and the edges connecting G 1 and G 2 in the format of (port in G 1 , port in G 2 , label). 4.3. P has the type of Pyr( × ). In this case, the Coxeter graph G consists of three parts: a vertex corresponding to the base facet, and two subgraphs G 1 and G 2 corresponding to the two simplices. The base facet has the type of × . Vertices on the base facet are all simple. Every k-face of P, except for the apex vertex, corresponds to a subgraph of G obtained by deleting k + 2 vertices, including at least one vertex from both G 1 and G 2 . The stabilizer of the apex is represented by the graph G 1 + G 2 . The corank of G 1 + G 2 is 1, and its level may be 0 if the apex is light-like, or 1 if the apex is space-like. We now study these two sub-cases separately. 4.3.1. The apex is light-like. In this case, G 1 + G 2 is an affine graph.
If a (1, 0)-graph has a unique ideal vertex, we call this vertex the hinge of the graph.
Lemma 4.4. If G 1 + G 2 is a (0, 1)-graph, then (i) G 1 and G 2 are both affine and are not connected to each other; (ii) G 1 + v and G 2 + v are both (1, 0)-graphs; (iii) If one of the simplices, say the one represented by G 2 , is of dimension > 1, then v is the For a proof, the first point follows from the same argument as in the proof of [Tum04,Lemma 4], and other points follows from the same type of argument as in the proof of Lemma 4.2. We now sketch the procedure for enumerating Coxeter polytopes of this type.
If one of the simplices is of dimension 1, we construct a candidate (2, 1)-graph as follows. For an ideal vertex v of a non-strict (1, 0)-graph H, we extend H to a (2, 0)-graph by attaching a vertex u to v with a solid edge of label a. We allow a to be 2, meaning that u and v are actually not connected. We attach a second vertex u to v in a second (possibly the same) way with label a . Then we connect u and u by a solid edge with label ∞. In the graph we obtain, v correspond to the base facet of P, H − v correspond to G 1 and u + u correspond to G 2 . Since v + u + u is a (1, 0)-graph, a and a can not be both 2. One then verifies Lemma 4.4 on H + u + u , and conversely that any graph obtained in this way is of level 1 or 2. Furthermore, H + u + u has a positive corank [Tum04, Lemma 3] 1 which necessarily equals 1 because H + u is of corank 0. With the same argument as in Section 4.2.1, we see that the graph is of level 2 as long as u and u are not both the only real vertex of H + u and H + u respectively.
The list of non-strict (1, 0)-graph with ≥ 4 vertices can be found in [Che69]. The procedure above then gives, up to graph isomorphism, 358 graphs of level 1 or 2. Among them, 89 are of level 1 as also enumerated in [Tum04]. The remaining 269 graphs correspond to pyramids of level 2, and 129 of them were discovered earlier in Section 4.2.1 when enumerating orthogonally based simplicial prisms. Due to the large number of graphs, we do not give the list in this paper.
If both simplices are of dimension 1, then the Coxeter graph is in the form of a 1 ∞ a 2 b 1 ∞ b 2 . It corresponds to a square pyramid. Its level is at most 2, and equals 2 if 1/a i + 1/b j < 1/2 for some i, j ∈ {1, 2}.
If both simplices are of dimension > 1, we construct a candidate (2, 1)-graph by taking two non-strict (1, 0)-graphs with hinges and identifying their hinges. For any graph G constructed in this way, one easily verifies Lemma 4.4. The corank of G is positive by [Tum04, Lemma 3] 1 , and necessarily equals 1 by applying [Vin84, Proposition 12] on G − v for any v different from the hinge. Finally, we verify the level of G by checking the level of G − v 1 − v 2 for each v 1 ∈ G 1 and v 2 ∈ G 2 . Recall that G is of level 2 if the level of G − v 1 − v 2 is always ≤ 1 but not always 0.
All non-strict (1, 0)-graphs with a hinge and ≥ 4 vertices are listed in Figure 7. In Table 2, we list all the 65 polytopes of this class by giving the position of G 1 + v and G 2 + v in Figure 7 respectively.
For a (3, 0)-graph G, a vertex is said to be surreal if its removal leaves a (2, 0)-graph.
Lemma 4.5. If G 1 + G 2 is a (1, 1)-graph, then (i) G 1 and G 2 are both (1 s , 0)-graphs, and they are connected; (ii) G 1 + v and G 2 + v are (2 s , 0)-graphs in which v is the only real vertex; and for any v 2 ∈ G 2 , (iii) the graph G 1 + v 2 is a (2 s , 0)-graph in which v 2 is the only real vertex; (iv) the graph G 1 + v + v 2 is a (3 s , 0)-graph for which v and v 2 are the only surreal vertices.
For a proof, the first point is [Tum04, Lemma 2(I)], and other points follows from the same type of argument as in the proof of Lemma 4.2. We now sketch the procedure for enumerating Coxeter polytopes of this type.
If one of the simplices is of dimension 1, G 1 + G 2 represents a (1, 1)-prism. Coxeter graphs for (1, 1)-prisms are classified in [Kap74], where a list of orthogonally based (1, 1)-prisms is given. Each graph in the list is obtained by attaching a dashed edge to the unique real vertex of a (2 s , 0)-graph, see also [Vin85,§ 5.4]. Therefore, if we ignore the dashed edges, the list in [Kap74] essentially classified all connected (2 s , 0)-graphs with a unique real vertex.
Given a (1 s , 0)-graph H, we construct a candidate (2, 1)-graph as follows. We extend H to three (2 s , 0)-graphs (possibly same) H + u, H + v and H + w, in which u, v and w are respectively the unique real vertex, therefore H + u + v + w satisfies Lemma 4.5(iii). We now choose u as the base facet. We combine the three graphs by identifying H, then connect v and w by a dashed edge, such that G 1 + v + w represent a (1, 1) prism. We also connect u, v and u, w respectively by a solid edge, and give it all possible labels (necessarily between 2 and 6) such that H + u + v and H + u + w are (3 s , 0)-graphs. One verifies that u, v and u, w are respectively the only two surreal vertices, so H + u + v + w satisfies Lemma 4.5(iv). Finally, we verify the corank and the level of the candidate graph.
In order to satisfy Lemma 4.5(i), v and w can not be both disjoint from H. But the vertex u can be an isolated vertex, in which case H + u + v + w is indeed a (2, 1)-pyramid. Otherwise, we list in Figure 4 all the 18 connected (2, 1)-pyramid in dimension ≥ 5. For 4-dimensional pyramids over triangular prisms, we obtain 266 connected (2, 1)-graphs from triangle graphs with labels at most 6. Because of the large number of graphs, we do not list them in this paper. For triangle graphs with Figure 4. The 18 connected (2, 1)-graphs of rank ≥ 7 whose Coxeter polytope has the type of a pyramid over a prism with space-like apex. a label k ≥ 7, the Coxeter graph is necessarily in the form of k −c . The unlabeled edges can not have label ≥ 7, so for a given k, there are only finitely many possibilities for the labels. For each of them, the value of −c is determined by k. We then use Sage to find the expressions of the determinant in terms of k, and find no integer root that is ≥ 7 for these expressions. So we believe that the labels on solid edges are at most 6 for this type of (2, 1)-graphs. However, the author thinks that this is the point to question the reliability of computer enumeration, and an analytic explanation is welcomed. For 3-dimensional pyramids over squares, both simplices are of dimension 1, and the Coxeter graph is necessarily in the form of . To be a (2, 1)-graph, the dashed edges need to bear correct labels and the corank should be 1. We do not have a complete characterisation for this case.
If both simplices are of dimension > 1, G 1 + G 2 falls in the list in [Ess96] and [Tum04]. The list contains eight graphs. Each graph G in the list is obtained by connecting two (1 s , 0)-graphs G 1 and G 2 . We extend G 1 and G 2 to two (2 s , 0) graphs G 1 + u 1 and G 2 + u 2 in which u 1 and u 2 are respectively the unique real vertices (possibly isolated). We then obtain a candidate (2, 1)-graph G by identifying u 1 and u 2 as a single vertex u. Finally, we calculate the corank, and verify the level of the candidate by checking the level of G − v 1 − v 2 for v 1 ∈ G 1 and v 2 ∈ G 2 . This time, we only need the level of G − v 1 − v 2 to be always ≤ 1. If u is an isolated vertex, the result is clearly a (2, 1)-graph. Otherwise, there are three connected (2, 1)-graph. They are listed in Figure 5, where the white vertex correspond to the base facet. 4.4. P has the type of Pyr 2 ( × ). In this case, P can be viewed as a pyramid in two different ways with different apexes and bases. The two base facets are of the type Pyr( × ), and are represented by two vertices u and v in the Coxeter graph. The rest of the graph consists of two parts, say G 1 and G 2 , representing the two simplices. The intersection of the two base facets is a ridge of P with the combinatorial type × . Vertices on this base ridge are all simple. Every k-face of P, except for the two apexes and the edge connecting them, corresponds to a subgraph of G obtained by deleting k + 2 vertices, including at least one vertex from both G 1 and G 2 . The . The three connected (2, 1)-graphs whose Coxeter polytope has the type of Pyr( × ) with space-like apex.
stabilizer of the edge connecting the two apexes is represented by G 1 + G 2 . Its level is 0 since it corresponds to an edge of P.
If a (2, 0)-graph H has only two real vertices u and v, and H − u − v is of affine type, then we say that u + v is the hinge of H.
Lemma 4.6. If P has the combinatorial type of a 2-fold pyramid over a product of two simplices, then (i) G 1 and G 2 are both affine and are not connected to each other; (ii) G 1 + u + v and G 2 + u + v are both (2, 0)-graphs with hinge u + v; (iii) for any v 2 ∈ G 2 , the subgraph G 1 + u + v + v 2 is a (3, 0)-graph, in which v 2 is a surreal vertex, while no vertex of G 1 is surreal.
The proof use the same type of arguments as before, and use the fact that G 1 + G 2 + u and G 1 + G 2 + v are (1, 1)-pyramids enumerated in [Tum04]. We now sketch the procedure for enumerating Coxeter polytopes of this type.
If one of the simplices is of dimension 1, we construct a candidate (2, 1)-graph as follows. Let H be an affine graph and H + u + v be a (2, 0)-graph with hinge u + v. We extend H to a (3, 0)-graph H + w such that w is a surreal vertex but no vertex in H is surreal. We extend H to another (3, 0)-graph H + w in a second (possibly the same) way, and connect w and w by a solid edge with label ∞. We require further that u + v + w and u + v + w are of level 0, and u + w + w and v + w + w are connected. This guarantees that u + v + w + w is a (2, 0)-graph and u + v is the hinge. What we obtain is then a candidate (2, 1)-graph.
All (2, 0)-graphs with a hinge and ≥ 5 vertices are listed in Figure 8. Based on this list, the procedure above gives 221 candidate (2, 1)-graphs. After verification of corank and level, 49 of them are confirmed as (2, 1)-graphs. They are listed in table 3, in which we give the position of the (2, 0)-graph H + u + v in Figure 8, and the four labels on the edges connecting w and w to u and v.
If both simplices are of dimension 1, the Coxeter graph of the 4-dimensional 2-fold pyramid over a square is in the form of ∞ ∞ . To be a (2, 1)-graph, each of the four unlabeled triangles should be of level 0, either triangle on the left and either triangle on the right should form a graph of level ≤ 1, and the corank should be 1. We do not have a complete characterisation for this case. If both simplices are of dimension > 1, we construct a candidate (2, 1)-graph by taking two (2, 0)-graphs with hinges and identifying their hinges (possibly in two different ways). We then verify the corank and the level of each candidate. The latter is done by checking the level of G − v 1 − v 2 for each v 1 ∈ G 1 and v 2 ∈ G 2 . Recall that G is of level 2, if the level of G − v 1 − v 2 is always ≤ 1 but not always 0. In Table 4, we list all the 36 polytopes of this class by giving the position of G 1 + u + v and G 2 + u + v in Figure 8 respectively. It turns out that, for every pair in the table, there is a unique way to identify the hinges up to graph isomorphism. 4.5. Remark and discussion. We have seen a lot of level-2 Coxeter graphs. The algorithms for classification are implemented in the computer algebra system Sage [S + 14]. For some cases of low rank, because of the large number (even infinite) of graphs, we gave characterisations and construction methods instead of explicit lists. For pyramid (space-like apex) and 2-fold pyramids over squares, our characterisation is not satisfactory. For pyramids over triangular prisms with space-like apex, we ruled out labels of large value by computer program, but the reliability of computer can be questioned.
All these graphs correspond to infinite ball packings that are generated by inversions. For explicit images of ball packings, the readers are referred to the artworks of Leys' [Ley05]. The 3-dimensional ball packings in Leys' paper (and also on his website) are inspired from [BH04]. Similar idea was also proposed by Bullett and Mantica [BM92,MB95], who also noticed generalizations in higher dimensions.
However, the packings considered in these literatures are very limited. In our language, the Coxeter polytopes associated to these packings only have the combinatorial type of pyramid over regular polytopes. In [BM92], the authors were aware of Maxwell's work, but explained that: Our approach via limit sets of Kleinian groups is more naive, replacing arguments about weight vectors in Minkowsky N-space by elementary geometric arguments involving polygonal tiles on the Poincare disc: it mirrors the algorithm we use to construct the circle-packings and seems well adapted to computation of the exponent of the packing and other scaling constants. On the contrary, weight vectors are very useful for investigations. In fact, weight vectors only make the computation of the exponent (the growth rate of the curvatures) much easier. One easily verifies that the height of a weights is asymptotically equivalent to the curvature of the corresponding ball.
Remark. The Hausdorff dimension of the residual set of infinite ball packings are usually approximated by computing the exponent. In the literature, Boyd's works (e.g. [Boy74]) are often cited to support this numeric estimate. However, this was not fully justified until recently by Oh and Shah [OS12].
Allcock [All06] proved that there are infinitely many Coxeter polytopes in lower dimensional hyperbolic space. However, we would like to point out that the situation is not completely dark. We notice that the "doubling trick" used in Allcock's construction produces Coxeter subgroups of finite index, so the infinitely many hyperbolic Coxeter groups constructed in [All06] are all commensurable. It has been noticed in [Max82,§ 4] that commensurable Coxeter groups of level-2 correspond to the same ball packing. Indeed, if two Coxeter groups are commensurable, their Coxeter complex is the subdivision of the same coarser Coxeter complex.
Therefore, it makes more sense to enumerate commensurable classes of Coxeter groups, as Maxwell did in [Max82, Table II]. For root systems of corank 0, the commensurable classes and subgroup relations have been studied for level 1 and 2 in [Max98], and are completely determined for level 1 by Johnson et al. [JKRT02]. Despite of Allcock's result, we may still ask: Are there infinitely many commensurable classes for level-l Coxeter groups acting on lower dimensional hyperbolic spaces? For level 1 Coxeter groups, the answer is "yes" in dimension 2 (triangle groups), 3 [MR03, § 4.7.3], 4 and 5 [Mak68; Vin85, § 5.4]. The constructions in dimension 3-5 made use of level-1 polytopes of low corank. Table 1. The first two columns are the positions of G 1 and G 2 in Figure 6, and the third columns are the edges connecting G 1 and G 2 . The ports in Figure 6 are numbered, so the edges are represented in the format of (port in G 1 , port in G 2 , label). By connecting G 1 and G 2 by the indicated edges, we obtain the (2, 1)-graphs for the products of two simplices (both of dimension > 1).  Table 2. For each pair i-j in the list, by identifying the white vertices of the i-th and the j-th graph in Figure 7, we obtain the (2, 1)-graph of a pyramid over the product of two simplices (both of dimension > 1). Table 3. For each entry i:(a, b)(c, d) in the list, take the i-th graph H + u + v in Figure 8, where u is the gray vertex and v is the white vertex. Introduce two new vertices w and w , and connect them to H such that wu has label a, wv has label b, w u has label c, w v has label d, and finally label the edge ww by ∞. The result is the (2, 1)-graph of a 2-fold pyramid over a prism.  Table 4. For each pair i-j in the list, by identifying the white/light-gray vertices of the i-th and the j-th graph in Figure 8, we obtain the (2, 1)-graph of a 2-fold pyramid over the product of two simplices (both of dimension > 1).