Open Access
This article is

- freely available
- re-usable

*Algorithms*
**2020**,
*13*(1),
11;
https://doi.org/10.3390/a13010011

Article

A Numerical Approach for the Filtered Generalized Čech Complex

Departamento de Matemáticas, Universidad de Sonora, C.P. 83000, Hermosillo, Mexico

^{*}

Author to whom correspondence should be addressed.

Received: 24 November 2019 / Accepted: 27 December 2019 / Published: 30 December 2019

## Abstract

**:**

In this paper, we present an algorithm to compute the filtered generalized Čech complex for a finite collection of disks in the plane, which do not necessarily have the same radius. The key step behind the algorithm is to calculate the minimum scale factor needed to ensure rescaled disks have a nonempty intersection, through a numerical approach, whose convergence is guaranteed by a generalization of the well-known Vietoris–Rips Lemma, which we also prove in an alternative way, using elementary geometric arguments. We give an algorithm for computing the 2-dimensional filtered generalized Čech complex of a finite collection of d-dimensional disks in ${\mathbb{R}}^{d}$, and we show the performance of our algorithm.

Keywords:

disk system; generalized Čech complex; Čech scale; generalized Vietoris–Rips Lemma; miniball problemMSC:

68U05; 55U05; 68W40; 65D18## 1. Introduction

Recently, in the study of data point clouds from a topological approach (cf. [1,2,3,4,5]), the need to develop algorithms to construct different simplicial structures has arisen, such as the Vietoris–Rips complex, the Čech complex, the piecewise linear lower star complex, etc. (cf. [6,7]).

Of particular interest to us is the generalized Čech complex structure, whereas the standard Čech complex is induced by the intersection of a collection of disks with fixed radius, the generalized version admits different radii (see [8]); when radii are rescaled, using the same scale factor each time, the corresponding simplicial complexes forms the filtered generalized Čech complex.

There exist efficient algorithms to calculate the standard Čech complex (see, e.g., in [9]), and software currently available to obtain the associated filtration (cf. [10,11]); also, in [12] the authors propose an algorithm to approximate the Čech filtration. On the other hand, we can find algorithms to calculate the generalized Čech complex (see, e.g., in [8]); however, as far as we know, there are neither algorithms nor software to provide the filtered generalized Čech complex. In the present work, we show an algorithm to compute the filtered generalized Čech complex for a finite collection of disks, specifically, in the plane. Actually, we also show an algorithm to build up to the 2-dimensional filtered generalized structure (or 2-skeleton), for higher-dimensional disk systems, which many applications only require, as we can see in [13,14,15,16,17].

The key step behind these proposed algorithms, is to calculate the minimum scale factor (called Čech scale) needed to ensure that the rescaled disks have a nonempty intersection; the generalized Vietoris–Rips lemma over multiple radii will allow us to calculate these scales numerically.

We must emphasize that our main algorithm (Algorithm 3) is only generalizable to higher-dimensional disk systems to obtain the 2-dimensional filtered generalized Čech structure, as we show as an application. Additionally, we show how our algorithm yields the minimal enclosing ball for a finite set of points in the plane.

This paper is organized as follows. In Section 2, we introduce basic notions and notation which will be used throughout the paper. We define the Vietoris–Rips system and the Čech system, associated to a finite collection of closed disks in the euclidean space (or disk system) in terms of their intersection. We also introduce the fundamental notions of Vietoris–Rips scale and Čech scale for a disk system, as the infimum over all rescaling factors such that the disk system becomes a Vietoris–Rips system or a Čech system, respectively. In Lemma 2, we state and prove a generalization, over multiple radii, of the well-known Vietoris–Rips Lemma [17] (Theorem 2.5) using elementary geometric arguments. In [18] there is a proof in the generalized case, following the ideas in [17].

In Section 3 we describe the generalized versions of standard Vietoris–Rips and Čech simplicial complex structures, to the case of disk systems with different radii. We explain how their respective filtrations are induced by weight functions, and we propose an algorithm to obtain the Čech-weight function of a given disk system, associating to each Čech simplex its corresponding Čech scale.

Section 4 focuses on studying the intersection properties of collections of disks in the plane. We define a real-valuated function associated to each disk system in the plane, such that, if it turns out to be non-negative, then its Čech scale agrees with its Vietoris–Rips scale, being then easy to compute; otherwise, the Čech scale will correspond to a root of such function, and we propose a numerical approach to obtain this Čech scale (Section 5), supported on the generalized Vietoris–Rips Lemma which provides appropriated bounds.

Section 5 contains our main result, the

`Cech.scale`algorithm, whose input is a disk system in the plane, and the output is the corresponding Čech scale, as well as the unique intersection point of the rescaled disk system at its Čech scale (see Lemma 1). We show as a example the miniball problem, to show how our`Cech.scale`algorithm yields the minimal enclosing ball for a finite point cloud in the plane.Finally, we conclude the paper illustrating in Section 6 an algorithm for computing the Čech filtration of the 2-skeleton of the generalized Čech complex structure for a d-dimensional disk systems in an arbitrary euclidean space ${\mathbb{R}}^{d}$.

## 2. Vietoris–Rips and Čech systems

Throughout this paper, a finite collection of closed d-disks in the euclidean space ${\mathbb{R}}^{d}$, with positive radius,
will be called d-disk system, or simply disk system when there is no risk of confusion. In this section, we introduce and analyze two fundamental subclasses of disk systems, namely, the Vietoris–Rips systems and the Čech systems. We study the infimum of those scales that turn a disk system into a Vietoris–Rips or Čech system. We conclude this section presenting a generalized version of the Vietoris–Rips Lemma, extended to disk systems.

$$M=\{{D}_{i}({c}_{i};{r}_{i})\subset {\mathbb{R}}^{d}\mid {r}_{i}>0,1\le i\le m\}$$

**Definition**

**1.**

Let $M=\{{D}_{1},{D}_{2},\dots ,{D}_{m}\}$ be a disk system. We say M is a Vietoris–Rips system if ${D}_{i}\cap {D}_{j}\ne \varnothing $ for each pair $i,j\in \{1,2,\dots ,m\}$. Moreover, if the disk system M has the nonempty intersection property ${\bigcap}_{{D}_{i}\in M}{D}_{i}\ne \varnothing $, then M is called a Čech system.

For each $\lambda \ge 0$, and disk system M as in (1) we define the collection
and say that $\lambda $ is a scale. Geometrically, the set ${M}_{\lambda}$ consists of disks with the same centers than those in M, but with rescaled radii by $\lambda $. Clearly, only when $\lambda >0$ the set ${M}_{\lambda}$ will be again a disk system. Note that ${M}_{1}=M$, and ${M}_{0}$ is the set consisting of the centers of the disks in M.

$${M}_{\lambda}:=\{{D}_{i}({c}_{i};\lambda {r}_{i})\subset {\mathbb{R}}^{d}\mid {D}_{i}\in M\}$$

**Definition**

**2.**

Let M be a disk system. The Vietoris–Rips scale of M is defined by,

$${\nu}_{M}:=inf\{\lambda \in \mathbb{R}\mid {M}_{\lambda}\text{}is\text{}a\text{}Vietoris-Rips\text{}system\}.$$

Analogously, the Čech scale of M is defined by,

$${\mu}_{M}:=inf\{\lambda \in \mathbb{R}\mid {M}_{\lambda}\text{}is\text{}a\text{}\u010cech\text{}system\}.$$

Let ${\mu}_{M}$ be the Čech scale of the disk system M, then we have that ${\bigcap}_{{D}_{i}\in M}{D}_{i}({c}_{i};{\mu}_{M}{r}_{i})\ne \varnothing $. Essentialy, this is a consequence of the completeness of the euclidean space, the fact that ${\bigcap}_{{D}_{i}\in M}{D}_{i}({c}_{i};\lambda {r}_{i})\subset {\mathbb{R}}^{d}$ is a closed subset for every scale $\lambda $ in the set $\{\lambda \in \mathbb{R}\mid {M}_{\lambda}\text{}\mathrm{is}\text{}\mathrm{a}\text{}\mathrm{\u010cech}\text{}\mathrm{system}\}$ and ${\bigcap}_{{D}_{i}\in M}{D}_{i}({c}_{i};{\lambda}^{\prime}{r}_{i})\subset {\bigcap}_{{D}_{i}\in M}{D}_{i}({c}_{i};\lambda {r}_{i})$ for ${\lambda}^{\prime}<\lambda $.

A straightforward calculation shows the following characterizations. M is a Vietoris–Rips system if and only if, ${\nu}_{M}\le 1$ (in particular, ${\nu}_{{M}_{{\nu}_{M}}}=1$); similarly, M is a Čech system if and only if, ${\mu}_{M}\le 1$.

Note that it is easy to calculate the Vietoris–Rips scale ${\nu}_{M}$ for a given disk system $M=\{{D}_{1},{D}_{2},\dots ,{D}_{m}\}$: if ${r}_{i}$ denotes the radius of ${D}_{i}$, and $\parallel {c}_{i}-{c}_{j}\parallel $ represents the distance between the center of ${D}_{i}$ and ${D}_{j}$, then ${\nu}_{M}={max}_{i<j}\{\parallel {c}_{i}-{c}_{j}\parallel /({r}_{i}+{r}_{j})\}$.

For a disk system M with just one disk, its Vietoris–Rips scale is ${\nu}_{M}=0$; if $M=\{{D}_{1},{D}_{2}\}$ has two disks, then ${\nu}_{M}=\parallel {c}_{1}-{c}_{2}\parallel /({r}_{1}+{r}_{2})$. Actually, in both cases the Vietoris–Rips scale agrees with the Čech scale.

On the other hand, calculating the Čech scale is a more complicated issue if the disk system has at least three disks. Concerning to Čech scales, we have the following lemma, which will become important for our implementations.

**Lemma**

**1.**

Let $\mu \ge 0$ be a scale and let M be a disk system. Then, μ is the Čech scale of M if and only if, the μ-rescaled system ${M}_{\mu}$ has only one intersection point, i.e., the set ${\bigcap}_{{D}_{i}\in M}{D}_{i}({c}_{i};\mu {r}_{i})$ is unitary.

Such point in ${\bigcap}_{{D}_{i}\in M}{D}_{i}({c}_{i};{\mu}_{M}{r}_{i})$ will be denoted by ${c}_{M}$.

**Proof.**

The case $\mu =0$ happens only when the disk system consists of a single disk or is a collection of concentric disks. In this case, the claim of the lemma is evident.

Let $\mu >0$ be the Čech scale of M and suppose there exist a couple of points ${p}_{1},{p}_{2}\in {\bigcap}_{{D}_{i}\in M}{D}_{i}({c}_{i};\mu {r}_{i})$ such that ${p}_{1}\ne {p}_{2}$. By convexity of the disks, it follows that the middle point $\overline{p}=\frac{1}{2}({p}_{1}+{p}_{2})$ must belong to every disk ${D}_{i}({c}_{i};\mu {r}_{i})$. On the other hand, $\parallel \overline{p}-{c}_{i}\parallel <max\{\parallel {p}_{1}-{c}_{i}\parallel ,\parallel {p}_{2}-{c}_{i}\parallel \}$ for any center ${c}_{i}$ in the disk system. Let ${\mu}_{i}<\mu $ be a scale such that $\overline{p}\in {D}_{i}({c}_{i};{\mu}_{i}{r}_{i})$ for every disk in M. It follows that $\overline{\mu}=max\left\{{\mu}_{i}\right\}<\mu $ and $\overline{p}\in {\bigcap}_{{D}_{i}\in M}{D}_{i}({c}_{i};\overline{\mu}{r}_{i})$ which contradicts the minimality of the Čech scale $\mu $. Therefore, the set ${\bigcap}_{{D}_{i}\in M}{D}_{i}({c}_{i};\mu {r}_{i})$ is unitary.

Now, suppose ${\bigcap}_{{D}_{i}\in M}{D}_{i}({c}_{i};\mu {r}_{i})$ is unitary and consider the set $S=\{\lambda \in \mathbb{R}\mid {M}_{\lambda}\text{}\mathrm{is}\text{}\mathrm{a}\text{}\mathrm{\u010cech}\text{}\mathrm{system}\}$.

If ${\bigcap}_{{D}_{i}\in M}{D}_{i}({c}_{i};\mu {r}_{i})=\left\{p\right\}$, then $p\in \partial {D}_{{i}_{0}}({c}_{{i}_{0}};\mu {r}_{{i}_{0}})$ for some ${D}_{{i}_{0}}\in M$, because otherwise there would exist a neighborhood of p entirely contained in ${\bigcap}_{{D}_{i}\in M}{D}_{i}({c}_{i};\mu {r}_{i})$.

The fact that $\mu =infS$ is a consequence of the following.

- Let $\lambda \in S$ be a scale such that ${\bigcap}_{{D}_{i}\in M}{D}_{i}({c}_{i};\lambda {r}_{i})\ne \varnothing $. If $\lambda <\mu $, then ${D}_{i}({c}_{i};\lambda {r}_{i})\subset {D}_{i}({c}_{i};\mu {r}_{i})$ for any ${D}_{i}\in M$, and $p\notin {D}_{{i}_{0}}({c}_{{i}_{0}};\lambda {r}_{{i}_{0}})$; thus, ${\bigcap}_{{D}_{i}\in M}{D}_{i}({c}_{i};\lambda {r}_{i})\subset {\bigcap}_{{D}_{i}\in M}{D}_{i}({c}_{i};\mu {r}_{i})=\left\{p\right\}$ and $p\notin {\bigcap}_{{D}_{i}\in M}{D}_{i}({c}_{i};\lambda {r}_{i})$; therefore, ${\bigcap}_{{D}_{i}\in M}{D}_{i}({c}_{i};\lambda {r}_{i})=\varnothing $. Then, $\lambda \ge \mu $, for any $\lambda \in S$.
- For every $\epsilon >0$, we have $\left\{p\right\}\in {D}_{i}({c}_{i};\mu {r}_{i})\subset {D}_{i}({c}_{i};(\mu +\epsilon ){r}_{i})$. Then, ${\bigcap}_{{D}_{i}\in M}{D}_{i}({c}_{i};(\mu +\epsilon ){r}_{i})\ne \varnothing $, i.e., $\mu +\epsilon \in S$.

□

**Example**

**1.**

Figure 1 shows (left picture) the following disk system in ${\mathbb{R}}^{2}$,

$$M=\{{D}_{1}((-3,0);4),{D}_{2}((1,3);3),{D}_{3}((2,-1);2)\}.$$

This 2-disk system is a Vietoris–Rips system and also a Čech system. In this case, we have ${\nu}_{M}=\sqrt{26}/6\approx 0.8498$, and, in actuality, the ${\nu}_{M}$-rescaled 2-disk system ${M}_{{\nu}_{M}}$ (center picture) has an empty intersection, i.e., ${\bigcap}_{{D}_{i}\in M}{D}_{i}({c}_{i};{\nu}_{M}\phantom{\rule{0.166667em}{0ex}}{r}_{i})=\varnothing $, so it corresponds to a Vietoris Rips system which is not a Čech system. For such 2-disk system, the

`Cech.scale`algorithm in Section 5 yields to ${\mu}_{M}=0.9188$ and the Čech system ${M}_{{\mu}_{M}}$ is shown in the right picture.There exists a close relationship between Vietoris–Rips systems and Čech systems. Obviously, every Čech system is also a Vietoris–Rips system, but the opposite statement does not hold in general (as we saw in the example above). However, we have the following result which extends the standard Vietoris–Rips Lemma ([17], Theorem 2.5), to any Vietoris–Rips system; such result can be found in ([18], Theorem 3.2) in the context of weighted simplicial complexes.

The standard Vietoris–Rips Lemma is established in the context of a disk system in which all radii are equal, and corresponds to a reformulation of the well-known Jung’s Lemma [19]. On the other hand, for a disk system in general, the Vietoris–Rips Lemma is also valid, although it does not follow directly from Jung’s Lemma. Next, we propose a proof of the Vietoris–Rips Lemma, for an arbitrary disk system, using elementary geometrical arguments.

**Lemma**

**2.**

Let $M=\{{D}_{i}({c}_{i};{r}_{i})\subset {\mathbb{R}}^{d}\mid {r}_{i}>0\}$ be a finite set of closed disks in ${\mathbb{R}}^{d}$. If ${D}_{i}({c}_{i};{r}_{i})\cap {D}_{j}({c}_{j};{r}_{j})\ne \varnothing $ for every pair of disks in M, then

$$\bigcap _{{D}_{i}\in M}{D}_{i}({c}_{i};\sqrt{2d/(d+1)}\phantom{\rule{0.166667em}{0ex}}{r}_{i})\ne \varnothing .$$

In other words, for every Vietoris–Rips system M in ${\mathbb{R}}^{d}$, the $\sqrt{2d/(d+1)}$-rescaled disk system ${M}_{\sqrt{2d/(d+1)}}$ is a Čech system.

**Proof.**

First, we prove the result for the case where M has at most $d+1$ disks, say $M=\{{D}_{1},\dots ,{D}_{{d}^{\prime}}\}$, ${d}^{\prime}\le d+1$. Note that we need to prove that ${\mu}_{M}\le \sqrt{\frac{2d}{d+1}}$.

Let $\left\{{c}_{M}\right\}={\bigcap}_{i}{D}_{i}({c}_{i};{\mu}_{M}{r}_{i})$ be the unique intersection point of the ${\mu}_{M}$-rescaled disk system (see Lemma 1). Without loss of generality, we assume that $\parallel {c}_{i}-{c}_{M}\parallel ={\mu}_{M}{r}_{i}$ for ${c}_{1},\dots ,{c}_{m}$ and $m\le {d}^{\prime}$.

Then, ${c}_{M}$ belongs to the convex hull of the set $\{{c}_{1},\dots ,{c}_{m}\}$, for if this were not true, there would exist an hyperplane across ${c}_{M}$ such that the set $\{{c}_{1},\dots ,{c}_{m}\}$ is completely contained at one side, let v be the normal vector for such hyperplane in the opposite direction, then $\langle v,{c}_{i}-{c}_{M}\rangle >0$ for all $i=1,\dots ,m$, therefore
for every $t\in {I}_{v}:=(0,2\langle v,{c}_{i}-{c}_{M}\rangle /{\parallel v\parallel}^{2})$; this implies that ${c}_{M}+tv\in D({c}_{i};{\mu}_{M}{r}_{i})$ for any $i=1,\dots ,m$ and $t\in {I}_{v}$, which is a contradiction since ${c}_{M}$ is the only point in the intersection ${\bigcap}_{i}D({c}_{i};{\mu}_{M}{r}_{i})$. Therefore, ${c}_{M}$ is in the convex hull.

$$\parallel {c}_{i}-{c}_{M}{\parallel}^{2}=\parallel {c}_{i}-({c}_{M}+tv){\parallel}^{2}+2t\langle v,{c}_{i}-{c}_{M}\rangle -{t}^{2}{\parallel v\parallel}^{2}>{\parallel {c}_{i}-({c}_{M}+tv)\parallel}^{2}$$

Now, define ${\widehat{c}}_{i}:={c}_{i}-{c}_{M}$ and let ${\theta}_{ij}$ denote the angle between vectors ${\widehat{c}}_{i}$ and ${\widehat{c}}_{j}$. As ${c}_{M}$ is in the convex hull of $\{{c}_{1},\cdots ,{c}_{m}\}$, then the vector $0\in {\mathbb{R}}^{d}$ can be written as a convex combination ${\sum}_{j=1}^{m}{a}_{j}{\widehat{c}}_{j}=0$. Thus, $\langle {\sum}_{j=1}^{m}{a}_{j}{\widehat{c}}_{j},{\widehat{c}}_{i}\rangle =0$ for any $i=1,\dots ,m$, and

$$\sum _{j=1}^{m}\langle {a}_{j}{\widehat{c}}_{j},{\widehat{c}}_{i}\rangle =\sum _{j=1}^{m}{a}_{j}\parallel {\widehat{c}}_{j}\parallel \phantom{\rule{0.166667em}{0ex}}\parallel {\widehat{c}}_{i}\parallel cos{\theta}_{ji}=0.$$

Taking out the common factor $\parallel {\widehat{c}}_{i}\parallel $, we have ${\sum}_{j=1}^{m}{a}_{j}\parallel {\widehat{c}}_{j}\parallel cos{\theta}_{ji}=0$. Now, taking the sum over i, we deduce that

$$\sum _{i=1}^{m}\sum _{j=1}^{m}{a}_{j}\parallel {\widehat{c}}_{j}\parallel cos{\theta}_{ji}=\sum _{j=1}^{m}{a}_{j}\parallel {\widehat{c}}_{j}\parallel \sum _{i=1}^{m}cos{\theta}_{ji}=0.$$

Note that $cos{\theta}_{ii}=1$. On the other hand, if were $cos{\theta}_{ji}>-{\displaystyle \frac{1}{m-1}}$ for all $1\le i,j\le m$, $i\ne j$, then for each j we should have ${\sum}_{i=1}^{m}cos{\theta}_{ji}=1+{\sum}_{j=1,j\ne i}^{m}cos{\theta}_{ji}>0$. However, this contradicts (2) because ${\sum}_{j=1}^{m}{a}_{j}=1$ and ${a}_{j}\ge 0$. Therefore, there must exist $i\ne j$, say $i=1$ and $j=2$, such that $cos{\theta}_{12}\le -{\displaystyle \frac{1}{m-1}}\le -{\displaystyle \frac{1}{d}}$, then

$$0\le {\displaystyle \frac{d}{d-1}}(1+cos\left({\theta}_{12}\right))\le 1.$$

It follows from inequality above and from the AM-GM inequality, that

$$\sqrt{{\displaystyle \frac{d}{d-1}}(1+cos\left({\theta}_{12}\right))}\xb7\sqrt{{r}_{1}{r}_{2}}\le \sqrt{{r}_{1}{r}_{2}}\le {\displaystyle \frac{{r}_{1}+{r}_{2}}{2}}.$$

A straightforward calculation on (4) leads us to the following inequality
so,
which implies,
(the last inequality holds because M is a Vietoris–Rips system) or equivalently ${\mu}_{M}\le \sqrt{\frac{2d}{d+1}}$.

$$(d+1){({r}_{1}+{r}_{2})}^{2}\le 2d({r}_{1}^{2}+{r}_{2}^{2}-2{r}_{1}{r}_{2}cos\left({\theta}_{12}\right))$$

$$\begin{array}{cc}\hfill (d+1){\mu}_{M}^{2}{({r}_{1}+{r}_{2})}^{2}& \le 2d({\mu}_{M}^{2}{r}_{1}^{2}+{\mu}_{M}^{2}{r}_{2}^{2}-2{\mu}_{M}^{2}{r}_{1}{r}_{2}cos\left({\theta}_{12}\right))\hfill \\ \hfill \phantom{\rule{1.em}{0ex}}& =2d(\parallel {\widehat{c}}_{1}{\parallel}^{2}+\parallel {\widehat{c}}_{2}{\parallel}^{2}-2\parallel {\widehat{c}}_{1}\parallel \parallel {\widehat{c}}_{2}\parallel cos\left({\theta}_{12}\right))\hfill \\ \hfill \phantom{\rule{1.em}{0ex}}& =2d(\parallel {\widehat{c}}_{1}{\parallel}^{2}+\parallel {\widehat{c}}_{2}{\parallel}^{2}-2\langle \widehat{{c}_{1}},\widehat{{c}_{2}}\rangle )=2d\parallel {\widehat{c}}_{1}-{\widehat{c}}_{2}{\parallel}^{2}\hfill \end{array}$$

$${\mu}_{M}^{2}\le {\displaystyle \frac{2d}{d+1}}\xb7{\displaystyle \frac{\parallel {\widehat{c}}_{1}-{\widehat{c}}_{2}{\parallel}^{2}}{{({r}_{1}+{r}_{2})}^{2}}}={\displaystyle \frac{2d}{d+1}}\xb7{\displaystyle \frac{\parallel {c}_{1}-{c}_{2}{\parallel}^{2}}{{({r}_{1}+{r}_{2})}^{2}}}\le {\displaystyle \frac{2d}{d+1}}$$

For a collection with more than $d+1$ disks, the claim of the lemma is a consequence of the Helly’s Theorem (see [20], Problem 29), which establishes that for any finite collection, with at least $d+1$ convex subsets of the d-dimensional euclidean space ${\mathbb{R}}^{d}$, if the intersection of every subcolection with $d+1$ of such sets is nonempty, then the whole collection has a nonempty intersection. This concludes the proof. □

The upper bound $\sqrt{2d/(d+1)}$ in Lemma 2 is optimal: it suffices to take a disk system with $d+1$ disks of equal radii and pairwise tangents (cf. [6], Section III.2).

In the Example 1 we can see what the Vietoris–Rips Lemma claim for the 2-disk system M: ${\mu}_{M}=0.9188<0.9812=\sqrt{4/3}{\nu}_{M}$.

To conclude this section, notice that as for a Čech system ${\mu}_{M}\le 1$, then the Vietoris–Rips Lemma implies the following result.

**Corollary**

**1.**

If M is an arbitrary d-disk system and ${\nu}_{M}$ is its Vietoris–Rips scale, then its Čech scale satisfies that ${\mu}_{M}\in [{\nu}_{M},\sqrt{2d/(d+1)}\phantom{\rule{0.166667em}{0ex}}{\nu}_{M}]$. In consequence, for every d-disk system M, the rescaled disk system ${M}_{\sqrt{2d/(d+1)}\phantom{\rule{0.166667em}{0ex}}{\nu}_{M}}$ is always a Čech system.

In particular, if $\sqrt{2d/(d+1)}\phantom{\rule{0.166667em}{0ex}}{\nu}_{M}\le 1$ then ${M}_{{\nu}_{M}}$ is a Čech system.

## 3. Filtered Generalized Simplicial Structures for Disk Systems

In this section, we introduce two simplicial structures associated with a disk system M, as well as the filtration induced by rescaling the system M. The importance of these notions lies in their relation to the topological analysis through persistent homology of filtered simplicial structures, induced by point clouds with nonhomogeneous neighborhoods.

Let M be a disk system. Denote by $\mathcal{VR}\left(M\right)$ the family of all Vietoris–Rips subsystems of M, this is,

$$\mathcal{VR}\left(M\right)=\{\sigma \subset M\mid {D}_{i}\cap {D}_{j}\ne \varnothing ,{D}_{i},{D}_{j}\in \sigma \}.$$

Analogously, denote by $\mathcal{C}\left(M\right)$ the set of all Čech subsystems,

$$\mathcal{C}\left(M\right)=\{\sigma \subset M\mid {\cap}_{{D}_{i}\in \sigma}{D}_{i}\ne \varnothing \}.$$

On the other hand, recall that a simplicial structure on a (finite) set V is defined as a family $\Delta \left(V\right)\subset {2}^{V}$ of subsets of V such that if $\sigma \in \Delta \left(V\right)$ and $\tau \subset \sigma $, then $\tau \in \Delta \left(V\right)$. Thus, for any $\sigma \in \mathcal{VR}\left(M\right)$ every disk subsystem $\tau \subset \sigma $ is also in the family $\tau \in \mathcal{VR}\left(M\right)$. The same property is valid for the family $\mathcal{C}\left(M\right)$. These properties imply that $\mathcal{VR}\left(M\right)$ and $\mathcal{C}\left(M\right)$ are simplicial complexes.

We refer to $\mathcal{VR}\left(M\right)$ as the generalized Vietoris–Rips complex associated to the disk system M, and to $\mathcal{C}\left(M\right)$ as the generalized Čech complex of M.

The above construction allows us to perform topological data analysis of point cloud data through the persistent homology of the generalized Vietoris–Rips or Čech complexes. However, to perform such analysis it is necessary to construct a filtered simplicial structure. We will define a filtration through weight functions.

Let $\Delta $ be a simplicial complex and let $\omega :\Delta \to \mathbb{R}$ be a function. We call $\omega $ a weight function over the simplicial complex $\Delta $ if $\tau ,\sigma \in \Delta $ and $\tau \subset \sigma $, implies $\omega \left(\tau \right)\le \omega \left(\sigma \right)$.

For example, to the generalized Čech complex $\mathcal{C}\left(M\right)$ of the disk system M, the function $\omega :\mathcal{C}\left(M\right)\to \mathbb{R},\sigma \mapsto {\mu}_{\sigma}$ which assigns the Čech scale to any Čech subsystem $\sigma \subset M$, is a weight function, called the Čech-weight function. The analogous property holds for the Vietoris–Rips complex and the Vietoris–Rips scale (see [18] for the construction of the filtered generalized Čech complex using weighted point clouds).

Moreover, from the definition we have for the Čech-weight function and to every non-negative scale $\lambda \ge 0$, that

$${\omega}^{-1}\left((-\infty ,\lambda ]\right)=\mathcal{C}\left({M}_{\lambda}\right).$$

We denote by ${\mathcal{C}}_{M}\left(\lambda \right)$ the family $\mathcal{C}\left({M}_{\lambda}\right)$ for $\lambda \ge 0$, i.e., the family of all Čech subsystems of the $\lambda $-rescaled disk system ${M}_{\lambda}$, in order to make the dependence explicit with respect the the parameter. We establish the analogous definition for ${\mathcal{VR}}_{M}\left(\lambda \right)$, for any $\lambda \ge 0$.

Note that there is no restriction on the scale $\lambda \ge 0$, additional to the non-negativity, i.e., we allow greater values of $\lambda $ than 1, in the interest of studying the generalized Čech complex of rescaled disk systems beyond the original.

For ${\lambda}^{\prime}\le \lambda $ we have the families contention: ${\mathcal{VR}}_{M}\left({\lambda}^{\prime}\right)\subset {\mathcal{VR}}_{M}\left(\lambda \right)$ and ${\mathcal{C}}_{M}\left({\lambda}^{\prime}\right)\subset {\mathcal{C}}_{M}\left(\lambda \right)$. In general, given a simplicial complex $\Delta $ and a weight function $\omega :\Delta \to \mathbb{R}$, any increasing sequence ${\lambda}_{1}<\cdots <{\lambda}_{s}$ of real numbers induces a simplicial filtration: ${\Delta}_{1}\subset \cdots \subset {\Delta}_{s}$ for ${\Delta}_{i}:={\omega}^{-1}\left((-\infty ,{\lambda}_{i}]\right)$. Thus, for any disk system M, the generalized Čech complex $\mathcal{C}\left(M\right)$ has a filtered simplicial complex structure,

$${\mathcal{C}}_{M}\left(0\right)\subset \mathcal{C}\left({\lambda}_{1}\right)\subset \cdots \subset {\mathcal{C}}_{M}\left({\lambda}_{s}\right).$$

Of course, when we vary the scale $\lambda $ on a interval the above filtration contains only a finite number of different sets. Moreover, those sets only change when the Čech scale of some disk system is reached, and therefore it is enough to compute all sets corresponding to Čech scales to characterize entirely the filtration. The goal of the next sections is the construction of algorithms to numerically estimate the Čech scale of every Čech subsystem of M.

The filtered generalized Čech complex can be “approximated” by the Vietoris–Rips structure, in the following sense. The inclusion $\mathcal{C}\left(M\right)\subset \mathcal{VR}\left(M\right)$ holds clearly; in consequence, ${\mathcal{C}}_{M}\left(\lambda \right)\subset {\mathcal{VR}}_{M}\left(\lambda \right)$ for any scale $\lambda \ge 0$, then by Lemma 2 any Vietoris–Rips d-system $\sigma \in \mathcal{VR}\left(M\right)$ rescaled by a factor of $\sqrt{2d/(d+1)}$ is also a Čech d-system: ${\sigma}_{\sqrt{2d/(d+1)}}\in \mathcal{C}\left(M\right)$. Therefore, for any d-disk system M the following relation is fulfilled:
where $\sqrt{2d/(d+1)}\xb7{\lambda}^{\prime}\le \lambda $.

$${\mathcal{VR}}_{M}\left({\lambda}^{\prime}\right)\subset {\mathcal{C}}_{M}\left(\lambda \right)\subset {\mathcal{VR}}_{M}\left(\lambda \right),$$

To any disk system M, the simplicial substructure $\mathcal{C}{\left(M\right)}^{\left(1\right)}$ given by the 1-skeleton of the generalized Čech complex of M is a basic combinatorial structure (actually, a graph) that can be easily defined, it just takes the relationship into account if every two vertices are neighbors: the set of vertices is M, and there exists an edge $\{{D}_{i},{D}_{j}\}$ whenever ${D}_{i}\cap {D}_{j}\ne \varnothing $. The Čech-weight function restricted to $\mathcal{C}{\left(M\right)}^{\left(1\right)}$ is, in fact: $\omega \left(\left\{{D}_{i}\right\}\right)=0$ to every vertice, and $\omega \left(\{{D}_{i},{D}_{j}\}\right)=\parallel {c}_{i}-{c}_{j}\parallel /({r}_{i}+{r}_{j})$ to any edge.

In Algorithm 1, we calculate the Čech-weight function $\omega :{\mathcal{C}}_{M}{\left(\lambda \right)}^{\left(dim\right)}\to \mathbb{R}$, for the dim-skeleton of a $\lambda $-rescaled disk system M. To do this, we assume an arbitrary linear order in the disk system M, and for every disk $D\in M$ we consider the following set.

$\lambda $-

`LowerNbrs`$\left(D\right)=\{\tilde{D}\in M\mid \tilde{D}<D,\phantom{\rule{4pt}{0ex}}\omega \left(\{D,\tilde{D}\}\right)\le \lambda \}$.The following algorithm (based on work in [7]), is a standard expansion algorithm for simplicial complexes, and we are including the Čech-weight function value of each simplex when it is calculated.

Algorithm 1: Čech-weight function of a d-disk system. |

We conclude the section with an application of Algorithm 1 to a 2-disk system.

**Example**

**2.**

Let M be the following 2-disk system,

$$\begin{array}{cc}\hfill M=\{& {D}_{1}((2.99,0.56);1.5),{D}_{2}((0.99,0.11);1.0),\hfill \\ \hfill \phantom{\rule{1.em}{0ex}}& {D}_{3}((1.69,1.30);0.6),{D}_{4}((1.07,1.93);0.4),\hfill \\ \hfill \phantom{\rule{1.em}{0ex}}& {D}_{5}((1.96,2.64);0.8)\}.\hfill \end{array}$$

The output of Algorithm 1 applied to M, with $d=2$, $\lambda =1$ and $dim=2$ gives the Čech scales indicated next to every edge and in the triangle, in Figure 2. The Čech scale of the 2-disk system $\{{D}_{1},{D}_{2},{D}_{3}\}$ was calculated with the

`Cech.scale`script from Algorithm 3.## 4. Intersection Properties of Disk Systems

In this section, we focus on studying disk systems in the plane, i.e., 2-disk systems. As we have seen in the last section, the study of the Čech scale is a key aspect to the construction and study of filtered generalized Čech complex. In this section, we establish several intersection properties of 2-disk systems, which will lead us to be able to calculate the Čech scale.

Let $\partial {D}_{i}({c}_{i};{r}_{i}):=\{x\in {\mathbb{R}}^{2}\mid \parallel x-{c}_{i}\parallel ={r}_{i}\}$ be the boundary of the closed 2-dimensional disk ${D}_{i}({c}_{i},{r}_{i})\subset {\mathbb{R}}^{2}$.

Let ${D}_{i}$ and ${D}_{j}$ be two closed disks in the plane, such that ${D}_{i}\cap {D}_{j}\ne \varnothing $. We define ${D}_{i}\sqcap {D}_{j}$ to be the unitary set $\left\{{d}_{ij}\right\}$ constructed as follows.

- If $\partial {D}_{i}\cap \partial {D}_{j}\ne \varnothing $, then ${d}_{ij}\in \partial {D}_{i}\cap \partial {D}_{j}$ is the only one point with the property $\langle {d}_{ij}-{c}_{i},{\mathbf{n}}_{ij}\rangle \ge 0$, where ${\mathbf{n}}_{ij}=(-b,a)$ is the normal vector to ${c}_{j}-{c}_{i}=(a,b)$,
- If $\partial {D}_{i}\cap \partial {D}_{j}=\varnothing $, we define ${d}_{ij}$ as the unique intersection point in $\partial {D}_{i}({c}_{i};\lambda {r}_{i})\cap \partial {D}_{j}({c}_{j};\lambda {r}_{j})$, for $\lambda $ given as the minimal scale such that ${D}_{i}({c}_{i};\lambda {r}_{i})\subset {D}_{j}({c}_{j};\lambda {r}_{j})$ or ${D}_{j}({c}_{j};\lambda {r}_{j})\subset {D}_{i}({c}_{i};\lambda {r}_{i})$, i.e., $\lambda =\parallel {c}_{i}-{c}_{j}\parallel /|{r}_{i}-{r}_{j}|$.

Clearly, if $\partial {D}_{i}\cap \partial {D}_{j}=\varnothing $, then ${d}_{ij}={d}_{ji}$. In particular, when ${D}_{i}$ and ${D}_{j}$ are concentric, then ${D}_{i}\sqcap {D}_{j}=\left\{{c}_{i}\right\}=\left\{{c}_{j}\right\}$. On the other hand, if the closed disks ${D}_{i}$ and ${D}_{j}$ are internally or externally tangent, then ${d}_{ij}={d}_{ji}$. We can think about ${d}_{ij}$, when $\partial {D}_{i}\cap \partial {D}_{j}$ is not empty, as the intersection point of the boundaries at the left of the vector from ${c}_{i}$ to ${c}_{j}$. Figure 3 shows the above construction.

We will denote by ${d}_{ij}\left(\lambda \right)$, instead of simply ${d}_{ij}$, for the intersection point of the $\lambda $-rescaled disks ${D}_{i}({c}_{i};\lambda {r}_{i})$ and ${D}_{j}({c}_{j};\lambda {r}_{j})$.

In order to study Čech systems, we give the following characterization, according the intersection points ${d}_{ij}$.

**Lemma**

**3.**

Let $M=\{{D}_{1},{D}_{2},\dots ,{D}_{m}\}$ be a 2-disk system. Then M is a Čech system if and only if, there exist ${D}_{i},{D}_{j}\in M$ such that ${d}_{ij}\in {D}_{i}\sqcap {D}_{j}$ satisfies ${d}_{ij}\in {D}_{k}$ for all $1\le k\le m$.

**Proof.**

Suppose M is a Čech system. Define $A:={\bigcap}_{1\le i\le m}{D}_{i}\ne \varnothing $; then, A has only one of the following geometries.

- (i)
- $A=\left\{{c}_{M}\right\}$,
- (ii)
- A is a region bounded by more than one circumference arc,
- (iii)
- $A={D}_{{i}_{0}}$ for some ${i}_{0}\in \{1,\dots ,m\}$.

In the first case, necessarily ${c}_{M}$ belongs to the boundary of two or more disks. Let ${D}_{i}$ and ${D}_{j}$ be two disks in M such that ${c}_{M}\in \partial {D}_{i}\cap \partial {D}_{j}$, it follows that ${c}_{M}={d}_{ij}$ or ${c}_{M}={d}_{ji}$, in both cases the lemma holds.

For the second case, if $a\in \partial A\subset A$ belongs to the boundary and is in the intersection of two arcs, say $\partial {D}_{i}$ and $\partial {D}_{j}$, then $a={d}_{ij}$ or $a={d}_{ji}$, and it satisfy $a\in {D}_{k}$ for every $1\le k\le m$.

For the last case, if $A={D}_{{i}_{0}}$ for some ${i}_{0}$, then for each $j\ne {i}_{0}$ we have ${d}_{{i}_{0}j}\in {D}_{{i}_{0}}=A$ and all of these points belongs to ${D}_{k}$ for all ${D}_{k}\in M$.

Therefore, in any case, there exists such point ${d}_{ij}$. The converse is clear by definition of a Čech system. □

This criterion was presented in ([8], Section III) for a 2-disk system.

Next, we define the map $\rho $, a key tool for the rest of this work. This map will allow us to discern the minimal scale in which a 2-disk system has the nonempty intersection property.

**Definition**

**3.**

Let $M=\{{D}_{1},{D}_{2},\dots ,{D}_{m}\}$ be a Vietoris–Rips system in the plane, with $m\ge 3$. We define

$$\rho \left(M\right):=\underset{1\le i,j\le m}{max}\left\{\underset{k\ne i,j}{min}\{{r}_{k}-\parallel {d}_{ij}-{c}_{k}\parallel \}\right\}.$$

If ${\nu}_{M}$ is the Vietoris–Rips scale of M, then we define the map ${\rho}_{M}:[{\nu}_{M},\infty )\to \mathbb{R}$, $\lambda \mapsto {\rho}_{M}\left(\lambda \right)=\rho \left({M}_{\lambda}\right)$.

Given three disks ${D}_{i}({c}_{i};{r}_{i})$, ${D}_{j}({c}_{j};{r}_{j})$ and ${D}_{k}({c}_{k};{r}_{k})$ in the 2-disk system $M=\{{D}_{1},\dots ,{D}_{m}\}$, with Vietoris–Rips scale ${\nu}_{M}$, denote by ${\mathsf{\Lambda}}_{i,j}^{k}:[{\nu}_{M},\infty )\to \mathbb{R}$ the map $\lambda \mapsto \lambda {r}_{k}-\parallel {d}_{ij}\left(\lambda \right)-{c}_{k}\parallel $, where ${d}_{ij}\left(\lambda \right)$ is the element in ${D}_{i}({c}_{i};\lambda {r}_{i})\sqcap {D}_{j}({c}_{j};\lambda {r}_{j})$. In other words, ${\mathsf{\Lambda}}_{i,j}^{k}\left(\lambda \right)$ is the signed distance from the point ${d}_{ij}\left(\lambda \right)$ to the set ${D}_{k}({c}_{k};\lambda {r}_{k})$.

If ${r}_{i}\ne {r}_{j}$, then for each $k\ne i,j$ the map $\lambda \mapsto \lambda {r}_{k}-\parallel {d}_{ij}\left(\lambda \right)-{c}_{k}\parallel $ is defined and continuous in the closed interval $\left[\parallel {c}_{i}-{c}_{j}\parallel /({r}_{i}+{r}_{j}),\parallel {c}_{i}-{c}_{j}\parallel /|{r}_{i}-{r}_{j}|\right]$, as it is the signed distance from an intersection point of two continuously deforming curves (therefore its position vary continuously as long as the intersection exists) to the continuously deforming set ${D}_{k}({c}_{k};\lambda {r}_{k})$ with respect to $\lambda $. Also, the map $\lambda \mapsto \lambda {r}_{k}-\parallel {d}_{ij}\left(\lambda \right)-{c}_{k}\parallel $ vary linearly in the range $[\parallel {c}_{i}-{c}_{j}\parallel /|{r}_{i}-{r}_{j}|,\infty )$ because for $\lambda \ge \parallel {c}_{i}-{c}_{j}\parallel /|{r}_{i}-{r}_{j}|$, the term $\parallel {d}_{ij}\left(\lambda \right)-{c}_{k}\parallel $ remains constant. The left picture in Figure 4 shows in bold red color the geometric place of $\{{d}_{ij}\left(\lambda \right),{d}_{ji}\left(\lambda \right)\}$, which vary continuously respect to the parameter $\lambda $ and also the distance from it to the fix point ${c}_{k}$.

On the other hand, for ${r}_{i}={r}_{j}$, the points $\{{d}_{ij}\left(\lambda \right),{d}_{ji}\left(\lambda \right)\}$ vary continuously respect to $\lambda $ on the line showed in the right picture of Figure 4. Therefore, $\lambda {r}_{k}-\parallel {d}_{ij}\left(\lambda \right)-{c}_{k}\parallel $ also depend continuously of $\lambda $.

From the above argument, each map ${\mathsf{\Lambda}}_{i,j}^{k}$ is continuous in the interval $[{\nu}_{M},\infty )$, and by the continuity of the min-max functions and that
it follows that ${\rho}_{M}$ is also a continuous map in the interval $[{\nu}_{M},\infty )$. However, the map ${\rho}_{M}$ is not differentiable, in general, to every point in such interval.

$${\rho}_{M}\left(\lambda \right)=\underset{1\le i,j\le m}{max}\left\{\underset{k\ne i,j}{min}{\mathsf{\Lambda}}_{i,j}^{k}\left(\lambda \right)\right\},$$

The map ${\rho}_{M}$ plays a key role in the rest of this work. We present the next characterization of Čech systems in terms of ${\rho}_{M}$.

**Lemma**

**4.**

Let M be a 2-disk system. Then ${M}_{\lambda}$ is a Čech system if and only if, ${\rho}_{M}\left(\lambda \right)\ge 0$. In particular ${\rho}_{M}\left(\sqrt{4/3}{\nu}_{M}\right)\ge 0$.

**Proof.**

By Lemma 3, ${M}_{\lambda}$ is a Čech system in the plane if and only if, there exists ${d}_{ij}\left(\lambda \right)$ such that ${d}_{ij}\left(\lambda \right)\in {D}_{k}({c}_{k};\lambda \phantom{\rule{0.166667em}{0ex}}{r}_{k})$ for every $k\ne i,j$, i.e., ${\mathsf{\Lambda}}_{i,j}^{k}\left(\lambda \right)\ge 0$ for every $k\ne i,j$, which is equivalent to ${\rho}_{M}\left(\lambda \right)\ge 0$.

On the other hand, from Corollary 1 and taking $d=2$, the rescaled system ${M}_{\sqrt{4/3}{\nu}_{M}}$ is a Čech system, then by the first assertion, ${\rho}_{M}\left(\sqrt{4/3}{\nu}_{M}\right)\ge 0$. □

## 5. The `Cech.scale` Algorithm

Our main algorithm (Algorithm 3) computes the Čech scale of a given 2-disk system M. The key aspect on which this algorithm is based, is precisely the function ${\rho}_{M}$. Before we describe the algorithm, we need to analyze additional properties of ${\rho}_{M}$.

It follows immediately from Lemma 4 that ${\rho}_{M}\left(\lambda \right)\ge 0$ for every $\lambda \ge {\mu}_{M}$. Also, if at the Vietoris–Rips scale it holds that ${\rho}_{M}\left({\nu}_{M}\right)\ge 0$, then ${\mu}_{M}={\nu}_{M}$ by the minimality of the Čech scale. We conclude that in this case (this is, ${\rho}_{M}\left({\nu}_{M}\right)\ge 0$), the Čech scale is easily computable.

On the other hand, if ${\rho}_{M}\left({\nu}_{M}\right)<0$ then the Čech scale satisfies ${\mu}_{M}\in ({\nu}_{M},\sqrt{4/3}{\nu}_{M}]$ and moreover ${\rho}_{M}\left({\mu}_{M}\right)=0$. This is a consequence of the continuity of ${\rho}_{M}$, and the fact that ${\rho}_{M}\left(\lambda \right)<0$ for every ${\nu}_{M}\le \lambda <{\mu}_{M}$ and ${\rho}_{M}\left(\lambda \right)\ge 0$ for ${\mu}_{M}\le \lambda $. Thus, to find the Čech scale of a 2-disk system M for which ${\rho}_{M}\left({\nu}_{M}\right)<0$, we need to solve the equation ${\rho}_{M}\left(\lambda \right)=0$.

We propose a numerical approach to solve the equation ${\rho}_{M}\left(\lambda \right)=0$ and calculate the Čech scale under the hypothesis ${\rho}_{M}\left({\nu}_{M}\right)<0$, as in this case, we actually know that ${\mu}_{M}\in ({\nu}_{M},\sqrt{4/3}{\nu}_{M}]$ (see Section 2) as consequence of the generalized Vietoris–Rips Lemma. We chose the bisection method for this purpose. We will denote the implementation of bisection method for the map ${\rho}_{M}$ through the interval $[a,b]$, by bisection $({\rho}_{M},a,b)$. The output of bisection $({\rho}_{M},a,b)$ is a real number $\lambda \in [a,b]$ such that ${\rho}_{M}\left(\lambda \right)=0$. For the numerical method we are working with a precision of ${10}^{-12}$.

It is important to mention that the numerical method regula falsi was also used instead of the numerical method of bisection, in order to calculating the Čech scale. However, in our context, the efficiency of the program using the regula falsi numerical method is not better than if the numerical method of bisection is used.

The Algorithm 2 (below) has as input a 2-disk system M, and produces as output the Čech scale ${\mu}_{M}$ as well as the intersection point $\left\{{c}_{M}\right\}={\bigcap}_{{D}_{i}\in M}{D}_{i}({c}_{i};{\mu}_{M}\phantom{\rule{0.166667em}{0ex}}{r}_{i})$. This algorithm takes a naive approach to calculate the Čech scale, and is established to completeness and to be a reference for the principal algorithm (Algorithm 3).

Algorithm 2: The Čech scale calculation for a 2-disk system. |

The following lemma claims that the Algorithm 2 is consistent.

**Lemma**

**5.**

For any 2-disk system M, the Algorithm 2 has as output the Čech scale ${\mu}_{M}$ of M, and the unique intersection point $\left\{{c}_{M}\right\}={\bigcap}_{{D}_{i}\in M}{D}_{i}({c}_{i};{\mu}_{M}\phantom{\rule{0.166667em}{0ex}}{r}_{i})$.

**Proof.**

In the case ${\rho}_{M}\left({\nu}_{M}\right)\ge 0$, it is clear that the algorithm has generated asseverated data (steps (2)–(3)). In otherwise, for the case ${\rho}_{M}\left({\nu}_{M}\right)<0$, we assign ${\mu}^{*}:=\sqrt{4/3}\phantom{\rule{0.166667em}{0ex}}{\nu}_{M}$.

Then, ${\rho}_{M}\left({\nu}_{M}\right)\xb7{\rho}_{M}\left({\mu}^{*}\right)\le 0$ and lets call again ${\mu}^{*}$ the output root in step (7). To check if ${\mu}^{*}$ is the Čech scale we are looking for, we calculate in step (8) the set of pairwise intersection points of the ${\mu}^{*}$-rescaled system, contents in ${\bigcap}_{{D}_{i}\in M}{D}_{i}({c}_{i};{\mu}^{*}\phantom{\rule{0.166667em}{0ex}}{r}_{i})$.

If the set $\sqcap {M}_{{\mu}^{*}}$ is unitary, then necessarily ${\bigcap}_{{D}_{i}\in M}{D}_{i}({c}_{i};{\mu}^{*}\phantom{\rule{0.166667em}{0ex}}{r}_{i})$ is unitary, due the geometry of its boundary (see proof of Lemma 3). In such case (negative validation of step (9)) the steps (10)–(13) are omitted and, from Lemma 1, the algorithm returns the Čech scale as well as the intersection point $\sqcap {M}_{{\mu}^{*}}$ at step (14); in otherwise (positive validation of step (9)), the root ${\mu}^{*}$ is not the Čech scale (see Figure 5), and then we should find another scale ${\mu}^{\prime}\in ({\nu}_{M},{\mu}^{*})$ such that ${\rho}_{M}\left({\mu}^{\prime}\right)>0$, and repeat from step (7). It is possible, for some configurations of the 2-disk system, that the map ${\rho}_{M}$ has a behavior as in Figure 5.

The last iterative part is a finite process because ${\rho}_{M}$ is algebraic over $\mathbb{Q}$, then eventually the set $\sqcap {M}_{{\mu}^{*}}$ will be unitary and the Čech scale will be calculated. □

The step (8) in Algorithm 2 is necessary, as show the following example, in which the map ${\rho}_{M}$ has another root along side the Čech scale in the interval $[{\nu}_{M},\sqrt{4/3}{\nu}_{M}]$.

**Example**

**3.**

Let $M=\{{D}_{1},{D}_{2},{D}_{3}\}$ be the 2-disk system in Figure 6. A direct calculation, yields that ${\nu}_{M}={\mu}_{M}=0.8947$. On the other hand, we also have that ${\rho}_{M}\left({\nu}_{M}\right)={\rho}_{M}\left({\mu}_{M}\right)={\rho}_{M}\left(\lambda \right)=0$ for $\lambda =1$. Therefore, the map ${\rho}_{M}$ has more than one root on the interval $[{\nu}_{M},\sqrt{4/3}{\nu}_{M}]=[0.8947,1.0331]$.

In Example 3, the Vietoris–Rips scale ${\nu}_{M}$, of the 2-disk system M, agrees with the Čech scale ${\mu}_{M}$; however is possible to construct more sophisticated (and symmetric) disk system M such that ${\nu}_{M}<{\mu}_{M}$ and ${\rho}_{M}\left({\nu}_{M}\right)<0<{\rho}_{M}\left({\mu}_{M}\right)$, for which there exists ${\mu}^{\prime}\in (\nu ,\sqrt{4/3}{\nu}_{M})$ with ${\rho}_{M}\left({\mu}^{\prime}\right)=0$.

On the other hand, if the 2-disk system M consists of just three disks and ${\rho}_{M}\left({\nu}_{M}\right)<0$, then its Čech scale can be computed with only one application of the numerical method, as we asseverate in the following lemma.

**Lemma**

**6.**

Let $M=\{{D}_{1},{D}_{2},{D}_{3}\}$ be a 2-disk system such that ${\rho}_{M}\left({\nu}_{M}\right)<0$. Then, there exists a unique root of the map ${\rho}_{M}$ in $[{\nu}_{M},\sqrt{4/3}{\nu}_{M}]$. Thus, ${\mu}_{M}$ will be the output of

`bisection`$({\rho}_{M},{\nu}_{M},\sqrt{4/3}{\nu}_{M})$.**Proof.**

It is straightforward to verify that ${\rho}_{M}\left({\nu}_{M}\right)\ge 0$ for any configuration with ${c}_{1}$, ${c}_{2}$ and ${c}_{3}$ collinear. Thus, it follows $\{{c}_{1},{c}_{2},{c}_{3}\}$ is in general position.

Let ${\mu}_{M}$ be the Čech scale of the 2-disk system M and ${c}_{M}$ the intersection point. Define $A\left(\lambda \right):=\phantom{\rule{3.33333pt}{0ex}}{\cap}_{i=1}^{3}{D}_{i}({c}_{i};\lambda {r}_{i})$. Note that $A\left({\mu}_{M}\right)=\left\{{c}_{M}\right\}$.

We claim that there exist at least two distinct points p and q, in the set

$$\{{d}_{ij}\left(\lambda \right)\in {D}_{i}({c}_{i};\lambda {r}_{i})\sqcap {D}_{j}({c}_{j};\lambda {r}_{j})\mid {D}_{i},{D}_{j}\in {M}_{\lambda}\}\subset \partial A\left(\lambda \right).$$

This is evident if $\partial A\left(\lambda \right)$ is given by two or more circumference arcs. On the other hand, if $\partial A\left(\lambda \right)=\partial {D}_{i}({c}_{i};\lambda {r}_{i})$ for some $1\le i\le 3$, then ${d}_{ij}\left(\lambda \right),{d}_{ik}\left(\lambda \right)\in {D}_{i}({c}_{i};\lambda {r}_{i})$ for $j\ne i$ and $k\ne i$. Moreover, ${d}_{ij}\left(\lambda \right)\ne {d}_{ik}\left(\lambda \right)$ since $\{{c}_{1},{c}_{2},{c}_{3}\}$ is not a collinear set.

If both points p and q belongs to each boundary of the three disks, $p,q\in {\cap}_{i=1}^{3}\partial {D}_{i}({c}_{i};\lambda {r}_{i})$, then $\{{c}_{1},{c}_{2},{c}_{3}\}$ would be also a collinear set. Without loss of generality, we suppose that $p={d}_{23}\left(\lambda \right)\notin \partial {D}_{1}({c}_{1};\lambda {r}_{1})$. Then, ${\rho}_{M}\left(\lambda \right)\ge \lambda {r}_{1}-\parallel {d}_{23}\left(\lambda \right)-{c}_{1}\parallel >0$, and the lemma follows. Of course, the choose of the indexes depend of the value of $\lambda $, but the above arguments show that always there exist such combination which guarantee that ${\rho}_{M}\left(\lambda \right)$ is positive for $\lambda >{\mu}_{M}$. □

The following algorithm takes advantage of the unicity property for the root of ${\rho}_{M}$, in a 2-disk system with three disks. Essentially, the algorithm consist in iterating the Algorithm 2 systematically over every triplet of disks from M.

Algorithm 3:Cech.scale. |

**Theorem**

**1.**

For any 2-disk system M, the Algorithm 3 has as output the Čech scale ${\mu}_{M}$ of M, and the unique intersection point $\left\{{c}_{M}\right\}={\bigcap}_{{D}_{i}\in M}{D}_{i}({c}_{i};{\mu}_{M}\phantom{\rule{0.166667em}{0ex}}{r}_{i})$.

**Proof.**

If ${\rho}_{M}\left({\nu}_{M}\right)\ge 0$, the algorithm returns the right data: steps (1)–(5).

On the other hand, by Helly’s Theorem (cf. [20]) the 2-disk system $M=\{{D}_{1},\dots ,{D}_{m}\}$, as a finite family of convex sets in the plane, has a nonempty intersection ${\bigcap}_{{D}_{i}\in M}{D}_{i}$ if, and only if, ${D}_{i}\cap {D}_{j}\cap {D}_{k}\ne \varnothing $ for every triplet $1\le i<j<k\le m$. Let $\mu $ be the maximal Čech scale over every triplet in the disk system M, i.e.,

$$\mu =max\{{\mu}_{N}\mid N=\{{D}_{i},{D}_{j},{D}_{k}\}\subset M\}.$$

It follows that every $\mu $-rescaled triplet has a nonempty intersection. Therefore, the $\mu $-rescaled 2-disk system ${M}_{\mu}$ also has the nonempty intersection property. Moreover, ${\bigcap}_{{D}_{i}\in M}{D}_{i}({c}_{i};\mu {r}_{i})\subset {\bigcap}_{{D}_{i}\in N\subset M}{D}_{i}({c}_{i};\mu {r}_{i})$ for every triplet $N\subset M$. Therefore, $\mu $ is actually the Čech scale of the 2-disk system M, this is, ${\mu}_{M}=\mu $.

In steps (6)–(19), the algorithm search the scale $\mu $ systematically, over every triplet $\{{D}_{i},{D}_{j},{D}_{k}\}\subset M$, updating the maximal scale found if necessary in steps (15)–(17). By Lemma 6, every Čech scale calculation over any triplet, requires just one application of the bisection method. This implies the correctness of the algorithm.

Additionally, the condition in step (9) avoids calculating unnecessary Čech scales of triplets $N=\{{D}_{i},{D}_{j},{D}_{k}\}$. In effect, if ${\lambda}^{*}$ is the maximal Čech scale found until the verification of the triplet N, and the condition in step (9) does not satisfy, i.e.,
then, whatever is the Čech scale of N, it would be not greater than ${\lambda}^{*}$. □

$${\mu}_{N}\le \sqrt{4/3}{\nu}_{M}<{\lambda}^{*},$$

The computational evidence to support the Algorithm 3 is more efficient than Algorithm 2, is given in Figure 7. The graphic shows the average time (in seconds) to computation of both algorithms, with respect to the number of disks in a randomly generated 2-disk system (see Remark 1).

#### An Example: The Miniball Problem

The miniball problem or smallest-circle problem in the euclidean space is a classical problem, proposed by James J. Sylvester in 1857.

Given a finite point cloud $N\subset {\mathbb{R}}^{d}$, the miniball problem consists in finding the center $c\in {\mathbb{R}}^{d}$ and minimum radius $r\in {\mathbb{R}}^{+}$ of a d-disk $D=D(c;r)\subset {\mathbb{R}}^{d}$ such that $N\subset D$.

There exist many different approaches to solve this problem, and a variety of algorithms to reach the miniball data (e.g., [21,22]). In fact, the Čech scale has a close relation with the miniball problem, as we establish in the next lemma.

**Lemma**

**7.**

Let N be a finite point cloud in ${\mathbb{R}}^{d}$, and let ${N}_{1}$ be the associated d-disk system defined by

$${N}_{1}:=\{{D}_{i}({c}_{i};1)\subset {\mathbb{R}}^{d}\mid {c}_{i}\in N\}.$$

Then, the Čech scale ${\mu}_{{N}_{1}}$ is the radius of the minimal enclosing ball of N, and the intersection point $\left\{{c}_{{N}_{1}}\right\}={\bigcap}_{{c}_{i}\in N}{D}_{i}({c}_{i};{\mu}_{{N}_{1}})$ its center.

**Proof.**

Let ${\mu}_{{N}_{1}}$ be the Čech scale of the disk system ${N}_{1}$, and let ${c}_{{N}_{1}}$ be the intersection point of the ${\mu}_{M}$-rescaled disk system. Then, the point ${c}_{{N}_{1}}$ belongs to every disk ${D}_{i}({c}_{i};{\mu}_{{N}_{1}}\xb71)$, i.e., $\parallel {c}_{i}-{c}_{{N}_{1}}\parallel \le {\mu}_{{N}_{1}}$ for any ${c}_{i}\in N$; thus, $N\subset D({c}_{{N}_{1}};{\mu}_{{N}_{1}})$. On the other hand, by definition of Čech scale, ${\mu}_{{N}_{1}}$ is the minimal radius (scale) with such property. Therefore, by uniqueness, $D({c}_{{N}_{1}};{\mu}_{{N}_{1}})$ must be the minimal ball enclosing the point cloud N. □

In particular, for a point cloud N in the plane we can apply our algorithm

`Cech.scale`(Algorithm 3) to the 2-disk system ${N}_{1}$, and get the minimal enclosing ball of N. However, the Čech scale of an arbitrary 2-disk system $M=\{{D}_{1}({c}_{1};{r}_{1}),\dots ,{D}_{m}({c}_{m};{r}_{m})\}$ cannot be obtained from the minimal enclosing ball data of the point cloud ${M}_{0}=\{{c}_{1},\dots ,{c}_{m}\}$.In Figure 8, we show a point cloud N (black dots) and the 2-disk system ${N}_{1}$ (blue circles). Applying the

`Cech.scale`script to ${N}_{1}$ we get the Čech scale ${\mu}_{{N}_{1}}$ (radio of the red circle) and the point ${c}_{{N}_{1}}$ (red point, center of the red circle).For the miniball problem there are many efficient algorithms available online, which are easy to find. For example, the

`C++`script in [23] can compute the miniball for point clouds in any dimension (efficiently up to dimension 10,000). Such algorithms are not comparable with the`Cech.scale`algorithm because if only disk systems with equal (and unitary) radii were considered, several issues that were addressed in the case of different radii would be avoided.## 6. The Algorithm `Cech.scale` for Higher-Dimensional Disk Systems

It is not clear how to generalize the Algorithm 3 to determine the Čech scale of a disk system in ${\mathbb{R}}^{d}$ with $d>2$. However, it is possible to calculate the Čech scale if the d-disk system consists of only three disks. This makes it possible to calculate the 2-skeleton associated with a d-disk system in an arbitrary dimension.

The relevance of this application lies in the possibility of calculating the 2-dimensional filtered simplicial Čech structure of a disk system immersed in a high-dimensional euclidean space. Many applications in topological data analysis concerns to the study of low-dimensional topological features associated to a point data cloud immersed in a high-dimensional representation space.

The key observation is that
where P is the affine plane generated by the set $\{{c}_{1},{c}_{2},{c}_{3}\}$.

$$\bigcap _{i=1}^{3}D({c}_{i};{r}_{i})\ne \varnothing \iff \bigcap _{i=1}^{3}(D({c}_{i};{r}_{i})\cap P)\ne \varnothing ,$$

Thus, the problem of determining whether $\bigcap _{i=1}^{3}(D({c}_{i};{r}_{i})\cap P)$ is empty or not, can be treated as one in the plane, constructing a disk system in ${\mathbb{R}}^{2}$ that preserves the affine configuration of the points $\{{c}_{1},{c}_{2},{c}_{3}\}$ in the affine space $P\subset {\mathbb{R}}^{d}$. To do this, we set the first center ${c}_{1}$ as the origin in ${\mathbb{R}}^{2}$, and “translate” the others centers preserving their original configuration, taking care of moving the second center on the x-axis, as in Figure 9.

More precisely, to any d-disk system with three elements, say $M=\{{D}_{1}({c}_{1};{r}_{1}),{D}_{2}({c}_{2};{r}_{2}),{D}_{3}({c}_{3};{r}_{3})\}$, we associate the following 2-disk system, which clearly preserves the affine configuration of the original centers $\{{c}_{1},{c}_{2},{c}_{3}\}$,
where ${\tilde{c}}_{1}:=(0,0)$, ${\tilde{c}}_{2}:=(\parallel {c}_{2}-{c}_{1}\parallel ,0)$, ${\tilde{c}}_{3}:=(\parallel {c}_{3}-{c}_{1}\parallel cos\left(\theta \right),\parallel {c}_{3}-{c}_{1}\parallel sin\left(\theta \right))$, where $\theta $ is the angle between the vectors ${c}_{2}-{c}_{1}$ and ${c}_{3}-{c}_{1}$, which satisfies the following relationship:

$$\mathrm{Aff}\left(M\right)=\{{D}_{1}({\tilde{c}}_{1};{r}_{1}),{D}_{2}({\tilde{c}}_{2};{r}_{2}),{D}_{3}({\tilde{c}}_{3};{r}_{3})\}$$

$$cos\theta ={\displaystyle \frac{\langle {c}_{2}-{c}_{1},{c}_{3}-{c}_{1}\rangle}{\parallel {c}_{2}-{c}_{1}\parallel \xb7\parallel {c}_{3}-{c}_{1}\parallel}}.$$

The Algorithm 4 is a variant of Algorithm 1, taking as input a d-disk system in ${\mathbb{R}}^{d}$ and a non-negative parameter $\lambda $, and as output the Čech weight function of the 2-skeleton of the generalized Čech complex structure. The algorithm first preprocess each triplet of d-disks as a 2-disk system, then the Čech scale is calculated.

Algorithm 4: 2-skeletal Čech-weight function. |

Figure 10 shows the performance (in ${10}^{-6}$ s) of the

`C/C++`script`Cech.scale`(available in [24]) and the preprocessing of the d-disk system to a 2-disk system.**Remark**

**1.**

All our timings were done on a 64-bit GNU/Linux machine with two Intel Xeon processors (3.40 GHz), although our script were not threaded and only one core was used per process. We measured all the timings with

`clock()`from the Standard C library. The average times in both graphics (Figure 7 and Figure 10) are the mean times for ${10}^{4}$ repetitions of each algorithm, for every number of disks multiple of 10 in Figure 7 from 10 to 500, and for every dimension multiple of 200 in Figure 10 from 200 to 10,000.## Author Contributions

Conceptualization, J.F.E., R.H.-A. and B.R.-V.; methodology, J.F.E., R.H.-A. and B.R.-V.; software, J.F.E., R.H.-A., H.A.H.-H. and B.R.-V.; validation, J.F.E., H.A.H.-H. and B.R.-V.; formal analysis, J.F.E., R.H.-A., H.A.H.-H. and B.R.-V.; investigation, J.F.E., R.H.-A., H.A.H.-H. and B.R.-V.; data curation, J.F.E. and B.R.-V.; writing-original draft preparation, J.F.E., R.H.-A., H.A.H.-H. and B.R.-V.; writing-review and editing, J.F.E., R.H.-A., H.A.H.-H. and B.R.-V.; visualization, J.F.E. and B.R.-V.; supervision, J.F.E.; project administration, J.F.E.; funding acquisition, J.F.E. All authors have read and agreed to the published version of the manuscript.

## Funding

This research received funding of the project “Métodos de Topología Combinatoria en el Análisis de Datos” supported by PRODEP.

## Acknowledgments

The author Jesús F. Espinoza acknowledges the financial support of PRODEP and of the Universidad de Sonora, as well as the ACARUS (High Performance Computing Area) for the support in the access to the clusters.

## Conflicts of Interest

The authors declare no conflicts of interest.

## References

- Carlsson, G. Topology and data. Bull. Am. Math. Soc.
**2009**, 46, 255–308. [Google Scholar] [CrossRef] - Carlsson, G. Topological pattern recognition for point cloud data. Acta Numer.
**2014**, 23, 289–368. [Google Scholar] [CrossRef] - Ghrist, R. Barcodes: The persistent topology of data. Bull. Am. Math. Soc.
**2008**, 45, 61–75. [Google Scholar] [CrossRef] - Lum, P.Y.; Singh, G.; Lehman, A.; Ishkanov, T.; Vejdemo-Johansson, M.; Alagappan, M.; Carlsson, J.; Carlsson, G. Extracting insights from the shape of complex data using topology. Sci. Rep.
**2013**, 3. [Google Scholar] [CrossRef] [PubMed] - Zomorodian, A.; Carlsson, G. Computing persistent homology. Discret. Comput. Geom.
**2005**, 33, 249–274. [Google Scholar] [CrossRef] - Edelsbrunner, H.; Harer, J. Computational Topology: An Introduction; American Mathematical Society: Providence, RI, USA, 2010. [Google Scholar]
- Zomorodian, A. Fast construction of the Vietoris-Rips complex. Comput. Graph.
**2010**, 34, 263–271. [Google Scholar] [CrossRef] - Le, N.K.; Martins, P.; Decreusefond, L.; Vergne, A. Construction of the Generalized Čech Complex. In Proceedings of the 2015 IEEE 81st Vehicular Technology Conference (VTC Spring), Glasgow, UK, 11–14 May 2015; pp. 1–5. [Google Scholar] [CrossRef]
- Dantchev, S.; Ivrissimtzis, I. Efficient construction of the Čech complex. Comput. Graph.
**2012**, 36, 708–713. [Google Scholar] [CrossRef] - Morozov, D. Dionysus 2. 2019. Available online: http://mrzv.org/software/dionysus2/ (accessed on 23 October 2019).
- Otter, N.; Porter, M.A.; Tillmann, U.; Grindrod, P.; Harrington, H.A. A roadmap for the computation of persistent homology. EPJ Data Sci.
**2017**, 6, 17. [Google Scholar] [CrossRef] - Kerber, M.; Sharathkumar, R. Approximate Čech complex in low and high dimensions. In Algorithms and Computation; Cai, L., Cheng, S.W., Lam, T.W., Eds.; Springer: Berlin/Heidelberg, Germany, 2013; pp. 666–676. [Google Scholar]
- Bendich, P.; Marron, J.S.; Miller, E.; Pieloch, A.; Skwerer, S. Persistent homology analysis of brain artery trees. Ann. Appl. Stat.
**2016**, 10, 198–218. [Google Scholar] [CrossRef] [PubMed] - Goldfarb, D. An application of topological data analysis to hockey analytics. arXiv
**2014**, arXiv:1409.7635v1. [Google Scholar] - Pokorny, F.T.; Hawasly, M.; Ramamoorthy, S. Topological trajectory classification with filtrations of simplicial complexes and persistent homology. Int. J. Robot. Res.
**2016**, 35, 204–223. [Google Scholar] [CrossRef] - Robins, V.; Turner, K. Principal component analysis of persistent homology rank functions with case studies of spatial point patterns, sphere packing and colloids. Phys. D Nonlinear Phenom.
**2016**, 334, 99–117. [Google Scholar] [CrossRef] - deSilva, V.; Ghrist, R. Coverage in sensor networks via persistent homology. Algebr. Geom. Topol.
**2007**, 7, 339–358. [Google Scholar] [CrossRef] - Bell, G.; Lawson, A.; Martin, J.; Rudzinski, J.; Smyth, C. Weighted persistent homology. arXiv
**2017**, arXiv:1709.00097v1. [Google Scholar] [CrossRef] - Jung, H. Ueber die kleinste Kugel, die eine räumliche Figur einschliesst. J. Reine Angew. Math.
**1901**, 123, 241–257. [Google Scholar] [CrossRef] - Bollobas, B.; Bollobás, B. The Art of Mathematics: Coffee Time in Memphis; Cambridge University Press: Cambridge, UK, 2006. [Google Scholar]
- Fischer, K.; Gärtner, B.; Kutz, M. Fast smallest-enclosing-ball computation in high dimensions. In Algorithms—ESA 2003; Di Battista, G., Zwick, U., Eds.; Lecture Notes in Computer Science; Springer: Berlin/Heidelberg, Germany, 2003; Volume 2832, pp. 630–641. [Google Scholar] [CrossRef]
- Welzl, E. Smallest enclosing disks (balls and ellipsoids). In New Results and New Trends in Computer Science; Maurer, H., Ed.; Springer: Berlin/Heidelberg, Germany, 1991; pp. 359–370. [Google Scholar]
- Fischer, K.; Gärtner, B.; Kutz, M. Miniball (GitHub Repository). 2018. Available online: https://github.com/hbf/miniball/ (accessed on 23 October 2019).
- Research Group in Geometric and Combinatorial Structures. Mathematics Department, University of Sonora—México. 2018. Available online: www.gcs.mat.uson.mx (accessed on 23 October 2019).

**Figure 10.**Average time ($\mu $s) in high dimensions of the

`Cech.scale`script and preprocessing disk systems.

© 2019 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).