1 Introduction

Sphere packing in general has many connections to other branches of mathematics, see for example [4]. Consider the disc packing in Fig. 1. Such a packing is called ‘compact(we give a precise definition later). Apart from being objects of purely mathematical interest, some compact packings have been observed to arise in self-assembled nano-structures: Compare the nine compact disc packings from [9] with electron micrographs from the non-mathematical literature [2, 14] and [1]. Compact sphere and disc packings are therefore of special interest, not just within mathematics, but also in other scientific disciplines.

In this paper we are motivated by the following question: For \(d,n\in {\mathbb {N}}\) with \(d,n\ge 2\), how many configurations of numbers \(0<r_{0}<r_{1}<\cdots <r_{n-1}=1\) can occur as the radii of spheres in a compact sphere packing of \({\mathbb {R}}^{d}\) wherein there occur exactly n sizes of sphere?

Let \(d\in \mathbb {N}\). By a sphere packing \(\mathfrak {p}\) of Euclidean space \({\mathbb {R}}^{d}\), we mean a family of spheres with pairwise disjoint interiors in \(\mathbb {R}^{d}\). By \(radii (\mathfrak {p\mathfrak {)}}\) we denote the set of all positive real numbers that occur as radii of spheres from \(\mathfrak {p}\).

The contact hypergraph of a sphere packing \(\mathfrak {p}\) of \({\mathbb {R}}^{d}\) is defined as follows: The vertex set is taken as the set of all the centers of spheres in the packing \(\mathfrak {p}\). As hyperedges, we take exactly the subsets E of the vertex set that have cardinality at most \(d+1\) and that satisfy both of the following two conditions: Firstly, for every pair of distinct vertices a and b from the set E, the corresponding spheres in \(\mathfrak {p}\) that respectively have a and b as centers are mutually tangent. Secondly, if any vertex of the hypergraph is an element of the convex hull of the set E, then this vertex is an element of E.

We say a sphere packing \(\mathfrak {p}\) in Euclidean space \({\mathbb {R}}^{d}\) is compact if the contact hypergraph is exactly the vertex scheme of a homogeneousFootnote 1 simplicial d-complex in \(\mathbb {R}^{d}\) whose underlying space is homeomorphic to \(\mathbb {R}^{d}\) through the identity map. We call this homogeneous simplicial d-complex the packing complex of the compact sphere packing \(\mathfrak {p}\). Intuitively speaking, \(\mathbb {R}^{d}\) is tesselated by the d-simplices in the packing complex (cf. Fig. 1).

In this paper we restrict our view to compact sphere packings \(\mathfrak {p}\) satisfying \(|radii (\mathfrak {p})|<\infty \) and \(\max radii (\mathfrak {p})=1\). With \(d,n\in \mathbb {N}\) we define

Our work in this paper is motivated by the following conjecture.

Fig. 1
figure 1

One of the 164 compact packings of \(\mathbb {R}^{2}\) by discs with three sizes from [8, Packing 54], here with its packing complex overlaid.

Conjecture 1.1

For all \(d,n\in \mathbb {N}\) with \(d,n\ge 2\), the set \(\Pi _{d,n}\) is finite.

Although this conjecture remains open in full generality, some certain special cases have been resolved and we discuss them shortly.

In this paper we prove a general result that can be used to show, for all \(d,n\in \mathbb {N}\) with \(d,n\ge 2\), that certain subsets of \(\Pi _{d,n}\) are finite. To this end, in Sect. 2.4, we define what we call heteroperturbative sets of labeled triangulations of unit spheres (of any dimension). Roughly, what this means is that, if a spherical triangulation from a heteroperturbative set is perturbed while preserving its combinatorics, then one edge must grow in length, and one edge must shrink in length (cf. Sect. 2.4). Every sphere in a compact sphere packing in \(\mathbb {R}^{d}\) has canonically associated to it a labeled triangulation of the unit sphere in \(\mathbb {R}^{d}\) (cf. Sect. 2.5). For a heteroperturbative set \({\textbf{S}}\) of labeled triangulations of unit spheres and a compact sphere packing \(\mathfrak {p}\) in \(\mathbb {R}^{d}\), we say that \(\mathfrak {p}\) is associated to \({\textbf{S}}\) if every sphere from \(\mathfrak {p}\) has its canonical associated labeled triangulation being an element of \({\textbf{S}}\).

Our main result in this paper is:

Theorem 1.2

For all \(d,n\in \mathbb {N}\) with \(d,n\ge 2\) and \({\textbf{S}}\) any heteroperturbative set of labeled triangulations of unit spheres, the set

is finite.

It is easily seen that the set of all triangulations of the unit circle in \(\mathbb {R}^{2}\) is heteroperturbative (cf. Example 2.3), so the special case for \(d=2\) of Conjecture 1.1 is proven by applying Theorem 1.2 (this is the main result of [12]). However, the set all triangulations of the unit sphere in \(\mathbb {R}^{3}\) is not heteroperturbative (cf. Example 2.4). Therefore, to be able to apply Theorem 1.2 in attacking Conjecture 1.1 for \(d=3\), one is required to find an appropriate proper subset of the set of all labelled triangulations of the unit sphere in \(\mathbb {R}^{3}\), and additionally, prove that it is heteroperturbative.

In general it is difficult to determine if a set of triangulations of unit spheres is heteroperturbative. A consequence of recent work by Winter [15, Cor. 4.13] shows that the set, that we denote \({\textbf{W}}\) (cf. Example 2.6), of all triangulations of unit spheres of any dimension that are determined from inscribed convex polytopes that contain the center of their circumsphere in the interior, is heteroperturbative. Hence, non-trivial heteroperturbative sets do exist, and by extension, Theorem 1.2 shows that non-trivial and fairly interesting subsets of \(\Pi _{d,n}\) are finite.

We also exhibit a set of labeled spherical triangulations, denoted \({\textbf{Q}}\), that is such that \(\Pi _{d,n}=\Pi _{d,n}({\textbf{Q}})\) for all \(d,n\ge 2\) (cf. Sect. 2.4). Clearly, a proof that \({\textbf{Q}}\) is heteroperturbative would, through application of Theorem 1.2, immediately prove Conjecture 1.1. However, whether or not \({\textbf{Q}}\) is heteroperturbative is an open problem to the best of our knowledge.

Before continuing, we briefly remark on some relevant history regarding the family of sets \(\Pi _{d,n}\) for \(d,n\in \mathbb {N}\).

It is easily seen that \(|\Pi _{1,n}|=\infty \) for all \(n\ge 2\) and that \(|\Pi _{2,1}|=1\). For dimensions \(d\ge 3\), regular simplices do not tesselate \(\mathbb {R}^{d}\), because \(2\pi \) is not an integer multiple of the dihedral angles occurring in a regular d-simplex [3, Rem. 2]. Hence \(|\Pi _{d,1}|=0\) for all dimensions \(d\ge 3\). In particular, the famous \(E_{8}\) and Leech lattice sphere packings (cf. [4]) are not compact packings.

For dimension 2, in 2006, Kennedy showed that \(|\Pi _{2,2}|=9\) by computing all elements of the set \(\Pi _{2,2}\) [9]. Determining \(|\Pi _{2,3}|\) turned out to be more challenging and took a number of years. A finite bound for \(|\Pi _{2,3}|\) was determined by the second named author in [11], and working roughly at the same time \(\Pi _{2,3}\) was computed and was shown to have 164 elements by Fernique, Hashemi, and Sizova in [8]. A crucial ingredient in showing that \(|\Pi _{2,3}|\) is finite is the following result:

Lemma 1.3

[8, Lem. 6.1] There exists a constant \(K>0\) so that every compact disc packing \(\mathfrak {p}\) of \(\mathbb {R}^{2}\) with \(radii (\mathfrak {p})=\{r_{0},r_{1},r_{2}\}\) satisfying \(0<r_{0}<r_{1}<r_{2}=1\) is such that

$$\begin{aligned} K\le \frac{r_{0}}{r_{1}}. \end{aligned}$$

We specifically make note of the order of the quantifiers in the above result. The constant K is independent of the choice of compact packing with discs of three sizes and can be taken to be \(\min \{r_{0}:\{r_{0},1\}\in \Pi _{2,2}\}\). That the ratio of the small and medium size discs in a compact packing with three sizes of discs is related to the radii that occur in compact packings with two sizes of discs is indicative that an inductive argument may be used to glean information on the sets \(\Pi _{2,n}\) for \(n>3\). Exploiting this idea in [12], the corresponding author showed that \(|\Pi _{2,n}|\) is finite for all \(n\ge 2\). Although the cardinality of these sets could be shown to be finite, the methods in [12] are non-constructive and do not produce quantitative bounds on the cardinality of the sets \(\Pi _{2,n}\) for \(n\ge 2\).

For dimension 3, in [5, 7], Fernique computed \(\Pi _{3,2}\) and \(\Pi _{3,3}\) which respectively were shown to have cardinality 1 and 4. Fernique himself calls his results disappointing for the reason that, in three dimensions, compact packings of spheres of two or three sizes arise only through the filling of interstitial holes of close-packings of unit spheres. This is in contrast to the case in two dimensions where, for example, there exists a rich variety of compact disc packings with three sizes of discs that do not arise from compact disc packings with two sizes of discs through merely filling in interstitial holes with discs (cf. [8]). This contrast in richness raises the following question:

Question 1.4

Does there exist a dimension greater than two that admits a compact packing of spheres with two or more sizes which does not arise through filling interstitial holes in a lattice packing of unit spheres?

Throughout this paper we make use of standard terminology regarding simplicial complexes and related concepts. The reader unfamiliar with the terminology may find definitions in [13]. The specific standard terms we make use of are: simplicial complex, k-skeleton of a simplicial complex, abstract simplicial complex, the underlying (topological) space of a simplicial complex, the vertex scheme of a simplicial complex (i.e., the abstract simplicial complex that results from forgetting all geometric information of the simplicial complex), isomorphism of abstract simplicial complexes, the closed star of a vertex in a simplicial complex, the link of a vertex in a simplicial complex.

We now describe the path toward proving Theorem 1.2. The main flavor follows that of [12]. Before giving more detail, we briefly describe the idea, which consists of three main parts. For a fixed dimension d, firstly we define an abstract discrete structure that is shown to always occur in every compact packing (cf. Sect. 3). Secondly, we show that if such an abstract discrete structure arises from a compact packing associated to some heteroperturbative set of labeled triangulations of unit spheres, then this structure uniquely determines the radii of spheres in the compact packing (cf. Sect. 4). Thirdly, we show that if such an abstract discrete structure arises from a compact packing with n sizes of spheres that is associated to some fixed heteroperturbative set, then there exists a bound on the size of the structure and, more importantly, this bound can be chosen so as to depend only on the number of sizes of spheres n and the dimension d, and independently of any particular packing (cf. Sect. 6). We note that, although these bounds are shown to exist, the argument to show their existence is non-constructive. We conclude that only finitely many such abstract discrete structures can arise from compact packings associated to a heteroperturbative set, and the ones which do arise in this way uniquely determine the radii in a compact packing associated to some heteroperturbative set. This establishes Theorem 1.2.

We now move to describing the content of this paper in more detail.

Preliminary definitions and results are described in a number of subsections of Sect. 2. In Sect. 2.1, we introduce what we call packing codes. These are abstract simplicial complexes with labeled vertices that will be used to abstractly describe a sphere and its neighbors in a compact packing. We introduce angle symbols, realizations, and realizers in Sect. 2.2. Angle symbols are used to abstractly represent angles in the triangle formed by connecting the centers of three mutually tangent spheres with disjoint interiors and indeterminate radii. A realization by a realizer assigns specific values to indeterminates in formal arithmetic expressions. Typically realized expressions will be expressions involving angle symbols derived from packing codes. An important result is Lemma 2.1, which establishes a monotone relationship between realizers and the values of realized angle symbols. This result is used later, as a first ingredient, in proving both Theorem 4.3 and Lemma 5.2, which we are yet to discuss. In Sect. 2.3, we define what we mean by a spherical simplicial complex and by a triangulation of the unit sphere in \(\mathbb {R}^{d}\). We prove an easy lemma (Lemma 2.2) regarding the geometry of spherical triangulations of unit spheres. Although easy, this result is nevertheless crucial to be able to apply Winter’s results from [15] in the subsequent section. Section 2.4 sees definition of what we call heteroperturbative sets (of labeled spherical triangulations of unit spheres) and we present a few relevant examples, non-examples, and conjectured heteropertubative sets. In particular, we show that the sets \({\textbf{T}}_{2}\) and \({\textbf{W}}\) (Examples 2.3 and  2.6) are heteroperturbative, that \({\textbf{T}}_{3}\) (Example 2.4) is not heteroperturbative, and we conjecture that \({\textbf{Q}}\) (Definition 2.7) is heteroperturbative. In Sect. 2.5, we discuss how a compact packing \(\mathfrak {p}\) of spheres in \(\mathbb {R}^{d}\) is canonically labeled, determines a canonical realizer, and how each sphere in \(\mathfrak {p}\) canonically determines a labeled spherical triangulation of the unit sphere \(\mathbb {R}^{d}\), and by further forgetting the geometric structure of the labeled triangulation, the sphere canonically determines a packing code associated to the sphere.

In Sect. 3, we define what we call a fundamental set of packing codes. We show that every compact packing gives rise to such a fundamental set of packing codes (cf. Theorem 3.2 and Fig. 5).

The main result in Sect. 4 is Theorem 4.3, showing that the radii of spheres in a compact packing associated a heteroperturbative set is uniquely determined by any fundamental set of packing codes that arises from the packing. As mentioned, Lemma 2.1 is used together with the defining property of a heteroperturbative set to prove Lemma 4.1 which shows how the existence of labeled spherical triangulations in a heteroperturbative set that are combinatorially equivalent to packing codes from a fundamental set and whose edge lengths are determined through a realizer, actually uniquely determines the realizer. Lemma 4.2 shows that labeled spherical triangulations as required in Lemma 4.1 always exist in every compact packing.

The Bootstrapping Lemma (Lemma 5.2) is proven in Sect. 5. This lemma is a generalization of Lemma 1.3 and is what makes the induction step work in a strong induction toward proving the main technical result of the paper, Lemma 6.7, from whence the name. The Bootstrapping Lemma relates the ratios of some of the values of two realizers under certain assumptions of the existence of labeled spherical triangulations of unit spheres from a heteroperturbative set that are combinatorially equivalent to a packing code from fundamental set. Again as mentioned, Lemma 2.1 along with the defining property of a heteroperturbative set is used in proving The Bootstrapping Lemma.

Section 6 sees the proof of the main result of this paper, Theorem 1.2. For \(d,n\in \mathbb {N}\) with \(d,n\ge 2\) and a heteroperturbative set \({\textbf{S}}\), we introduce what we call an n-essential set for \({\textbf{S}}\) in dimension d, which adds further technical conditions on a fundamental set, related to the existence of two realizers \(\rho \) and \(\sigma \) and of labeled triangulations from \({\textbf{S}}\) relating the two realizers \(\rho \) and \(\sigma \) to each other. We observe that these further conditions are automatically satisfied by fundamental sets that arise from an actual compact packing in \(\mathbb {R}^{d}\) associated to \({\textbf{S}}\) with n sizes of spheres: The canonical labeled triangulations associated to spheres in the packing are taken, and for \(\sigma \) and \(\rho \) we take both equal to the canonical realizer for the packing. This observation, along with the previous observation that radii of the spheres in the packing being uniquely determined by the fundamental set (Lemma 4.1), thus shows that the cardinality of \(\Pi _{d,n}({\textbf{S}})\) is at most the cardinality of the set, denoted \(\mathcal {E}_{d,n}({\textbf{ S}})\), of all n-essential sets for \({\textbf{S}}\) in dimension d, (cf. Lemma 6.2). For any fixed d, we thus proceed to show that the set \(\mathcal {E}_{d,n}({\textbf{S}})\) is finite through strong induction on the number n. As the base step of a strong induction, we show that the set \(\mathcal {E}_{d,2}({\textbf{S}})\) is finite (cf. Lemma 6.3). Lemma 6.7, the strong induction step, is the main technical result. Given that the sets \(\mathcal {E}_{d,k}({\textbf{S}})\) are finite for all \(k\in \{2,\ldots ,n-1\}\), using The Bootstrapping Lemma (Lemma 5.2), we show that the set \(\mathcal {E}_{d,n}({\textbf{S}})\) is finite by bounding the size of any element of \(\mathcal {E}_{d,n}({\textbf{S}})\) using only features of the finitely many elements in \(\bigcup _{k=2}^{n-1}\mathcal {E}_{d,k}({\textbf{S}})\). This proves the main result of this paper in Corollary 6.9.

2 Preliminaries

2.1 Packing Codes

Let \(d\in \mathbb {N}\) with \(d\ge 2\). Let \(\Sigma \) be any set of symbols. By a d-dimensional packing code over \(\Sigma \), or just a packing code, we mean a symbol c : T, with \(c\in \Sigma \) and T an abstract homogeneous simplicial \((d-1)\)-complex with vertices labeled by elements from \(\Sigma \). In a packing code c : T, we call c the center and T the neighbor complex of the packing code. For a vertex v in T we denote its label by \(\lambda v\in \Sigma \). We define \(\lambda (T):=\{\lambda v:v\text { a vertex in }T\}\). By \(\mathfrak {C}(\Sigma )\), we denote the set of all d-dimensional packing codes. The dependence on the dimension d is suppressed in the notation \(\mathfrak {C}(\Sigma )\), but this should not cause confusion as d is fixed at all times.

2.2 Angle Symbols and Realizations

Let \(\Sigma \) be any set of symbols. For symbols \(a,b,c\in \Sigma \) we denote the formal symbol

$$\begin{aligned} c_{b}^{a}:=\arccos \left( \frac{(c+a)^{2}+(c+b)^{2}-(a+b)^{2}}{2(c+a)(c+b)}\right) . \end{aligned}$$

We call \(c_{b}^{a}\) an angle symbol (over \(\Sigma \)). We always regard elements from \(\Sigma \) in an angle symbol as indeterminates. With three mutually tangent spheres with pairwise disjoint interiors, with centers labeled ab, and c forming a triangle, the symbol \(c_{b}^{a}\) is meant to abstractly represent the magnitude of the angle formed at c (cf. Fig. 2). In the angle symbol \(c_{b}^{a}\), we call c the vertex of the symbol \(c_{b}^{a}.\)

We define a realizer to be a map \(\rho :\Sigma \rightarrow (0,\infty )\). Given a realizer \(\rho :\Sigma \rightarrow (0,\infty )\) and a formal arithmetic expression E, with symbols from \(\Sigma \), we denote by \(E|_{\rho }\) the expression E with every symbol \(s\in \Sigma \) occurring in E replaced by \(\rho (s).\) We call \(E|_{\rho }\) the realization of E by \(\rho \).

An important result that we use multiple times in this paper is the following lemma that establishes a specific monotone relationship between realizers and realized angle symbols when the values of the realizer is kept constant on the vertex of the angle symbol.

Fig. 2
figure 2

The angle represented by the angle symbol \(c_{b}^{a}.\)

Lemma 2.1

Let \(\Sigma \) be any finite set of symbols and let \(a,b,c\in \Sigma \) with \(c\ne a\). Let \(\rho :\Sigma \rightarrow (0,\infty )\) and let \(\nu :\Sigma \rightarrow [0,\infty )\) be a non-zero function.

  1. 1.

    The map \((0,\infty )\ni t\mapsto c_{b}^{a}|_{t\rho }\) is constant.

  2. 2.

    If \(\nu (c)=0\) and \(\nu (a)>0\), then the map \([0,\infty )\ni t\mapsto c_{b}^{a}|_{\rho +t\nu }\) is strictly increasing.

  3. 3.

    If \(\nu (c)=\nu (a)=\nu (b)=0\), then the map \([0,\infty )\ni t\mapsto c_{b}^{a}|_{\rho +t\nu }\) is constant.

Proof

With distinct symbols \(a,b,c,d\in \Sigma \), taking partial derivatives of the expression \(c_{a}^{b}\) toward the indicated symbol, we obtain the following:

$$\begin{aligned} \begin{array}{ccc} \begin{array}{rcl} \partial _{a}c_{a}^{b}=\partial _{a}c_{b}^{a} &{} = &{} \frac{\sqrt{bc}}{(c+a)\sqrt{a}\sqrt{a+b+c}}, \\ \partial _{a}c_{a}^{c}=\partial _{a}c_{c}^{a} &{} = &{} \frac{c}{(c+a)\sqrt{a^{2}+2ac}}, \\ \partial _{a}c_{a}^{a} &{} = &{} \frac{2\sqrt{c}}{(c+a)\sqrt{2a+c}}, \\ \partial _{c}c_{a}^{b}=\partial _{c}c_{b}^{a} &{} = &{} -\frac{(a+b+2c)\sqrt{ab}}{(c^{2}+ab+ac+bc)\sqrt{c}\sqrt{a+b+c}}, \\ \partial _{c}c_{a}^{c}=\partial _{c}c_{c}^{a} &{} = &{} -\frac{a}{(c+a)\sqrt{a^{2}+2ac}}, \end{array} &{} \quad &{} \begin{array}{rcl} \partial _{d}c_{b}^{a} &{} = &{} 0, \\ \partial _{d}c_{c}^{a} &{} = &{} 0, \\ \partial _{d}c_{a}^{a} &{} = &{} 0, \\ \partial _{d}c_{c}^{c} &{} = &{} 0, \\ \partial _{c}c_{c}^{c} &{} = &{} 0. \end{array}\end{array} \end{aligned}$$

It is easily seen from the definition of the expression \(c_{b}^{a}\) that the map \((0,\infty )\ni t\mapsto c_{b}^{a}|_{t\rho }\) is constant.

Let \(t\in [0,\infty )\) be arbitrary. Assuming \(\nu (c)=0\), then the directional derivative of map \((0,\infty )^{S}\ni \sigma \mapsto \alpha (x)|_{\sigma }\) at \(\rho +t\nu \) in the direction of \(\nu \) is a positive scalar multiple of

$$\begin{aligned} \sum _{s\in \Sigma }(\partial _{s}c_{b}^{a})|_{\rho +t\nu }\ \nu (s)&={\sum _{s\in \Sigma \backslash \{c\}}(\partial _{s}c_{b}^{a})|_{\rho +t\nu }\ \nu (s)}\ge 0. \end{aligned}$$

Assuming further that \(\nu (a)>0\), then at least one term of the above summation is non-zero, and hence the map \([0,\infty )\ni t\mapsto c_{b}^{a}|_{\rho +t\nu }\) is strictly increasing. On the other hand, assuming \(\nu (c)=\nu (a)=\nu (b)=0\) then every term in the above summation is zero, and hence the map \([0,\infty )\ni t\mapsto c_{b}^{a}|_{\rho +t\nu }\) is constant. \(\square \)

2.3 Spherical Triangulations of Unit Spheres

Let \(d\ge 2\), \(1\le k\le d\). Let \(G\subseteq \mathbb {R}^{d}\) be a set of k points with \(0\notin G\) so that so that \(G\cup \{0\}\) is affinely independent. By the spherical \((k-1)\)-simplex (defined by G) we mean the central projection of the \((k-1)\)-simplex defined by G to the unit sphere of \(\mathbb {R}^{d}\) centered at 0. Since \(0\notin G\), the spherical \((k-1)\)-simplex is homeomorphic to the simplex defined by G through central projection, and all faces of the spherical \((k-1)\)-simplex are contained in great spheres of the unit sphere of \(\mathbb {R}^{d}\) of appropriate dimension.

By a spherical simplicial complex, we mean a simplicial complex, except with all simplices in the complex being spherical simplices rather than usual simplices. By a spherical triangulation of the unit sphere in \(\mathbb {R}^{d}\), we mean a homogeneous spherical simplicial \((d-1)\)-complex so that the underlying space of the spherical simplicial complex is homeomorphic to the unit sphere through the identity map, i.e., the spherical \((d-1)\)-simplices of the spherical simplicial complex tesselate the unit sphere of \(\mathbb {R}^{d}\).

We will say a spherical triangulation is combinatorially equivalent to an abstract simplicial complex A if the vertex scheme of the spherical triangulation is isomorphic to the abstract simplicial complex A. By overloading the term, we will say two spherical triangulations are combinatorially equivalent if the vertex schemes of both triangulations are isomorphic to the same abstract simplicial complex.

We will say that two combinatorially equivalent spherical triangulations P and Q are edge-isometric if, with respect to the geodesic metric on the unit sphere, every edge of P is equally long to the corresponding edge of Q.

Before proceeding, we prove an elementary result regarding spherical triangulations.

Lemma 2.2

Let \(d\ge 2\) and let P be a spherical triangulation of the unit sphere of \(\mathbb {R}^{d}\).

  1. 1.

    There exists no hyperplane \(H\subseteq \mathbb {R}^{d}\) (through the origin) so that all vertices of P lie in one of the two closed half-spaces determined by H.

  2. 2.

    The interior of the closed convex hull of all vertices from P is non-empty.

  3. 3.

    The center of the unit sphere, i.e. the origin, is contained in the interior of the closed convex hull of all vertices from P.

Proof

We prove (1). Suppose H is a hyperplane so that all vertices of P lie in one of the two closed half-spaces determined by H. By our definition of spherical simplices through central projection, all simplices in \(\mathbb {R}^{d}\) that define the spherical simplices of P lie in this same closed half-space. There thus exists a point on the unit sphere in the opposite open half-space of H, that is not covered by P. We conclude that no such hyperplane H exists.

We prove (2). Suppose that the closed convex hull C of all vertices from P has empty interior. Then C is contained in some affine hyperplane H of \(\mathbb {R}^{d}\). Hence C lies inside, or to one side of the hyperplane through the origin parallel to H, contradicting (1).

We prove (3). Suppose that the closed convex hull C of all vertices of P does not contain the center of the unit sphere as an interior point. There are two possibilities, either the center is a boundary point of C, or is an exterior point of C. By (2), C has non-empty interior. In both cases, using either the Supporting Hyperplane Theorem or the Separation Theorem (see for instance [10, Thms. 2 and 3, p. 133]), there exists a hyperplane so that all vertices of P lie in one of the two closed half-spaces defined by this hyperplane, contradicting (1). \(\square \)

2.4 Labeled Spherical Triangulations and Heteroperturbative Sets

By \({\textbf{T}}\) we denote the set of all labeled spherical triangulations of unit spheres of any finite dimension with the center of the unit sphere (the origin) and all vertices of the triangulation carrying labels from \(\mathbb {N}\cup \{0\}\). For \(P\in {\textbf{T}}\) and vertex v in P, we define the notation \(\lambda v\) to denote the label in \(\mathbb {N}\cup \{0\}\) of the vertex v in P.

Let \(P,Q\in {\textbf{T}}\). We say P and Q are combinatorially equivalent with identical labels if P and Q are combinatorially equivalent and all pairs of the corresponding vertices of P and Q and their centers carry identical labels. This notion is an equivalence relation on \({\textbf{T}}\) and we denote the equivalence class of P in \({\textbf{T}}\) by [P].

We introduce the term ‘heteroperturbative’ subset of \({\textbf{T}}\), which we define formally in the next paragraph but first describe intuitively to hopefully aid the reader’s understanding. Informally, a heteroperturbative subset of \({\textbf{T}}\) is such that if one perturbs a labeled spherical triangulation from the heteroperturbative set, (while retaining its combinatorial structure and also remaining inside the heteroperturbative set), there must exist an edge of the triangulation that grows in length and another edge that shrinks in length.

Formally, let \({\textbf{S}}\subseteq {\textbf{T}}\) and let \(R\in {\textbf{S}}\). For \(P\in [R]\cap {\textbf{S}}\) and \(Q\in {\textbf{S}}\), we say that Q is a perturbation of P if \(Q\in [R]\cap {\textbf{S}}\) and P is not edge-isometric to Q. We say the equivalence class \([R]\cap {\textbf{S}}\) in \({\textbf{S}}\) is heteroperturbative, if the following holds for any pair \(P,Q\in [R]\): If P and Q are not edge-isometric, then there exist two pairs of respectively corresponding edges, uv and xy of P, and \(u'v'\) and \(x'y'\) of Q, so that, with respect to the geodesic metric on the unit sphere, the edge uv in P is strictly longer than the corresponding edge \(u'v'\) in Q; and, on the other hand, the edge xy in P is strictly shorter than the corresponding edge \(x'y'\) in Q. We say that \({\textbf{S}}\) is a heteroperturbative set (of labeled spherical triangulations of unit spheres) if all equivalence classes in \({\textbf{S}}\) are heteroperturbative.

Whether non-trivial/sufficiently interesting heteroperturbative sets even exist is an obvious question, which we now briefly discuss.

It is an easy exercise to see that the set of all triangulations of the unit circle in \(\mathbb {R}^{2}\) is heteroperturbative:

Example 2.3

Define \({\textbf{T}}_{2}\subseteq {\textbf{T}}\) as all labeled spherical triangulations of the unit circle in \(\mathbb {R}^{2}\). The geodesic lengths of all edges in a triangulation from \({\textbf{T}}_{2}\) sum to \(2\pi \). Hence, for any \(P\in {\textbf{T}}_{2}\), we cannot have all edges in a perturbation of P grow (shrink) as this would mean that the sum of the edge lengths in the perturbation sum to strictly more (less) than \(2\pi \). We note that here the labels on vertices are superfluous.

In contrast to the case for \(\mathbb {R}^{2},\) the set of all labeled triangulations of the unit sphere in \(\mathbb {R}^{3}\) is not heteroperturbative, as the following example demonstrates:

Example 2.4

Define \({\textbf{T}}_{3}\subseteq {\textbf{T}}\) as all labeled spherical triangulations of the unit sphere in \(\mathbb {R}^{3}\). Triangulating the unit sphere in \(\mathbb {R}^{3}\) with an equatorial strip of bisected darts (cf. Fig. 3) shows that \({\textbf{T}}_{3}\) is not heteroperturbative.

Fig. 3
figure 3

The set \({\textbf{T}}_{3}\) is not heteroperturbative. Triangulate the unit sphere of \(\mathbb {R}^{3}\) with an equatorial strip of bisected darts as indicated on the left of the figure. By rotating the vertices and edges on the equator around the polar axis we obtain a combinatorially equivalent triangulation, as on the right. On the right, with respect to the geodesic metric on the sphere, some edges have increased in length when compared to the corresponding edges on the left, but no edge on the right has decreased in length when compared to the corresponding edge on the left.

An interesting heteroperturbative set of spherical triangulations arises as a consequence of recent work by Winter on convex polytopes from [15]. The following result is an easy consequence of [15, Cor. 4.13]:

Theorem 2.5

(Winter) Let \(d\ge 2\) and let Y and Z be combinatorially equivalent convex polytopes inscribed by the unit sphere of \(\mathbb {R}^{d}\) so that the origin is contained in the interior of Z. If there exists an edge in Z that is strictly shorter (with respect to Euclidean norm) than the corresponding edge of Y, then there exists an edge of Z that is strictly longer (with respect to Euclidean norm) than the corresponding edge of Y.

Example 2.6

Define the set \({\textbf{W}}\subseteq {\textbf{T}}\) as all spherical triangulations \(P\in {\textbf{T}}\) of a unit sphere of any finite dimension \(d\ge 2\) for which the convex hull of the vertex set of P forms a simplicial polytope whose face lattice is isomorphic, as a simplicial complex, to the spherical triangulation P through central projection onto the unit sphere. By strict monotonicity of \(\arcsin \) there exists a strictly monotone relationship between the length of an edge of the polytope and the geodesic length of the corresponding edge of the triangulation P. By Lemma 2.2, the convex hull of the vertex set of P contains the center of the unit sphere as an interior point, and hence by Theorem 2.5, \({\textbf{W}}\) is seen to be heteroperturbative. Again, here the labels on vertices are superfluous.

We point out that \({\textbf{W}}\) as defined in the previous example is a proper subset of \({\textbf{T}}\). Although it is easily seen that \({\textbf{T}}_{2}\subseteq {\textbf{W}},\) the same is not true for \({\textbf{T}}_{3}\), (cf. Fig. 4), as the face lattice of convex hull of the vertices of a spherical triangulation in \(\mathbb {R}^{3}\) can be different to the vertex scheme of the triangulation.

Fig. 4
figure 4

The vertex scheme of a spherical triangulation of the unit sphere in \(\mathbb {R}^{3}\) need not be isomorphic to face lattice of the polytope obtained as the convex hull of all vertices of the trangulation. Consider an octahedral triangulation of the unit sphere of \(\mathbb {R}^{3}\) with the vertex at the north pole moved slightly down on one of the meridians so as to not be lie on the vertical line through the origin. We split this meridian into two rather “skinny” triangles as in the figure on the left. However, two vertices X and Y can then “see” each other over the chord connecting the vertices T and B. It is then seen that the face lattice of the polytope formed as the convex hull of the vertices of the triangulation is not isomorphic to the vertex scheme of the triangulation.

A directly relevant set of spherical triangulations is the one we now define.

Definition 2.7

Define the set \({\textbf{Q}}\subseteq {\textbf{T}}\) to be all labeled spherical triangulations \(P\in {\textbf{T}}\) for which there exists a monotone map \(\rho :\mathbb {N}\cup \{0\}\rightarrow (0,\infty )\) so that, with \(c\in \mathbb {N}\cup \{0\}\) denoting the label attached to the center of the unit sphere in P, both of the following conditions hold:

  1. 1.

    For all pairs of distinct vertices v and w of P (whether connected by an edge or not), the geodesic distance in the unit sphere from v to w is at least \(c_{\lambda w}^{\lambda v}|_{\rho }\).

  2. 2.

    For all edges vw in P, the geodesic length in the unit sphere of of vw is exactly \(c_{\lambda w}^{\lambda v}|_{\rho }\).

Intuitively, such a labeled spherical triangulation triangulation \(P\in {\textbf{Q}}\) describes an arrangement of spheres around a central sphere, and with tangencies compatible with the labeled spherical triangulation P in the following way: The central sphere, centered at the origin, has radius \(\rho (c)\). By scaling, every vertex v of P corresponds to a point of tangency on the central sphere with a neighboring sphere of radius \(\rho (\lambda v)\). The first condition of Definition 2.7 ensures that the spheres of respective radii \(\rho (\lambda v)\) and \(\rho (\lambda w)\) that are tangent to the central sphere at points corresponding to respectively v and w have disjoint interiors. The second condition of Definition 2.7 ensures that the spheres with respective radii \(\rho (\lambda v)\) and \(\rho (\lambda w)\) that are tangent to the central sphere at the points corresponding to v and w are tangent to each other.

By construction, canonically labeled spherical triangulations (cf. Sect. 2.5) that arise in any compact sphere packing \(\mathfrak {p}\) are members of \({\textbf{Q}}\). A natural question is whether or not \({\textbf{Q}}\) is heteroperturbative.

Conjecture 2.8

The set \({\textbf{Q}}\) of labeled spherical triangulations, as defined in Definition 2.7, is heteroperturbative.

A proof of Conjecture 2.8 together with Theorem 1.2 will immediately provide a proof of Conjecture 1.1.

2.5 Canonical Labelings, Canonical Realizers, Canonical Spherical Triangulations, and Packing Codes Determined by Compact Sphere Packings

Let \(d,n\in \mathbb {N}\) with \(d,n\ge 2\). Let \(\mathfrak {q}\) be any collection of spheres in \(\mathbb {R}^{d}\) with \(radii (\mathfrak {q})=\{r_{0},r_{1},\ldots ,r_{n-1}\}\) satisfying \(0<r_{0}<r_{1}<\cdots <r_{n-1}\). By the canonical labeling of \(\mathfrak {q}\), we mean attaching the label \(j\in \{0,\ldots ,n-1\}\) to the center of every sphere of radius \(r_{j}\) in \(\mathfrak {q}\). With \(\Sigma :=\{0,\ldots ,n-1\}\), we define the canonical realizer \(\rho :\Sigma \rightarrow (0,\infty )\) of \(\mathfrak {q}\) as \(\rho (j):=r_{j}\), for all \(j\in \Sigma \).

Let \(\mathfrak {p}\) be any compact sphere packing of \(\mathbb {R}^{d}\) with \(|radii (\mathfrak {p})|=n\) that is canonically labeled by \(\Sigma :=\{0,\ldots ,n-1\}\). Fix any sphere \(A\in \mathfrak {p}\). Since the underlying space of the packing complex of \(\mathfrak {p}\) is homeomorphic to \(\mathbb {R}^{d}\) through the identity map, the center of the sphere A is an interior point of the union of the closed star of the center of the sphere A (as a set in \(\mathbb {R}^{d}\) as a topological space). We obtain a labeled triangulation of the sphere A by centrally projecting the link of the center of A in the packing complex of \(\mathfrak {p}\) onto the surface of the sphere A and carrying the labels of vertices along. Let \(a\in \Sigma \) denote the label attached to the center of the sphere A. By scaling and translating we obtain a labeled spherical triangulation of the unit sphere of \(\mathbb {R}^{d}\) in \({\textbf{T}}\) and we call this the canonical labeled triangulation associated to the sphere \(A\in \mathfrak {p}\). Let \(T_{A}\) be the abstract simplicial complex obtained as the vertex scheme of the canonical labeled triangulation of the sphere A by forgetting all geometric information, but retaining all labels on the vertices. Then \(a:T_{A}\) is a d-dimensional packing code over \(\Sigma \), and we call \(a:T_{A}\) the canonical packing code associated to the sphere A. We define \(code (A):=a:T_{A}\) and

3 Fundamental Sets of Packing Codes

In this section, we define what we call fundamental sets of packing codes. These structures are always present as a subset of all the packing codes obtained from a compact sphere packing (cf. Theorem 3.2). In Fig. 5 we display an example of a fundamental set determined by a compact packing in two dimensions.

Fundamental sets allow us to firstly show that the combinatorics of a compact packing associated to a heteroperturbative set uniquely determine the radii of the spheres occurring in the packing (cf. Sect. 4), and to secondly establish The Bootstrapping Lemma in Sect. 5 relating ratios of values of realizers under the condition of existence of appropriate labeled spherical triangulations from a heteroperturbative set who are combinatorially equivalent with identical labels to the codes in the fundamental set.

Definition 3.1

Let \(d,n\in \mathbb {N}\) with \(d,n\ge 2\) and \(\Sigma :=\{0,\ldots ,n-1\}\). Let \(C\subseteq \mathfrak {C}(\Sigma )\). We will say that C is a fundamental set (of packing codes) if and for every non-empty set \(K\subseteq \{0,\ldots ,n-2\}\) there exists a code \(c:T\in C\) so that \(c\in K\) and there exists a vertex from T that has label that is not an element of K, i.e., \(\lambda (T)\backslash K\ne \emptyset \).

Theorem 3.2

Let \(d,n\in \mathbb {N}\) with \(d,n\ge 2\) and \(\Sigma :=\{1,\ldots ,n-1\}\). Let \(\mathfrak {p}\) be a canonically labeled compact sphere packing in \(\mathbb {R}^{d}\) with \(|radii (\mathfrak {p})|=n\). The set is a fundamental set.

Proof

Since \(|radii (\mathfrak {p})|=n\), we have . Suppose there exists a non-empty set \(K\subseteq \{0,\ldots ,n-2\}\) so that for all \(c:T\in C\) with \(c\in K\) we have that \(\lambda (T)\backslash K=\emptyset \). As there exists a sphere labeled by an element from K, and every sphere in \(\mathfrak {p}\) labeled by an element from K only has neighbors labeled by elements from K, we conclude that all spheres in \(\mathfrak {p}\) must be labeled by elements from K. But this yields the contradiction \(n=|radii (\mathfrak {p})|=|K|<n\). We conclude that C is fundamental. \(\square \)

Fig. 5
figure 5

The figure displays a compact packing \(\mathfrak {p}\) of \(\mathbb {R}^{2}\) from [6] with five sizes of discs. The canonical labeling of the packing is overlaid. Packing codes associated to compact disc packings in two dimensions have cycles as their neighbor complexes. We can therefore succinctly express the neighbor complexes of such codes as just the string of labels on the vertices in the order that the vertices occur in the cycle. From the figure, we thus read off the set \(codes (\mathfrak {p})\) (modulo reflection and rotation) as: \( \left\{ \begin{array}{c} 0:43142,\ 1:421230,\\ 2:431140,\ 3:434210,\\ 4:3320120 \end{array}\right\} .\) The conclusion of Theorem 3.2 is that is a fundamental set. This can be easily verified directly.

4 Uniqueness of Radii in Compact Packings Associated to a Heteroperturbative Set

In this section our goal is to prove Theorem 4.3 that shows, for some fixed heteroperturbative set \({\textbf{S}}\), that the combinatorics of a compact packing associated to \({\textbf{S}}\) uniquely determines the radii of the spheres in the packing.

The following lemma should be seen as a generalization of the result [12, Thm. 4.2] to higher dimensions. The argument is essentially the same, proceeding through application of Lemma 2.1 and leveraging the defining property of heteroperturbative sets.

Lemma 4.1

Let \(d,n\in \mathbb {N}\) with \(d,n\ge 2\) and \(\Sigma :=\{0,\ldots ,n-1\}\). Let \({\textbf{S}}\) be a heteroperturbative set of labeled spherical triangulations of unit spheres. Let \(C\subseteq \mathfrak {C}(\Sigma )\) be a fundamental set. Let \(\rho ,\sigma \in \{\tau :\Sigma \rightarrow (0,\infty ):\tau (n-1)=1\}\) and assume, for all \(c:T_{c}\in C\), that there exist spherical triangulations \(P_{c},Q_{c}\in {\textbf{S}}\) that are both combinatorially equivalent to \(T_{c}\) with identical labels and are such that, for every edge vw in \(T_{c}\), the corresponding edges of the triangulations \(P_{c}\) and \(Q_{c}\) respectively have geodesic lengths \(c_{\lambda w}^{\lambda v}|_{\rho }\) and \(c_{\lambda w}^{\lambda v}|_{\sigma }\). Then \(\rho =\sigma \).

Proof

We proceed by contradiction: Suppose that \(\rho \ne \sigma \). Define \(t_{0}:=\sup \{t>0:\forall j\in \Sigma ,\ t\sigma (j)<\rho (j)\}\) and \(J:=\{j\in \Sigma :t_{0}\sigma (j)=\rho (j)\}\). Note that the set J is not empty, else \(t_{0}\) cannot be the supremum of the set \(\{t>0:\forall j\in \Sigma ,\ t\sigma (j)<\rho (j)\}.\) Further, since \(\rho (n-1)=\sigma (n-1)=1\), we have that \(n-1\notin J\). Since C is fundamental, there exists a code \(k:T_{k}\in C\) with \(k\in J\) and some vertex p of \(T_k\) so that \(\lambda p\notin J\). Define \(\nu :=\rho -t_{0}\sigma \). The map \(\nu \) takes on non-negative values and the support of \(\nu \) is exactly \(\Sigma \backslash J\). By Lemma 2.1, for every edge vw of \(T_{k}\),

$$\begin{aligned} k_{\lambda w}^{\lambda v}|_{\sigma }=k_{\lambda w}^{\lambda v}|_{t_{0}\sigma }=k_{\lambda w}^{\lambda v}|_{t_{0}\sigma +0\nu }\le k_{\lambda w}^{\lambda v}|_{t_{0}\sigma +1\nu }=k_{\lambda w}^{\lambda v}|_{\rho }. \end{aligned}$$

Therefore no edge of \(P_{k}\) is strictly shorter that the corresponding edge of \(Q_{k}\). Furthermore, since \(\lambda p\notin J\), again by Lemma 2.1, at least one of the above inequalities is strict, implying that an edge of \(P_{k}\) is strictly longer than the corresponding edge of \(Q_{k}\). Hence \(P_{k}\) and \(Q_{k}\) are not edge-isometric, while living in the same equivalence class in the heteroperturbative set \({\textbf{S}}\). This implies the existence of an edge in \(P_{k}\) that is strictly shorter that the corresponding edge of \(Q_{k}\), contrary to our earlier remark that this is not the case. Consequently the supposition \(\rho \ne \sigma \) is false, and we conclude that \(\rho =\sigma \). \(\square \)

Lemma 4.2

Let \(d,n\in \mathbb {N}\) with \(d,n\ge 2\) and define \(\Sigma :=\{0,\ldots ,n-1\}\). Let \(\mathfrak {p}\) be a canonically labeled compact sphere packing in \(\mathbb {R}^{d}\) with \(|radii (\mathfrak {p})|=n\) and normalized so that \(\max radii (\mathfrak {p\mathfrak {)}}=1\). Let \(\rho :\Sigma \rightarrow (0,1]\) denote the canonical realizer of the packing \(\mathfrak {p}\). The canonical labeled triangulation associated to any sphere in \(\mathfrak {p}\) (by using the canonical realizer \(\rho \)) is an element of the set \({\textbf{Q}}\), as in Definition 2.7.

Proof

This follows from construction as discussed in Sect. 2.4. \(\square \)

Theorem 4.3

Let \(d,n\in \mathbb {N}\) with \(d,n\ge 2\) and define \(\Sigma :=\{0,\ldots ,n-1\}\). Let \({\textbf{S}}\) be a heteroperturbative set of labeled spherical triangulations of unit spheres. Let \(\mathfrak {p}\) be a canonically labeled compact sphere packing in \(\mathbb {R}^{d}\) with \(|radii (\mathfrak {p})|=n\), normalized so that \(\max radii (\mathfrak {p\mathfrak {)}}=1\), and so that the canonical labeled spherical triangulation associated to every sphere from \(\mathfrak {p}\) is an element of \({\textbf{S}}\). Let \(C\subseteq codes (\mathfrak {p})\) be a fundamental set. The canonical realizer \(\rho :\Sigma \rightarrow (0,1]\) of the packing \(\mathfrak {p}\) is the unique map in \(\{\tau :\Sigma \rightarrow (0,\infty ):\tau (n-1)=1\}\) so that, for every \(c:T_{c}\in C\), there exists a spherical triangulation \(P_{c}\in {\textbf{S}}\) that is combinatorially equivalent to \(T_{c}\) with identical labels and is such that for every edge vw of \(T_{c}\) the corresponding edge in \(P_{c}\) has length \(c_{\lambda w}^{\lambda v}|_{\rho }\).

Proof

By Lemma 4.2, the canonical realizer \(\rho \) of \(\mathfrak {p}\) is such that for every \(c:T_{c}\in C\), there exists a spherical triangulation \(P_{c}\in {\textbf{G}}\) (the canonical labeled spherical triangulation of some sphere from \(\mathfrak {p}\)) that is combinatorially equivalent to \(T_{c}\) with identical labels and is such that, for every edge vw of \(T_{c},\) the corresponding edge in \(P_{c}\) has length \(c_{\lambda w}^{\lambda v}|_{\rho }\). But the canonical labeled spherical triangulation of all spheres in \(\mathfrak {p}\) are all assumed to be elements of \({\textbf{S}}\). Therefore the canonical realizer \(\rho \) satisfies the stated condition.

By Lemma 4.1 the canonical realizer \(\rho \) is the only map in \(\{\tau :\Sigma \rightarrow (0,\infty ):\tau (n-1)=1\}\) satisfying this condition. \(\square \)

5 The Bootstrapping Lemma

This section sees the proof of The Bootstrapping Lemma (Lemma 5.2). This result is a crucial ingredient in the induction step of the strong induction performed in proving the main technical result of this paper (Lemma 6.7). Lemma 5.2 is analogous to [12, Lem. 5.1].

We introduce the following admittedly tortuously abused notation for which the authors apologize. The reason for its introduction is to be able to succinctly express how realizers relate to labeled spherical triangulations of the unit sphere in this section and in the subsequent section.

Definition 5.1

Let \(\Sigma \) be any set of symbols and let \(c:T_{c}\in \mathfrak {C}(\Sigma )\). Let \(P\in {\textbf{T}}\) be any labeled spherical triangulation of the unit sphere and let \(\rho :\Sigma \rightarrow (0,\infty )\) be any map.

By the notation

$$\begin{aligned} \rho \underset{c:T_{c}}{\blacktriangleleft }P \end{aligned}$$

we mean the following: Firstly, P is combinatorially equivalent to \(T_{c}\) with identical labelings, and secondly, for all pairs of distinct vertices vw of \(T_{c}\) (not necessarily connected by an edge), the geodesic distance in the unit sphere between the vertices corresponding to v and w in P is at least \(c_{\lambda w}^{\lambda v}|_{\rho }\).

By the notation

$$\begin{aligned} \rho \underset{c:T_{c}}{\vartriangleleft }P \end{aligned}$$

we mean the following: Firstly, P is combinatorially equivalent to \(T_{c}\) with identical labelings, and secondly, for all edges vw of \(T_{c}\), the geodesic length in the unit sphere of the corresponding edge in P is least \(c_{\lambda w}^{\lambda v}|_{\rho }\).

The meaning of the notation

$$\begin{aligned} P\underset{c:T_{c}}{\blacktriangleleft }\rho \qquad \text {and}\qquad P\underset{c:T_{c}}{\vartriangleleft }\rho \end{aligned}$$

is defined to be the same as above, but with the words ‘at least’ are replaced with the words ‘at most’.

Lemma 5.2

(The Bootstrapping Lemma) Let \(d,n\in \mathbb {N}\) with \(d,n\ge 2\) and \(\Sigma :=\{0,\ldots ,n-1\}\). Let \({\textbf{S}}\) be a heteroperturbative set of labeled spherical triangulations of unit spheres. Let \(C\subseteq \mathfrak {C}(\Sigma )\) be a fundamental set. If \(\rho ,\sigma :\Sigma \rightarrow (0,\infty )\) are such that, for all \(c:T_{c}\in C\) there exist triangulations \(P_{c},Q_{c}\in {\textbf{S}}\) so that \(\rho \underset{c:T_{c}}{\vartriangleleft }P_{c}\) and \(Q_{c}\underset{c:T_{c}}{\vartriangleleft }\sigma \), as in Definition 5.1, then

$$\begin{aligned} \frac{\sigma (n-2)}{\sigma (n-1)}\le \frac{\rho (n-2)}{\rho (n-1)}. \end{aligned}$$

Proof

Assume \(\rho ,\sigma :\Sigma \rightarrow (0,\infty )\) are such that, for all \(c:T_{c}\in C\) there exist triangulations \(P_{c},Q_{c}\in {\textbf{S}}\) so that \(\rho \underset{c:T_{c}}{\vartriangleleft }P_{c}\) and \(Q_{c}\underset{c:T_{c}}{\vartriangleleft }\sigma \).

If there exists some \(t\in (0,\infty )\) so that \(\rho =t\sigma \), then we immediately obtain

$$\begin{aligned} \frac{\sigma (n-2)}{\sigma (n-1)}=\frac{t\sigma (n-2)}{t\sigma (n-1)}=\frac{\rho (n-2)}{\rho (n-1)}. \end{aligned}$$

We hence assume, for all \(t\in (0,\infty )\) that \(\rho \ne t\sigma \).

Define \(t_{0}:=\sup \{t\in (0,\infty ):\forall j\in \Sigma ,\ t\sigma (j)<\rho (j)\}>0\) and

$$\begin{aligned} J:=\{j\in \Sigma :t_{0}\sigma (j)=\rho (j)\}. \end{aligned}$$

We note that J is not empty, otherwise \(t_{0}\) cannot be the supremum of the set \(\{t\in (0,\infty ):\forall j\in \Sigma ,\ t\sigma (j)<\rho (j)\}\). Also, since for all \(t\in (0,\infty )\) we have \(\rho \ne t\sigma \), we have that J is a proper subset of \(\Sigma \).

There are two cases: Either \(n-1\in J\) or \(n-1\notin J\). We show that we must have \(n-1\in J\) through obtaining a contradiction in the other case.

Suppose that \(n-1\notin J\), hence \(J\subseteq \{0,\ldots ,n-2\}\). Since C is a fundamental set, there exists some \(k:T_{k}\in C\) that has some vertex p in \(T_{k}\) with \(\lambda p\notin J\). Define \(\nu :=\rho -t_{0}\sigma \), which can be seen to be non-negative and have support exactly equal to \(\Sigma \backslash J\). By Lemma 2.1, for all edges vw in \(T_{k}\), we have

$$\begin{aligned} k_{\lambda w}^{\lambda v}|_{\sigma }=k_{\lambda w}^{\lambda v}|_{t_{0}\sigma }=k_{\lambda w}^{\lambda v}|_{t_{0}\sigma +0\nu }\le k_{\lambda w}^{\lambda v}|_{t_{0}\sigma +1\nu }=k_{\lambda w}^{\lambda v}|_{\rho }. \end{aligned}$$

Since \(\rho \underset{c:T_{c}}{\vartriangleleft }P_{k}\) and \(Q_{k}\underset{c:T_{c}}{\vartriangleleft }\sigma \), by the above chain of inequalities, all edges of \(P_{k}\) are longer or equal in length to the corresponding edges in \(Q_{k}\). Since \(\lambda p\notin J\), again by Lemma 2.1, at least one of the above inequalities is strict. Therefore \(P_{k}\) and \(Q_{k}\) are not edge-isometric, but belong to the same equivalence class in the heteroperturbative set \({\textbf{S}}\), and therefore there exists an edge of \(P_{k}\) that is strictly shorter than the corresponding edge of \(Q_{k}\). This is in contradiction with the earlier remark that all edges of \(P_{k}\) are longer or equal in length to the corresponding edges in \(Q_{k}\). We conclude that we must have \(n-1\in J\).

With \(n-1\in J\), we have \(t_{0}\sigma (n-1)=\rho (n-1)\) and \(t_{0}\sigma (n-2)\le \rho (n-2)\). Hence, we obtain

$$\begin{aligned} \frac{\sigma (n-2)}{\sigma (n-1)}=\frac{t_{0}\sigma (n-2)}{t_{0}\sigma (n-1)}=\frac{t_{0}\sigma (n-2)}{\rho (n-1)}\le \frac{\rho (n-2)}{\rho (n-1)}. \end{aligned}$$

\(\square \)

6 Essential Sets and Proof of the Main Result

In this section, we prove our main result Theorem 1.2 through the main technical results of this paper. The arguments in this section have the proof of Lemma 1.3 in [8, Lem. 6.1] as their germ, and closely follows [12, Sect. 6].

We start with the following definition:

Definition 6.1

Let \(d,n\in \mathbb {N}\) with \(d,n\ge 2\) and \(\Sigma :=\{0,\ldots ,n-1\}\). Let \({\textbf{S}}\) be a heteroperturbative set of labeled spherical triangulations of unit spheres. We say a fundamental set \(C\subseteq \mathfrak {C}(\Sigma )\) is an n-essential set for \({\textbf{S}}\) in dimension d if there exist monotone maps \(\rho ,\sigma :\Sigma \rightarrow (0,\infty )\) so that, for every \(c:T_{c}\in C\), the set

is non-empty. We denote the set of all n-essential sets for \({\textbf{S}}\) in dimension d by \(\mathcal {E}_{d,n}({\textbf{S}}).\)

Definition 6.1 places further conditions on fundamental sets. In showing that these extra conditions are automatically satisfied by fundamental sets that arise from compact packings associated to the heteroperturbative set \({\textbf{S}}\), we can show that the cardinality of the set \(\Pi _{d,n}({\textbf{S}})\) is bounded above by the cardinality of the set \(\mathcal {E}_{d,n}({\textbf{S}})\) (cf. Lemma 6.2). The aim in this section is thus to show, for \(d,n\in \mathbb {N}\) with \(d,n\ge 2\) and any heteroperturbative set \({\textbf{S}}\), that the set \(\mathcal {E}_{d,n}({\textbf{S}})\) is finite (cf. Corollaries 6.8 and 6.9). This is achieved through a strong induction arglument by showing first showing \(\mathcal {E}_{d,2}({\textbf{S}})\) is finite, and subsequently showing that \(\mathcal {E}_{d,n}({\textbf{S}})\) is finite under assumption that all the ‘lower’ sets \(\mathcal {E}_{d,k}({\textbf{S}})\) with \(k\in \{2,3,\ldots ,n-1\}\) are finite (cf. Lemmas 6.3 and 6.7).

Before we continue, at the request of the anonymous referee, we explain some more of the intuition behind this section. Admittedly, our choice of Definition 6.1 may appear somewhat opaque. The reason for this apparent opacity is likely the process at arriving at this definition through the trial and error approach taken toward proving the results in this section without first having a concrete definition of an essential set. Only after the results in this section had been refined by trial and error, could one see exactly what the “correct”Footnote 2 definition of an essential set must be. The conditions placed on the elements of \(\mathcal {E}_{d,n}({\textbf{S}})\) by Definition 6.1 along with the notations, \(\blacktriangleleft \) and \(\vartriangleleft \), were then chosen in exactly such a way so as to be able to precisely relate an element in \(\mathcal {E}_{d,n}({\textbf{S}})\) to elements in the ‘lower’ sets \(\mathcal {E}_{d,k}({\textbf{S}})\) for \(k\in \{2,3,\ldots ,n-1\}\) through the \(\downarrow \)-operation (cf. Definition 6.4 and Lemmas 6.5 and 6.6). Furthermore, the conditions from Definition 6.1 were chosen such that, in relating an element C from \(\mathcal {E}_{d,n}({\textbf{S}})\) through the \(\downarrow \)-operation to elements in the ‘lower’ sets \(\mathcal {E}_{d,k}({\textbf{S}})\) for \(k\in \{2,3,\ldots ,n-1\}\), allows for obtaining information on the map \(\rho \) for C in terms of the \(\sigma \)’s from the lower essential sets through application of The Bootstrapping Lemma (Lemma 5.2). This idea forms the heart of the proof of Lemma 6.7.

We now proceed with the technical details of this section.

Lemma 6.2

Let \(d,n\in \mathbb {N}\) with \(d,n\ge 2\). Let \({\textbf{S}}\) be a heteroperturbative set of labeled spherical triangulations of unit spheres. The set \(\Pi _{d,n}({\textbf{S}})\) has cardinality at most that of the set \(\mathcal {E}_{d,n}({\textbf{S}}).\)

Proof

Let \(\mathfrak {p}\) be a canonically labeled compact sphere packing in \(\mathbb {R}^{d}\) with \(|radii (\mathfrak {p})|=n\) so that \(\max radii (\mathfrak {p})=1\) and such that the canonical labeled triangulation of the unit sphere associated to every sphere in \(\mathfrak {p}\) is an element of \(\mathcal {{\textbf{S}}}\). By Theorem 3.2 there exists a fundamental set \(C\subseteq codes (\mathfrak {p})\). Taking both maps \(\rho \) and \(\sigma \) in Definition 6.1 as equal to the canonical realizer of \(\mathfrak {p}\) and applying Lemma 4.2, we see that for all \(c:T_{c}\in C\), the set is non-empty and hence C is an n-essential set for \({\textbf{S}}\) in dimension d.

Let \(\mathfrak {q}\) be another canonically labeled compact sphere packing in \(\mathbb {R}^{d}\) satisfying \(|radii (\mathfrak {q})|=n\) with \(\max radii (\mathfrak {q})=1\), is such that \(C\subseteq codes (\mathfrak {q})\), and has the canonical labeled triangulation of the unit sphere associated to every sphere in \(\mathfrak {q}\) being an element of \(\mathcal {{\textbf{S}}}\). By Lemma 4.3, the canonical realizers of the packings \(\mathfrak {p}\) and \(\mathfrak {q}\) are equal.

We conclude that each compact packing associated to \({\textbf{S}}\) determines at least one element of the set \(\mathcal {E}_{d,n}({\textbf{S}})\), and each element of the set \(\mathcal {E}_{d,n}({\textbf{S}})\) determines at most one element of \(\Pi _{d,n}({\textbf{S}}).\) Therefore \(\Pi _{d,n}({\textbf{S}})\) has cardinality at most that of the cardinality of the set \(\mathcal {E}_{d,n}({\textbf{S}})\). \(\square \)

Lemma 6.3

Let \(d\in \mathbb {N}\) with \(d\ge 2\). Let \({\textbf{S}}\) be a heteroperturbative set of labeled spherical triangulations of unit spheres. The set \(\mathcal {E}_{d,2}({\textbf{S}})\) of all 2-essential sets for \({\textbf{S}}\) in dimension d is finite.

Proof

Let \(C\subseteq \mathfrak {C}(\{0,1\})\) be any 2-essential set for \({\textbf{S}}\) in dimension d. Since C is fundamental, for all \(c:T_{c}\in C\) we have \(c=0\). Further, there exist monotone maps \(\rho ,\sigma :\{0,1\}\rightarrow (0,\infty )\) so that for all \(c:T_{c}\in C\) the set is non-empty. Since \(\rho \) is monotone, we have that \(\pi /3\le 0_{0}^{0}|_{\rho },\ 0_{0}^{1}|_{\rho },\ 0_{1}^{1}|_{\rho }\). Hence, for all \(c:T_{c}\in C\), every spherical triangulation from the set has a geodesic distance of at least \(\pi /3\) between all pairs of distinct vertices.

By compactness of the unit sphere \(S\subseteq \mathbb {R}^{d}\), we let \(N\in \mathbb {N}\) be the least cardinality of a cover of S by geodesic open balls of radius \(\pi /6\) with centers on S. But then for all codes \(c:T_{c}\in C\) no labeled spherical triangulation from the set can have more than N vertices otherwise there would exist two distinct vertices strictly closer than \(\pi /3\). Hence in every code \(0:T_{c}\in C\), the neighbor complex T has at most N vertices. We conclude that the set of all 2-essential sets or \({\textbf{S}}\) in dimension d, \(\mathcal {E}_{d,2}({\textbf{S}})\), has cardinality at most that of the powerset of the finite set \(\square \)

Definition 6.4

Let \(\Sigma \) denote any totally ordered set of symbols. For any structure T labeled by elements from \(\Sigma \), for \(s\in \Sigma \), by \(T\downarrow _{s}\) we mean a relabeling of T in which all labels occurring in T that are strictly larger than s are replaced by s.

Lemma 6.5

For any \(k\in \mathbb {N}\), define \(\Sigma _{k}:=\{0,\ldots ,k-1\}\). Let \(d,n\in \mathbb {N}\) with \(d,n\ge 2\). If \(C\subseteq \mathfrak {C}(\Sigma _{n})\) is fundamental, then for any \(k\in \mathbb {N}\) with \(2\le k\le n\), the set is fundamental.

Proof

Let \(2\le k\le n.\) Since C is fundamental we have that, . Let K be a non-empty subset of \(\{0,\ldots ,k-2\}\subseteq \{0,\ldots ,n-2\}\). Since C is fundamental there exists some \(c:T\in C\) so that \(c\in K\), but with some \(p\in \lambda (T)\backslash K\). There are two cases, \(p\ge k-1\) and \(p<k-1\). In the case that \(p\ge k-1\), then \(p\downarrow _{k-1}=k-1\notin K\), so that \(c:T\downarrow _{k-1}\in C_{k}\) is such that \(c\in K\), with \(p\downarrow _{k-1}\in \lambda (T\downarrow _{k-1})\backslash K\). On the other hand, if \(p<k-1\), then \(p\downarrow _{k-1}=p\notin K\), and \(c:T\downarrow _{k-1}\in C_{k}\) is such that \(p=p\downarrow _{k-1}\in \lambda (T\downarrow _{k-1})\backslash K\). We conclude that \(C_{k}\) is fundamental. \(\square \)

Lemma 6.6

For any \(k\in \mathbb {N}\), define \(\Sigma _{k}:=\{0,\ldots ,k-1\}\). Let \(d,n\in \mathbb {N}\) with \(d,n\ge 2\). Let \({\textbf{S}}\) be a heteroperturbative set of labeled spherical triangulations of unit spheres. If \(C\subseteq \mathfrak {C}(\Sigma _{n})\) is an element of \(\mathcal {E}_{d,n}({\textbf{S}})\), then for any \(k\in \mathbb {N}\) with \(2\le k\le n\), the set is an element of \(\mathcal {E}_{d,k}({\textbf{S}})\).

Proof

Assume that \(C\subseteq \mathfrak {C}(\Sigma _{n})\) is an n-essential set for \({\textbf{S}}\) in dimension d. Let \(\sigma ,\rho :\Sigma _{n}\rightarrow (0,\infty )\) be monotone maps so that for all \(c:T_{c}\in C\) the set

is non-empty.

Let \(k\in \{2,\ldots ,n\}\), and define . By Lemma 6.5, the set \(C_{k}\) is fundamental. Define \(\rho ',\sigma ':\Sigma _{k}\rightarrow (0,\infty )\) as

$$\begin{aligned} \rho '(s):={\left\{ \begin{array}{ll} \rho (s) &{} s<k-1 \\ \rho (k-1) &{} s=k-1 \end{array}\right. }\qquad (s\in \Sigma _{k}) \end{aligned}$$

and

$$\begin{aligned} \sigma '(s):={\left\{ \begin{array}{ll} \sigma (s) &{} s<k-1 \\ \sigma (n-1) &{} s=k-1 \end{array}\right. }\qquad (s\in \Sigma _{k}). \end{aligned}$$

Since \(\rho \) and \(\sigma \) are both monotone, so are \(\rho '\) and \(\sigma '\). Furthermore, we note, for all \(c\in \{0,\ldots ,k-2\}\) and \(a,b\in \Sigma \), that

$$\begin{aligned} c_{b}^{a}\downarrow _{k-1}\,|_{\rho '}\le c_{b}^{a}|_{\rho }\qquad \text {and}\qquad c_{b}^{a}|_{\sigma }\le c_{b}^{a}\downarrow _{k-1}\,|_{\sigma '}. \end{aligned}$$

Therefore, for all \(c:T_{c}\downarrow _{k-1}\in C_{k}\),

Therefore \(C_{k}\) is a k-essential set for \({\textbf{S}}\) in dimension d. \(\square \)

Lemma 6.7

Let \(d,n\in \mathbb {N}\) with \(d,n\ge 2\). Let \({\textbf{S}}\) be a heteroperturbative set of labeled spherical triangulations of unit spheres. If, for all \(k\in \{2,\ldots ,n-1\}\), the set \(\mathcal {E}_{d,k}({\textbf{S}})\) is finite, then the set \(\mathcal {E}_{d,n}({\textbf{S}})\) is finite.

Proof

For any \(k\in \mathbb {N}\), define \(\Sigma _{k}:=\{0,\ldots ,k-1\}\).

Assume for all \(k\in \{2,\ldots ,n-1\}\) that the set \(\mathcal {E}_{d,k}({\textbf{S}})\) is finite. For every \(k\in \{2,\ldots ,n-1\}\) and every one of the finitely many \(D\in \mathcal {E}_{d,k}({\textbf{S}})\), we fix monotone maps \(\sigma _{D},\rho _{D}:\Sigma _{k}\rightarrow (0,\infty )\) as in Definition 6.1 so that, for all \(c:T_{c}\in D\), we have

For every \(k\in \{2,\ldots ,n-1\}\), define

Let \(C\in \mathfrak {C}(\Sigma _{n})\) be any element of the set \(\mathcal {E}_{d,n}({\textbf{S}})\). By Definition 6.1, there exist monotone maps \(\sigma ,\rho :\Sigma _{n}\rightarrow (0,\infty )\) so that, for every \(c:T_{c}\in C\), we have

For each \(k\in \{2,\ldots ,n-1\}\), by Lemma 6.6, the set

is an element of \(\mathcal {E}_{d,k}({\textbf{S}})\), and hence, for all \(c:T_{c}\downarrow _{k-1}\in C_{k}\), we have

On the other hand, for each \(k\in \{2,\ldots ,n-1\}\), let \(\rho _{k}\) denote the restriction of \(\rho \) to \(\Sigma _{k}\). Then, for all \(c:T_{c}\downarrow _{k-1}\in C_{k}\), by observing that for all \(a,b\in \{0,\ldots ,n-1\},\) we have \(c_{b}^{a}\downarrow _{k-1}\,|_{\rho _{k}}\le c_{b}^{a}|_{\rho }\), and hence obtain

As, for each \(k\in \{2,\ldots ,n-1\}\), both the sets

are non-empty, and because \(\rho _{k}\underset{c:T_{c}\downarrow _{k-1}}{\blacktriangleleft }P\) implies \(\rho _{k}\underset{T_{c}\downarrow _{k-1}}{\vartriangleleft }P\), we apply The Bootstrapping Lemma (Lemma 5.2) to obtain, for each \(k\in \{2,\ldots ,n-1\}\), that

$$\begin{aligned} \frac{\sigma _{C_{k}}(n-2)}{\sigma _{C_{k}}(n-1)}\le \frac{\rho _{k}(n-2)}{\rho _{k}(n-1)}. \end{aligned}$$

Therefore, for each \(k\in \{2,\ldots ,n-1\}\),

Now, from

$$\begin{aligned} 0<K_{0}\le \frac{\rho (0)}{\rho (1)},\quad 0<K_{1}\le \frac{\rho (1)}{\rho (2)},\quad \ldots ,\quad 0<K_{n-3}\le \frac{\rho (n-3)}{\rho (n-2)}, \end{aligned}$$

we obtain

$$\begin{aligned} 0<\left( \prod _{j=0}^{k-3}K_{j}\right) \le \frac{\rho (0)}{\rho (n-2)}. \end{aligned}$$

Define

$$\begin{aligned} \kappa (s):={\left\{ \begin{array}{ll} \left( \prod _{j=0}^{k-3}K_{j}\right) &{} s=0 \\ 1 &{} s=n-2 \end{array}\right. }\quad (s\in \{0,n-2\}). \end{aligned}$$

Then

$$\begin{aligned} 0&<(n-2)_{0}^{0}|_{\kappa }\le (n-2)_{0}^{0}|_{\rho }\ , \end{aligned}$$

and since \(\rho \) is monotone, for all \(a,b,c\in \Sigma _{n}\), with \(c\le n-2\), we thus have that \((n-2)_{0}^{0}|_{\kappa }\le (n-2)_{0}^{0}|_{\rho }\le c_{b}^{a}|_{\rho }.\) Hence, for all \(c:T_{c}\in C\), we have that no triangulation from can have distinct vertices closer than \((n-2)_{0}^{0}|_{\kappa }\) to each other with respect to the geodesic metric on the unit sphere in \(\mathbb {R}^{d}\).

By compactness of the unit sphere \(S\subseteq \mathbb {R}^{d}\), we set \(N\in \mathbb {N}\) to be the least cardinality that an open cover of S with open geodesic balls of radius \((n-2)_{0}^{0}|_{\kappa }/2\) can have. We crucially note here that the number N is independent of the choice of the element C from the set \(\mathcal {E}_{d,n}({\textbf{S}})\), and depends only on the finitely many elements in \(\bigcup _{k=2}^{n-1}\mathcal {E}_{d,k}({\textbf{S}})\). Therefore, for every \(c:T_{c}\in C\), each triangulation from and hence also \(T_{c}\) can have at most N vertices.

We conclude, for each of the elements \(c:T_{c}\) in any \(C\in \mathcal {E}_{d,n}({\textbf{S}})\), that the number of vertices that \(T_{c}\) can have is at most N. Hence the cardinality of the set \(\mathcal {E}_{d,n}({\textbf{S}})\) is at most the cardinality of the power set of the finite set

\(\square \)

Corollary 6.8

Let \(d,n\in \mathbb {N}\) with \(d,n\ge 2\). Let \({\textbf{S}}\) be a heteroperturbative set of labeled spherical triangulations of unit spheres. The set \(\mathcal {E}_{d,n}({\textbf{S}})\) is finite.

Fig. 6
figure 6

Consider the compact packing in \(\mathbb {R}^{3}\) from [5, Thm. 1] with spheres with radii \(\sqrt{3/2}-1\) (red), \(\sqrt{2}-1\) (green), and 1 (yellow). The canonical labeled spherical triangulation associated to the largest spheres in such a packing are not elements of \({\textbf{W}}\) (cf. Example 2.6). On a large sphere, the points of contact of the medium and small neighboring spheres can “see” each other over the chord connecting points of contact of other neighboring large spheres. This can be observed on the inscribed nonconvex polyhedron in the figure on the right, whose central projection onto the circumscribing sphere, coincides with the canonical spherical triangulation associated to a large sphere from this packing

Proof

This is immediate by strong induction using Lemmas 6.3 and 6.7. \(\square \)

This allows us to prove our main result, Theorem 1.2, in the following corollary:

Corollary 6.9

Let \(d,n\in \mathbb {N}\) with \(d,n\ge 2\). Let \({\textbf{S}}\) be a heteroperturbative set of labeled spherical triangulations of unit spheres. The set \(\Pi _{d,n}({\textbf{S}})\) is finite.

Proof

This follows from combining Lemma 6.2 and Corollary 6.8. \(\square \)

As discussed previously, the set \({\textbf{W}}\) (cf. Example 2.6) is heteroperturbative, yielding the following result showing that a fairly interesting subset of \(\Pi _{d,n}\) is finite in general:

Corollary 6.10

Let \(d,n\in \mathbb {N}\) with \(d,n\ge 2\). With \({\textbf{W}}\), as defined in Example 2.6, the set \(\Pi _{d,n}({\textbf{W}})\) is finite.

Furthermore, as discussed, \({\textbf{T}}_{2}\) (cf. Example 2.3) is also heteroperturbative (in fact \({\textbf{T}}_{2}\subseteq {\textbf{W}}\)), and since \(\Pi _{2,n}=\Pi _{2,n}({\textbf{T}}_{2})\) we regain the previously known the case for dimension two:

Corollary 6.11

Let \(n\in \mathbb {N}\) with \(n\ge 2\). The set \(\Pi _{2,n}\) is finite.

Given Corollary 6.10, one may hope that the canonical labeled spherical triangulations obtained from compact packings of any dimension are always elements of \({\textbf{W}}\), thereby resolving Conjecture 1.1 in full generality. This seen to be the case for compact disc packings in \(\mathbb {R}^{2}\) and is seen, ex post facto, to be the case for compact sphere packings in \(\mathbb {R}^{3}\) with two sizes of sphere, cf. [7]. However this is not true in general. Some of the known compact packings in \(\mathbb {R}^{3}\) with three sizes of sphere have spheres with associated canonical labeled triangulations of the unit sphere that are not contained in \({\textbf{W}}\). An example is presented in Fig. 6 which exhibits the same pathology as described in Fig. 4.