Jean-Daniel Boissonnat

Frédéric Chazal

Mariette Yvinec

David Cohen-Steiner

Ramsay Dyer

Vin De Silva

Arijit Ghosh

Marc Glisse

Leonidas Guibas

André Lieutier

Quentin Mérigot

Steve Oudot

Mael Clément Maria

Olivier Devillers

Kunal Dutta

Frank Nielsen We

Geometric and Topological Inference

can be found in the CGAL library (

CONTENTS

Introduction

12

CONTENTS

Motivation and goals. In many practical situations, geometric objects are only known through a finite set of possibly noisy sample points. A natural question is then to recover the geometry and the topology of the unknown object from this information. The most classical example is probably surface reconstruction, where the points are measured on the surface of a real world object. A perhaps more surprising example is the study of the large scale structure formed by the galaxies, which cosmologists believe to be an interconnected network of walls and filaments. In other applications, the shape of interest may be a low dimensional object embedded in a higher-dimensional space, which is the basic assumption in manifold learning [START_REF] Ma | Dimensionality reduction via subspace and submanifold learning[END_REF]. This is for example the case in time series analysis, when the shape of study is the attractor of a dynamical system sampled by a sequence of observations. When these structures are highly nonlinear and have a non trivial topology as it is often the case, simple dimensionality reduction techniques do not suffice and must be complemented with more geometric and topological techniques.

A lot of research was done in this direction, originating from several sources. A bunch of contributions came from the field of computational geometry, where much effort was done to elaborate provably correct surface reconstruction algorithms, under a suitable sampling condition. We refer to [START_REF] Dey | Curve and Surface Reconstruction : Algorithms with Mathematical Analysis[END_REF] for a thorough review of this approach. However most of this research focused on the case of sampled smooth surfaces in R 3 , which is by now fairly well covered. Extending these results to higher dimensional submanifolds and to non smooth objects is one of the objectives of this book. Such an extension requires new data structures to walk around the curse of dimensionality. Handling more general geometric shapes also requires concepts from topology and has provoked an interest in the subject of computational topology. Computational topology has recently gained a lot of momentum and has been very successful at providing qualitative invariants and efficient algorithms to compute them. Its application to data analysis led to the rapidly evolving field of topological data analysis that provides a general framework to analyze the shape of data and has been applied to various types of data across many fields.

This book. This book intends to cover various aspects of geometric and topological inference, from data representation and combinatorial questions to persistent homology, an adaptation of homology to point cloud data. The aim of this book is not to provide a comprehensive treatment of topological data analysis but to describe the mathematical and algorithmic foundations CONTENTS 13 of the subject.

Two main concepts will play a central role in this book : simplicial complexes and distance functions. Simplicial complexes generalize the notion of triangulation of a surface and are constructed by gluing together simplices : points, line segments, triangles and their higher dimensional counterparts. Simplicial complexes can be considered, at the same time, as continuous objects carrying topological and geometric information and as combinatorial data structures that can be efficiently implemented. Simplicial complexes can be used to produce fine meshes leading to faithfull approximations well suited to scientific computing purposes, or much coarser approximations, still useful to infer important features of shapes such as their homology or some local geometric properties.

Simplicial complexes have been known and studied for a long time in mathematics but only used in low dimensions due to their high complexity. In this book, we will address the complexity issues by focusing on the inherent, usually unknown, structure in the data which we assume to be of relative low intrinsic dimension. We will put emphasis on output-sensitive algorithms, introduce new simplicial complexes with low complexity, and describe approximation algorithms that scale well with the dimension.

Another central concept in this book is the notion of distance function. All the simplicial complexes used in this book encode proximity relationships between the data points. A prominent role is taken by Voronoi diagrams, their dual Delaunay complexes and variants of those, but other simplicial complexes based on distances like the Čech, the Vietoris-Rips or the witness complexes will also be considered.

The book is subdivided into four parts.

Part I contains two chapters that present background material on topological spaces and simplicial complexes.

Part II introduces Delaunay complexes and their variants. Since Delaunay complexes are closely related to polytopes, the main combinatorial and algorithmic properties of polytopes are presented first in Chapter 3.

Delaunay complexes, to be introduced in Chapter 4 are defined from Voronoi diagrams which are natural space partitions induced by the distance function to a sample. Delaunay complexes appear as the underlying basic data structure for manifold reconstruction. The extensions of Voronoi diagrams CONTENTS and Delaunay complexes to weighted distances are also presented together with their relevant applications to kth-nearest neighbor search and Bregman divergences which are used in information theory, image processing and statistical analysis.

Although Delaunay triangulations have many beautiful properties, their size depends exponentially on the dimension of the space in the worst-case. It is thus important to exhibit realistic assumptions under which the complexity of the Delaunay triangulation does not undergo such a bad behaviour. This will be done through the notion of nets. Another issue comes from the fact that, in dimensions greater than 2, Delaunay simplices may have an arbitrarily small volume, even if their vertices are well distributed. Avoiding such bad simplices is a major issue and the importance of thick triangulations has been recognized since the early days of differential topology. They play a central role in numerical simulations to ensure the convergence of numerical methods solving partial differential equations. They also play a central role in the triangulation of manifolds and, in particular, the reconstruction of submanifolds of high dimensional spaces as shown in Chapter 8. Chapter 5 defines thick triangulations and introduces a random perturbation technique to construct thick Delaunay triangulations in Euclidean space.

Chapter 6 introduces two filtrations of simplicial complexes. Filtrations are nested sequences of subcomplexes that allow to compute persistent homology as described in Chapter 11. We first introduce alpha-complexes and show that they provide natural filtrations of Delaunay and weighted Delaunay complexes. We then introduce witness complexes and their filtrations. The witness complex is a weak version of the Delaunay complex that can be constructed in general metric spaces using only pairwise distances between the points, without a need for coordinates. We will also introduce a filtration of the witness complex.

Part III is devoted to the problem of reconstructing a submanifold M of R d from a finite point sample P ∈ M. The ultimate goal is to compute a triangulation of M, i.e. a simplicial complex that is homeomorphic to M. This is a demanding quest and, in this part, we will restrict our attention to the case where M is a smooth submanifold of R d .

In Chapter 7, we introduce the basic concepts and results, and state a theorem that provides conditions for a simplicial complex M with vertex set P ⊂ M to be both a triangulation and a good geometric approximation of M.

Chapter 8 is devoted to the problem of reconstructing submanifolds from point samples. This problem is of primary importance when M is a surface of R 3 (it is then known as the surface reconstruction problem). It also founds applications in higher dimensions in the context of data analysis where data are considered as points in some Euclidean space, of possibly high dimension. In this chapter, we first exhibit conditions under which the alpha-complex of P ⊂ M has the same homotopy type as M, a weaker property than being homeomorphic to M. We then consider the problem of reconstructing a smooth submanifold M embedded in a space of possibly high dimension d. We then cannot afford to triangulate the ambient space as is being routinely done when working in low dimensions. A way to walk around this difficulty is to assume, as is common practice in data analysis and machine learning, that the intrinsic dimension k of M is small, even if the dimension of the ambient space may be very large. Chapter 8 takes advantage of this assumption and presents a reconstruction algorithm whose complexity is linear in d and exponential only in k.

The assumptions made in Part III are very demanding: the geometric structures of the data should be smooth submanifolds, the amount of noise in the data should be small and the sampling density should be high. These assumptions may not be satisfied in practical situations. Part IV aims at weakening the assumptions. Chapter 9 studies the stability properties of the sublevel sets of distance functions and provide sampling conditions to infer the underlying geometry and topology of data.

Approximations in Chapter 9 are with respect to the Hausdorff distance. This is a too strong limitation when the data contain outliers that are far away from the underlying structure we want to infer.To overcome this problem, Chapter 10 introduces a new framework where data are no longer considered as points but as distributions of mass or, more precisely probability measures. It is shown that the distance function approach can be extended to this more general framework.

Although Chapters 9 and 10 provide strong results on the topology of the sublevel sets of distance functions, computing and manipulating such sublevel sets is limited in practice to low dimensions. To go beyond these limitations, we restrict our quest to the inference of some topological invariants of the level sets, namely their homology and the associated Betti numbers. Chapter 11 introduces persistent homology and provides tools to robustly infer the homology of sampled shapes. Basic mathematical notions useful in the sequel of this book are given in this chapter. For conciseness, the definitions and results are not always given in their full generality. They are restricted to the simplest version necessary to follow and understand the results and proofs of this book.

Part I Topological preliminaries

Topological spaces

This section quickly recalls a few basic notions and definitions from general topology. Most of the topological objects encountered in this book are metric spaces whose definition is also recalled.

A topology on a set X is a family O of subsets of X that satisfies the three following conditions: encountered in this book are metric spaces whose definition is also recalled. Definition 1.1 (Topological space) A topology on a set X is a family O of subsets of X that satisfies the three following conditions: Definition 1.3 (Metric space) A metric (or distance) on a set X is a map d : X × X → [0, +∞) such that:

1. for any x, y ∈ X, d(x, y) = d(y, x), 2. for any x, y ∈ X, d(x, y) = 0 if and only if x = y, 1.1. TOPOLOGICAL SPACES 3. for any x, y, z ∈ X, d(x, z) ≤ d(x, y) + d(y, z).

The set X together with d is a metric space. The smallest topology containing all the open balls B(x, r) = {y ∈ X : d(x, y) < r} is called the metric topology on X induced by d. Definition 1.4 (Continuous map) A map f : X → X between two topological spaces X and X is continuous if and only if the pre-image

f -1 (O ) = {x ∈ X : f (x) ∈ O } of any open set O ⊂ X is an open set of X.
Equivalently, f is continuous if and only if the pre-image of any closed set in X is a closed set in X. Definition 1.5 (Compact space) A topological space X is a compact space if any open cover of X admits a finite subcover, i.e. for any family {U i } i∈I of open sets such that X = ∪ i∈I U i there exists a finite subset J ⊆ I of the index set I such that X = ∪ j∈J U j .

For metric spaces, compacity is characterized using sequences: a metric space X is compact if and only if any sequence in X has a convergent subsequence.

Definition 1.6 (Connected spaces) A topological space X is connected if it is not the union of two disjoint open sets: if

O 1 , O 2 are two open sets such that X = O 1 ∪ O 2 then O 1 = ∅ or O 2 = ∅.
A topological space X is path-connected if for any x, y ∈ X there exists a continuous map γ : [0, 1] → X such that γ(0) = x and γ(1) = y.

A path-connected space is always connected, but the reverse is not true in general. See Exercise 1.1. A subset K ⊂ R d (endowed with the topology induced from the Euclidean one) is compact if and only if it is closed and bounded (Heine-Borel theorem).

Comparing topological spaces

There are many ways of measuring how close two objects are. We distinguish between topological and geometric criteria.

Homeomorphism, isotopy and homotopy equivalence

In topology, two topological spaces are considered to be the same when they are homeomorphic. Definition 1.7 (Homeomorphism) Two topological spaces X and Y are homeomorphic if there exists a continuous bijective map h : X → Y such that its inverse h -1 is also continuous. The map h is called a homeomorphism.

As an example, a circle and a simple closed polygonal curve are homeomorphic. On the other hand, a circle and a segment are not homeomorphic. See Exercise 1.6.

The continuity of the inverse map in the definition is automatic in some cases. If U is an open subset of R d and f : U → R d is an injective continuous map, then V = f (U ) is open and f is a homeomorphism between U and V by Brower's invariance of domain. 1 The domain invariance theorem may be generalized to manifolds: If M and N are topological k-manifolds without boundary and f : U → N is an injective continuous map from an open subset of M to N , then f is open and is an homeomorphism between U and f (U ).

If X is homeomorphic to the standard unit ball of R d , X is called a topological ball.

The notions of compacity and connexity are preserved by homeomorphism. See Exercise 1.4.

Let h be a map between two topological spaces X and Y . If h is a homeomorphism onto its image, it is called an embedding of X in Y .

When the considered spaces X and Y are subspaces of R d , the notion of isotopy is stronger than the notion of homeomorphism to ditinguish between spaces.

Definition 1.8 (Ambient isotopy) An ambient isotopy between X ⊂ R d and Y ⊂ R d is a map F : R d × [0, 1] → R d such that F (., 0) is the identity map on R d , F (X, 1) = Y and for any t ∈ [0, 1], F is a homeomorphism of R d .

Intuitively, the previous definition means that X can be continuously deformed into Y without creating any self-intersection or topological changes. The notion of isotopy is stronger than the notion of homeomorphism in the sense that if X and Y are isotopic, then they are obviously homeomorphic. Converselym two subspaces of R d that are homeomorphic may not be isotopic. This is the case for a knotted and an unknotted torus embedded in R 3 as the ones in Figure 1.1. Note that, although intuitively obvious, proving that these two surfaces are not isotopic is a non obvious exercise that requires some background in algebraic topology. In general, deciding whether two spaces are homeomorphic is a very difficult task. It is sometimes more convenient to work with a weaker notion of CHAPTER 1. TOPOLOGICAL SPACES equivalence between spaces called homotopy equivalence.

Given two topological spaces X and Y , two maps f 0 , f 1 : X → Y are homotopic if there exists a continuous map H : [0, 1] × X → Y such that for all x ∈ X, H(0, x) = f 0 (x) and H(1, x) = f 1 (x). Homotopy equivalence is defined in the following way. Definition 1.9 (Homotopy equivalence) Two topological spaces X and Y have the same homotopy type (or are homotopy equivalent) if there exist two continuous maps f : X → Y and g : Y → X such that g •f is homotopic to the identity map in X and f • g is homotopic to the identity map in Y .

As an example, the unit ball in an Euclidean space and a point are homotopy equivalent but not homeomorphic. A circle and an annulus are also homotopy equivalent -see Figure 1.2 and Exercises 1.8. Definition 1.10 (Contractible space) A contractible space is a space that has the same homotopy type as a single point.

For example, a segment, or more generally any ball in an Euclidean space R d is contractible -see Exercise 1.7.

It is often difficult to prove homotopy equivalence directly from the definition. When Y is a subset of X, the following criterion reveals useful to prove homotopy equivalence between X and Y . Proposition 1.11 If Y ⊂ X and if there exists a continuous map H : [0, 1] × X → X such that: A classical way to characterize and quantify topological properties and features of spaces is to consider their topological invariants . Theses are mathematical objects (numbers, groups, polynomials,...) associated to each topological space that have the property of being the same for homeomorphic spaces. The homotopy type is clearly a topological invariant: two homeomorphic spaces are homotopy equivalent. The converse is false: for example, a point and a segment are homotopy equivalent but are not homeomorphic. See Exercise 1.7. Moreover, most of the topological invariants considered in the sequel are indeed homotopy invariants, i.e. they are the same for spaces that are homotopy equivalent.

Hausdorff distance

The set of compact subsets of a metric space can be endowed with a metric, called the Hausdorff distance, that allows to measure how two compact subsets are far away from each other. We give here the definition for compact subspaces of R d but it immediately adapts to the compact subsets of any metric space. Definition 1.13 (Offset) Given a compact set X of R d , the tubular neighborhood or offset X ε of X of radius ε, i.e. the set of all points at distance at most ε from X: The Hausdorff distance defines a distance on the space of compact subsets of R d . See Exercise 1.10.

X ε = {y ∈ R d : inf

Exercises

Exercise 1.1 Let X be a path connected space. Show that X is connected. Let X ⊂ R 2 be the union of the vertical closed segment {0} × [-1, 1] and the curve {(t, sin( 1 t )) ∈ R 2 : t ∈ (0, 1]}. Show that X is compact and connected but not path-connected. Exercise 1.2 Let S be a subset of a metric space X. Show that:

1. x ∈ X ∈ S if and only if for any r > 0, B(x, r) ∩ S = ∅.

2.

x ∈ X ∈ S if and only if there exists r > 0 such that B(x, r) ⊂ S.

Exercise 1.3 Let X be a metric space. Given x ∈ X and r > 0, show that the set B(x, r) = {y ∈ X : d(x, y) ≤ r} is a closed set which is indeed the closure of the open ball B(x, r) = {y ∈ X : d(x, y) < r}.

Exercise 1.4 Let X, Y two homeomorphic topological spaces. Prove the following equivalences:

1. X is compact if and only if Y is compact.

2. X is connected (resp. path-connected) if and only if Y is connected (resp. path-connected).

Exercise 1.5 Show that the Euclidean space is not compact (without using the Heine-Borel theorem).

Exercise 1.6 A continuous polygonal curve P ⊂ R 2 with consecutive edges e 1 = [p 1 , p 2 ], e 2 = [p 2 , p 3 ], • • • e n = [p n , p n+1 ] is simple and closed if and only if e i ∩e j = ∅ whenever 2 ≤ |i-j| mod (n), e i ∩e i+1 = p i+1 for i = 1, • • • n-1 and e n ∩ e 1 = p 1 . Show that P is homeomorphic to a circle. Show that a circle and a segment are not homeomorphic.

Exercise 1.7 Let X be a segment (i.e. a space homeomorphic to [0, 1]) and let Y be a point. Prove that X and Y are homotopy equivalent but not homeomorphic. More generally prove that any ball in R d is contractible.

Exercise 1.8 Let X be the unit circle in R 2 and let Y ⊂ R 2 be the annulus of inner radius 1 and outer radius 2. Prove that X and Y are homotopy equivalent.

Exercise 1.9 Let X and Y be two topological spaces that are homotopy equivalent. Show that if X is path-connected, then Y is also path-connected.

Exercise 1.10 Show that the Hausdorff distance is a distance on the space of compact subsets of R d . Show that this is no longer true if we extend the definition to non compact sets (give an example of two different sets that are at distance 0 from each other).

Bibliographical notes

All the notions introduced in this chapter are classical, but fundamental, and presented with many details in the classical mathematical litterature.

For more details about basic topology, the reader may refer to any standard book on general topology such as, e.g. [START_REF] Munkres | Topology[END_REF]. The geometry of metric spaces is a wide subject in mathematics. The reader interested in the topics may have a look at [START_REF] Burago | A course in metric geometry[END_REF]. More details and results about the notions of homotopy and homotopy equivalence can be found in [86, pp. 171-172] or [110, p. 108].

CHAPTER 2. SIMPLICIAL COMPLEXES

Geometric shapes like curves, surfaces or their generalization in higher dimensions Com are "continuous" mathematical objects that cannot be directly encoded as a finite discrete structure usable by computers or computing devices. It is thus necessary to find representations of these shapes that are rich enough to capture their geometric structure and to comply with the constraints inherent to the discrete and finite nature of implementable data structures. On another side, when the only available data are point clouds sampled around unknown shapes, it is necessary to be able to build some continuous space on top of the data that faithfully encode the topology and the geometry of the underlying shape. Simplicial complexes offer a classical and flexible solution to overcome these difficulties.

Geometric simplicial complexes

The points of a finite set P = {p 0 , p 1 , • • • , p k } in R d are said to be affinely independent if they are not contained in any affine subspace of dimension less than k.

Definition 2.1 (Simplex) Given a set P = {p 0 , . . . , p k } ⊂ R d of k + 1 affinely independent points, the k-dimensional simplex σ, or k-simplex for short, spanned by P is the set of convex combinations k i=0 λ i p i , with k i=0 λ i = 1 and λ i ≥ 0.

The points p 0 , . . . , p k are called the vertices of σ.

Notice that σ is the convex hull of the points P , i.e. the smallest convex subset of R d containing p 0 , p 1 , • • • , p k . A 0-simplex is a point, a 1-simplex is a line segment, a 2-simplex is a triangle, a 3-simplex is a tetrahedron.

The faces of the simplex σ whose vertex set is P are the simplices spanned by the subsets of P . Any face different from σ is called a proper face of σ.

For example, the faces of a triangle spanned by 3 independent points {p 0 , p 1 , p 2 } ∈ R d are the simplices ∅, [p 0 ], [p 1 ], [p 0 , p 1 ], [p 1 , p 2 ], [p 2 , p 0 ] and [p 0 , p 1 , p 2 ]. Observe that, by convention, ∅ is usually added to the faces as the simplex spanned by the empty subset of the vertices.

ABSTRACT SIMPLICIAL COMPLEXES

Definition 2.2 (Simplicial complex) A (finite) simplicial complex K in R d is a (finite) collection of simplices such that:

1. any face of a simplex of K is a simplex of K, 2. the intersection of any two simplices of K is either empty or a common face of both.

All the simplicial complexes considered in this book are finite. The simplices of K are called the faces of K. The dimension of K is the highest dimension of its simplices. A complex of dimension k is also called a k-complex. A subset of the simplices of K which is itself a simplicial complex is called a subcomplex of K. The j-skeleton Sk j (K) of K is the subcomplex of K consisting of the simplices of dimension at most j.

Figure 2.1: Left: an example of a simplicial complex. Right: a union of simplices which is not a simplicial complex For a simplicial complex K in R d , its underlying space |K| ⊂ R d is the union of the simplices of K. The topology of K is the topology induced on |K| by the standard topology in R d . When there is no risk of confusion, we do not clearly make the distinction between a complex in R d and its underlying space.

Abstract simplicial complexes

Notice that when its vertex set is known, a simplicial complex in R d is fully and combinatorialy characterized by the list of its simplices. This leads to the following notion of abstract simplicial complex.

CHAPTER 2. SIMPLICIAL COMPLEXES Definition 2.3 (Abstract simplicial complex) Let V = {v 1 , • • • v n } be a finite set. An abstract simplicial complex K with vertex set V is a set of finite subsets of V satisfying the two conditions :

1. The elements of V belong to K.

2. If τ ∈ K and σ ⊆ τ , then σ ∈ K.

The elements of K are called the simplices or the faces of K. If σ ∈ K has precisely k + 1 elements, the dimension of σ is k and we say that σ is a k-simplex. The dimension of K is the maximal dimension of its simplices.

Any simplicial complex K in R d naturally determines an abstract simplicial complex K, called the vertex scheme of K: K and K have the same set of vertices and the simplices of K are the sets of vertices of the simplices of K. Conversely, if an abstract complex K is the vertex scheme of a complex K in R d , then K is called a geometric realization of K. Notice that any finite abstract simplicial complex K has a geometric realization in an Euclidean space in the following way. Let {v 1 , v 2 , • • • , v n } be the vertex set of K where n is the number of vertices of K, and let σ ⊂ R n be the simplex spanned by {e 1 , e 2 , • • • , e n } where, for any i = 1, • • • , n, e i is the vector whose coordinates are all 0 except the i th one which is equal to 1. Then K is the subcomplex of σ defined by [e i 0 , • • • , e i k ] is a k-simplex of K if and only if [v i 0 , • • • , v i k ] is a simplex of K. It can also be proven that any finite abstract simplicial complex of dimension d can be realized as a simplicial complex in R 2d+1 (Exercice 2.3). Definition 2.4 (Isomorphism of abstract simplicial complexes) Two abstract simplicial complexes K, K with vertex sets V and V are isomorphic if there exists a bijection φ :

V → V such that {v 0 , • • • v k } ∈ K if and only if {φ(v 0 ), • • • φ(v k )} ∈ K .
The relation of isomorphism between two abstract simplicial complexes induces homeomorphism between their geometric realizations. Proposition 2.5 If two simplicial complexes K, K are the geometric realizations of two isomorphic abstract simplicial complexes K, K , then |K| and |K | are homeomorphic topological spaces. In particular, the underlying spaces of any two geometric realizations of an abstract simplicial complex are homeomorphic.

NERVE

In this book, we will often encounter abstract simplicial complexes whose vertices are points in R d . Let K be an abstract complex with vertex set V ⊂ R d . If the convex hull of each k-simplex σ = {v 0 , • • • , v k } ∈ K is a geometric k-simplex in R d and if the collection of these simplices defines a simplical complex K, then we say that K naturally embeds in R d and that K is the natural embedding of K . When there is no ambiguity, the same notation is used for K and K.

An important remark about terminology: as the underlying spaces of all geometric realizations of an abstract simplicial complex are homeomorphic to each other, it is usual to relate the topological properties of these underlying spaces to the complex itself. For example, when one claims that an abstract simplicial complex K is homeomorphic or homotopy equivalent to a topological space X, it is meant that the underlying space of any geometric realization of K is homeomorphic or homotopy equivalent to X.

Nerve

As noticed in previous the section, simplicial complexes can be seen at the same time as topological spaces and as purely combinatorial objects.

Definition 2.6 (Covers)

An open cover of a topological space X is a collection U = (U i ) i∈I of open subsets U i ⊆ X, i ∈ I where I is a set, such that X = ∪ i∈I U i . Similarly, a closed cover of X is a collection of closed sets whose union is X. Definition 2.7 (Nerve) Given a cover of a topological space X, U = (U i ) i∈I we associate an abstract simplicial complex C(U) whose vertex set is U and such that

σ = [U i 0 , U i 1 , • • • , U i k ] ∈ C(U) if and only if ∩ k j=0 U i j = ∅.
Such a simplicial complex is called the nerve of the cover U.

When all the sets U i are open and all their finite intersections are contractible, i.e. are homotopy equivalent to a point, the Nerve Theorem relates the topology of X and C(U).

CHAPTER 2. SIMPLICIAL COMPLEXES

Theorem 2.8 (Nerve Theorem) Let U = (U i ) i∈I be a finite open cover of a subset X of R d such that any intersection of the U i 's is either empty or contractible. Then X and C(U) are homotopy equivalent.

The nerve theorem also holds for closed covers under a slightly more restrictive assumption on X. The following version is general enough for our purpose.

Theorem 2.9 (Nerve Theorem for convex covers) Let X ⊂ R d be a finite union of closed convex sets F = (F i ) i∈I in R d . Then X and C(F) are homotopy equivalent.

A cover satisfying the assumptions of the Nerve Theorem is sometimes called a good cover . The Nerve Theorem is of fundamental importance in computational topology and geometric inference: it provides a way to encode the homotopy type of continuous topological space X by a simplical complex describing the intersection pattern of a good cover. In particular, when X is a (finite) union of (closed or open) balls in R d , it is homotopy equivalent to the nerve of this union of balls.

Filtrations of simplicial complexes

Simplicial complexes often come with a specific ordering of their simplices that plays a fundamental role in geometry inference.

Definition 2.10 A filtration of a finite simplicial complex K is a nested sequence of sub-complexes

∅ = K 0 ⊂ K 1 ⊂ • • • ⊂ K m = K such that K i+1 = K i ∪ σ i+1 where σ i+1 is a simplex of K.
Equivalently, a filtration of K can be seen as an ordering of the simplices such that for any i ≥ 0, the collection of the first i simplices is a simplicial complex. To ensure this later condition, it is sufficient to know that every simplex σ i appears in the filtration after all its faces.

As a filtration of K is just an ordering of the simplices, in some cases, it might be more natural to index the simplices by an increasing sequence

VIETORIS-RIPS AND ČECH FILTRATIONS

(α i ) m i=1 of real numbers: ∅ = K α 0 ⊂ K α 1 ⊂ • • • ⊂ K αm = K.
In this case, it is often convenient to extend the filtration to the whole set of real numbers by defining

K α = K α i for α ∈ [α i , α i+1 ), K α = ∅ for α < α 0 and K α = K for α ≥ K αm .
For example, when a function is defined on the vertices of K, on can define a sublevel set filtration in the following way.

Filtration associated to a function defined on the vertices of a complex. Let K be a simplicial complex and let f be a real valued function defined on the vertices of K. For any simplex

σ = {v 0 , • • • v k } one defines f (σ) by f (σ) = max i=0•••k f (v i )
Ordering the simplices of K according to the values of each simplex defines a filtration of K. Note that different simplices can have the same value. In this case, they are ordered according to increasing dimension and simplices of the same dimension with same value can be ordered arbitrarily. The filtration induced by f is the filtration by the sublevel sets f -1 (] -∞; t]) of f .

Vietoris-Rips and Čech filtrations

Filtrations are often built on top of finite sets of points to reveal the underlying topological structure of data (see Chapter 11). Let P ⊂ R d be a (finite) set of points.

Definition 2.11 Given α > 0, the Čech complex with vertex set P and parameter α is the nerve Čech(P, α) of the unions of balls centered on P with radius α. The simplices of Čech(P, α) are characterized by the following condition:

{x 0 , x 1 , . . . , x k } ∈ Čech(P, α) ⇔ k i=0 B(x i , α) = ∅.
As α goes from 0 to +∞, the nested sequence of complexes Čech(P, α) defines the Čech complex filtration. A simplicial complex which is closely related to the Čech filtration is the Vietoris-Rips filtration, Rips(P ).

Definition 2.12 Given α > 0, the Vietoris-Rips complex Rips(P, α) with vertext set P and parameter α is defined by the following condition

{x 0 , x 1 , • • • , x k } ∈ Rips(P, α) ⇔ x i -x j ≤ α for all i, j ∈ {0, . . . , k}.
As α goes from 0 to +∞, the nested sequence of complexes Rips(P, α) defines the Vietoris-Rips filtration.

The Vietoris-Rips complex is much simpler to compute than the Čech filtration as it just involves distance comparisons. The Vietoris-Rips complex is the largest simplicial complex that has the same 1-skeleton as the Čech complex. It is thus completely characterized by its 1-skeleton. The whole

COMBINATORIAL MANIFOLDS TRIANGULATIONS

k-dimensional skeleton of the Vietoris-Rips filtration can be computed by computing the diameter of all the subsets of at most k points of P .

The Čech and the Vietoris-Rips filtrations are related by the following interleaving property that plays a fundamental role in Chapter 11.

Lemma 2.13 Let P be a finite set of points in R d . for any α ≥ 0, Rips(P, α) ⊆ Čech(P, α) ⊆ Rips(P, 2α)

Proof If σ = {x 0 , x 1 , • • • , x k } ∈ Rips(P, α) then x 0 ∈ k i=0 B(x i , α). So, σ ∈ Čech(P, α). This proves the first inclusion. Now, if σ = {x 0 , x 1 , • • • , x k } ∈ Čech(P, α), there exists y ∈ R d such that y ∈ ∩ k i=0 B(x i , α), i.e. x i -y ≤ α for any i = 0, • • • k.
As a consequence, for all i, j ∈ {0, . . . , k}, x ix j ≤ 2α and σ ∈ Rips(P, 2α).

Remark that the Čech and Vietoris-Rips filtrations can be defined for a set of points in any metric space and that the above interleaving property still holds. When the points P are in R d , the interleaving of Lemma 2.13 is not tight and can be slightly improved (see Exercise 11.3).

Combinatorial manifolds triangulations

Definition 2.14 (Star and link) Let K be a simplicial complex with vertex set P . The star of p ∈ P is the set of simplices of K that have p as a vertex. We denote it star(p, K). The link of p is the set of simplices τ ⊂ σ such that σ ∈ star(p, K) but τ ∈ star(p, K). We denote it by link(p, K).

Observe that the star of a simplex is not a complex while the link is. We will use the name closed star of p in K to denote the subcomplex of K that consists of the simplices of star(p, K) and their subfaces. Definition 2.15 (Pure complex) A simplicial k-complex K is pure if every simplex in K is the face of a k-simplex. Definition 2.16 (Boundary complex) Let K be a pure simplicial k-complex. The boundary of K, denoted ∂K is the (k -1)-subcomplex of K whose CHAPTER 2. SIMPLICIAL COMPLEXES (k -1)-simplices are the (k -1)-simplices of K that are incident to only one face of dimension k. Definition 2.17 (Combinatorial manifold)

A simplicial complex K is a combinatorial k-manifold if 1. K is pure k complex,
2. the link of any vertex of K \ ∂K is a triangulated (k -1)-sphere 3. the link of any vertex of ∂K is a triangulated (k -1)-ball.

We define the adjacency graph of a combinatorial k-manifold K as the graph whose nodes are the k-simplices of K and two nodes are joined by an edge in the graph if the two simplices associated to the two nodes have a (k -1)simplex in common.

An example of a combinatorial manifold is the boundary complex of a polytope (see Section 3.1). Definition 2.18 (Triangulation of a point set) A triangulation of a finite point set P ∈ R d is a geometric simplicial complex K whose vertex set is P and whose underlying space is the convex hull of P .

The triangulation of a finite point set P ∈ R d is a combinatorial manifold whose boundary is the boundary complex of the convex hull of P (see Exercise 3.9). Definition 2.19 (Triangulation of a topological space) A triangulation of a topological space X is a simplicial complex K and a homeomorphism h : |K| → X.

Representation of simplicial complexes

To represent a simplicial complex K, we need a data structure that represents the simplices of the complex and is able to provide efficient implementations of elementary operations such as face and coface retrieval, and 2.7. REPRESENTATION OF SIMPLICIAL COMPLEXES maintainance of the data structure upon elementary modifications of the complex, insertion or removal of a new simplex. In addition, we may want to attach a filtration to each simplex and iterate over the simplices of a filtered complex by increasing values of filtration. We present below several data structures to represent simplicial complexes.

We say that two simplices σ and τ of a simplicial complex are incident if one is included in the other. We say that σ and τ are adjacent if they are incident and if their dimensions differ by exactly 1. The Hasse diagram of a simplicial complex K is a graph whose nodes represent the simplices (of all dimensions) and two nodes are joined by an arc if the associated simplices are adjacent.

The Hasse diagram provides an explicit representation of all the simplices of K. If the dimension of the complex is considered as a constant, it is easy to see that all elementary operations on K can be performed efficiently. However the size of the Hasse diagram may be problematic in practice when considering big complexes. A more compact data structure that still provides an explicit representation of all the simplices of K is the so-called simplex tree which is a minimal spanning tree of the Hasse diagram. The simplex tree is constructed as a prefix tree of the simplices considered as words on the alphabet v 1 , ..., v n where v 1 , ..., v n are the labels of the vertices of K (see Figure 2.3 and Exercice 2.1).

Both the Hasse diagram and the simplex tree are convenient to store and retrieve information attached to a simplex, e.g. a filtration value. Nevertheless, in some applications, we may content ourselves with less expressive but more compact representations. Instead of representing all simplices, one can represent only the maximal ones, i.e. the simplices that have no coface in the complex. This may lead to a dramatic saving in memory size as can be seen from the following simple example : the complex consisting of a unique simplex has one maximal simplex but 2 d simplices in total.

Representating only the maximal simplices is especially well suited for combinatorial manifold. A combinatorial manifold K can be represented by its maximal simplices, together with the adjacency graph of those maximal simplices. We will simply call this graph the adjacency graph of the combinatorial manifold. When K is of dimension d, the adjacency graph of the maximal simplices is a connected graph of degree d + 1 that be efficiently traversed. Such a graph will be used in Section 3.4 when constructing convex hulls. The simplex tree data structure that we introduce in this chapter is a specific spanning tree of the Hasse diagram. Its properties allow us to store in a node only the biggest vertex of the simplex it represents and reach an optimal memory complexity of O(1) word per simplex. The biggest labels are pictured in blue in Figure 2.3.

1 2 3 4 5 {1, 2} {1, 3} {2, 3} {2, 4} {2, 5} {3, 4} {3, 5} {4, 5} {1} {2} {3} {5} {4} {2, 3, 5} {2, 3, 4} {1, 2, 3} {2, 4, 5} {3, 4, 5} {2
Before introducing the simplex tree, we mention other data structures used for representing simplicial complexes. Brisson [START_REF] Boissonnat | Bregman Voronoi diagrams[END_REF] and Lienhardt [START_REF] Chazal | Rates of convergence for robust geometric inference[END_REF] have introduced data structures to represent d-dimensional cell complexes, most notably subdivided manifolds. While those data structures have nice algebraic properties, they are very redundant and do not scale to large data sets or high dimensions. Zomorodian [START_REF] Edelsbrunner | Surface reconstruction by wrapping finite point sets in space[END_REF] has proposed the tidy set, a compact data structure to simplify a simplicial complex and compute its homology. The construction of the tidy set requires the computation of the maximal simplices of the simplicial complex, which is difficult in general without constructing the whole complex explicitly. In the same spirit, Attali et al. [START_REF] Aurenhammer | Power diagrams: properties, algorithms and applications[END_REF] have proposed the skeleton-blockers data structure. Again, the representation is general but it requires to compute blockers, the simplices which are not contained in the simplicial complex but whose proper faces are. Computing the blockers is as difficult as computing maximal simplices in general. These two last data structures are efficient in the special case of flag complexes, where the maximal simplices are the maximal cliques in the graph and the set of blockers is empty. None of these data structures are, at the same time, well-suited to general simplicial complexes and scale to both dimension and size. start from the root, and follow the path containing successively all labels `0, • • • , `i, where [`0, • • • , `i] denotes the longest prefix of [ ] already stored in the simplex tree. We then append to the node representing [`0, • • • , `i] a path consisting of the nodes storing labels `i+1 , • • • , `j. It is easy to see that the three properties above are satisfied. Hence, if K consists of #K simplices, the associated simplex tree contains exactly #K + 1 nodes, counting the empty simplex at the root.

We use dictionaries with size linear in the number of elements they store (like a red-black tree or a hash table) for searching, inserting and removing elements among a set of sibling nodes. Consequently these additional structures do not change the asymptotic memory complexity of the simplex tree. For the top nodes, we simply use an array since the set of vertices Vert is known and fixed. Let deg(T ) denote the maximal outdegree of a node, in the simplex tree T , distinct from the root. Remark that deg(T ) is at most the maximal degree of a vertex in the graph of the simplicial complex. In the following, we will denote by D m the maximal number of operations needed to perform a search, an insertion or a removal in a dictionary of maximal size deg(T ) (for example, with red-black trees D m = O(log deg(T )) worstcase, with hash-tables D m = O(1) amortized). Some algorithms, that we describe later, require to intersect and to merge sets of sibling nodes. In order to compute fast set operations, we will prefer dictionaries which allow to traverse their elements in sorted order (eg red-black trees). We discuss the value of D m at the end of this section in the case where the points have a geometric structure.

We introduce two new notations for the analysis of the complexity of the algorithms. Given a simplex 2 K, we define C to be the number of cofaces of , ie #St . Note that C only depends on the combinatorial structure of the simplicial complex K. Let T be the simplex tree associated

Exercises

Exercise 2.1 A simplicial complex C is said to be (path-)connected if for any pair of points (x, y) ∈ C there exists a continuous path γ : [0, 1] → C such that γ(0) = x and γ(1) = y. Prove that a simplicial complex C is connected if and only if its 1-skeleton is connected.

Exercise 2.2

Give examples of simplicial complexes in R 3 that are homeomorphic to a ball, a sphere, and a torus.

Exercise 2.3 Prove that any abstract simplicial complex K of dimension d can be realized as a geometric simplicial complex in R 2d+1 . (Hint : map the vertices of K to points on the moment curve C = {(x, x 2 , ..., x 2d+1 ) ∈ R 2d+1 , x ∈ R}. Show that any subset of 2d + 2 points on C are affinely independent and that the image of K is a realization of K in R 2d+1 . See also Exercise 3.12.) Exercise 2.1 (Simplex Tree) Let K be a d-simplicial complex whose vertices are labelled 1, ..., n. Each simplex is represented by a word which is the sorted list of its labels. We then store all simplices of K as a prefix tree called the simplex tree of K. The simplex tree is characterized by the following properties:

1. The nodes of the simplex tree are in bijection with the simplices (of all dimensions) of the complex. The root is associated to the empty face.

2. Each node of the tree, except the root, stores the label of a vertex. Specifically, a node associated to a simplex σ stores the last label of σ.

3. The vertices whose labels are encountered along a path from the root to a node associated to a simplex σ are the vertices of σ. Along such a path, the labels are sorted by increasing order and each label appears no more than once.

Show that the simplex tree of K is a spanning tree of the Hasse diagram of K. Let σ be a i-simplex. Show that we can be decide whether σ is in K or insert σ in K (assuming all its subfaces are in K) in time O(i log n). Show also how to locate the faces and the cofaces of σ in the simplex tree and how to remove σ from K.

Exercise 2.2 Show how to compute the Vietoris-Rips filtration of a set of points P in some metric space using the simplex tree.

Bibliographical notes

Our presentation of simplicial complexes follows the one in Munkres [START_REF] Munkres | Elementary differential topology[END_REF]. The nerve theorem and its variants are classical results in algebraic topology. A proof is given in Hatcher [START_REF] Hatcher | Algebraic Topology[END_REF]Section 4G].

The computation of the Čech filtration of a finite set of points relies on the computation of minimum enclosing balls. Welzl has proposed an elegant randomized algorithm of linear complexity to compute the minimal ball enclosing a set of n points. The algorithm can be adapted to compute the minimal enclosing ellipsoid [START_REF] Welzl | Smallest enclosing disks (balls and ellipsoids)[END_REF]. The Vietoris-Rips filtration can be obtained by computing the cliques in the 1-skeleton of the Vietoris-Rips complex. This is an NP-complete problem but efficient solutions exist for sparse graphs [START_REF] Eppstein | Listing all maximal cliques in sparse graphs in near-optimal time[END_REF]. The Vietoris-Rips filtration can be constructed and stored using a simplex tree, a data structure proposed by Boissonnat and Maria [START_REF] Boissonnat | The Simplex Tree: An Efficient Data Structure for General Simplicial Complexes[END_REF].

CHAPTER 2. SIMPLICIAL COMPLEXES

The simplex tree is implemented in the gudhi library [START_REF] Maria | The Gudhi Library: Simplicial Complexes and Persistent Homology[END_REF]. More compact data structures can be found in [START_REF] Attali | Efficient data structure for representing and simplifying simplicial complexes in high dimensions[END_REF][START_REF] Boissonnat | Building Efficient and Compact Data Structures for Simplicial Complexes[END_REF].

The problem of deciding if two abstract complexes are homeomorphic is undecidable Markov 1958. Deciding if a d-simplicial complex is a homeomorphic to a d-sphere is undecidable for d ≥ 5 Convex polytopes and convex polyhedra are fundamental structures that play an essential role in computational geometry, linear programming, optimisation and many other fields. In this book, they also play a central role because of their close relationship with Voronoi diagrams and Delaunay complexes, introduced in Chapter 4 and used throughout the book. This chapter presents here the combinatorial and algorithmic aspects of convex polyhedra to be used in the following chapters. For a more complete treatment of the rich theory of convex polytopes, the reader is referred to classical textbooks (see the bibliographic notes).

Definitions

Convex polytopes

Definition 3.1 A convex polytope in R d is the convex hull of a finite set of points. In this book, we only consider convex polytopes and the word polytope is used as a synonym for convex polytope.

Hence, a convex polytope is a closed bounded subset of R d . The dimension of a convex polytope is the dimension of the affine subspace spanned by the polytope. Simplices (see Section 2) are particular cases of polytopes.

Facial structure of polytopes

A hyperplane h of R d is a subset of R d defined by a linear equation :

h = {x ∈ R d : h(x) = a • x + b = 0}, where a ∈ R d , b ∈ R. A hyperplane h divides R d in two half-spaces: h + = {x ∈ R d : h(x) = a • x + b ≥ 0} h -= {x ∈ R d : h(x) = a • x + b ≤ 0}
Note the half-spaces h + and h -are defined as closed subsets, so that h, h + and h -do not form a partition of R d but h, h + \ h and h -\ h do. Definition 3.2 A hyperplane h of R d is a supporting hyperplane of the polytope P iff the intersection P ∩ h is non empty and P is included in one of the two half-spaces defined by h.

The intersection of P with a supporting hyperplane h is called a face of P. Lemma 3.3 A face of a polytope is a polytope.

Proof Let P = {p 1 , . . . , p n } be a finite set of points in R d and let P = conv(P ) be the polytope which is the convex hull of P . Any face f of P is the intersection of P with a supporting hyperplane h. We prove that the face f = P ∩ h is the convex hull conv(P ∩ h) of the subset of points of P included in h. The inclusion conv(P ∩ h) ⊂ f comes from the convexity of f . Indeed, f is convex since it is the intersection of two convex sets. Furthermore f contains P ∩ h, so it contains the convex hull conv(P ∩ h).

To prove the reverse inclusion, we assume without loss of generality that P ⊂ h + . Then we have h(p i ) ≥ 0 for any p i ∈ P . Any point p included in P is a convex combination p = n i=1 λ i p i of points in P . If furthermore p belongs to f , h(p i ) = n i=1 λ i h(p i ) vanishes and this can happen only if λ i = 0 for all points p i that are not in h. Thus, if p belongs f , it belongs to conv(P ∩ h).

The proof of the previous lemma, shows that the faces of the polytope P are the convex hulls of subsets of P . A polytope has therefore a finite number of faces. The boundary of the polytope P is the union of its faces. The faces of dimension 0 are called vertices. The faces of dimension 1 are called edges. If P has dimension d, the faces of dimension d -1 and d -2 are called respectively facets and ridges.

The vertices of the polytope P = conv(P ) are points of P . The following lemma, whose proof is left as an exercise (Exercise 3.1) is a well known result of the theory of polytopes. Lemma 3.4 Any polytope is the convex hull of its vertices.

The facial structure of a simplex can be easily described. Indeed, if σ is a simplex that is the convex hull of the set S = {p 1 , . . . , p k } of k + 1 independent points, any subset of S is a set of independent points whose convex hull is a simplex and, except in the case of S itself, this simplex is a face of σ.

Therefore a k-simplex has k + 1-vertices, and k + 1 j + 1 faces of dimension j, for j = 0 to k -1.

Another fundamental result of the theory of polytopes is the following lemma whose proof is also left as an exercise (see Exercises 3.4 and 3.5 ).

CHAPTER 3. CONVEX POLYTOPES

Lemma 3.5 Any polytope is the intersection of a finite number of halfspaces. Reciprocally, any intersection of a finite number of half-spaces that is bounded, is a polytope.

Therefore any polytope can be described either as the convex hull of a finite set of points or as the intersection of a finite number of half-spaces. More precisely, the proof of Lemma 3.5 shows that the minimal set of half-spaces whose intersection is identical to the polytope P is the set of half-spaces bounded by the hyperplanes supporting P along its facets and containing P.

Convex polyhedra

In the sequel, we extend the notion of polytopes to describe unbounded intersections of half-spaces as well as polytopes.

Definition 3.6 A convex polyhedron is the intersection of a finite number of half-spaces.

A convex polyhedron may be bounded or not. From Lemma 3.5, a convex polytope is just a special case of convex polyhedron. The notion of supporting hyperplanes and faces introduced above for convex polytopes extend naturally to convex polyhedra. The faces of a convex polyhedron are themselves convex polyhedra and may be unbounded if the convex polyhedron is unbounded.

Simplicial polytopes and simple convex polyhedra

A point set P in R d is said to be in general position when any subset of P with size at most d + 1 is a set of affinely independent points. When the points of P are in general position, any hyperplane h includes at most d points of P and the points in P ∩ h are affinely independent. Therefore all the faces of the polytope P = conv(P ) are simplices and the polytope P is called a simplicial polytope.

A set of n hyperplanes in R d is said to be in general position if the intersection of any subset of k of them is an affine subspace of dimension dk. A convex polyhedron defined as the intersection of n half-spaces bounded by hyperplanes in general position is called simple.

The boundary complex

Let P be a convex polyhedron. Any face of a face of P is a face of P and the intersection of two faces of P is either empty or a common face of both faces.

Therefore, if P is simplicial polytope, its faces form a geometric simplicial complex (see Chapter 2). This complex is called the boundary complex of P.

It can be shown (see Exercise 3.9) that the boundary complex of a simplicial polytope is a combinatorial manifold (see Definition 2.17).

If P is not a simplicial polytope, its faces may not be simplices. Still, they are convex polyhedra and they form a cell complex as defined now.

Definition 3.7 (Cell complex) A cell complex is a set C of convex polyhedra, called the faces of C, that satisfies the two following properties -Any face of a face of C is a face of C.

-The intersection of any two faces of C is either empty or a common face of both faces.

The cell complex formed by the faces of a convex polyhedron P is still called the boundary complex of P. We adapt to cell complexes and therefore to convex polyhedra the notions of incidency and adjacency defined in Section 2.7:

• Two faces of a convex polyhedron are said to be incident if one is included in the other.

• Two facets of a convex polyhedron are said to be adjacent if they share a (d -2)-subface.

CHAPTER 3. CONVEX POLYTOPES

Duality

Point-hyperplane duality

We introduce a duality between points and hyperplanes that makes use of the unit paraboloid of R d and gives a special role to the last coordinate axis, called the vertical axis. We denote by x(i), i = 1, . . . , d, the coordinates of a point x ∈ R d .

The unit paraboloid Q is defined as :

Q = x ∈ R d : x(d) = d-1 i=1 x(i) 2 .
In the rest of this section, we write for short for d-1 i=1 .

Let p be a point of the paraboloid Q. The duality associates to point p the hyperplane p * tangent to Q at p:

p * = {x ∈ R d : x(d) = 2 p(i)(x(i) -p(i)) + p(d) = {x ∈ R d : x(d) -2 p(i)x(i) + p(d) = 0}.
More generally, duality associates to any point p of R d the non vertical hyperplane p * defined by:

p * = {x ∈ R d : x(d) -2 p(i)x(i) + p(d) = 0}.
Conversely, let h be a non vertical hyperplane of R d . The equation of h can be written in normal form:

h = {x ∈ R d : x(d) + h(i)x(i) + h(d) = 0},
and duality associates to h the point h * with coordinates

-h(1) 2 , . . . , -h(d -1) 2 , h(d) .
Since p * * = p, duality is an involutive bijection between points of R d and non vertical hyperplanes of R d . Duality preserves incidences of points and 3.2. DUALITY 51 hyperplanes: if p and q are two points in R d with dual hyperplanes p * and q * respectively, we have

q ∈ p * ⇐⇒ q(d) -2 p(d)q(d) + p(d) = 0 ⇐⇒ p ∈ q * .
Let h be a non vertical hyperplane whose equation in normal form is h(x) = 0. We say that point p is above h or that h is below p if h(p) > 0. We say that point p is below h or that h is above p if h(p) < 0. For a non vertical hyperplane h, we call upper half-space and denote by h + the halfspace bounded by h that is above h. We call lower half-space and denote by h -the half-space below h:

h + = {x ∈ R d : h(x) > 0} h -= {x ∈ R d : h(x) < 0}.
Duality reverses the above-below relations between points and hyperplanes : if p and q are two points in R d with dual hyperplanes p * and q * respectively, we have:

q ∈ p * + ⇐⇒ q(d) -2 p(d)q(d) + p(d) > 0 ⇐⇒ p ∈ q * + q ∈ p * -⇐⇒ q(d) -2 p(d)q(d) + p(d) < 0 ⇐⇒ p ∈ q * -.

Lower hulls and upper envelope

Let P = {p 1 , . . . , p n } be a set of n points in R d . The lower hull of P , denoted by lowerhull(P ), is a subcomplex of the boundary complex of the polytope P = conv(P ). Let H(P ) be the set of hyperplanes supporting the polytope P. We distinguish the subset H + (P ) of lower supporting hyperplanes where a hyperplane h of H(P ) is a lower supporting hyperplane if h is a non vertical hyperplane and P is included in the upper half-space h + . The lower hull of P is then defined as the subcomplex of the convex hull boundary, formed by faces of P included in lower supporting hyperplanes:

lowerhull(P ) = {P ∩ h : h ∈ H + (P )} CHAPTER 3. CONVEX POLYTOPES
Consider now a set H = {h 1 , . . . , h n } of non vertical hyperplanes in R d , and let H + be the convex polyhedron which is the intersection of the upper half-spaces bounded by the hyperplanes of H:

H + = h + 1 ∩ h + 2 . . . ∩ h + n .
The boundary complex of the convex polyhedron H + is called the upper envelope of the set of hyperplanes H.

Two complexes K and K * (simplicial or cellular complexes) of dimension d are said to be dual complexes if there is a bijective correspondence between the faces of K and the faces of K * such that

• the k-faces of K correspond to the (d -k)-faces of K *
• the correspondence preserves incidences and reverses inclusion relations, meaning that if if f ⊂ g are incident faces of K, the corresponding faces f * and g * of K * are incident and such that g * ⊂ f * .

Observe that the lower envelope of a set of points in R d , and the upper envelope of a set of hyperplanes are both (d -1)-complexes. The duality between points and hyperplanes of R d introduced in Section 3.2.1 yields a duality between the lower hull of a set of points and the upper envelope of the set of dual hyperplanes.

Lemma 3.8 (Lower hull -upper enveloppe duality) Let P be a set of points in R d and let P * be the set of dual hyperplanes. The lower hull of P and the upper envelope of P * are dual (d -1)-complexes.

Proof We assume here for simplicity that the points of P are in general position and leave the proof for the general case as an exercise (Exercise 3.10).

Let P = conv(P ) be the convex hull of P and by P * + be the convex polyhedron which is the intersection of the upper half-spaces bounded by the dual hyperplanes:

P * + = p * + 1 ∩ p * + 2 . . . ∩ p * + n .
Let f be a k-face of lowerhull(P ). Face f is a k-face of the polytope P and, since general position is assumed, f includes (k + 1)-vertices of P which are points of P . Let us assume, without loss of generality, that {p 1 , . . . , p k+1 } are included in f . We consider a lower supporting hyperplane h that intersects

COMBINATORIAL BOUNDS

53

P along f . Hyperplane h includes {p 1 , . . . , p k+1 } and, since it is a lower supporting hyperplane, the other points of P are included in the upper halfspace h + . Let h * be the point dual to h. Then, from the properties of the point hyperplane duality introduced above, we get: is the dual of a hyperplane h which supports P along the face f = conv({p 1 , . . . , p k+1 }). Moreover, h is a lower supporting hyperplane. Therefore, duality maps back f * to f and the correspondence is bijective.

p i ∈ h + ⇐⇒ h * ∈ p * + i , ∀i = 1, . . . , n (3.1)
p i ∈ h ⇐⇒ h * ∈ p * i , ∀i = 1, . . . , k + 1 (3.2) p i ∈ h ⇐⇒ h * ∈ p * i , ∀i = k + 2, . . . , n (3.3

Combinatorial bounds

The following theorem bounds the total number of faces of a convex polyhedron in R d which is known to have either n facets or n vertices. The theorem is known as the upper bound theorem, though the bound is tight in the worst case. Theorem 3.9 (Upper Bound Theorem) The total number of faces of a convex polyhedron in R d , defined as the intersection of n half-spaces or as the convex hull of n points, is Θ n

d 2 .
Proof We prove here the upper bound. The lower bound is the topic of Exercise 3.12.

CHAPTER 3. CONVEX POLYTOPES

Let P be a convex polyhedron defined as the intersection of n half-spaces of R d . To prove the upper bound on the number of faces of P, we may assume that the hyperplanes bounding the half-spaces defining P are in general position. Indeed, otherwise, we can slightly perturb those hyperplanes to bring then in general position. During this process, the number of faces of P can only increase, see Exercise 3.11. Hence, any upper bound that is valid for hyperplanes in general position holds for any set of hyperplanes. We also assume that the polyhedron has at least one vertex. Indeed, otherwise the number of bounding hyperplanes is at most d -1 and the total number of faces is at most 2 d-1 . In addition, we may assume, without loss of generality, that two vertices of P do not have the same x d coordinate.

We first bound the number of vertices of P and then extend this bound to faces of any dimension. Let p be one of the vertices of P. Because general position is assumed, p, as any other vertex of P, is included in exactly d of the bounding hyperplanes. Therefore p is incident to exactly d facets and d edges of P. Thus at least d 2 edges incident to p are included in either in the half-space h + : x d ≥ x d (p) or in the half-space h -: x d ≤ x d (p). Since the bounding hyperplanes are in general position, P is simple and the affine hull of any subset of k < d edges incident to a vertex of P contains a k-face of P (Exercice 3.7). Therefore, each vertex p of P is a vertex with extremal x d -coordinate for at least one face of dimension d 2 . Since any face has at most one vertex of maximal x d coordinate and one vertex of minimal x d -coordinate, the number of vertices of P is at most twice the number of From the general position assumption, a k-face of P is the intersection of dk of the bounding hyperplanes (see Exercise 3.6). We deduce that the number of k-faces is at most

n d -k = O(n d-k ), which is O(n d 2 ) for k = d 2 .
From the above discussion, we conclude that the number of vertices of P is O(n The duality introduced in Section 3.2 immediately implies that the same upper bound holds for the lower hull of a set of n points and finally (by 3.4. CONVEX HULL ALGORITHMS 55 symmetry) to the number of faces of a polytope defined as the convex hull of n points.

Convex hull algorithms

We present here two algorithms to build the convex hull of a set of points P . Both algorithms are incremental, meaning that they insert the points of P one by one, while maintaining the convex hull of the currently subset of inserted points. Convex hulls are represented by the Hasse diagram of their boundary complexes (see Section 2.7). Incremental algorithms make also use of the adjacency graph of convex hull facets which, as noticed in Section 2.7), is encoded in the Hasse diagram. Both algorithms also work while maintaining only the adjacency graph of the facets of the convex hull. To make the description of the algorithms simple and to focus on the main ideas, we assume here that the input set of points P is in general position. However this is not a limitation of the presented convex hull algorithms.

An incremental algorithm

Assuming that points in P are added in the order p 1 , p 2 , . . . , p n , we denote by P i the subset of the first i-points. Before presenting the whole algorithm and its analysis, we explain how the convex hull is updated when inserting point p i+1 .

From conv(P i ) to conv(P i+1 ) When point p i+1 is considered, the faces of conv(P i ) may be classified in the following way (see Figure 3.1):

• A facet f of conv(P i ) is red if the hyperplane h f supporting conv(P i ) along f separates p i+1 from conv(P i ) meaning that p i belongs to the open half-space h + f that does not intersect conv(P i ). Otherwise, as general position is assumed, p i is included in the half-space h - f whose closure contains conv(P i ), and the facet f is said to be blue. • A k-face with k < d is said to be red if all its incident facets are red, blue if all its incident facets are blue, and purple if it is incident to both red and blue facets.

The incremental algorithm and its analysis relies on the three following facts, all related to the transformation of conv(P i ) into conv(P i+1 ) when adding point p i+1 .

1. The set of red facets induces a connected subgraph of the adjacency graph of conv(P i ).

2. The set of faces of conv(P i+1 ) includes the blue and purple faces of conv(P i ) together with additional new faces which are all incident to p i+1 . Each new face is formed by the convex hull conv(g ∪ p i+1 ) where g is a purple face of conv(P i ). See Figure 3.1.

3. The set of purple faces of conv(P i ) with their incidence relation is isomorphic to the set of new faces of conv(P i+1 ). Both sets are isomorphic to the set of faces of a (d -1)-polytope with at most i vertices. Fact 1 and Fact 2 are illustrated on Figure 3.1. Fact 3 is illustrated on Figure 3.2 showing that the purple faces of conv(P i ) and the set of faces of conv(P i+1 ) incident to p i+1 are both isomorphic to the set of faces of a (d-1)polytope obtained as the intersection of conv(P i+1 ) with any hyperplane h that separates conv(P i ) from p i+1 .

In summary, updating conv(P i ) to conv(P i+1 ) requires to identify the red and purple faces of conv(P i ). The Hasse diagram of conv(P i+1 ) is then obtained form the Hasse diagram of conv(P i ) by removing red faces of conv(P i ) and creating a new face conv(g ∪ p i+1 ) for each purple face g of conv(P i ).

Incidence relations among new faces are deduced from incidence relations among purple faces in conv(P i ).

The algorithm

The incremental convex hull algorithm is summarized in the pseudo-code of Algorithm 1.

The incremental algorithm sorts the points in P by lexicographic order of their coordinates and insert them in that order. Let p 1 , p 2 , . . . p n be the sorted sequence of points in P and let P i be the subset of first i points.

The lexicographic ordering ensures that when point p i+1 is inserted, at least one of the facet of conv(P i ) incident to p i is red. ). Output: The Hasse diagram of the convex hull of P separated from conv(P i ) by a hyperplane h through p i . Let h + be the half-space bounded by h that does not contain conv(P i ). Let, in addition, H denote the set of hyperplanes which are the affine hulls of the facets of conv(P i ) incident to p i . Write H + for the union of the half-spaces not containing conv(P i ) that are bounded by the hyperplanes in H. Since h + is included in H + , p i+1 is separated from conv(P i ) by at least one of the hyperplanes of H. Thus to find a first red facet, the algorithm walks in the adjacency graph of the facets of conv(P i ), visiting only facets of conv(P i ) that are incident to p i , until a red facet is encountered.

Then to find all red and purple faces, the algorithm traverses the adjacency graph visiting all red facets of conv(P i ) and, from each read facet, it traverses the Hasse diagram to identify all red and purple faces of conv(P i ). The Hasse diagram is then updated as explained in the previous paragraph.

Complexity Analysis

Theorem 3.10 The incremental convex hull algorithm computes the convex

hull of n points in R d in Θ n log n + n d+1 2 time.
Proof First notice that the only numerical predicates involved in Algorithm 1 are the orientation predicates called to decide if a facet of conv(P i ) is red or blue when inserting point p i+1 . The orientation predicate amounts to evaluate the sign of a (d + 1) × (d + 1) determinant (see Exercise 3.16).

To find the first red facet, the algorithm visits only facets of conv(P i ) incident to the last inserted point p i . Therefore each facet will be visited only once for this purpose during the whole algorithm.

Identifying red and purple faces is also clearly proportionnal to the number of these faces. As a red face disappears from the convex hull, each face is visited only once as a red face, and the cost of visiting a purple face g can be charged on the new face conv(g ∪ p i+1 ).

Updating the Hasse diagram has a complexity proportional to the number of new and removed faces which are respectively the number of purple and red faces of conv(P i ).

In summary, the cost of step i+1 where point p i+1 is inserted is proportional to the number of new and removed faces. Since a face is created only once and removed at most once, the total cost of the incremental algorithm, except for the initial sorting of the points, is proportionnal to the total number of created faces.

From Fact 3 above and the upper bound theorem (Theorem 3.9), the number of faces created when inserting

p i+1 is O i d-1 2
and the total cost of updating the Hasse diagram is:

n-1 i=d+1 O i d-1 2 = O n d+1 2
.

Taking into account the initial sorting of the points according to the lexicographic order, the complexity of the incremental algorithm is: . The incremental algorithm is therefore worst-case optimal in even dimensions. However, it is not optimal in odd dimensions.

O n log n + n d+1 2 = O(n log n) if d = 2 = O n d+1 2 if d >

A randomized algorithm

The algorithm

The randomized incremental algorithm is quite similar to the above incremental algorithm : points are inserted one by one in the convex hull. At each insertion the set of red and purple faces of the current hull are identified and the convex hull is updated accordingly. The main difference with respect to the incremental algorithm of Section 3.4.1 is that the points are no longer introduced in lexicographic order but in random order. We will show that the expected complexity of the random algorithm matches the lower complexity bound for convex hull computation. Expectation here concerns only the random insertion order and assumes that, for an input set of n points, all the n! possible insertion sequences occur with the same probability.

In the following, points in P are assumed to be indexed according to their insertion order. We denote by P i = {p 1 , . . . , p i } the subset formed by the i first inserted points. As in the deterministic algorithm presented before, the randomized algorithm has to find a first red facet. However, we cannot rely now on the lexicographic order of the input points and restrict our attention to the faces incident to the lastly inserted point. To walk around this issue, we will use an additional data structure called the conflict graph.

A facet f of the current convex hull conv(P i ) is said to be in conflict with the not yet inserted point p j with j > i iff the hyperplane h f supporting conv(P i ) along f separates p j from conv(P i ). The conflict graph maintained by the algorithm is a bipartite graph including for each not yet inserted point p j an edge between this point and a facet of the current hull in conflict with p j . Note that when a new point p i+1 is inserted, the current hull is conv(P i ) and the facets of conv(P i ) in conflict with p i+1 are precisely the red facets of conv(P i ). Therefore, when inserting point p i+1 , the conflict edge incident to p i+1 gives in constant time access to a red facet of conv(P i ). Then the algorithm finds all the red and purple faces of conv(P i ) and updates the Hasse diagram of the convex hull exactly as in the deterministic algorithm. The only difference is that now, after each insertion, the algorithm needs, in addition, to update the conflict graph. Before explaining how this is done, we summarize the randomized algorithm as Algorithm 2.

Updating the conflict graph

The algorithm needs to restore conflict edges between the facets of conv(P i+1 ) and the points of P \P i+1 . Nothing needs to be done for the points of P \P i+1 that were previously in conflict with a blue facet of conv(P i ) since such a facet is still a facet of conv(P i+1 ). Let p j be a point of P \ P i+1 that was previously in conflict with a red facet f j of conv(P i ). We need to find a facet of conv(P i+1 ) in conflict with p j . Let R denote the set of red facets of conv(P i ) and let R j denote the set of facets of conv(P i ) in conflict with p j . As noted previously, the set R induces a connected subgraph of the adjacency graph of conv(P i ). The same is true for R j and for the subset F j = R ∩ R j of red facets in conflict with p j . Note that the boundary of F j includes red ridges which are on the boundary of R j but not on the boundary of R and purple ridges which are on the boundary of R. See Figure 3.3 for an illustration in R 2 .

To find a facet of conv(P i+1 ) in conflict with p j , the algorithm starts at f j , the facet that was in conflict with p j before the insertion of p i+1 , and walk CHAPTER 3. CONVEX POLYTOPES on the adjacency graph of conv(P i ), visiting the facets of F j . At each purple ridge h encountered on the boundary of F j , the algorithm checks if one of the two following cases occurs:

Case 1 : the blue facet g of conv(P i ) incident on h is in conflict with p i+1 , Case 2 : the new facet f = conv(h, p i+1 ) of conv(P i+1 ), is in conflict with p i+1 .

In both cases, a facet of conv(P i+1 ) in conflict with p i+1 has been found and the walk stops. If the walk traverses all facets of F j without encountering one of the above two cases, p j lies inside conv(P i+1 ) and can be discarded. See Figure 3.3.

Analysis of the randomized algorithm

We insist that the randomized algorithm presented here always computes the actual convex hull of the set of input points. The random choices performed by the algorithm concern only the order in which the points are inserted and the performances of the algorithm. The analysis below will bound the expected complexity of the algorithm assuming that all insertion sequences occur with the same probability. .

Before we give the proof of the theorem, we recall an important result of Clarkson and Shor [START_REF] Clarkson | Applications of random sampling in computational geometry[END_REF], known as the random sampling theorem.

The random sampling theorem. We call configuration a subset of d independent points in R d . A configuration σ is said to be defined on a set of points P if the points in σ belong to P . Let us choose as the origin a point o in conv(P ). A configuration is said to be in conflict with a point p if the hyperplane which is the affine hull of σ separates o from p. A configuration is said to have j conflicts on P if it is in conflict with j points of P . We denote by C(P ) the set of configurations defined on P and by C j (P ) (resp. C ≤k (P )), the set of configurations defined on P and with j conflicts (resp. at most k conflicts) on P . The up left picture show the set of red facets when inserting p i+1 , the three other pictures show, in three different cases, the set of facets of conv(P i ) in conflict with p i+1 and p j . In upper right picture, p j is internal to conv(P i+1 ), in lower left picture, case 1 and case 2 both occur, in lower right picture only case 2 occurs.

CHAPTER 3. CONVEX POLYTOPES

In the following, we consider random samples S of P and we denote by Γ 0 (s, P ) the expected number of configurations defined on S and without conflict on S, where S is a random sample of size s of P .

Theorem 3.12 (The random sampling theorem) Let P be a set of n points. The number |C ≤k (P )| of configurations defined on P and with at most k-conflicts on P is bounded as follows :

|C ≤k (P )| ≤ 4(d + 1) d k d Γ 0 n k , P . (3.4)
In our context, a configuration that is defined on P and without conflict on P , is just the vertex set of a facet of conv(P ) so that there is a bijection between C 0 (P ) and the facets of conv(P ). We then deduce from the upper bound theorem (Theorem 3.9) that the number of configurations defined and without conflict on a sample of size

s of P is at most O s d 2
. Therefore:

Γ 0 (s, P ) = O s d 2 . ( 3.5)
Plugging Equation 3.5 into Equation 3.4, we get that for any set P of n points the number of configurations defined and with at most k conflicts over P is at most :

|C ≤k (P )| = O k d 2 n d 2 . (3.6)
Proof of Theorem 3.11. We can now analyze the cost of updating the Hasse diagram of the convex hull and the cost of maintaining the conflict graph.

Cost of updating the Hasse diagram. As in the case of the incremental algorithm, the cost of updating the Hasse diagram is proportional to the total number of convex hull facets that are created by the algorithm.

Let us bound the expected number n(i+1) of facets that are created at Step i + 1 when point p i+1 is inserted. Since the algorithm inserts the points of P in random order, P i+1 is a random subset of P of size i + 1. Notice that a facet created at step i + 1 corresponds to a configuration of C 0 (P i+1 ). Given P i+1 , a configuration σ of C 0 (P i+1 ) corresponds to a facet created at step i + 1 iff one of the points in this configuration is the point P i+1 inserted at step i, which happens with probability d i+1 . Thus, we have

n(i + 1) = σ∈C(P ) proba (σ ∈ C 0 (P i+1 )) × d i + 1 = d i + 1 Γ 0 (i + 1, P ) = O (i + 1) d 2 -1 .
By summing over all steps i and using linearity of expectation, we bound the expected total number of facets created by the algorithm and therefore the expected cost of updating the Hasse diagram by :

n i n(i) = O(n d 2 ). (3.7)
Cost of updating the conflict graph. We now bound the cost of updating the conflict graph. As explained above, when inserting p i+1 at step i + 1, the algorithm has to restore a conflict edge for each point p j with j > i + 1. This is done by traversing the incidence graph of conv(P i ), visiting the facets in conflict with both p i+1 and p j . The cost of this procedure is proportional to the number of visited facets which we analyse now.

For any p j ∈ P \ P i+1 , the subset S = P i+1 ∪ {p j } is a random sample of P of size i + 2. The facets visited to restore the conflict for p j at step i + 1 correspond to configurations in C 2 (S). Assume that a subset S of P of size i + 2 is given and that S = P i+1 ∪ {p j }. Then, any configuration σ in C 2 (S) is a facet of conv(P i ) in conflict with p i+1 and p j iff p i+1 and p j are the two elements of S in conflict with σ, which happens with probability 2 (i+1)(i+2) . Given S, the expected number n(i + 1, j, S) of facets visited to restore the conflict for p j at step i + 1 is

n(i + 1, j, S) = σ∈C(P ) proba (σ ∈ C 2 (S)) × 2 (i + 1)(i + 2) ≤ 2 (i + 1)(i + 2) |C ≤2 (S)| .
Then, using Equation 3.6,

n(i + 1, j, S) ≤ O (i + 1) d 2 -2 .
Since this is true for any subset S of P of size i + 2, we get that the expected number n(i + 1, j) of facets visited to restore a conflict edge for p j at step

i + 1 is also O (i + 1) d 2 -2 .
Then, the expected total cost for updating the conflict graph is

n i=1 n j=i+1 n(i, j) = n i=1 (n -i)O i d 2 -2 = O n log n + n d 2 .
(3.8)

At each insertion, finding a first red facet takes constant time using the conflict graph. Finding all the red and purple faces then takes a time proportional to the number of red and purple faces and the total cost of this operation is thus also given by Equation 3.7. In summary, the expected combinatorial complexity of the randomized incremental construction of the convex hull is given by Equations 3.7 and 3.8, which achieves the proof of Theorem 3.11.

The randomized version of the incremental construction of a convex hull has therefore an expected complexity which is better than the complexity of the deterministic incremental construction. Since this expected complexity matches the complexity of the convex hull, the randomized incremental construction of a convex hull is optimal.

Exercises

Exercise 3.1 Show that a convex polytope P is the convex hull ot its vertices.

Hint: one of the inclusion is trivial. To prove the other one, consider the minimal subset P ⊆ P such that P = conv(P ) = conv(P ) and prove that each point in P is a vertex of P.

Exercise 3.2 Show that the intersection of any finite set of faces of a polytope is also a face of the polytope.

Exercise 3.3 Show that any face of a convex polytope P is the intersection of facets of P.

Show that a (d -2)-face of a polytope P is the intersection of two facets of P.

Exercise 3.4 Let P be a convex polytope and let H be the set of hyperplanes that support P along its facets. To each hyperplane h ∈ H, we associate the half-space h + bounded by h that contains P. Show that P = ∩ h∈H h + .

Exercise 3.5 (Polytopes and intersection of half-spaces) Show that, if it is bounded, the intersection of a finite set of half-spaces is a polytope.

Exercise 3.6 (Faces of a convex polyhedron) Let H be a set of n hyperplanes h 1 , ..., h n and P be the polyhedron defined as the intersection of the n half-spaces h + 1 , ..., h + n where h + i is the half-space bounded by h i that contains a given point o. Let I be any subset of the indices 1, ..., n and F l = ∩ i∈I h i . Show that, if it is non empty, the intersection and P ∩ F l is a face of P and that all the faces of P can be obtained this way, i.e. as the intersection with P of the hyperplanes of a subset of H. Show, in addition, that, if H is in general position,

P ∩ F l is a face of dimension d -k if |I| = k.
Exercise 3.7 (Faces of a simple convex polyhedron) Prove that if P is a simple convex polyhedron and p is a vertex of P, the affine hull of any subset of k < d edges incident to p contains a face of P of dimension dk. Hint: use Exercise 3.2 and duality.

Exercise 3.8 (General position and duality) Show that n hyperplanes are in general position iff their dual points are in general position. Exercise 3.9 Show that the boundary complex of a polytope is a combinatorial manifold.

Hint: Let p be a vertex of the d-polytope P. We show that the link of p in the boundary complex of P is a (d -2)-topological sphere. Indeed, any hyperplane h that separates p from the other vertices of P (see Figure 3.2) intersects P along a polytope of dimension (d -1) whose boundary complex is isomorphic to the link of p in the boundary complex of P. Exercise 3.10 Prove Lemma 3.8 in the general case.

Hint : Proves that if k points in R d span an affine hull of dimension k < k , their dual hyperplanes intersect along a (kd)-dimensional affine space. Exercise 3.11 Let P be a convex polyhedron. Prove that perturbing the hyperplanes bounding the half-spaces that define P can only increase the number of faces of P. Exercise 3.12 (Cyclic polytopes) A cyclic polytope is a polytope in R d that is the convex hull of points lying on the moment curve M d defined by the parametric representation ) time in the worst-case.

M d = {x(t,
Hint : take the points on the moment curve M d (see Exercise 3.12) and insert them by increasing values of their first coordinate.

Exercise 3.15 (Lower bound for convex hull computation ) Show that sorting n number reduces in linear time to the computation of the convex hull of n points in R 2 .

Hint: Take n real numbers x 1 , . . . , x n . We associate to each x i the point p i = (x i , x 2 i ) on the unit parabola. If we know the convex hull of the p i , we can deduce in linear time the list of the x i sorted by increasing values. Exercise 3.16 (Orientation predicate) Show that the numerical operation required to decide if a facet f = {p i 1 , ..., p i d } of conv(P i ) is red or blue when inserting point p i+1 amounts to evaluate the sign of a (d + 1)

× (d + 1)- determinant 1 • • • 1 1 p i 1 • • • p i d p i+1 .
Exercise 3.17 (Vertical projection of a lower hull) Let P be a set of point in general position in R d . We call vertical projection the projection Π onto the hyperplane of equation x(d) = 0. Show that the restriction of the vertical projection to the lower hull of P is 1 to 1. Show that the vertical projection naturally embeds the lower hull of P as a triangulation of Π(P ), where P is the vertex set of the lower hull of P .

Exercise 3.18 (Minkowski formula) Show that if P is a convex polytope and f j , j ∈ J, are its facets, we have j∈J vol(f j ) n j = 0, where n j is the unit normal vector to f j oriented towards the outside of P).

Hint : let x ∈ P. Compute the volume of P by summing the volumes of the pyramids (x, f j ). The results follows by observing that the volume of P does not depend on x.

Bibliographical notes

A modern introduction to the theory of polytopes can be found in Ziegler's book [START_REF] Ziegler | Lectures on Polytopes[END_REF]. The original proof of the upper bound theorem has been established by McMullen in 1970. The simple asymptotic version given in Theorem 3.9 is due to Seidel [START_REF] Seidel | The upper bound theorem for polytopes: an easy proof of its asymptotic version[END_REF].

The incremental convex hull algorithm is due to SeidelA complete description of this algorithm handling degenerated cases is given in Edelsbrunner's book [START_REF] Edelsbrunner | Algorithms in Combinatorial Geometry[END_REF]. The random sampling theorem is due to Clarkson and Shor [START_REF] Clarkson | Applications of random sampling in computational geometry[END_REF].

The same paper proposes the first randomized algorithm to build convex hulls. This algorithm solves in fact the dual problem of computing the intersection of half-spaces. Chazelle [START_REF] Chazelle | An optimal convex hull algorithm in any fixed dimension[END_REF] has proposed a deterministic algorithm to compute the convex hull of a finite point set that is worst case optimal in any dimension. Obtained through derandomisation of the randomized algorithm this algorithm is however mostly of theoretical interest and no implementation is known.

Chapter 4

Delaunay complexes

CHAPTER 4. DELAUNAY COMPLEXES

Delaunay complexes are fundamental data structures that have been extensively studied in computational geometry and used in many application areas.

The Delaunay complex of a finite set of points P ∈ R d is defined as the nerve of the Voronoi diagram of P which we define first. We prove Delaunay's theorem that states that, when the points of P are in general position, the Delaunay complex of P has a natural embedding in R d called the Delaunay triangulation of P .

The proof relies on the so-called lifting map that associates to each point of R d a point in R d+1 . We show that the Delaunay complex of P is the projection onto R d of the lower hull of the lifted points. Using then the results of Chapter 3, we will bound the combinatorial complexity of Delaunay complexes and Voronoi diagrams, and obtain optimal algorithms for their construction.

Voronoi diagrams and Delaunay complexes are a special case of more general structures called weighted Voronoi diagrams and Delaunay complexes. The class of weighted Voronoi diagrams includes the class of Euclidean Voronoi diagrams and, as we will see, most of the properties of Voronoi diagrams still hold for weighted diagrams. Weighted Voronoi diagrams can be found under various disguises in various applications and the dual weighted Delaunay complexes will play an important role in Chapters 5 and 8.

Lower envelopes and minimization diagrams

Let F = {f 1 , . . . , f n } be a set of d-variate continuous functions defined over R d . The lower envelope of F is defined as

F -= min 1≤i≤n f i .
From F and F -, we define a partition of R d called the minimization diagram of F. For a point x ∈ R d , we define the index set I(x) of x as the set of all indices i such that F -(x) = f i (x). An equivalence relation noted ≡ can then be defined on the points of R d : two points are equivalent if they have the same index set:

x ≡ y ⇔ I(x) = I(y). The index set of a face is defined as the largest subset of indices common to all the points of the face. Conversely, the face of index set I is the set of all points x such that I ⊂ I(x).

Upper envelopes and maximization diagrams can be defined analogously.

Upper envelopes have been defined in a geometric way in Section 3.2.2 for sets of non vertical hyperplanes. The two notions are in fact closely related. Let H = {h 1 , . . . , h n } be a set of non vertical hyperplanes in R d+1 . Each hyperplane h i in H has an equation which in normal form reads x(d + 1) = f i (x) where x(d + 1) is the last coordinate of a point in R d+1 and f i (x) is an affine function of the d first coordinates. Therefore h i can be regarded as the graph of the affine function f i (x). Let F be the set of affine functions {f 1 , . . . , f n }. The upper envelope defined in Section 3.2.2 for the set H is the graph of the upper envelope of the set F, F + = max 1≤i≤n f i .

Voronoi diagrams

Let P = {p 1 , . . . , p n } be a set of points of R d . To each p i , we associate its Voronoi cell V (p i , P ), or simply V (p i ) when there is no ambiguity on the set P : The Voronoi diagram of P is the minimization diagram of the set of distance functions {δ i , . . . , δ n }, where

V (p i , P ) = {x ∈ R d : x -p i ≤ x -p j , ∀p j ∈ P }.
δ i (x) = x -p i .
Since minimizing xp i over i is the same as minimizing (xp i ) 2 , the Voronoi diagram of P can alternatively be defined as the minimization diagram of the smooth functions (xp i ) 2 . The graphs of those functions are translated copies of the vertical paraboloid of revolution of R d+1 of equation

x(d + 1) = x 2 .
Observing further that, for any x, arg min i (x

-p i ) 2 = arg max i (2p i • x -p 2 i )
, we obtain that the Voronoi diagram of P is the maximization diagram of a

f i (x) = 2p i • x -p 2 i .
We can rewrite this construction in more geometric terms and establish a link with convex polyhedra. For i = 1, ..., n, let h i be the hyperplane of R d+1 that is the graph of the affine function f i (x) :

h i = {(x, x(d + 1)) ∈ R d × R, x(d + 1) = 2p i • x -p 2 i }.
Let H = {h 1 , . . . , h n } and denote by V(P ) the upper envelope of hyperplanes in H. By definition (see Section 3.2.2), the upper envelope V(P ) is the boundary complex of the convex polyhedra

h + 1 ∩ h + 2 . . . ∩ h + n which

Delaunay complexes

Let P be a finite set of points in R d and write as before Vor(P ) for its Voronoi diagram. The collection of all Voronoi cells of Vor(P ) form a cover of R d by closed convex sets, and the nerve of this cover is an abstract simplicial complex called the Delaunay complex of P . Specifically, let f be a face of dimension k of Vor(P ) and let intf be the set of points of f that do not belong to any proper subface of f . All the points of intf have the same subset σ of closest points in P and f is the intersection of the Voronoi cells of the points in σ. Accordingly, σ is a simplex in the Delaunay complex. See Figure 4.4. We denote by Del(P ) the Delaunay complex of the set P . This definition can be rephrased in terms of empty balls. A ball B ∈ R d is said to be empty of points of P if the interior of B includes no points of P . We say that a d-ball circumscribes a finite subset of points if the sphere bounding B passes through all the points of the subset. The following lemma is just another view of the definition of the Delaunay complex. The Delaunay complex cannot always be embedded in R d . Consider, for example, the case of a set P consisting of m > d + 1 points lying on a same hypersphere. The center of the hypersphere belongs to the Voronoi cells of all the m points, which implies that the Delaunay complex contains the (m -1)-simplex whose vertex set is P . This simplex cannot be embedded in R d since its dimension m -1 is greater than d.

However, as shown below, the Delaunay complex can be embedded in R d when the points of P are in general position wrt spheres.

Definition 4.2 (General position wrt spheres)

We say that a finite set of points P is in general position wrt spheres if no subset of d + 2 points of P lie on a same hypersphere.

We can now state Delaunay's fundamental result. Proof We identify R d with the hyperplane of R d+1 of equation x(d+1) = 0 and introduce a lifting map φ that maps points and balls of R d to points of R d+1 . We then consider the lower hull of the set of lifted points φ(P ) and show that the projection onto R d embeds this lower hull as a geometric simplicial complex of R d . We will see that this complex is identical to the natural embedding of the Delaunay complex Del(P ). Further, we will prove that it is a triangulation of P .

(b) = (c, c 2 -r 2 ) of R d+1 . A point x of R d can
be considered as a ball with null radius and is mapped to the point φ(x) = (x, x 2 ) of R d+1 . Observe that the lift of a point lies on the paraboloid of revolution

Q = {x ∈ R d+1 : x(d + 1) = x 2 }. We then use in R d+1 the
φ(b) * = {x ∈ R d+1 : x(d + 1) -2cx + c 2 -r 2 = 0}.
x ∈ ∂b ⇐⇒ φ(x) ∈ φ(b) * (4.1) x ∈ b ⇐⇒ φ(x) ∈ φ(b) * -. (4.2)
Consider now a set P of n points in general position wrt spheres and let σ be a subset of d + 1 points of P . We write b for the ball that circumscribes σ. According to Lemma 4.1, σ is a Delaunay simplex iff the ball b is empty of points of P . Then, from Equations 4.1 and 4.2, the hyperplane φ(b) * contains φ(σ) and the halfspace φ(b) * -does not contain any point of φ(P ). We conclude that σ is a Delaunay simplex iff the convex hull of φ(σ) is a facet of the lower hull D(P ) of the lifted points φ(P ).

Since P is in general position wrt spheres, φ(P ) is in general position wrt hyperplanes (i.e., in the usual sense). It follows that D(P ) is a simplicial complex embedded in R d+1 . Consider now the projection onto R d , called the vertical projection. The restriction of the vertical projection to D(P ) is 1-1 (see Exercise 3.17 Let us further show that the natural embedding of Del(P ) is a triangulation of P . By definition, the set of vertices of Del(P ) is P . Furthermore, since D(P ) is the lower hull of φ(P ), its vertical projection coincides with the vertical projection of the convex hull of φ(P ) which is just the convex hull of P . It follows that the natural embedding of Del(P ) is a triangulation of P . This concludes the proof of Delaunay triangulation theorem.

Since the Delaunay complex Del(P ) is defined as the nerve of the cell complex Vor(P ), there is a dual correspondence between the faces of these two complexes, i.e. a bijective correspondence between their faces that preserves incidences and reverses inclusions. The duality between lower hulls and upper envelopes introduced in Section 3.2 yields another dual correspondence between Vor(P ) and Del(P ). Indeed, notice that the set of hyperplanes {h 1 , h 2 , . . . h n } defining the upper envelope V(P ) are the duals {φ(p 1 ) * , φ(p 2 ) * , . . . φ(p n ) * } of the lifted points φ(P ). Therefore, by the results of Section 3.2, the upper envelope V(P ) and the lower hull D(P ) are CHAPTER 4. DELAUNAY COMPLEXES dual complexes. Since the vertical projection induces a bijection between the cellular complexes V(P ) and Vor(P ), and since the lifting map induces another bijection between the complexes D(P ) and Del(P ), we get a dual correspondence between Vor(P ) and Del(P ) through the duality between V(P ) and D(P ). In fact the proof of the Delaunay triangulation theorem shows that the two correspondences between Vor(P ) and Del(P ) coincide, so that the following diagram commutes:

V(P ) duality -→ D(P ) ↑ ↓ Voronoi Diagram Vor(P ) nerve -→ Delaunay Complex Del(P )
It follows that the combinatorial complexity of the Delaunay complex of n points is the same as the combinatorial complexity of its dual Voronoi diagram. Moreover, the Delaunay complex of n points of R d can be deduced from the dual Voronoi diagram and vice versa in time proportional to their size. We also deduce from what precedes that computing the Delaunay complex of n points of R d reduces to constructing the convex hull of n points of R d+1 . The following theorem is then a direct consequence of Theorems 3.9 and 3.11. . Both structures can be computed in optimal time Θ n log n + n

d 2 .
The bounds in this theorem are tight in the worst case. In particular, the Voronoi diagram of n points of R 3 may be quadratic (see Exercise 4.3). However, under some assumptions on the point distribution, better bounds can be obtained (see Section 5.1).

If the points of P are not in general position wrt spheres, the Delaunay complex may be of dimension greater than the dimension d of the embedding space and therefore cannot be embedded in R d . Accordingly the hyperplane set φ(P ) * and the point set φ(P ) are not in general position. Hence V(P ) is not simple and D(P ) is not simplicial. The diagram above won't commute.

Nevertheless, the projection of D(P ) will still be a cell complex. Let f be a j-face of D(P ) that is not a simplex. Its projection is no longer a simplex but is still a convex j-polytope we denote by f . Moreover, f is still the convex hull of the vertices of a k-simplex σ of the nerve of Vor(P ) with k > j. We say that f is the shadow of σ. An embedded triangulation can then be obtained by triangulating the shadows that are not simplices (see Exercise 4.6). Any such triangulation is called a Delaunay triangulation. Since there are several ways of triangulating the faces of a polytope, P admits several Delaunay triangulations.

Weighted Delaunay complexes 4.4.1 Weighted points and weighted distance

A weighted point p = (p, w) is an element of R d ×R where the point p ∈ R d is called the center of p and w ∈ R is called its weight. A point is identified with a weighted point of weight 0. When w is non negative, p can be considered as the ball b(p, √ w) centered at p and of squared radius w. Since considering negative weights will cause no problem in our developments, we favour the name of weighted point.

We define the weighted distance between two weighted points p1 = (p 1 , w 1 ) and p2 = (p 2 , w 2 ) as

D(p 1 , p2 ) = (p 1 -p 2 ) 2 -w 1 -w 2 .
Note that the weighted distance is not a distance in the usual sense since it is not positive and does not satisfy the triangular inequality. Two weighted points are said to be orthogonal if their distance is zero. The term orthogonal comes from the observation that, when the weights are non negative, two weighted points are orthogonal iff the spheres bounding the associated balls are orthogonal spheres (see Figure 4.7). The weighted distance D(x, p) from an unweighted point x to a weighted point p = (p, w) whose weight w is non negative is also called the power of point x with respect to the sphere bounding the ball b(p, √ w).

Weighted Voronoi diagrams

Let P = {p 1 , . . . , pn } be a set of weighted points of R d × R. To each pi = (p i , w i ), we associate the cell whose weighted distance to pi is not larger than its weighted distance to any other weighted points of P :

V (p i ) ⊂ R d consisting of the points x of R d
V (p i ) = {x ∈ R d : D(x, pi ) ≤ D(x, pj ), ∀p j ∈ P }.
The set of points of R d that are at equal distance from two weighted points pi and pj is a hyperplane called the bisecting hyperplane of pi and pj . This hyperplane is orthogonal to the line joining the centers of pi and pj .The cell V (p i ) is the intersection of the n -1 half-spaces bounded by the bisecting hyperplanes of pi and each of the other weighted points of P . If this intersection is not empty, it is a convex polyhedron, possibly unbounded. We call weighted Voronoi cells the non empty cells

V (p i ), i ∈ [1 : n].
We define the weighted Voronoi diagram of P , noted Vor( P ), as the cell complex whose faces are the weighted Voronoi cells and their faces. Note that the set of weighted Voronoi diagrams includes Voronoi diagrams. Indeed, when all weighted points have the same weight, their weighted Voronoi diagram is identical to the Voronoi diagram of their centers.

Equivalently, the weighted Voronoi diagram of P can be defined as the minimization diagram of the set of functions {D(x, pi ), . . . , D(x, pn )}. Observing that, for any x, arg min i D(x, pi ) = arg max i (2p i • xp 2 i + w i ), we obtain that the weighted Voronoi diagram of P is the maximization diagram of the set of affine functions F = {f 1 , . . . , f n }, where Weighted Voronoi diagrams are very similar to Voronoi diagrams: the main difference is that some weighted point pi in P may have an empty Voronoi cell in Vor( P ) (see the small circle in the upper left corner of Figure 4.8). Equivalently, the corresponding hyperplane h i does not contribute to a face of the upper envelope V( P ). Notice however that if the weights are non negative and small enough so that the weighted points in P correspond to disjoint balls, then all the weighted points have a non empty Voronoi cell, (Exercise 4.13).

f i (x) = 2p i • x -p 2 i + w i . The graph of f i (x) is a non vertical hyperplane of R d+1 that we denote by h i : h i = {(x, x(d + 1)) ∈ R d × R, x(d + 1) = 2p i • x -p 2 i }. Let H = {h 1 , . . . , h n }

Weighted Delaunay complexes

Let P be a finite set of weighted points of R d and write as before Vor( P ) for its Voronoi diagram. The nerve of the collection of all cells of Vor( P ) is an abstract simplicial complex denoted by Del( P ) and called the weighted Delaunay complex of P . Specifically, let f be a face of dimension k of Vor( P ) and let intf be the set of points of f that do not belong to any proper subface of f . All the points of intf have the same subset σ of closest weighted points in P (for the weighted distance), and f is the intersection of the weighted Voronoi cells of the weighted points in σ. Accordingly, σ is a simplex in the weighted Delaunay complex.

Recall that two weighted points are said to be orthogonal if their weighted distance is zero. A weighted point x is said to be orthogonal to a finite set σ of weighted points if x is orthogonal to all the weighted points of σ. We say that the set P of weighted points is in general position when no weighted point of R d × R is at equal weighted distance from more than d + 1 weighted points of P . In the following, we assume that the set P of weighted points is in general position.

Then, if σ = { p0 , ..., pd } is a subset of d + 1 weighted points in P , there exists a unique weighted point ĉ in R d × R orthogonal to σ. The center c(σ) of ĉ is called the weighted center of σ, and the square root of the weight of ĉ, denoted by r(σ), is called the weighted radius of σ. Observe that the weighted radius may be imaginary which causes no problem.

A weighted point x is said to be free of weighted points of P if no point of P has a negative weighted distance to x. Observe that the notion of free weighted points generalizes the notion of empty balls (see Lemma 4.1). Indeed, when the weights of points in P are 0 and the weight of x is positive, the ball corresponding to x is an empty ball for P .

Let v be a vertex of Vor( P ). The weighted Delaunay simplex σ associated to v is a d-simplex. The vertex v is at equal weighted distance w from all the weighted points of σ, and this distance is smaller than the weighted distance from v to all other weighted points in P \ σ. Therefore the weighted point (v, w) is orthogonal to σ and free of points of P . This property generalizes to faces of Vor( P ) of any dimension and the following lemma is just another view of the definition of the weighted Delaunay complex.

Lemma 4.5 (The free weighted point property) Any subset σ ⊂ P is a simplex of the weighted Delaunay complex Del( P ) iff there is a weighted point orthogonal to σ and free of weighted points of P .

We proceed now as in Section 4.3 and prove the weighted version of Delaunay's triangulation theorem. With a slight abuse of language, we call natural embedding of Del( P ) in R d , a geometric realization of Del( P ) in which each simplex σ of Del( P ) is embedded as the convex hull of the set σ of the centers of the weighted points in σ.

Theorem 4.6 (Weighted Delaunay triangulation) If a finite set of weighted points P ∈ R d × R is in general position, then the weighted Delaunay complex Del( P ) has a natural embedding in R d which is a triangulation of a subset P of P . P is the set of centers of the weighted points in P that have a non empty cell in Vor( P ).

Proof We first define the lifting map for weighted points as follows: to a weighted point p = (p, w) of R d , we associate the point φ(p) = (p, p 2w) of R d+1 . Then we consider the lower hull of points of φ( P ), denoted by D( P ). Arguing as in Section 4.3, we get that the lower hull D( P ) is a geometric simplicial complex embedded in R d+1 whose vertical projection onto R d is the natural embedding of Del( P ). Let P be the subset of weighted points in P that have non empty cells in Vor( P ). The vertex set of D( P ) is the set φ( P ) ⊆ φ( P ) and the vertical projection of D( P ) is a triangulation of P , the set of centers of the weighted points of P .

Observe that the hyperplanes h i , i = 1, . . . , n defined in Subsection 4.4.2 are the hyperplanes dual to the points in φ( P ). Therefore, by the results of Section 3.2, the upper envelope V( P ) and the lower hull D( P ) are dual complexes. Arguing once more as in Section 4.3, we get the following diagram which commutes when the weighted points are in general position :

V( P ) duality -→ D( P ) ↑ ↓ Vor( P ) nerve -→ Del( P )
If the weighted points are not in general position, we can triangulate the non simplicial faces D( P ) as described in Section 4.3. The vertical projection of D( P ) will then be a triangulation of P .

Complexity of weighted Delaunay complexes

The . Both structures can be computed in optimal

time Θ n log n + n d 2 .

Examples of weighted Voronoi diagrams

We have seen that the weighted Voronoi diagram of n weighted points is the maximization diagram of n affine functions. The converse is also true (see Exercise 4.14). We give in this section two examples of weighted Voronoi diagrams that are of interest in the context of data analysis.

k-order Voronoi diagrams

Let P be a set of n points of R d and let P k be the set of all subsets of k points of P for some fixed k ∈ [1 : n -1]. We define the Voronoi cell of a subset K ∈ P k as the set of points of R d that are closer to all the sites in K than to any other site in P \ K:

V k (K) = {x ∈ R d : ∀p i ∈ K, ∀p j ∈ P \ K, x -p i ≤ x -p j }.
Let us consider the subsets of P k whose Voronoi cells are not empty. These cells are convex polyhedra and form a cell complex whose domain is R d called the k-order diagram of P (see Proof Let K 1 , . . . , K s be the s = n k subsets of k points of P . For any

point x ∈ R d , we have x ∈ V k (K i ) ⇐⇒ 1 k p∈K i (x -p) 2 ≤ 1 k q∈K j (x -q) 2 ∀j, 1 ≤ j ≤ s ⇐⇒ x 2 -2   1 k p∈K i p   • x + 1 k p∈K i p 2 ≤ x 2 -2   1 k q∈K j q   • x + 1 k q∈K j q 2 ⇐⇒ D(x, pi ) ≤ D(x, pj )
where pi = (c i , w i ) is the weighted point centered at the center of mass

c i = 1 k p∈K i p of K i of weight w i = c 2 i -ρ 2 i with ρ 2 i = 1 k p∈K k i p 2 . Hence, 88 CHAPTER 4. DELAUNAY COMPLEXES x ∈ V k (K i ) iff
x lies in the weighted Voronoi cell of pi .

It follows that the k-order Voronoi diagram of a finite set of points P of R d is a cell complex of R d whose nerve is a triangulation of R d under a general position assumption.

The k-order Voronoi diagram of P can be used as a data structure to compute in sublinear time the k points of P that are closest to a query point x. The query can be answered by identifying the cell of the k-order Voronoi diagram that contains x and reading the associated k-nearest points of P .

Bregman diagrams

Let Ω be a convex domain of R d and F a strictly convex and differentiable function F (called the generator function of the divergence) defined over Ω.

For any two points p = (p(1), . . . , p(d)) and q = (q(1), . . . , q(d)) of Ω, the Bregman divergence D F (p||q) : Ω × Ω → R associated to F is defined as

D F (p||q) = F (p) -F (q) -∇F (q) • (p -q) (4.3)
where ∇F = [ ∂F ∂x 1 ... ∂F ∂x d ] T denotes the gradient operator. Informally speaking, Bregman divergence D F is the tail of the Taylor expansion of F . Geometrically, the Bregman divergence D F (p||q) is measured as the vertical distance (i.e. along the (d + 1)-axis) between p = (p, F (p)) and the hyperplane H q tangent to the graph F of F at point q: D F (p||q) = F (p) -H q (p). See Figure 4.11.

We now give some basic properties of Bregman divergences. First, observe that, for most functions F , the associated Bregman divergence is not symmetric, i.e. D F (p||q) = D F (q||p) (the symbol || is put to emphasize this point). Hence, it is not a distance. Nevertheless, the strict convexity of the generator function F implies that, for any p and q in Ω, D F (p||q) ≥ 0, with D F (p||q) = 0 if and only if p = q.

Examples of Bregman divergences

Examples of Bregman divergences are the squared Euclidean distance, obtained with F (x) = x 2 , and the quadratic distance function The notion of Bregman divergence encapsulates various information measures based on entropic functions such as the Kullback-Leibler divergence based on the Shannon entropy which is widely used in information theory, image processing and various fields. Let p be a discrete probability distribution so that d i=1 p(i) = 1. The Shannon entropy is defined as F (p) = i p(i) log 2 p(i). F is a convex function and the associated Bregman divergence between two probability distributions p and q is easily shown to be

D F (x||y) = F X x y x ŷ H y D F (x, y)
D F (p||q) = d i=1 p(i) log 2 p(i) - d i=1 q(i) log 2 q(i) -(p -q) • ∇F (q) = d i=1 p(i) log 2 p(i) q(i) (since d i=1 p(i) = d i=1 q(i) = 1) def = KL(p||q).
KL(p||q) is called the Kullback-Leibler divergence or the relative entropy of the two probability distributions p and q.

Bregman diagrams

Let P = {p 1 , ..., p n } be a finite point set of Ω ⊂ R d . We associate to each site p i the distance function,

D i (x) = D F (x||p i ).
The minimization diagram of the D i , i = 1, . . . , n, is called the Bregman Voronoi diagram of P , which we denote by Vor F (P ). The d-dimensional cells of this diagram are in 1-1 correspondence with the sites p i and the d-dimensional cell of p i is defined as

V F (p i ) def = {x ∈ Ω | D F (x||p i ) ≤ D F (x||p j ) ∀p j ∈ P }.
It is easy to see that the minimization diagram of the n functions D F (x||p i ) i = 1, . . . , n, is the maximization of the n affine functions

h i (x) = (x -p i ) • ∇F (p i ) + F (p i ), i = 1, . . . , n.
Hence, Bregman diagrams are weighted Voronoi diagrams. More precisely, we have Theorem 4.9 The Bregman Voronoi diagram of n sites is identical to the restriction to Ω of the weighted Voronoi diagram of the n weighted points (p i , w i ), i = 1, ..., n, where p i = ∇F (p i ) and

w i = p 2 i + 2(F (p i ) -p i • p i ). Proof D F (x||p i ) ≤ D F (x||p j ) iff -F (p i ) -(x -p i ) • p i ≤ -F (p j ) -(x -p j ) • p j .
Multiplying by 2 the two sides of the inequality and adding x 2 to both sides yields

x 2 -2x • p i -2F (p i ) + 2p i • p i ≤ x 2 -2x • p j -2F (p j ) + 2p j • p j ⇐⇒ (x -p i ) • (x -p i ) -w i ≤ (x -p j ) • (x -p j ) -w j ,
where

w i = p 2 i + 2(F (p i ) -p i • p i ) and w j = p 2 j + 2(F (p j ) -p j • p j ).
The last inequality means that the weighted distance of x to the weighted point (p i , w i ) is no more than its weighted distance to the weighted point (p j , w j ).

It is to be observed that not all weighted Voronoi diagrams are Bregman Voronoi diagrams. Indeed, in weighted Voronoi diagrams, some weighted points may have empty cells while each site has necessarily a non empty cell in a Bregman Voronoi diagram.

Bregman complexes

We define the Bregman complex of P as the nerve of the Bregman diagram of P , Vor F (P ). We denote it by Del F (P ). An analogue of Delaunay's triangulation theorem also exists in this context.

Let P be the lifted image of P on the graph F of F , i.e. P = {(p, F (p)), p ∈ P } ∈ R d+1 . Write T for the lower hull of P . We assume in this section that P is in general position, meaning that there is no point x ∈ Ω whose divergences to d + 2 points of P are equal. Equivalently, P is in general position if P contains no subset of d + 2 points on a same hyperplane.

Assume that P is in general position. Then, for the same reasons as for Delaunay triangulations (see Section 4.3), T is a simplicial complex and the vertical projection of T onto R d is a triangulation that is equal to Del F (P ) by the lifting map argument given in the beginning of Section 4.5.2 (see Figurefig:bregman-lift). In other words, Del F (P ) naturally embeds in Ω ⊆ R d . We call Del F (P ) the Bregman triangulation of P . When F (x) = x 2 and Ω = R d , Del F (P ) is the Delaunay triangulation of P .

We now show that the empty ball property of Delaunay triangulations (Lemma 4.1) naturally extends to Bregman triangulations. We define the Bregman ball centered at c and of radius r as

b F (c, r) = {x ∈ Ω | D F (x||c) < r}.
It is easy to see that any Bregman ball b F is obtained as the vertical projection of the intersection of F with a halfspace below a non-vertical hyperplane (see Figure 4.6 for the case where F = x 2 ).

A Bregman ball is said to be empty if it does not contain any point of P . Let σ = [p 0 , . . . , p d ] be a (geometric) d-simplex of Breg F (P ). The affine hull of the lifted points p0 , . . . , pd is a hyperplane h σ of R d+1 whose intersection with F projects vertically onto the boundary of the (unique) Bregman ball b σ that circumscribes σ. Since, by construction, conv(p 0 , . . . , pd ) ∈ h σ is a facet of the lower hull of P , b σ must be empty.

It also follows from the discussion that, under the general position assumption, Bregman complexes naturally embeds in R d . This is another extension of Delaunay's triangulation theorem.

Legendre duality

Let F be a strictly convex and differentiable real-valued function on Ω. The gradient of F , ∇F , is well defined as well as its inverse ∇ -1 F , and ∇F • ∇ -1 F = ∇ -1 F • ∇F are identity maps. We write x for ∇F (x) and Ω for the gradient space {∇F (x)|x ∈ Ω}.

The Legendre transformation associates to F a convex conjugate function F * : Ω → R given by [START_REF] Rockafellar | Convex Analysis[END_REF]:

F * (x ) = x • x -F (x). (4.4)
Taking the derivative of Equation 4.4, we get

∇F * (x ) • dx = x • dx + x • dx -∇F (x) • dx = x • dx = ∇ -1 F (x ) • dx ,
from which we deduce that ∇F * = ∇ -1 F . Figure 4.12 gives a geometric interpretation of the Legendre transformation. Consider the hyperplane h x tangent to the graph F of F at x. This hyperplane intersects the (d + 1)-axis at the point (0, -F * (x )). Indeed, the equation of

h x is y(d + 1) = x • (y -x) + F (x) = x • y -F * (x ).
Hence, the (d + 1)-axis intercept of h x is equal to -F * (x ). Any hyperplane passing through another point of F and parallel to h x necessarily intersects the z-axis above -F * (x ).

To ensure that D F * is a Bregman divergence, we need Ω to be convex. This is trivial if Ω has no boundary and, in particular, when Ω = R d . Otherwise, we will further require that F is a function of Legendre type, i.e. that the norm of the gradient of F goes to infinity whenever we approach the

x x y z (0, -F * (x )) F : z = F (y) hx : z = x • y -F * (x )
Figure 4.12: The z-intercept (0, -F * (x )) of the tangent hyperplane h x of F at x defines the value of the Legendre transform F * for the dual coordinate x .

boundary of Ω (see [START_REF] Rockafellar | Convex Analysis[END_REF]). Under the additional assumption that F is of Legendre type, we can associate to the conjugate function F * a Bregman divergence D F * . We have the following remarkable result:

Lemma 4.10 D F (p||q) = F (p) + F * (q ) -p • q = D F * (q ||p )
Proof By Equation 4.3, D F (p||q) = F (p)-F (q)-(p-q)•q , and, according to Equation 4.4, we have F (p) = p • p -F * (p ) and F (q) = q • q -F * (q ). Hence,

D F (p||q) = F (p) -F (q) -(p -q) • q = p • p -F * (p ) -p • q + F * (q ) = F * (q ) -F * (p ) -p • (q -p ) = D F * (q ||p )
where the last equality holds since p = ∇F -1 ∇F (p) = ∇F * (p ).

Observe that, when D F is symmetric, D F * is also symmetric.

The Legendre transform of the quadratic form

F (x) = 1 2 x T Qx, where Q is a symmetric invertible matrix, is F * (x ) = 1 2 x T Q -1
x . We say that F is self dual. Observe that the corresponding divergences D F and D F * are both generalized quadratic distances.

CHAPTER 4. DELAUNAY COMPLEXES

To compute F * , we can use the fact that ∇F * = ∇F -1 (see above). However, integrating functions symbolically may be difficult or even not possible, and, in some cases, it will be required to approximate numerically the inverse gradient ∇ -1 F (x).

We can now define Bregman diagrams of the second type where the cell of p i is defined as

ṼF (p i ) def = {x ∈ Ω | D F (p i ||x)) ≤ D F (p j ||x) ∀p j ∈ P }.
In contrast with the diagram of the first-type Vor F (P ), the diagram of the second type Vor(P ) has, in general, curved faces. From the Legendre duality between divergences, we deduce correspondences between the diagrams of the first and the second types. As usual, F * denotes the convex conjugate of F .

Lemma 4.11 We have

Vor F (P ) = ∇ -1 F (Vor F * (P )) and Vor F (P ) = ∇ -1 F ( Vor F * (P )).

Proof By Lemma 4.10, we have

D F (x||y) = D F * (y ||x ), which gives V F (p i ) = {x ∈ Ω | D F * (p i ||x ) ≤ D F * (p j ||x ) ∀p j ∈ P } = ∇ -1 F ( ṼF * (p i )).
This proves the second part of the lemma. The proof of the first part follows the same path.

Hence, constructing Vor F (P ), the (curved) Bregman diagram of the secondtype, reduces to constructing an affine diagram in the gradient space Ω (and mapping the cells by ∇ -1 F ). The nerve of the Bregman diagram of the second-type is a simplicial complex called the Bregman triangulation of the second type. It follows from Lemma 4.11 that the Bregman triangulation of the second type of P can be realized as the (curved) image by ∇ -1 F of the Bregman Delaunay triangulation of the first type of P . Show that the image by φ of a point, considered as a ball of radius 0, is a point of the paraboloid Q of equation

Exercises

x d+1 = x 2 .
Show that the image by φ of the balls whose bounding spheres pass through a given point p of R d is the hyperplane h p of R d+1 of equation

x d+1 = 2p•x-p 2 , which is tangent to Q at φ(p) = (p, p 2 ).
What are the preimages by φ of the points of R d+1 that lie above Q, on a line ? The same question can be asked about the image of the balls that contain p. Dually, project vertically the faces of the upper convex hull of the φ(p i ) = (p i , p 2 i ), i = 1, ..., n. Show that we obtain a triangulation of the vertices of conv(P ) such that each ball circumscribing a simplex contains all the points of P . Show that the moment curve M d ⊂ R d (defined in Exercise 3.12) can be drawn on the paraboloid Q of equation x d+1 = x 2 . Deduce then from Exercise 3.12 that the bound in Theorem 4.4 is tight.

. , p d+1 ) = 1 • • • 1 p 0 • • • p d+1 p 2 0 • • • p 2 d+1 96 CHAPTER 4. DELAUNAY COMPLEXES
is 0, negative or positive. Show that this predicate is the only numerical operation that is required to check if a triangulation is a Delaunay triangulation.

Show that the only numerical operation that is required to check if a triangulation is the weighted Delaunay triangulation of a set of weighted points p1 , ..., pn is the evaluation of signs of determinants of (d+2)×(d+2) matrices of the form

power test(p i 1 , ..., pi d+2 ) = 1 • • • 1 p i 1 • • • p i d+2 p 2 i 0 -w i 0 • • • p 2 i d+1 -w i d+1
where p i and w i are respectively the center and the weight of pi . (Hint : use the lifting map and Exercise 3.16).

Exercise 4.6 (Triangulation of a convex polytope) Describe an algorithm to triangulate a convex polytope (Hint: proceed by faces of increasing dimensions).

Exercise 4.7 (Minimal spanning tree) Let P be a finite set of points of R d . A spanning tree of P is a tree whose vertices are the points of P . A spanning tree is called a minimum spanning tree (MST) if the sum of the lengths of its edges is minimal among all spanning trees. Show that MST(P ) ⊂ Del(P ).

Exercise 4.8 (Delaunay complexes contain a triangulation) Let P be any finite set of points of R d . Show that there exists a subcomplex K ⊆ Del(P ) that is a triangulation of P .

Exercise 4.9 (Natural coordinates) Let P = {p 1 , ..., p n } be a finite set of points of R d . As usual, Vor(P ) denotes the Voronoi diagram of P and V (p i ) the cell of p i in Vor(P ). Given a point x ∈ conv(P ), we write

P + = P ∪ {x}, V + (x) for the Voronoi cell of x in or(P + ), V + (x, p i ) = V + (x) ∩ V + (p i ) and W (x, p i ) = V + (x) ∩ V (p i ) = V (p i ) \ V + (p i ). Now we define v i (x) = vol(V + (x, p i )), vi (x) = v i (x)/ x -p i and v(x) = n i=1 vi (x).
In addition, we define w i (x) = vol(W (x, p i )) and w(x) = n i=1 w i (x).

We call Laplace coordinates the n functions λ 1 , . . . , λ n defined by λ i (x) = vi (x)/v(x) for x ∈ P , and λ i (p j ) = δ ij otherwise, where δ ij is the Kronecker delta. We call Sibson's coordinates the n functions ς i (x) = w i (x)/w(x), i = 1, . . . , n. Show that the set of λ i is a partition of unity, i.e. x = i λ i (x) p i . Same question for the set of ς i .

(Hint : for Laplace coordinates, apply Exercise 3.18 to V + (x). For Sibson's coordinates, apply Exercise 3.18 to the polytope of R d+1 whose boundary is V(P + ) \ V(P ), where V(P ) is defined in Section 4.3). Exercise 4.13 (Centered triangulation) ) Let P be a finite set of weighted points with non negative weights. Let P be the set of their centers and let l = min p,q∈P pq be the minimal distance between two centers. Prove that, if the weights are less than l 4 , all weighted points of P have a non empty weighted Voronoi cell and each center belongs to the cell of its own weighted point. Exercise 4.15 (Complexity of k-order Voronoi diagrams) Use Theorems 3.12 and 3.9 to show that the combinatorial complexity of all ≤ korder Voronoi diagrams is Θ(k

d+1 2 n d+1 2
). Propose an efficient algorithm to compute all these diagrams.

D F (x||y) = i x i y i -log x i y i -1 .
The Itakura-Saito divergence is classical tool in speech recognition. Show that the Itakura-Saito divergence is the Bregman divergence associated to the convex function F (x) =log x (Burg entropy). Show that the gradient and inverse gradient of F are identical, so that it is self-dual, i.e. F = F * .

Show that, for the exponential function F (x) = exp x, we have F * (y) = y log y -y (the unnormalized Shannon entropy) and, for the dual bit entropy F (x) = log(1+exp x), we have F * (y) = y log y 1-y +log(1-y), the bit entropy.

Exercise 4.17 We define the Bregman ball of the second type centered at c and of radius r as bF = {x ∈ Ω|D F (c||x) < r}.

Show that if, F is of Legendre type, bF is contractible.

Exercise 4.18 Define the α-Bregman complex as the restriction of the Bregman complex to the union of the Bregman balls of radius α. Consider the two types associated to the two types of balls. Show that, in both cases, the α-Bregman complex has the same homotopy type as the union of the Bregman balls.

Bibliographical notes

Voronoi diagrams are very natural constructions that have been discovered several times and appear in the literature under various names like Dirichlet tesselations or Thiessen diagrams. The observation that Voronoi diagrams of R d are projections of convex polyhedra of R d+1 goes back to Voronoi himself. Delaunay has defined the triangulations that bear his name and proved Theorem 4.3 in his seminal paper [START_REF] Delaunay | Sur la sphère vide[END_REF].

Voronoi diagrams and Delaunay triangulations are fundamental geometric structures that have received a lot a attention. Main results can be found in most textbooks on discrete and computational geometry [START_REF] Berg | Computational Geom.: Algorithms and Applications[END_REF]25,[START_REF] Gallier | Notes on Convex Sets, Polytopes, Polyhedra Combinatorial Topology, Voronoi Diagrams and Delaunay Triangulations[END_REF] and more comprehensive treatments can be found in the books by Okabe et al. [START_REF] Okabe | Spatial Tessellations: Concepts and Applications of Voronoi Diagrams[END_REF] and Aurenhammer et al. [START_REF] Aurenhammer | Voronoi Diagrams and Delaunay Triangulations[END_REF].

The space of spheres we referred to in Exercise 4.1 is fully developed in the books by Pedoe [START_REF] Pedoe | Geometry, a comprehensive course[END_REF] and Berger [START_REF] Berger | Géométrie[END_REF].

Weighted Voronoi diagrams appear also in the literature under the names of Laguerre diagrams or power diagrams. Weighted Delaunay triangulations are also named regular triangulations. They were first studied in a systematic way by Aurenhammer [START_REF] Aurenhammer | Power diagrams: properties, algorithms and applications[END_REF] who proved Theorem 4.8. The solution to Exercise 4.15 is due to Clarkson and Shor [START_REF] Clarkson | Applications of random sampling in computational geometry[END_REF]. Bregman Voronoi diagrams were introduced by Boissonnat, Nielsen and Nock [START_REF] Boissonnat | Bregman Voronoi diagrams[END_REF]. The fact that the α-Bregman complex has the same homotopy type as the union of the Bregman balls (Exercise 4.18) has been first observed by Edelsbrunner and Wagner [START_REF] Edelsbrunner | Topological data analysis with Bregman divergences[END_REF]. A recent survey on affine and curved Voronoi diagrams can be found in [23].

Natural coordinates (Exercise 4.9) have been introduced by Sibson [START_REF] Sibson | A brief description of natural neighbour interpolation[END_REF][START_REF] Sibson | A vector identity for the Dirichlet tesselation[END_REF].

The cgal library [START_REF] Boissonnat | Triangulations in CGAL[END_REF] (www.cgal.org) offers fully reliable and efficient implementations of algorithms to construct Delaunay and weighted Delaunay triangulations in arbitrary dimensions.

Chapter 5

Good triangulations 101 102

CHAPTER 5. GOOD TRIANGULATIONS

In this chapter, we are interested in constructing simplicial complexes with a guaranteed quality. On one hand, we would like to control the density of their vertices and, on the other hand, we would like to control the shape of the simplices and avoid simplices that are too flat.

In Section 5.1, we introduce ε-nets in order to capture a notion of good sample of a bounded subset Ω ⊂ R d . We will see that, for fixed d, the complexity of Voronoi diagrams and Delaunay complexes of an ε-net of Ω of size n is linear in n. This is to be compared with the bound Θ(n

d 2 )
given in Chapter 4 which is tight in the worst case.

Although Delaunay triangulations have many beautiful properties, their simplices, in dimension greater than 2, may have an arbitrarily small volume even if their vertices are well distributed. Avoiding such bad simplices is a major issue and the importance of thick triangulations, to be introduced in Section 5.2, has been recognized since the early days of differential topology. Thick triangulations play a central role in many works on the triangulation of manifolds (see Part III) and appear to be crucial in scientific computing to ensure the convergence of numerical methods.

In order to improve the quality of the simplices of a Delaunay complex, one can perturb the position of the vertices or the metric of the space. We introduce in Section 5.3 a perturbation scheme that associates to each point a weight and replaces the Delaunay complex by its weighted version. We show that the weight assigned to each point can be computed so that the resulting weighted Delaunay complex has some guaranteed thickness. The method is an algorithmic application of the Lovász local lemma which is recalled in Section 5.3.4.

Nets

Nets in Euclidean space

We consider a bounded subset Ω of R d and denote by P a finite set of points in Ω. The Hausdorff distance d H (P, Ω) is called the sampling radius of P and denoted by ε. We also say that P is an ε-dense sample of Ω. We further call η = min p,q∈P pq the separation of P and η = η/ε the separation ratio of P .

NETS 103

Any finite point set P of Ω whose sampling radius is ε and whose separation ratio is η is called an (ε, η)-net of Ω. Note that for any finite set of distinct points P ⊂ Ω, there is some positive ε and η such that P is an (ε, η)-net for Ω. Thus ε and η are simply parameters that describe properties of P in Ω.

In the sequel, we will often consider the subset of (ε, η)-samples of Ω where η is lower bounded by a positive constant. Such point sets will be called ε-nets for short. Lemma 5.1 Let P be an (ε, η)-net of Ω. If the radius of the smallest ball enclosing any connected component of Ω is greater than ε, then for any point p ∈ P , the distance L(p) from p to its nearest neighbor in P \ {p} is at most 2ε. Therefore we must have η ≤ 2.

Proof Since P is ε-dense in Ω, the union of the balls B(p, ε), p ∈ P , covers Ω. Now let r > ε and assume for a contradiction that there exists a point p ∈ P such that B(p, 2r) does not contain any point of P other than p.

Then Ω intersects the spherical shell B(p, r) \ B(p, ε) and this intersection is not covered by any ball B(q, ε), q ∈ P , violating the hypothesis that P is ε-dense in Ω.

The next lemma shows that nets exist. Lemma 5.2 (Existence of ε-nets) Let Ω be a bounded subset of R d and ε be any positive real. Then Ω admits an (ε, 1)-net.

Proof We apply the following procedure : while there exists a point p ∈ Ω at distance at least ε from P , insert p in P . Since the domain is compact and the algorithm inserts no point at distance less than ε from a previously inserted point, the algorithm terminates. Upon termination, any point of Ω is at distance less than ε from P .

Lemma 5.3 (Size of an ε-net) Let Ω be a bounded domain of R d . The number n(ε, η) of points of an (ε, η)-net satisfies vol d (Ω) vol d (B(ε)) ≤ n(ε, η) ≤ vol d (Ω η 2 ) vol d (B( η 2 ))
where B(r) denotes a d-ball of radius r, η = ηε, and

Ω η 2 = x ∈ R d , d(x, Ω) ≤ η 2 .
If vol d (Ω) > 0, then n(ε, η) = Θ 1 ε d where the constant in the Θ depends on the geometry of Ω and on ηd .

Proof The ball B(p, ε) of radius ε that are centered at the points p ∈ P cover Ω. This yields the left inequality. The balls B(p, η

2 ) of radius η 2 that are centered at the points p ∈ P are disjoint and they are all contained in Ω η 2 . This leads to the right inequality.

Delaunay complex of a net

Let Ω be a subset of R d of positive d-volume and let P a finite set of points in Ω. The nerve of the covering of Ω by the Voronoi cells of P is called the restriction of Del(P ) to Ω and denoted by Del |Ω (P ). Equivalently, Del |Ω (P ) is the subcomplex of Del(P ) whose dual Voronoi faces intersect Ω.

We consider now the case where P is an (ε, η)-net of Ω. We already observed that every simplex σ of Del |Ω (P ) must have a circumradius not greater than ε.

Observe also that all Delaunay simplices with a vertex at distance greater than 2ε from the boundary of Ω belong to Del |Ω (P ) (see Exercise 5.1). Lemma 5.4 (Delaunay complex of a net) Let Ω be a bounded subset of R d , P an (ε, η)-net of Ω, and assume that d and η are positive constants. The restriction of the Delaunay complex of P to Ω has size 2 O(d 2 ) |P | (i.e. the size is linear for fixed d).

Proof Let p be a point of P . We first bound the number of neighbors of p, i.e. the vertices of the link of p in Del |Ω (P ). Let σ be a simplex of Del |Ω (P ) in the star of p. As observed above, the diameter of σ is at most 2ε. Moreover, all the open balls B(q, ηε 2 ), q ∈ P , are disjoint by definition of the separation. Hence, the number of neighbors of p is at most

n p = vol d B(2ε + ηε 2 ) vol d B( ηε 2 ) = 1 + 4 η d 5.1. NETS 105
where B(r) denotes a ball of radius r.

Assuming without real loss of generality that n p ≥ d + 1, we deduce that the number of simplices in the star of p is at most

d+1 i=1 n p i = 2 O(d 2 ) .
We will show now that the randomized incremental construction (see Theorems 4.4 and 3.11) constructs the Delaunay complex of any net P in time O(n log n) time where n = |P |. Remarkably, we don't need to modify the algorithm whose behaviour will automatically adapt to the fact that the input point set is a net. To analyze the complexity of the algorithm in this context, it is sufficient to show that the expected complexity of the Delaunay complex of a random sample S of P has linear size O(|S|). Indeed, the expected number of simplices that appear in the Delaunay complex of a point set P ∈ R d during the randomized incremental construction, is

O n i=1 d i Γ 0 (i, P ) ,
where Γ 0 (i, P ) is the expected size of the Delaunay complex of a random sample of size i, drawn from the point set P . It will then immediately follow from the analysis of the complexity of the randomized algorithm that the complexity of the algorithm is O(n log n) when P is a net.

Lemma 5.5 A random subsample S of an ε-net P has a Delaunay complex of expected size 2 O(d 2 ) |S| (i.e. the expected size is linear for fixed d).

Proof We first give the proof in the case where S is a Bernoulli sample, i.e. it is obtained from P by picking every point p ∈ P with probability .

For convenience, we will write = (ε/δ) d .

Let us fix a point p ∈ P ; we shall upper bound the size of star(p, Del(S)), i.e. the set of simplices of Del(S) with vertex p. Let

I k = [2 k-1 δ, 2 k δ), k ∈ N.
Consider a d-tuple τ of points of P such that the d-simplex formed by the points in σ = τ ∪ {p}, has circumcentre c σ and circumradius r σ . Then, given that p ∈ S, the event E (τ ) = (σ ∈ Del(S)) could occur only if the following two events occur:

CHAPTER 5. GOOD TRIANGULATIONS (i) E (σ) 1 = (∀p ∈ σ, p ∈ S) (ii) E (σ) 2 = (B(c σ , r σ ) ∩ S = ∅), where B(x, r
) is the open ball centered at x with radius r.

Given that p ∈ S, the probability that σ ∈ Del(S) can be therefore upperbounded as follows. We write

n σ = P ∩ B(p, r σ ) ≥ (r σ /ε) d (by a packing argument). proba[E (τ ) ] = proba[E (σ) 1 ∧ E (σ) 2 ] = d proba[E (σ) 2 ] ≤ d (1 -) nσ (5.1) ≤ d e -nσ ≤ ε δ d 2 e -(ε/δ) d (rσ/ε) d ≤ ε δ d 2 e -(rσ/δ) d If σ has circumradius r σ ∈ I k , we get proba[E (τ ) ] ≤ (ε/δ) d 2 e -2 (k-1)d
By the triangle inequality, if σ ∈ Del(S) has a circumradius r σ , then all the points in σ must lie in the ball B(p, 2r σ ). Therefore, the number of potential d-tuples which can contribute to star(p, Del(S)) is at most ((

4r σ /ε) d ) d = (4r σ /ε) d 2 ≤ (2 k+2 δ/ε) d 2 . Let Z p (k) := |{σ ∈ Del(S) : p ∈ σ, r σ ∈ [2 k-1 δ, 2 k δ)}|, p ∈ S, 0, otherwise,
denote the number of Delaunay simplices which contain p ∈ S and have circumradius r σ ∈ I k . Then we get

E[Z p (k)] ≤ τ ∈(P ∩B(p,2r)) d proba[E (τ ) ] ≤ (2 k+2 δ/ε) d 2 (ε/δ) d 2 e -2 (k-1)d = 4 d 2 2 kd 2 e -2 (k-1)d
Define Y p := ∞ k=1 Z p (k) to be the number of Delaunay simplices in star(p, Del(S)). Summing k over all allowed ranges of r, Summing over all allowed ranges of 5.1. NETS 107 r, we get

E[Y p ] ≤ ∞ k=1 4 d 2 e -2 (k-1)d • 2 kd 2 = 4 d 2 ∞ k =1 e -k • k d • 2 d 2 (with k = 2 (k-1)d ) = 8 d 2 ∞ k =1 e -k • k d ≤ 8 d 2 ∞ x=0 e -x • x d dx = 8 d 2 Γ(d + 1) = 2 O(d 2 ) .
where Γ(t) := ∞ 0 e -x x t-1 dx denotes the Gamma function. Therefore, the expected size of Del(S) is given by

E[|Del(S)|] ≤ p∈P proba[p ∈ S] E[Y p ] ≤ n • 2 O(d 2 ) = E[|S|] • 2 O(d 2 ) .
The previous result does not apply directly to the randomized construction of the Delaunay complex of P . When the points are inserted in a random order, the i-th point to be inserted is a random point in a uniform sample of size i of P . We thus consider now the case of a random subset S ⊆ P of size s. Given that p ∈ S, choosing the rest of the random subsample S is equivalent to choosing a random sample of s -1 elements from P \ {p}. Now from Equation 5.1 and Exercise 5.2, we get:

proba[E (τ ) ] ≤ s -1 n -1 d 1 - s -1 n -1 (rσ/ε) d ≈ s n d 1 - s n (rσ/ε) d = d (1 -) (rσ/ε) d ,
where = s/n is the probability for a point of P to belong to S. The rest of the computations follows as previously leading to the same asymptotic bound on E[|Del(S)|].

We conclude from the discussion above and Lemma 5.

Nets in discrete metric spaces

So far, we have considered nets in subsets of Euclidean spaces. However nets can be defined in more general metric spaces. In this section, we consider the case where Ω is a finite set of points that we rename W to emphasize the distinction. We do not assume that W is embedded in Euclidean space and the points are not given a location. Instead, we only assume to know the distance matrix of W , i.e. the |W | × |W | matrix M whose element m i,j is the distance between the points w i and w j . W together with M defines a discrete metric space. Nets can be defined in discrete metric spaces in very much the same way they have been defined in Euclidean space.

Extracting from W a coarser sample that is a net of W will allow to benefit from the nice properties of nets. It will also allow to represent data at various resolutions, to cluster data and to construct witness complexes, a weak variant of Delaunay complexes that can be defined and constructed in any discrete metric space (Section 6.2).

We first prove the existence of nets in the context of discrete metric spaces (see Lemma 5.2 for its analog in the Euclidean case).

Lemma 5.7 (Existence of nets) Let W be a finite set of points such that the distance of any point q ∈ W to W \ {q} is at most ε and let λ ≥ ε. One can extract from W a subsample L that is a (λ, 1)-net of W .

In preparation for Section 6.2, we will often refer to the points of L as landmarks and to the points of W as witnesses.

Proof We construct the sample L by inserting points of W one by one.

Initially L := ∅ and W := W . At each step, we pick a point of W , say p, insert it in L, and remove p from W as well as all the points of W whose distance to p is less than λ. We stop when W is empty. The algorithm necessarily terminates since W is finite. Upon termination, all the points of W are at distance at most λ from a point of L (since otherwise it would be inserted in L) and two points of L are at distance at least λ (since we never 5.1. NETS 109 insert a point at distance less than λ from the current set L). It follows that L is a (λ, 1)-net of W .

We can improve the algorithm described in the proof of Lemma 5.7 by inserting, at each step, a point p ∈ W that is farthest from the current set of landmarks L (see Algorithm 3 (Case 1)).

We maintain for each point w of W its closest point L(w) in L and, at each step, we select the point w ∈ W which is most distant from its closest landmark L(w). The next lemma shows that this strategy implies that the separation ratio remains constant over the refinement.

For any i > 0, let L i and λ i denote respectively L and λ * = max w∈W w -L(w) at the end of the i-th iteration of the main loop of the algorithm. If we label the points by their insertion order, we have L i = {p 1 , ..., p i } and λ i = d(p i , L i-1 ). Since L i grows with i, λ i is a decreasing function of i. Moreover:

Lemma 5.8 At each iteration i > 0, L i is a (λ i , 1)-net of W .

CHAPTER 5. GOOD TRIANGULATIONS

Proof The fact that L i is λ i -dense in W follows directly from the definition of λ i . Let us show that L i is λ i separated. Consider a closest pair of points p a p b of L i and assume that p b has been inserted after p a . Then

p a -p b = λ b ≥ λ i . This implies that L i is λ i -separated.
In some applications, we are interested in selecting a given number k of points. We are then interested in the following k-centers problem : select from W a subset L of k points that are as far apart from each other as possible. More precisely, we want to choose a subset L of k points of W in such a way as to maximize the separation of L, i.e. the minimum pairwise distance between the points of L. We can use Algorithm 3 (Case 2) for that purpose. Interestingly, this simple greedy algorithm provides a 2-approximation to the problem. Lemma 5.9 (Approximation of the k-centers problem) Algorithm 3 (Case 2) provides an approximation ratio of 2 for the k-centers problem.

Proof Let L k = l 1 , ..., l k be the set of the k first selected points by the algorithm, labelled according to the order they have been selected. Let λ k denote the distance of the k-th point from all previously selected points l i , i = 1, ..., k -1. Consider the set of balls B(l i , λ k ), i, ..., k -1. Their union contains all the points of W and therefore all the points of any optimal solution L opt to the k-centers problem. Since |L opt | = k and there are k -1 balls, there must be two points of L opt that fall in the same ball B(l i , λ k ) for some i ≤ k -1. It follows that there exists a pair of points in L opt that is at distance at most 2λ k by the triangular inequality.

On the other hand, the distance between any two points of L k is at least λ k by Lemma 5.8. It follows that Algorithm 3 (Case 2) provides an approximation ratio of 2 for the k-centers problem.

Thick simplices

For a given set of points P ∈ R 2 , Del(P ) maximizes, over all possible triangulations of P , the smallest angle of the triangles (Exercise 5.6) and it can be easily shown that, if P is a net, then the angles of the triangles are lower bounded by some positive constant (Exercise 5.5). However, the property $",)+/, The four vertices of a squared face f of a uniform grid are cocircular and can be circumscribed by a sphere centered at the center of the face. This sphere does not enclose any other vertex of the grid. We can then slightly perturb the vertices of f so that the convex hull of the vertices of f is now a tetrahedron of positive volume whose circumscribing sphere does not include any other vertex of the grid. Hence, it is a tetrahedron in the Delaunay triangulation of the (perturbed) vertices of the grid.

does not hold for higher dimensional Delaunay triangulations and one cannot bound the dihedral angles of higher dimensional simplices as shown in Figure 5.1.

For any vertex p of a simplex σ, the face opposite p, denoted by σ p , is the convex hull of the other vertices of σ. The altitude of p in σ is the distance D(p, σ) = d(p, aff(σ p )) from p to the affine space aff(σ p ) spanned by σ p . The altitude D(σ) of σ is the minimum over all vertices p of σ of D(p, σ). A poorly-shaped simplex can be characterized by the existence of a relatively small altitude. The thickness of a j-simplex σ is the dimensionless quantity

Θ(σ) = 1 if j = 0 D(σ) j∆(σ)
otherwise,

where ∆(σ) denotes the diameter of σ, i.e. the length of its longest edge.

Thickness and singular value

We will show in the next lemma that the thickness of a simplex is related to the singular values of a matrix. Before stating the lemma, we recall some well known results on matrices and their singular values and refer the reader to the book of Trefethen and Bau [START_REF] Trefethen | Numerical linear algebra[END_REF] for an excellent introduction to singular values. If A is a d × j matrix with j ≤ d, we assume that the singular values of A are ordered according to decreasing absolute values and we denote the i th singular value by s i (A). We have s 1 (A) = A = sup x =1 Ax and s j (A) = inf x =1 Ax . We will employ the following standard observation:

Lemma 5.10 If µ > 0 is an upper bound on the norms of the columns of

A, then s 1 (A) = A ≤ √ jµ.
From the given definitions, one can verify that if

A is an invertible d × d ma- trix, then s 1 (A -1 ) = s d (A) -1
, but it is convenient to also accommodate nonsquare matrices, corresponding to simplices that are not full dimensional. If A is a d × j matrix of rank j ≤ d, then the pseudo-inverse A † = (A T A) -1 A T is the unique left inverse of A whose kernel is the orthogonal complement of the column space of A. We have the following general observation [START_REF] Trefethen | Numerical linear algebra[END_REF]:

Lemma 5.11 Let A be a d×j matrix of rank j ≤ d and let A † be its pseudo inverse = (A T A) -1 A T . We have

s i (A † ) = s j-i+1 (A) -1 , for i = 1, . . . , j.
In particular,

s j (A) = s 1 (A † ) -1 .
The columns of A form a basis for the column space of A. The pseudoinverse can also be described in terms of the dual basis. If we denote the columns of A by {a i }, then the i th dual vector, w i , is the unique vector in the column space of A such that w T i a i = 1 and w T i a j = 0 if i = j. Then A † is the j × d matrix whose i th row is w T i .

By exploiting a close connection between the altitudes of a simplex and the vectors dual to a basis defined by the simplex, we obtain the following key lemma that relates the thickness of a simplex to the smallest singular value of an associated matrix:

σ p i p i p 0 w i Figure 5
.2: Choosing p 0 as the origin, the edges emanating from p 0 in σ = [p 0 , . . . , p j ] form a basis for aff(σ). The proof of Lemma 5.12 demonstrates that the dual basis {w i } consists of vectors that are orthogonal to the facets, and with magnitude equal to the inverse of the corresponding altitude.

Lemma 5.12 (Thickness and singular value) Let σ = conv(p 0 , . . . , p j ) be a non-degenerate j-simplex in R d , with j > 0, and let P be the d × j matrix whose i th column is p ip 0 . Then

s j (P) ≥ D(σ)/ j = j Θ(σ)∆(σ).
Proof We first show that the i th row of P † is given by w T i , where w i is orthogonal to aff(σ p i ), and

w i = D(p i , σ) -1 .
Indeed, by the definition of P † , it follows that w i belongs to the column space of P, and it is orthogonal to all (p ip 0 ) for i = i. Let u i = w i / w i . By the definition of w i , we have

w T i (p i -p 0 ) = 1 = w i u T i (p i -p 0 )
. By the definition of the altitude of a vertex, we have

u T i (p i -p 0 ) = D(p i , σ). Thus w i = D(p i , σ) -1 . Since max 1≤i≤j D(p i , σ) -1 = min 1≤i≤j D(p i , σ) -1 = (jΘ(σ)∆(σ)) -1 , Lemma 5.10, yields s 1 (P † ) ≤ ( jΘ(σ)∆(σ)) -1 .
The stated bound on s j (P) follows from Lemma 5.11.

CHAPTER 5. GOOD TRIANGULATIONS

The proof of Lemma 5.12 shows that the pseudoinverse of P has a natural geometric interpretation in terms of the altitudes of σ, and thus the altitudes provide a convenient lower bound on s j (P). By Lemma 5.10, s 1 (P) ≤ √ j∆(σ), and thus Θ(σ) ≤ s j (P) s 1 (P) . In other words, Θ(σ) -1 provides a convenient upper bound on the condition number of P. Roughly speaking, thickness imparts a kind of stability on the geometric properties of a simplex. This is exactly what is required when we want to show that a small change in a simplex will not yield a large change in some geometric quantity of interest.

Whitney's angle bound

The following lemma is due to Whitney. It shows that, if the vertices of a simplex σ are at small relative distance from an affine space H, and if the thickness of the simplex is bounded away from 0, then the angle between the affine hull of σ and H is small. Before stating the lemma, we define angles between vector spaces. Definition 5.13 (Angles between subspaces) If U and V are vector subspaces of R d , with dim U ≤ dim V , the angle between them is defined by sin ∠(U, V ) = sup

u∈U u =1 u -π V u , (5.2)
where π V is the orthogonal projection onto V .

Alternatively, the angle between vector subspaces U and V can be defined as:

∠(U, V ) = max u∈U {min v∈V ∠(u, v)} (5.
3)

The angle between affine subspaces K and H is defined as the angle between the corresponding parallel vector subspaces.

Lemma 5.14 (Whitney's angle bound) Suppose σ is a j-simplex of R d , j < d, whose vertices all lie within a distance δ from a k-dimensional affine space h ⊂ R d with k ≥ j. Then

sin ∠(aff(σ), h) ≤ 2j δ D(σ) = 2δ Θ(σ)∆(σ)
.

Proof Suppose σ = conv(p 0 , . . . , p j ). Choose p 0 as the origin of R d and let Π h : R d → h be the orthogonal projection onto h. Let u be any unit vector in aff(σ). Since the vectors v i = (p ip 0 ), i ∈ {1, . . . , j} form a basis for aff(σ), we may write u = Pa, where P is the d × j matrix whose i th column is v i , and a ∈ R j is the vector of coefficients. Then, defining

X = P -Π h P, we get u -Π h u = Xa ≤ X a . Since d(p i , h) ≤ h for all 0 ≤ i ≤ j, v i -Π h v i ≤ 2δ.
It follows then from Lemma 5.10 that X ≤ 2 jδ.

Observing that 1 = u = Pa ≥ a inf x =1 Px = a s j (P), we find a ≤ 1 s j (P) ,

and the result follows from Lemma 5.12.

Whitney's angle bound will be especially useful in Chapter 8. There, h will be the tangent space T p at a point p of a smooth manifold M, and σ will be a thick simplex whose vertices are close (relatively to the diameter of the simplex) to T p . Whitney's lemma asserts that the affine hull of σ makes a small angle with T p . Thickness plays a crucial role here as the following example shows. The Schwarz lantern is a polyhedral surface inscribed in a cylinder as shown in Figure 5.3. By increasing the number of vertices of the lantern, we can make the Hausdorff distance between the lantern and the cylinder arbitrarily small but increasing the sampling density does not guarantee that the planes of the facets of the lantern provide a good approximation of the tangent planes of the cylinder. In fact, the angle between the normal to a facet and the normal to the cylinder at any of the vertices of the facet can be made arbitrarily close to π/2. Such a situation cannot happen if the facets have a bounded thickness as stated by Whitney's lemma.

Thick triangulations via weighting

The notion of thickness introduced in Section 5.2 is an important measure of the shape of a simplex. A simplicial complex is thick when all its simplices CHAPTER 5. GOOD TRIANGULATIONS are thick. We have seen (Figure 5.1) that Delaunay triangulations are not necessarily thick even if the vertices form an (ε, η)-net. The goal of this section is to show that a thick simplicial complex can nevertheless be obtained from an (ε, η)-net by assigning (relatively small) weights to the points of the net and considering the weighted Delaunay triangulation of the resulting set of weighted points.

To keep the exposition simple, we depart from the rest of this book and will work in this section in the flat torus

T d = R d /Z d instead of R d .
As a consequence, if P is a finite set of points in T d , the Delaunay complex and weighted Delaunay complexes of P have no boundary. Boundary issues obscure the central properties we want to develop. It is not difficult to extend the results to the case of a bounded domain of R d , provided that we only look sufficiently far away from the boundary of the domain.

Weighting schemes

We consider a set of points P that is an (ε, η)-net in T d . A weighting scheme on P is a function w from P to R which assigns to each point p ∈ P a weight w(p) ∈ R. We denote by P the resulting set of weighted points, i. e. P = {(p, w(p) : p ∈ P }, and by Del( P ) the corresponding weighted Delaunay triangulation.

We restrict the weighting scheme to non negative weights. The relative amplitude w of the weighting scheme w is defined as

w = max p∈P w(p) L 2 (p) ,
where L(p) is the distance from p to its nearest neighbor in P \ p. We also wish that each point of P appears as a vertex of Del( P ). As shown in Section 4.4.3, this condition is ensured if, for each p ∈ P , w(p) < L 2 (p) 4 . From now on, we will only consider weighting schemes that have a relative amplitude smaller than 1 4 , that is w ≤ w0 where w0 is a constant smaller than 1 4 . The main result of this section is that, for any (ε, η)-net P of T d , given a small enough constant Θ 0 , there are weighting schemes with relative amplitude smaller than w0 < 1 4 and such that the weighted Delaunay triangulation Del( P ) has no j-simplex with thickness less than Θ j 0 , for j = 1, . . . , d. Moreover, as we will see in Section 5.3, such weighting schemes can be computed by a simple randomized algorithm.

In the rest of this section, we use the same notation σ for a geometric simplex with vertices in P and for its abstract counterpart which is just the subset of P formed by the vertices of σ. Given a weighting scheme w defined on P , each simplex σ ⊂ P corresponds to a subset σ of P : σ = {(p, w(p) : p ∈ σ}. Two weighted points are said to be orthogonal if their weighted distance is zero.

A weighted point orthogonal to all the weighted points of σ is said to be orthogonal to σ. If σ is a simplex of dimension j, the weighted points orthogonal to σ are centered on an affine subspace of dimension dj orthogonal to the affine subspace aff(σ). The intersection point of these two subspaces is denoted by c(σ). Let (c(σ), R 2 (σ)) be the weighted point centered on c(σ) and orthogonal to σ. The weighted point (c(σ), R 2 (σ)) is the weighted point with minimal weight among all the weighted points orthogonal to σ. The point c(σ) is called the weighted center of the simplex σ and R(σ) is called the weighted radius of σ.

Note that weighted center c(σ) and the weighted radius R(σ) depend on the weights assigned to the vertices of σ and are different from the center c(σ) and circumradius R(σ) of σ. We will make use of the following lemma that bounds the weighted radii and the diameters of the simplexes in Del( P ).

Lemma 5.15 (Weighted radii and diameters of simplices in Del( P )) Let P be an (ε, η)-net of T d and assume that a non negative weighting scheme with relative amplitude smaller than w0 < 1 4 has been defined on P . Then, any simplex σ of Del( P ) has a weighted radius R(σ) that is at most and a diameter ∆(τ ) that is at most 2 √ 2ε.

Proof Let σ be a simplex of Del( P ). The simplex σ being included in some d-simplex τ of Del( P ), the weighted radius R(σ) of σ is at most the weighted radius R(τ ) of τ . We now prove that R(τ ) is at most . Indeed otherwise, since P is ε-dense, the ball B(c(τ ), R(τ )) associated to the weighted center (c(τ ), R 2 (τ )) of τ would include a point q of P . Then the weighted distance from q to (c(τ ), R 2 (τ )) is negative, and this contradicts the fact that σ belongs to Del( P ).

Let us consider now the Euclidean distance d(c(σ), p) from the weighted circumcenter c(σ) to any vertex p of σ. We have:

d(c(σ), p) 2 = R(σ) 2 + w(p) ≤ ε 2 + w0 L(p) 2 .
where L(p) is the distance from p to its nearest neighbor in P \ {p}. From Lemma 5.1, we have L(p) ≤ 2ε and thus d(c(σ), p) ≤ ε √ 1 + 4 w0 ≤ √ 2ε. Since this bound holds for any vertex p of σ, we conclude that the diameter ∆(σ) of σ is at most 2 √ 2ε.

Θ 0 -thickness and flakes

A simplex that is not thick has a relatively small altitude. We focus here on a special class of non-thick simplices, called flakes in which all the altitudes are relatively small. Let Θ 0 be a constant smaller than 1.

Definition 5.16 (Θ 0 -flakes) A j-simplex σ is Θ 0 -thick if Θ(σ) ≥ Θ j 0 . A Θ 0 -
flake is a simplex that is not Θ 0 -thick but whose proper faces are all Θ 0 -thick.

Observe that a flake must have dimension at least 2, since Θ(σ) = 1 for any simplex σ with dimension j < 2.

THICK TRIANGULATIONS VIA WEIGHTING

119

A simplicial complex whose simplices are all Θ 0 -thick is said to be Θ 0 -thick. Observe that a simplicial complex is Θ 0 -thick iff it includes no Θ 0 -flake. Indeed, if σ is not Θ 0 -thick, then either it is a Θ 0 -flake or it has a proper j-face σ j ⊂ σ that is not Θ 0 -thick. By considering such a face with minimal dimension, we arrive at the following observation: Lemma 5.17 A simplex is not Θ 0 -thick if and only if it has a face that is a Θ 0 -flake.

We show in Lemma 5.19 below an upper bound on the altitudes of a Θ 0flake. First, we provide a general relationship between the altitudes of a simplex: Lemma 5.18 Let σ be a j-simplex with j ≥ 2. If p and q are two vertices of σ, we note σ p the subface σ \ {p} of σ and σ q the subface σ \ {q}. The altitudes D(p, σ) and D(p, σ q ) of p within respectively σ and σ q and the altitudes D(q, σ) and D(q, σ p ) of q within respectively σ and σ p satisfy the following relation D(p, σ) D(p, σ q ) = D(q, σ) D(q, σ p ) .

Proof The proof follows from a volume computation. Let vol j (σ), vol j-1 (σ p ) and vol j-2 (σ pq ) be the volumes of the simplices σ, σ p and σ pq = σ \ {p, q} respectively. We have

vol j (σ) = 1 j D(p, σ)vol j-1 (σ p ) = 1 j(j -1)
D(p, σ)D(q, σ p )vol j-2 (σ pq ).

The similar relation, obtained replacing p by q, obviously holds and both relations together prove the lemma.

We arrive at the following important observation about flake simplices:

Lemma 5.19 (Flakes have small altitudes) If a k-simplex σ is a Θ 0flake, then for every vertex p ∈ σ, the altitude D(p, σ) satisfies the bound

D(p, σ) < k k -1 ∆ 2 (σ)Θ 0 L(σ) < 2 ∆ 2 (σ)Θ 0 L(σ) ,
where ∆(σ) and L(σ) are the lengths of the longest and shortest edges of σ.

Proof Recalling Lemma 5.18, we have

D(p, σ) = D(q, σ)D(p, σ q ) D(q, σ p ) , (5.4)
and taking q to be a vertex with minimal altitude in σ, we have

D(q, σ) = kΘ(σ)∆(σ) < kΘ k 0 ∆(σ). (5.5)
Moreover, since σ p is Θ 0 -thick, we have:

D(q, σ p ) ≥ (k -1)Θ(σ p )∆(σ p ) ≥ (k -1)Θ k-1 0 L(σ). (5.6)
Furthermore: D(p, σ q ) ≤ ∆(σ q ) ≤ ∆(σ).

(5.7)

Plugging Equations 5.5, 5.6 and 5.7 into Equation 5.4 yields the claimed bound.

The weight range of a flake with small radius

Let σ be a Θ 0 flake of dimension j. If we assign weights to the vertices of σ, the weighted radius R(σ) of σ depends on the weights of its vertices. We show here that to keep the weighted radius R(σ) smaller than a given ε we have to choose the weight of each vertex of σ within a small interval whose measure is linear in Θ 0 .

Lemma 5.20 Let σ be a Θ 0 -flake and assume that we are given a weighting scheme with non negative weights on the vertices of σ. If the weighted radius R(σ) of σ is smaller than ε, the weight w(p) of any vertex p of σ belongs to an interval I(σ, p) whose measure |I(σ, p)| satisfies:

|I(σ, p)| ≤ 8 ∆(σ) 2 L(σ) Θ 0 ε.
If furthermore the vertices of σ belongs to an (ε, η)-net, and the weighting scheme has a relative amplitude smaller than w0 < 1 4 , the measure of I(σ, p) satisfies: Proof Let c(σ) and R(σ) be respectively the weighted center and weighted radius of σ. Likewise, we use c(σ p ) and R(σ p ) for respectively the weighted center and the weighted radius of σ p , where σ p is the subface σ \ p of σ.

|I(σ, p)| ≤ |I| def = 64 Θ 0 2 η . R(σ) w(p) R(σ p ) aff(σ p ) c(σ) D(p, σ) p c(σ p ) N (σ p )
Referring to Figure 5.4, we get :

R 2 (σ) = d 2 (c(σ), c(σ p )) + R 2 (σ p ), (5.8)
The set of points of R d with equal weighted distances to the vertices of σ p is an affine subspace we denote by N (σ p ). Writing d(p, N (σ p )) for the distance from p to N (σ p ), we have: Using Equations 5.8 and 5.9 together, we get: L(σ) , and, from Equation 5.8, we get that d(c(σ), c(σ p )) is at most R(σ). Therefore, if R(σ) ≤ ε, the weight w(p) of p belongs to the interval I(σ, p), centered at F (p, σ), of measure

R 2 (σ) + w(p) = d 2 (p, c(σ)) = d 2 (p, N (σ p )) + (D(p, σ) -H(p, σ)) 2 (5.
w(p) = d 2 (p, N (σ p )) + (D(p, σ) -H(p, σ)) 2 -R 2 (σ) = d 2 (p, N (σ p )) + D 2 (p, σ) -R 2 (σ p ) -2D(p, σ)H(p, σ).
|I(σ, p)| ≤ 8 ∆(σ) 2 L(σ) Θ 0 ε. ( 5

Lovász local lemma

We will see in Section 5.3 how to to compute, for a given input set of points P , a weighting scheme yielding to a thick weighted Delaunay triangulation. This construction relies on the constructive proof of the Lovász local lemma due to Moser and Tardos. In this section, we recall without proof these important results.

Lovász local lemma [START_REF] Alon | The Probabilistic Method[END_REF] is a powerful tool to prove the existence of combinatorial objects. Let A be a finite collection of "bad" events in some probability space. The lemma shows that the probability that none of these events occur is positive provided that the individual events occur with a sufficiently small probability and there is limited dependence among them. Here is the lemma in a simple form that will be sufficient for our purposes.

THICK TRIANGULATIONS VIA WEIGHTING 123

Theorem 5.21 (Lovász local lemma) Let A = {A 1 , . . . , A N } be a finite set of events in some probability space. Suppose that each event A i is independent of all but at most Γ of the other events and that Pr

[A i ] ≤ for all 1 ≤ i ≤ N . If ≤ 1 e(Γ + 1)
(5.12)

where e denotes the base of the natural logarithm, then the probability that none of the events in A occurs is strictly positive.

Assume that the events are determined by a set of independent random variables. Each event is determined by a subset of those random variables. Two events are independent if the subsets of random variables determining each of them do not overlap. In such a case, Moser and Tardos gave a constructive proof of the Lovász lemma [START_REF] Moser | A constructive proof of the generalized Lovász lemma[END_REF][START_REF] Spencer | Robin Moser makes Lovász Local Lemma Algorithmic[END_REF]. The proof leads to a simple and natural algorithm that repeatedly checks whether some event in A occurs. In the affirmative, the algorithm picks an arbitrary occurring event, say A, and resamples A, where we call resampling of an event A the operation that consists in choosing new random values for the variables determining A.

Algorithm 4 Moser Tardos algorithm

Input: a finite set A of events determined by a finite set P of independent random variables for all P ∈ P do v P ← a random evaluation of P while some event of A occurs do pick any such event A ∈ A resample A return {v P , P ∈ P} Moser and Tardos proved that this simple algorithm quickly terminates, providing an assignment of the random variables that avoids all of the events in A. It is important to note that the selection mechanism for picking an occurring event in the while loop is arbitrary and does not affect the correctness of the algorithm.

Theorem 5.22 (Moser Tardos) Assume that the same conditions as in Theorem 5.21 hold. Assume, in addition, that the events are determined by a set P of n independent random variables. Moser Tardos randomized algorithm computes an assignment of values for the variables in P such that no event in A occurs. The algorithm resamples each event at most 1 Γ expected times and the expected total number of resampling steps is at most O(n).

Applying the Lovász local lemma to remove flakes

Let P be an (ε, η)-net of R d and w0 a constant less than 1/4. Now we take for the weights of the points in P independent random variables and we pick the weight of each point p uniformly at random in the interval [0, w0 L 2 (p)]. An event occurs when there exists a Θ 0 -flake σ ⊂ P that has a weighted radius R(σ) not greater than ε. Since we know from Lemma 5.15, that all simplices in Del( P ) have a weighted radius R(σ) not greater than ε, removing all events will lead to a Θ 0 -thick complex. For convenience, we will often identify an event and the associated flake.

Lemma 5. 23 The probability that an event occurs is ≤ 64 Θ 0 w0 η3 .

Proof Let σ be a Θ 0 -flake included in P and assume that the weights of all the vertices of σ except one, say p, have already been assigned. We know from Lemma 5.20 that if the weighted radius R(σ) is not greater than ε, the weight w(p) belongs to an interval of measure less than |I| = 64 Θ 0 2 η . It follows that the probability that an event occurs is at most

|I| w0 L 2 (p) ≤ 64 Θ 0 w0 η3 ,
which implies the same bound on the probability of the event σ.

Lemma 5.24 Each event overlaps at most Γ other events, where

Γ + 1 ≤ 13 η d(d+1)
.

Proof Let σ be a Θ 0 -flake with weighted center c(σ) and weighted radius R(σ) ≤ ε. An event that overlaps σ is a Θ 0 -flake σ with a weighted radius at most ε that shares a vertex p with σ. Let q be a vertex of σ . We have:

d(c(σ), q) ≤ d(c(σ), p) + d(p, q) ≤ R(σ) 2 + w(p) + ∆(σ ) Since R(σ) ≤ ε, w(p) ≤ w0 L(p) 2 ≤
d(c(σ), q) ≤ 3 √ 2ε.
Therefore, any vertex of an event that overlap σ lies in the ball B(c(σ), r) of radius r = rε = 3 √ 2ε. Since P is η-separated, this ball contains at most J(r) points of P , with

J(r) = (r + η 2 ) d ( η 2 ) d = 1 + 2r η d ≤ 1 + 6 √ 2 η d ≤ 11 η d .
where the last inequality uses the fact that η ≤ 2.

Since the Θ 0 -flake σ also has its vertices within the ball B(c(σ), r), we can bound Γ + 1 by the number of simplices with vertices within B(c(σ), r), i.e.

Γ + 1 ≤ Σ d+1 i=2 J(r) i ≤ (1 + J(r)) d+1 ≤ 1 + 11 η d d+1
.

Using η ≤ 2 and the fact that, for all a ∈ R + and b ∈ R + , a d + b d ≤ (a + b) d , we get:

Γ + 1 ≤ 13 η d(d+1)
.

We are now ready to apply the Lovász local lemma. We will assume that 13 η

d(d+1) 64 Θ 0 w0 η3 ≤ 1 e . (5.13)
In view of Lemmas 5.23 and 5.24, this condition ensures that we have ≤ 1 e(Γ+1) , and therefore there exists a weight assignment on P with relative amplitude less than w0 , such that P includes no Θ 0 -flakes with a weighted radius less than ε. Since any simplex in the weighted Delaunay triangulation Del( P ) has a weighted radius less than ε (Lemma 5.15), we conclude that such an assignment yields a weighted Delaunay triangulation Del( P ) that has no Θ 0 -flakes.

126

CHAPTER 5. GOOD TRIANGULATIONS Theorem 5.25 Let P be an (ε, η)-net of T d and w0 ≤ 1 4 . If Equation 5.13 is satisfied, there is a weight assignment on P with relative amplitude less than w0 such that the weighted Delaunay triangulation Del( P ) is Θ 0 -thick.

Observe that the thickness Θ 0 that we can guarantee is bounded by Equation 5.13 that constrains Θ 0 to be small enough with respect to η and w0 . Note that the bound is very small and depends as 2 -d 2 on d. Still it does not depend on the sampling density ε.

Algorithm

Based on the results of the previous subsections, we will apply Moser Tardos algorithm to our context so as to obtain a weighted Delaunay triangulation that is Θ 0 -thick. Algorithm 5 takes as input an (ε, η)-net P of T d , a constant w0 < 1/4 and a constant Θ 0 small enough to satisfy Equation 5.13. As proved below, the algorithm outputs a weighting scheme on P whose relative amplitude is smaller than w0 and such that the weighted Delaunay triangulation Del( P ) is Θ 0 -thick. The algorithm maintains the weighted Delaunay triangulation Del( P ) while resampling the Θ 0 -flakes that occur in Del( P ) until they all disappear. Resampling a simplex σ consists in reassigned random weights to the vertices of σ. As already mentioned, the weights of the different vertices are picked independently and the weight w(p) of vertex p is taken uniformly at random in the interval [0, w0 L 2 (p)].

Algorithm 5 Thick weighted Delaunay triangulation

Input: P , w0 , Θ 0 Initialize all weights to 0 and compute Del( P ) = Del(P ) while there are Θ 0 -flakes in Del( P ) do choose a Θ 0 -flake σ in Del( P ) resample σ update Del( P ) Output: A weighting scheme on P and the corresponding weighted Delaunay triangulation which is granted to be Θ 0 -thick. Theorem 5.26 If P is an (ε, η)-net of T d , w0 a constant less than 1/4 and Θ 0 a constant such that Equation 5.13 holds, Algorithm 5 outputs a weighting scheme P on P whose relative amplitude is smaller than w0 and such that the weighted Delaunay triangulation Del( P ) is Θ 0 -thick. Its expected complexity is linear with respect to the size of P .

Proof Algorithm 5 resamples the Θ 0 -flakes that occur in the weighted Delaunay triangulation Del( P ). Since the Θ 0 -flakes in Del( P ) have weighted radii at most ε, they are events as defined in Section 5.3.5. Therefore Algorithm 5 is a variant of Moser Tardos algorithm applied to the Θ 0 -flakes with small weighted radii. The main difference is that Algorithm 5 keeps only track of Θ 0 -flakes in the current Del( P ) and not of all possible Θ 0 -flakes with small weighted radii included in P . According to Theorem 5.22, Condition 5.13 ensures that Moser Tardos algorithm terminates whatever may be the order in which the events are resampled. Therefore the condition, a fortiori, guarantees the termination of Algorithm 5.

Each resampling involves the reweighting of at most d + 1 vertices. Since P is an (ε, η)-net, and the weighting scheme has bounded relative amplitude, the weighted Delaunay complex Del( P ) can be updated in constant time. Thus the expected complexity of Agorithm 5 is proportional to the number of resampling which is O(|P |) by Theorem 5.22.

Protection

We introduce now the notion of protection of a simplex. The notion of protection is stronger than the notion of thickness (see Lemma 5.27) and some positive protection can be obtained by perturbing the position of the points of P . This is another mean to ensure Delaunay triangulations to have positive thickness (other than weight assignment as discussed in the previous section). Protection will also be used in Section 6.2.

We say that a simplex σ ⊂ Del(P ) is δ-protected if there exists a point c σ , called a δ-protection center of σ such that c σq > c σp + δ ∀p ∈ σ and ∀q ∈ P \ σ.

(5.14)

We will write δ = δ ε . Note that Equation 5.14 implies the following inequality

c σ -q 2 > c σ -p 2 + δ 2 ∀p ∈ σ
Θ(σ) ≥ δ2
8d .

Before we prove the lemma, we state and prove two easy claims that will be useful to prove the second part of the lemma. (5.16)

If R ≥ R , we have cos(θ) ≥ λ 2 .
Proof Let q ∈ S; applying the cosine rule to the triangle [cc q] gives

λ 2 R 2 + R 2 -2λR 2 cos(θ) = R 2 , (5.17)
which proves Equation 5.16. If R ≥ R , then ρ ≤ 1, and cos(θ) ≥ λ/2 immediately follows from Equation 5. [START_REF] Boissonnat | Local criteria for triangulation of manifolds[END_REF]. Proof Let q ∈ S, applying the cosine rule to the triangle [cc q] gives

If B = B(c, R) is a d-ball, we denote by B +δ the ball B(c, √ R 2 + δ 2 ).
λ 2 R 2 + R 2 -2λR 2 cos( θ) = R 2 + δ 2 .
Subtracting Equation 5.17 from the previous equality yields δ 2 = 2λR 2 (cos(θ)cos( θ)), which proves the lemma.

Proof of Lemma 5.27 1. Let p and q be two closest points of P . The edge [pq] is an edge of Del(P ). We denote by σ a d-simplex of Del(P ) that contains [pq] and by σ a d-simplex of Del(P ) that contains one of the two vertices of [pq] but not the other. Since σ is δ-protected, we must have pq ≥ δ.

2. Since Θ(τ ) ≥ Θ(σ) for any simplex τ ⊆ σ, it is sufficient to consider the case of a d-simplex σ. Since |P | > d + 1, there exists at least one other d-simplex σ of Del(P ) that share a facet τ with σ. Let B(σ) = B(c, R) and B(σ ) = B(c , R ) be the circumscribing balls of σ and σ respectively. The spheres ∂B and ∂B +δ intersect in a (d -2)-sphere S which is contained in a hyperplane H parallel to the hyperplane H = aff(τ ). For any q ∈ S we have

d( H, H) = d(q, H) = R(cos(θ) -cos( θ)) = δ 2 2 c -c ,
where the last equality follows from Claim 5.29 and d( H, H) denotes the distance between the two parallel hyperplanes. See Figure 5.5 for an illustration. Since p ∈ ∂B, p belongs to B(σ ) +δ if and only if p lies in the strip bounded by H and H, which is equivalent to

d(p, H) = D(p, σ) < δ 2 2 c -c .
We conclude that, if σ is δ-protected, the ball

B(σ) +δ = B(c σ , R 2 σ + δ 2 ) ⊆ B(c σ , R σ + δ)
does not contain points of P \ σ, which implies from the inequality above that

d(p, H) = D(p, σ) ≥ δ 2 2 c -c .
For any simplex σ, we have D(p, σ) ≤ 2R(σ) for all p ∈ σ, where R(σ) denotes the radius of the circumsphere of σ. For any σ in the triangulation of an ε-net, we have R(σ) ≤ ε. Thus D(p, σ) ≤ 2ε, and the inequality above yields cc ≥ δ 2 4ε . We further obtain

Θ(σ) = min p∈σ D(p, σ) d ∆(σ) ≥ δ 2 8d ε 2 = δ2 8d . 2
In Section 5.3.5, we have used a variant of Moser Tardos algorithm to obtain a thick weighted Delaunay complex. Instead of weighting the points, we can perturb their positions so that the Delaunay triangulation of the perturbed point set P is δ-protected for some small enough δ > 0. Thanks to Lemma 5.27, the Delaunay triangulation of the perturbed points will have some positive thickness (see Exercise 5.12).

Exercises

Exercise 5.1 Let Ω be a subset of R d and P a finite ε-dense set of points in Ω. Show that all Delaunay simplices of P with a vertex at distance greater than 2ε from the boundary of Ω belong to Del |Ω (P ). Exercise 5.6 (Max-min) Let P be a finite set of points in general position in the plane. To any triangulation T of P we attach the vector V (T ) = (α 1 , ..., α 3t ) where the α i ∈ [0, π] are the angles of the t triangles of T , sorted by increasing values. Show that Del(P ) is, among all triangulations of P , the one that maximizes V (T ) for the lexicographic order. In particular, Del(P ) maximizes the smallest angle.

Exercise 5.7 Let U and V be two vector spaces of R d with dim U ≤ dim V . Show that ∠(U, V ) = ∠(V ⊥ , U ⊥ ) where U ⊥ (resp., V ⊥ ) denotes the vector space normal to U (resp., V ).

Exercise 5.8 Let h and h be two affine spaces of the same dimension embedded in R d , and let u be a vector of R d . Show that ∠(u, h ) ≤ ∠(u, h)+ ∠(h, h ).

Exercise 5.9 Let τ be a j-simplex. Show that L(τ ) ≥ D(p, τ ) ≥ j! Θ(τ ) ∆(τ ) (see Lemma 5.19 for the notations).

Exercise 5.10 Bound from below the dihedral angles of a d-simplex of R d as a function of its thickness.

Exercise 5.11 (Inheritance of protection) Let P be an (ε, η)-net of a bounded domain Ω ⊂ R d . We say that a simplex is δ-power protected if Equation 5.15 is satisfied, i.e. there exists a point c σ such that

c σ -q 2 > c σ -p 2 + δ 2 ∀p ∈ σ and ∀q ∈ L \ σ.
Show that if every d-simplex in Del(P ) is δ-power protected, then all simplices (of all dimensions) in Del(P ) are at least δ -power protected where δ = δ d . deduce a similar result if one replaces the power protection by the protection as defined in Section 5.4. (Hint : use the lifting map introduced in the proofs of Theorems 4.3 and 4.6) Exercise 5.12 (Protection via perturbation) Let P be an (ε, η)-net P of the flat torus T d = R d /Z d . Propose an algorithm that perturbs the points of P so that the Delaunay triangulation of the perturbed point set P is δ-protected for some a small enough δ > 0 (and thus has some positive thickness by Lemma 5.27). If p is a point of P , the associated perturbed point is picked at random in the ball B(p, ρ) for some ρ > 0. Use a variant of Moser Tardos algorithm .

Bibliographical notes

The farthest point insertion algorithm (Algorithm 3) has been popularized by Gonzales in the context of clustering data sets [START_REF] Gonzales | Clustering to minimize the maximaum intercluster distance[END_REF] and has found numerous applications in many fields. Gonzales proved Lemma 5.9 and Feder and Greene [START_REF] Feder | Optimal algorithms for approximate clustering[END_REF] showed that no polynomial-time algorithm exists with a constant approximation ratio close to 2 unless P = N P . They also improved the O(n 2 ) time complexity of Algorithm 3 to O(n log k) when the points live in Euclidean space. See also the paper by Har-Peled and Mendel [START_REF] Har-Peled | Fast construction of nets in lowdimensional metrics and their applications[END_REF] that contains further improvements and extensions, and, in particular, shows how to construct a hierarchical representation of a point set, called the net-tree, from the sequence of points provided by the farthest point insertion. The proof of the complexity of the incremental randomized construction of nets (Theorem 5.6) is due to Boissonnat, Devillers, Dutta and Glisse [START_REF] Boissonnat | Delaunay triangulation of a random sample of a good sample has linear size[END_REF]. Their paper contains also a solution to Exercise 5.2.

The notion of thick triangulations goes back to the early work on differential topology by Cairns [START_REF] Cairns | A simple triangulation method for smooth maniolds[END_REF], Whitehead [START_REF] Whitehead | On C 1 -complexes[END_REF], Whitney [START_REF] Whitney | Geometric integration theory[END_REF], Munkres [START_REF] Munkres | Elementary differential topology[END_REF] and others. Thick triangulations also play a central role in the work of Cheeger et al. [START_REF] Cheeger | On the curvature of piecewise flat spaces[END_REF] and Fu [START_REF] Fu | Convergence of curvatures in secant approximations[END_REF] on curvature measures. Since this notion appeared in different places and contexts, various names have been used, e.g. thickness, fullness or relative thickness. Our presentation follows the work of Boissonnat, Dyer and Ghosh [START_REF] Boissonnat | The Stability of Delaunay Triangulations[END_REF]. Lemma 5.14 is due to Whitney [START_REF] Whitney | Geometric integration theory[END_REF].

More recently, thick triangulations have been found important in mesh generation where numerical simulations require meshes to be thick [START_REF] Edelsbrunner | Geometry and Topology for Mesh Generation[END_REF]. The notion of flake simplex introduced in this chapter is an extension of the notion of sliver introduced by Cheng et al. in the context of 3-dimensional mesh generation [START_REF] Cheng | Sliver Exudation[END_REF][START_REF] Edelsbrunner | Geometry and Topology for Mesh Generation[END_REF] : a sliver is a flake with an upper bound on the ratio of its cicumradius to the length of its shortest edge. Sliver removal in higher dimensions has been discussed in [START_REF] Li | Generating Well-Shaped d-dimensional Delaunay Meshes[END_REF][START_REF] Cheng | Manifold Reconstruction from Point Samples[END_REF].

Our weighting mechanism to remove flakes is inspired from the one used by Cheng et al. to remove slivers from 3-dimensional Delaunay triangulations. The weighting mechanism can be seen as a perturbation of the Euclidean metric. It is also possible to remove flakes and inconsistencies by perturbing the position of the points. This kind of perturbation may be prefered to the weighting mechanism in the context of mesh generation [START_REF] Li | Generating Well-Shaped d-dimensional Delaunay Meshes[END_REF][START_REF] Boissonnat | Anisotropic Delaunay mesh generation[END_REF][START_REF] Edelsbrunner | Smoothing and cleaning up slivers[END_REF].

The notion of protection has been introduced by Boissonnat, Dyer and Ghosh to study the stability of Delaunay triangulations and the construction of Delaunay triangulations of manifolds [START_REF] Boissonnat | The Stability of Delaunay Triangulations[END_REF][START_REF] Boissonnat | Delaunay stability via perturbations[END_REF][START_REF] Boissonnat | Delaunay triangulation of manifolds[END_REF]. A solution to Exercise 5.12 can be deduced from results in [START_REF] Boissonnat | Delaunay stability via perturbations[END_REF] and [START_REF] Boissonnat | A probabilistic approach to reducing algebraic complexity of delaunay triangulations[END_REF].

The Lovász local lemma, proved initially by Lovász and Erdös [START_REF] Alon | The Probabilistic Method[END_REF], is a celebrated result with a long history. The constructive proof of Moser and Tardos has been a breakthrough which is still the subject of intense research [START_REF] Moser | A constructive proof of the generalized Lovász lemma[END_REF]. Its first introduction in Computational Geometry appears in [START_REF] Boissonnat | A probabilistic approach to reducing algebraic complexity of delaunay triangulations[END_REF]. In this chapter, we introduce two simplicial complexes which have strong ties with Delaunay complexes. Their common point is that they allow to define filtrations. Filtrations, defined in Chapter 2, are sequences of nested complexes that allow to represent a set of points at various scales. They play an important role in persistent homology, a central tool in Topological Data Analysis, as will be demonstrated in Chapter 11.

We first define the alpha-complex, or α-complex, of a finite set of points P , which is a subcomplex of the Delaunay complex. Here α is a real parameter and varying α will lead to a filtration of the Delaunay complex. The definition extends to sets of weighted points : the weighted α-complex of a set of weighted points P is a subcomplex of the weighted Delaunay triangulation of P , and varying α will lead to a filtration of the weighted Delaunay complex.

The α-complex of P is a combinatorial representation of the union of the balls B(p, α) of radius α centered at the points of P . It is thus closely related to the Čech complex introduced in Section 2.3. In fact, the α-complex shares with the Čech complex the property of having the same homotopy type as the union of the balls. A major difference between the two complexes is related to their size: the α-complex is usually much smaller than the Čech complex and can be computed more efficiently.

Owing to their capacity of representing union of balls and their topology, αcomplexes play an important role in the description of proteins and macro molecules, and in drug design. In Geometric Inference, α-complexes also play an important role and we will see in Section 8.1 that they capture the homotopy type of well sampled manifolds.

Alpha shapes are constructed from the Delaunay complex and are therefore difficult to compute in high dimensions. In Section 6.2, we will introduce another complex, the so-called witness complex. The witness complex is defined from two point sets : L, which is the vertex set of the complex, and W that can be seen as an approximation of the space that contains L. In applications, L is usually a crude subset of W that can be extracted from W using, for example, the algorithms of Section 5.1. The witness complex can be defined and constructed in any discrete metric space and does not require the points to be embedded in a specific ambient metric space: we only need to know the pairwise distances between the points of L and W . This is a critical advantage in high dimensions over the Delaunay complex whose construction requires to evaluate the in ball predicate whose 6.1. ALPHA COMPLEXES 137 algebraic complexity depends on the dimension d of the ambient space (Exercise 4.5). In the case where the points live in Euclidean space, we will see that, under appropriate conditions, witness complexes and Delaunay complexes are identical. We will also introduce a variant called the relaxed witness which offers another filtration.

Alpha complexes 6.1.1 Definitions

Alpha complexes. Let P be a set of points in R d . From Lemma 4.1, we know that the simplices in the Delaunay complex Del(P ) are characterized by the empty ball property meaning that a simplex with vertices in P belong to Del(P ) iff it admits an empty circumscribing ball i.e. a circumscribing ball whose interior includes no point of P . We are interested here in sorting the simplices of Del(P ) according to the squared radius of their smallest empty circumscribing ball. For a simplex τ , we call this quantity the filtration value of τ and write it α(τ ). Now, for any α ∈ R, we consider the subset A(P, α) of the simplices in Del(P ) that have a filtration value at most α. Because a ball circumscribing a simplex circumscribes any face of this simplex, A(P, α) is a subcomplex of Del(P ). It is called the α-complex of P .

Since the α-complex of P is a subcomplex of the Delaunay complex of P , it has a natural embedding if P is in general position wrt spheres (Theorem 4.3). The underlying space of the α-complex A(P, α) is called the α-shape of P .

If P is in general position wrt spheres, the dimension of the α-complex A(P, α) is at most the dimension d of the embedding space. It should be noted that the dimension of the α-complex may be strictly less that d and that the complex may not be pure, having some simplices which are not faces of simplices of maximal dimension.

The Delaunay filtration. The α-complex evolves when α increases, from the empty set for α < 0, to the set of vertices of Del(P ) when α = 0, and finally to the whole Delaunay triangulation Del(P ) when α is large enough. Figure 6.1: The α-complex of a set of points in R 2 for increasing value of the parameter α.

The parameter α defines an order on the simplices. This order is not total and some simplices may have the same value of the parameter. We define a total order by first sorting the simplices with a same α by increasing dimensions and then breaking ties arbitrarily. The total order we then obtain yields a filtration of the Delaunay complex.

We recall that a filtration of a simplicial complex K, as defined in Section 2.4, is a sequence of nested subcomplexes of K such that each subcomplex is obtained from the previous one by adding a simplex of K. The filtration of Del(P ) obtained by inserting the simplices in the order defined above is called a Delaunay filtration of P .

Computing alpha complexes and filtrations

Let P be a set of points in R d and let Del(P ) be the corresponding Delaunay complex. For a d-simplex τ in R d , there is a unique ball of R d circumscribing τ . We denote by c(τ ) and r(τ ) respectively the center and the radius of this ball. According to the definition, a d-simplex τ of Del(P ) belongs to the α-complex A(P, α) iff α ≥ r(τ ) 2 .

Things are a bit more complicated for simplices of dimension strictly less than d. Let τ be a simplex of dimension k < d. The centers of the d-balls circumscribing τ form a (dk)-flat of R d we denote by h(τ ). Consider the circumscribing ball of τ that has the smallest radius. The center of this smallest circumscribing ball, c(τ ), is called the center of τ and its radius, r(τ )), is called the circumradius of τ . The center c(τ ) is the point where h(τ ) intersects the k-flat aff(τ ) spanned by τ . Given a set of points P , we say that τ is a Gabriel simplex if its smallest circumball contains no point of P in its interior. Plainly, a Gabriel simplex is a simplex of Del(P ) but the converse is not necessarily true: a k-simplex τ of Del(P ) is a Gabriel simplex iff c(τ ) belongs to the face V (τ ) of the Voronoi diagram Vor(P ) dual to τ .

We conclude from the discussion that, if τ is a Gabriel simplex, its smallest enclosing ball is empty and it belongs to all α-complexes A(P, α) for α ≥ r(τ ) 2 . If τ a Delaunay simplex that is not Gabriel, the smallest empty ball that circumscribes τ circumscribes a coface of τ and therefore τ will have the same filtration value α as one of its cofaces. To prove this, consider the function w(x) that associates to each point x in h(τ ) its squared distance to the vertices in τ . Finding the filtration value α(τ ) of τ amounts to minimizing w(x) under the condition that x ∈ V (τ ). Since w(x) is a convex function and V (τ ) is a convex polyhedron, the minimum of w(x) on V (τ ) is reached at c(τ ) iff c(τ ) ∈ V (τ ) or on the boundary of V (τ ) otherwise. In the first case, the simplex is a Gabriel simplex. In the last case, if we call σ the coface of higher dimension of τ whose dual Voronoi face contains c(τ ) in its interior, we have α(τ ) = α(σ).

For any τ ∈ Del(P ) with dimension k < d, we denote by U (τ ) the set of cofaces of τ in Del(P ) with dimension k + 1. Algorithm 6 computes for each simplex τ in Del(P ), the critical value α(τ ) at which τ enters the α-complex A(P, α).

Weighted alpha complex

The definition of α-complexes and α-shapes extend to the weighted case. Let P be a set of weighted points and let τ be a simplex with vertex set Pτ ⊂ P . Let us recall that two weighted points are said to be orthogonal when their weighted distance is zero. A weighted point is said to be orthogonal to Pτ when it is orthogonal to all weighted points in Pτ and it is said to be free of any weighted point in P when it has a positive or null distance to any weighted point of P . From Lemma 4.5, a simplex τ with vertex set Pτ ⊂ P belongs to the weighted Delaunay triangulation Del( P ) iff there is a weighted point orthogonal to Pτ and free of weighted points in P . For any value of α ∈ R, we consider the subset A( P , α) of simplices in Del( P ) for which there is a weighted point with weight at most α, orthogonal to Pτ and free of weighted points in P . The simplices in A( P , α) form a subcomplex of Del( P ) which is called the weighted α-complex of P . Under the usual general position assumption, this complex naturally embeds in R d and the underlying space of A( P , α) is called the weighted α-shape of the set P for the parameter value α. Notice that α-complexes and α-shapes are special cases of respectively weighted α-complexes and weighted α-shapes, obtained when all the weights of the considered weighted points are equal.

As before, we associate to each simplex τ of Del( P ) a filtration value α(τ ) that corresponds to the first time τ enters the filtration. Algorithm 6 extends almost verbatim to the case of weighted points, pro-vided that we replace circumballs by orthogonal weighted points and empty balls by free weighted points. Let P be a set of weighted points in R d , τ a simplex of Del( P ) and Pτ the subset of P associated to the vertices of τ . We now say that τ is a Gabriel simplex iff the ball with smallest radius that is orthogonal to Pτ is free of weighted points in P . Likewise, the function w(x) used to prove the correctness of Algorithm 6 is now the weighted distance to the vertices of τ , i. e. w(x) = D(x, p) = d(x, p) 2w p , if p = (p, w p ) is the weighted point associated to the vertex p of τ . Let us consider the special case where all the balls in B have the same radius. Let B(P, r) be the set of balls with radius r, centered at points of the set P . The union U (B(P, r)) of these balls is homotopy equivalent to the Čech complex Čech(P, r) defined (in Section 2.5) as the nerve of the cover of U (B(P, r)) by balls in B(P, r). Therefore, the Čech complex Čech(P, r) and the α-complex A(B(P, r), 0) have the same homotopy type and capture both the homotopy type of the union of balls U (B(P, r)). However, the Čech complex Čech(P, r) is often much bigger than the α-complex A(B(P, r), 0). In particular, the dimension of the Čech complex Čech(P, r) may be larger than d, in fact it may be as large as the number of balls in B(P, r). Accordingly the Čech complex Čech(P, r) usually does not embed naturally in R d . Differently, the α-complex A(B(P, r), 0), being a subcomplex of Del(B), embeds naturally in R d under general position assumption.

Application to union of balls

Witness complexes

In this section, we introduce the witness complex, a variant of the Delaunay complex that can be defined using only distances (and not empty spheres). Hence the witness complex can be defined in any finite metric space where the input consists of the distance matrix of the data points that stores the pairwise distances (Section 5.1.3). Not every finite metric space can be isometrically embedded in a Euclidean space but if it is the case, we provide conditions under which the witness and the Delaunay complexes are identical. A practical situation, encountered for example in the context of sensor networks, is when the points come from some Euclidean space but their actual locations are not known.

The witness complex is defined from two sets of points L and W . The first Figure 6.2: Union of balls and α-shapes. one, called the set of landmarks, is finite. The other one, called the set of witnesses, serves as an approximation of the ambient space. A typical situation is when L is a subset of W , possibly a net of W extracted using one of the algorithms of Section 5.1.3. The witness complex Wit(L, W ) can be seen as a weak notion of Delaunay triangulation which is easy to compute, even in high dimensions, since it only involves comparisons of distances between input points. Definition 6.2 (Witness of a simplex) Let σ be a simplex with vertices in L ⊂ R d , and let w be a point of W ⊆ R d . We say that w is a witness of σ if wp ≤ wq ∀p ∈ σ and ∀q ∈ L \ σ. Definition 6.3 (Witness complex) The witness complex Wit(L, W ) is the complex consisting of all simplexes σ such that any simplex τ ⊆ σ has a witness in W . In other words, Wit(L, W ) is the maximal simplicial complex with the property that all its simplices have a witness in W .

In this section, we use the Euclidean distance to define witness complexes but the definition is general and extend to more general metric spaces and, in particular, to finite metric spaces where the only information we have about the input points is the distances between any two of them. In Euclidean space, the only predicates involved in the construction of Wit(L, W ) are (squared) distance comparisons, i.e. polynomials of degree 2 in the coordinates of the points. This is to be compared with the predicate that decides whether a point lies inside the ball circumscribing a d-simplex, whose degree depends on d (see Exercise 4.5).

The Witness Complex

Identity of witness and Delaunay complexes

When the points W and L live in Euclidean space, the witness complex can be seen as a weak Delaunay complex. The results below make this connection more precise. We first make the following easy observation.

Lemma 6.4 If W ⊆ W , then Wit(L, W ) ⊆ Wit(L, W ).
Let Ω be a subset of R d . As before (see Section 5.1.2), we write Del |Ω (L) for the restriction of Del(L) to Ω, i.e. the subcomplex of Del(L) whose simplices have a circumcenter in Ω. Proof By definition, any simplex σ of Del |Ω (L) has an empty circumscribing ball whose center c belongs to Ω. This center is a witness of σ, and it is also a witness for all the faces of σ.

The following remarkable result provides a weak characterization of Delaunay complexes. It shows that Delaunay and witness complexes are identical when the set of witnesses cover the whole space R d . Assume now that any simplex of Wit(L, Ω) of dimension up to k -1 is a simplex of Del |Ω (L) and let τ = [p 0 , ..., p k ] be a k-simplex of Wit(L, Ω) witnessed by a point w. We will say for convenience that a ball B witnesses τ if B ∩ L = τ . We denote by B τ be the smallest ball centered at w that witnesses τ and by S τ the sphere bounding B τ .

If all the vertices of τ belong to S τ , τ is a Delaunay simplex and we are done. Otherwise, we will show that one can find a new ball that witnesses τ such that its bounding sphere contains one more vertex of τ than S τ . Refer to included in B τ ∪ B σ and it circumscribes σ. Hence its interior contains no point of L \ τ . Moreover, since the interior of B σ is empty but the interior of B τ is not, there exists a point z on s such that the ball of F centered at z, witnesses τ and contains |σ| + 1 points of τ on its boundary. Call this new ball B τ . We can then carry on the induction and obtain a witness ball B τ whose bounding sphere contains all the vertices of τ . Such a ball is thus a Delaunay ball and τ is a Delaunay simplex.

It is worth noticing that, for a simplex σ to belong to the witness complex, we required all the faces of σ to have a witness. As illustrated in Figure 6.5, this is mandatory for the theorem to hold.

We deduce from Lemma 6.4 and Theorem 6.6 the following corollary Corollary 6.7 Let Ω be a convex subset of R d and let W ⊆ Ω. We have Wit(L, W ) ⊆ Del |Ω (L) ⊆ Del(L).

If the points L are in general position with respect to spheres, we know that Del(L) is embedded in R d by Delaunay's theorem 4.3. It therefore follows from Corollary 6.7 that the same is true for Wit(L, W ). In particular, the dimension of Wit(L, W ) is at most d. When W is not the whole space R d but a finite set of points, Theorem 6.6 no longer holds. However, the following lemma shows that both complexes are identical provided that W is dense enough and L is protected enough (refer to Section 5.4 for a definition of protection). Proof By Corollary 6.7, we have Wit(L, W ) ⊆ Del |Ω (L). We now prove the other inclusion. Let σ be a simplex in Del |Ω (L). By hypothesis, σ is δ-protected. Then there exists a point c ∈ Ω such that

∀p ∈ σ, ∀q ∈ L \ σ, c -p ≤ c -q -δ.
Since W is ε-dense in Ω, there exists a point w ∈ W such that wc ≤ ε.

Using the triangular inequality, we have for any p ∈ σ and q

∈ L \ σ w -p ≤ w -c + ( c -q -δ) ≤ w -q + 2 w -c -δ ≤ w -q + 2ε -δ
Hence, when δ ≥ 2ε, w is a witness for σ.

The above lemma requires the simplices of all dimensions to be δ-protected.

In fact it is sufficient to check d-simplices only. Indeed, it can be proved that if the d-dimensional simplices are δ -protected, for δ slightly bigger than δ, then all simplices of all dimensions are also protected. See Exercise 5.11.

Computing witness complexes

Let L and W be two finite sets of points and Wit(L, W ) their witness complex. We assume, for convenience, that no two points of L are at the same distance from a point in W . We describe how to compute the k-skeleton of Wit(L, W ), denoted by Wit k (L, W ), for any fixed k. Definition 6.10 (Relaxed witness complex) The α-relaxed witness complex Wit α (L, W ) is the maximal simplicial complex with vertex set L whose simplices have an α-witness in W .

Let

For α = 0, the relaxed witness complex is the standard witness complex.

The parameter α defines a filtration on the witness complex, which can be used to compute persistent homology (Chapter 11.5).

Construction

We adapt Algorithm 7 above. At each step j, we insert, for each witness w, the j-dimensional simplices which are α-witnessed by w. Differently from the standard witness complex, there may be more than one j-simplex that is witnessed by a given witness w ∈ W . Consequently, we do not maintain a pointer from each active witness to the last inserted simplex it witnesses. We use simple top-down insertions from the root of the simplex tree 2.7.

Given a witness w and a dimension j, we generate all the j-dimensional simplices which are α-witnessed by w. For the ease of exposition, we suppose we are given the sorted list of nearest neighbors of w in L, noted {z 0 • • • z |L|-1 }, and their distance to w, noted

m i = d(w, z i ), with m 0 ≤ • • • ≤ m |L|-1 ,
breaking ties arbitrarily. Note that if one wants to construct only the kskeleton of the complex, it is sufficient to know the list of neighbors of w that are at distance at most m k + α from w. We preprocess this list of neighbors for all witnesses. For i ∈ {0, • • • , |L| -1}, we define the set

A i of landmarks z such that m i ≤ d(w, z) ≤ m i + α. For i ≤ j + 1, w α-witnesses all the j-simplices that contain {z 0 , • • • , z i-1 } and a (j + 1 -i)-subset of A i , provided |A i | ≥ j + 1 -i.
We see that all j-simplices that are α-witnessed by w are obtained this way, and exactly once, when i ranges from 0 to j + 1.

For all i ∈ {0, • • • , j + 1}, we compute A i and generate all the simplices which contain {z 0 , • • • , z i-1 } and a subset of A i of size (j + 1i). In order to easily update A i when i is incremented, we maintain two pointers to the list of neighbors, one to z i and the other to the end of A i . We check in constant time if A i contains more than j + 1i vertices, and compute all the subsets of A i of cardinality j + 1i accordingly. See Figure 6.6.

external if it does not belong to A( P , α), singular if it belongs to A( P , α) but none of its coface in Del( P ) does, boundary if it belongs to the boundary of α-complex and is not singular, which means that some of its cofaces belong to A( P , α) while others do not, and at last internal if it belongs to the interior of the α-complex, meaning that all its cofaces belong to A( P , α).

Modify Algorithm 6 so that it computes for any simplex τ of Del( P ), the at most three values of the parameter α where the status of the simplex changes from external to singular and then to boundary and interior.

Exercise 6.2 (Weighted witness complex) Show that the witness complex can be extended to weighted points and the weighted distance. Show that the identity results of Section 6.2.1 still hold when the Delaunay complex is replaced by its weighted counterpart.

Exercise 6.3 Show that, if L is a λ-sample of R d , the circumradius R σ of any simplex σ in Wit(L, W ) is at most λ.
(Hint : use Corollary 6.7).

Exercise 6.4 (Relaxed Delaunay complex) Let W and L be two finite sets of points in Ω ⊂ R d . Let σ be a simplex with vertices in L. We say that a point w ∈ W is an α-center of σ if wp ≤ wq + α ∀p ∈ σ and ∀q ∈ L.

The α-relaxed Delaunay complex Del α (L, W ) is the maximal simplicial complex with vertex set L whose d-simplices have an α-center in W . Show how to construct Del α (L, W ). Prove that Del(L) ⊆ Del α (L, W ) for α ≥ 2ε if W is an ε-sample of Ω.

Bibliographical notes

Alpha-shapes were introduced by Edelsbrunner, Kirkpatrick and Seidel [START_REF] Edelsbrunner | On the shape of a set of points in the plane[END_REF][START_REF] Edelsbrunner | Three-dimensional alpha shapes[END_REF]. Alpha-shapes are also widely used to represent union of balls [START_REF] Edelsbrunner | The union of balls and its dual shape[END_REF] and to study the structure of macro molecules and various related problems like the docking of two molecules, see e.g [START_REF] Edelsbrunner | On the definition and the construction of pockets in macromolecules[END_REF][START_REF] Liang | Anatomy of protein pockets and cavities: measurement of binding site geometry and implications for ligand design[END_REF] Witness complexes and relaxed Delaunay triangulations have been introduced in the seminal work of de Silva [START_REF] Silva | A weak characterisation of the Delaunay triangulation[END_REF] who first proved Theorem 6.6 and several of its variants including the case of weighted points (Exercise 6.2). The proof presented in Section 6.2 is due to Attali et al. [START_REF] Attali | Weak witnesses for Delaunay triangulations of submanifolds[END_REF]. The 1-skeleton of the witness complex has been introduced earlier by Martinez and Schulten [START_REF] Martinetz | Topology representing networks[END_REF]. They showed that Del(L) and Wit(L, R d ) have the same 1-skeleton and they proposed a dynamic algorithm for approximating the topology of a region of space, by a graph represented as a neural network.

The identity of witness and Delaunay complexes when the number of witnesses is finite is taken from [START_REF] Boissonnat | A probabilistic approach to reducing algebraic complexity of delaunay triangulations[END_REF]. The paper describes an algorithm to obtain Del(L) from Wit(L, W ) using the algorithmic version of the local Lovász lemma (see Exercise 5.12 and Section 5.3.4). The paper also describes an algorithm to compute the relaxed Delaunay complex in time sublinear in the number of witnesses (Exercise 6.4).

Given a set of n points P ⊂ R d , one can construct a data structure called a well-separated pair decomposition. This data structure has many applications and can be used, in particular, to compute the k-nearest neighbors of all the points in P in time O(n log n + kn) [START_REF] Callahan | A decomposition of multidimensional point sets with applications to k-nearest-neighbors and n-body potential fields[END_REF]. See the book of Har-Peled for a recent account on well-separated decompositions [START_REF] Har-Peled | Geometric approximation algorithms[END_REF].

Triangulating an object M entails computing a simplicial complex which is homeomorphic to M. This is a demanding quest and, in this chapter, we will assume that M is a smooth and compact submanifold of R d without boundary. The main goal of the chapter is to prove Theorem 7.16 that provides sufficient conditions under which a simplicial complex M is a triangulation of a submanifold M of R d . These conditions require the simplices to be sufficiently small and thick and rely on the concepts of reach and of ε-net on a manifold. To prove the theorem, we will prove that the projection map that associates to a point of M its closest point on M is a homeomorphism. The results of this chapter will be used in Chapter 8 to triangulate a submanifold M given only a finite point set on M.

7.1 Reach and ε-nets on submanifolds

Submanifolds

Given an open set U ⊆ R d and a non negative integer c, a map φ : U → R d is said to be c-differentiable, or of class C c on U if its successive derivatives up to order c are well-defined and continuous on U . In particular, a 0differentiable map is a continuous map. If moreover, φ : U → V = φ(U ) is a bijection and φ -1 : V → U is also c-differentiable, then φ is said to be a c-differentiable diffeomorphism.

Definition 7.1 (Submanifold) A compact subset M ⊂ R d is a c-differen- tiable submanifold of dimension k ≤ d, if for any p ∈ M there exist an open set U ⊂ R d containing p, a c-differentiable diffeomorphism φ from U to an open set V ⊂ R d , and an affine k-dimensional subspace A ⊂ R d such that φ(U ∩ M) = A ∩ V.
Intuitively, a submanifold of dimension k is a subset of R d that is locally homeomorphic to an affine space of dimension k (see figure 7.1). A curve is a 1-dimensional submanifold of R d , and a surface is a 2-dimensional submanifold of R d . The submanifolds we will consider are differentiable and have no boundary, even if not explicitly mentioned.

The tangent space T p M of a c-differentiable (c > 0) submanifold M at a point p ∈ M is the vector space spanned by the tangent vectors γ (0) where γ : (-1, 1)

→ M ⊂ R d belongs to the set of differentiable curves contained in M such that γ(0) = p. If M is of dimension k, then T p M is a k-dimensional vector space.
By an abuse of notation, we will also denote by T p M the affine subspace spanned by T p M and passing through p and we will denote by N p M the (dk)-dimensional affine subspace orthogonal to T p M (see Figure 7.2). In the sequel, to avoid heavy notation, when there is no ambiguity, we will drop the reference to M and denote T p M and N p M by T p and N p respectively.

In this chapter, we focus on submanifolds and do not consider manifolds defined in an intrinsic way, independently of any embedding in R d . However, the main results of the chapter and in particular the triangulation theorem (Theorem 7.16) can be extended to intrinsic smooth manifolds. See the bibliographical notes.

Projection map, medial axis and reach

Let M be a submanifold of R d . The medial axis of M is defined as the closure of the set of points x ∈ R d that have more than one closest point on M (see Figure 7.3). We denote it by ax(M).

We can associate to each point of ax(M) a ball that is centered at that point, whose interior does not intersect M and that is maximal for inclusion. Such a ball will be called a medial ball. The reach of M, written rch(M), is the infimum of the distance from a point of M to the medial axis ax(M). As we will see, the reach encodes both local curvature considerations as well as global ones.

In this chapter, we will restrict our attention to the class of submanifolds of R d with positive reach introduced by Federer [START_REF] Federer | Curvature measures[END_REF]. This class includes all submanifolds of class C 2 and also some submanifolds whose principal curvatures may be discontinuous on subsets of measure 0. An example of such a submanifold is the r-offset of a solid cube, i.e. the set of points at distance at most r from the cube.

We now state some properties of submanifolds with positive reach. The proof of this lemma for C 2 submanifolds follows from rather standard arguments in differential geometry. The result for submanifolds of positive reach is due to Federer [START_REF] Federer | Curvature measures[END_REF]. From Lemma 7.2, we easily deduce the following lemma. Proof Suppose w ∈ (B(p, rch(M)) ∩ N p ) \ V (p). Then the line segment [pw] crosses the boundary of V (p) at some point z and there exists some u ∈ P ⊂ M, distinct from p, such that zu = zp . Since z ∈ N p , p is the closest point to z on M, and we have reached a contradiction with the definition of the reach.

ε-nets on a submanifold

We give a variant of the definition of ε-nets introduced in Section 5.1. This new definition is better adapted to the case of point samples on a submanifold and is sensitive to the reach of the manifold.

Definition 7.7 ((ε, η)-net) Let M be a submanifold of R d of positive reach. A finite point set P ⊂ M is called an (ε, η)-net of M if it is 1. ε-dense: any point x of M is at distance at most ε rch(M) from a point of P (the distance is the Euclidean distance in R d ),
2. η-separated: for any two points p, q of P , pq ≥ η rch(M), where η = η ε.

We call ε the sampling radius of P and η the separation ratio of P . Note that, differently from Section 5.1, ε here is a dimensionless quantity.

This definition does not allow the sampling radius to vary over the submanifold. Hence, we are confined to uniform samples, which may be quite restrictive in practice. The results of this chapter can be extended to nonuniform ε-nets but, in order to keep the exposition simple and better outline the key ideas, we will restrict our attention to uniform ε-nets. We leave the extension to non-uniform ε-nets as an exercise (Exercise 7.4). See also the bibliographical notes.

Projection maps

In the rest of this chapter, M denotes a submanifold of R d of positive reach rch(M). The tangent space at x ∈ M is denoted by T x . The angle between two vector subspaces U and V of R d is denoted by ∠(U, V ) (see Section 5.2.2 for a definition).

If σ is a simplex, we denote by ∆(σ) its diameter (i.e. the length of its longest edge) and Θ(σ) its thickness. We further write for convenience ∆(σ) = δ(σ) rch(M).

Lemma 7.8 Let p and q be two points of M. We have 1. sin ∠(pq, T p ) ≤ p-q 2 rch(M) ;

2. the distance from q to T p is at most p-q 2 2 rch(M) .

Proof 1. Let q be the orthogonal projection of q onto T p and let H be the plane (pqq ). Let in addition D be the open disk of H of radius rch(M) that is tangent to M at p and whose center c is on the same side of T p ∩ H as q (Refer to Figure 7.5). Since D is tangent to M and its radius is rch(M), it follows from Lemma 7.3 that d(c, M) = cp and that D does not intersect M. Hence q does not belong to the interior of D (Lemma 7.3). Assume that the line segment [pq] intersects the boundary of D in a point q distinct from p. We have pq ≥ pq = 2 rch(M) sin ∠(pq, T p ) which proves the first statement. 2. We have qq = pq sin ∠(pq, T p ) ≤ p-q 22 rch(M) .

PROJECTION MAPS

163 p q D q θ T p M 2θ q rch(S)
The previous lemma allows us to bound the Hausdorff distance between M and a simplex which has its vertices on M.

Lemma 7.9 Let σ be a simplex with its vertices on M and assume that δ(σ) < 1. Then, for any point x ∈ σ, we have d(x, M) ≤ 2δ 2 (σ) rch(M).

Proof Write x the point of M closest to x and note that xx = d(x, M) = d(x, T x ). For any vertex p of σ, we have

p -x ≤ p -x + x -x ≤ 2 p -x ≤ 2∆(σ) = 2δ(σ) rch(M).
Applying Lemma 7.8, we then get d(p, T x ) ≤ 2δ 2 (σ) rch(M). This is true for all vertices p of σ and, since the function d(., T x ) is affine on σ, it is also true for x and we have d(x, T

x ) = x -x ≤ 2δ 2 (σ) rch(M).
The following lemma bounds the angle between two tangent spaces. Its proof relies on notions of differential geometry that go beyond the scope of this book. See the bibliographic notes (Section 7.5) for references.

Lemma 7.10 (Angle between tangent spaces) Let p, q ∈ M. Then sin ∠(T p , T q ) ≤ pq /rch(M).

CHAPTER 7. TRIANGULATION OF SUBMANIFOLDS

We now introduce the important notion of distortion of a map.

Definition 7.11 (ξ-distortion map) A map F : U ⊂ R d → R d is a ξ- distortion map if for all x, y ∈ U we have | F (x) -F (y) -x -y | ≤ ξ x -y ,
or equivalently if

(1 -ξ) x -y ≤ F (x) -F (y) ≤ (1 + ξ) x -y .
We will need the next lemma.

Lemma 7.12 Let U be a subset of R d . A ξ-distortion map F : U → R d is an embedding (i.e. a homeomorphism onto its image) if ξ < 1. If it is smooth, then we have | J u -1| ≤ ξ, where J denotes the Jacobian matrix of F and u is any unit vector of R d .

Proof Continuity and injectivity directly follow from Definition 7.11. The continuity of the inverse follows from Exercise 7.9. This proves that F is an embedding. The second part of the lemma follows from Definition 7.11.

We now study two maps that will play a crucial role in proving the main theorem of this chapter (Theorem 7.16). The first map has already been defined. It is the projection Π : R d \ ax(M) → M that maps a point to its closest point on M.

We show now that Π is Lipschitz continuous in a neighborhood of M, and that its restriction to a simplex with vertices on M has a distortion that is bounded as a function of the diameter and of the thickness of the simplex.

Lemma 7.13 (Distortion of Π) 1. Let x and y be two points of R d \ ax(M). Write x = Π(x) and y = Π(y) for their (unique) projections onto

M. If x -x ≤ α rch(M) and y -y ≤ α rch(M) with α < 1, then x -y ≤ 1 1-α x -y .
2. Let σ be a simplex with its vertices on M, and assume that δ(σ) ≤ 1 2 and Θ(σ) ≥ 5δ(σ). Then the restriction of Π to σ is a ξ-distortion map where ξ = 4δ 2 (σ) + 1. Let x and y be the orthogonal projections of x and y onto the line (x y ). Let H x be the hyperplane passing through x and orthogonal to xx , and write ψ x = ∠(xy , H x ) and observe that ψ x = π 2 -∠(xy , xx ) = ∠(xx , xx ). By definition of angles, ψ x ≤ θ x since T x ⊆ H x . Using (7.1), we have

x -x = x-x sin ψ x ≤ x-x sin θ x ≤ α rch(M) sin θ x ≤ α 2 y -x . Likewise : y -y =≤ α 2 y -x . So x -y ≥ x -y ≥ y -x -x -x -y -y ≥ (1 -α) y -x .
The first part of the lemma follows.

2. Refer to Figure 7.7. Let x and y be two points of σ, x = Π(x) and y = Π(y). By Lemma 7.9, we know that xx and yy are at most α rch(M) where α = 2δ 2 (σ) ≤ 1/2. From the first part of the lemma, we have

x -y ≤ 1 1 -α x -y ≤ (1 + 2α) x -y ≤ 2 x -y (7.2)
We now prove a lower bound on xy / xy .

Let, as before, H x denote the hyperplane passing through x and orthogonal to xx . Let z be the projection of y onto H x , z the projection of y onto H x and write φ = ∠(xy, xz)= ∠(xy, H x ) (See Figure 7.7). We have

x -y ≥ x -z ≥ x -z -z -z = x -y cos φ -z -z (7.3)
Let us bound cos φ and zz . We have

φ = ∠(x -y, x -z) = min v∈Hx ∠(x -y, v) ≤ min v∈T x ∠(x -y, v) ≤ max u∈aff(σ) min v∈T x ∠(u, v) = ∠(aff(σ), T x ).
By the proof of Lemma 7.9, the vertices of σ are at distance at most α rch(M) from T x . We then deduce from Lemma 5.14

sin φ ≤ 2α δ(σ) Θ(σ) = 4δ(σ) Θ(σ) and so cos φ ≥ 1 - 16 δ 2 (σ) Θ 2 (σ) (7.4) Write χ = ∠(T y , H x ) ≤ ∠(T y , T x )
. By Lemma 7.10, we have sin χ ≤ xy rch(M) .

Let t = ∠(yz, yy ) ≤ χ. Using yy ≤ α rch(M) and ( 7.2), we deduce zz = yy sin t ≤ α xy ≤ 2α xy . (7.5) Using (7.3), (7.4) and (7.5) and α = 2δ 2 (σ), we get

x -y ≥ 1 -4δ 2 (σ) - 16δ 2 (σ) Θ 2 (σ) x -y = (1 -ξ) x -y .
From (7.2) and α = 2δ 2 (σ), we also have

x -y ≤ (1 + 4δ 2 (σ)) x -y ≤ (1 + ξ) x -y .
We conclude that

(1 -ξ) x -y ≤ x -y ≤ (1 + ξ) x -y .
Hence the restriction of Π to σ is a ξ-distortion map. It then follows from Lemma 7.12 that Π embeds σ in M if ξ < 1.

If Θ(σ) ≥ 5δ(σ), we have since Θ(σ) ≤ 1

ξ = 4δ 2 (σ) + 16 δ 2 (σ) Θ 2 (σ) ≤ 20 25 < 1.
We introduce now a second map Π p : R d → T p that maps points of R d to its closest point on the tangent space T p at p. We now bound the distortion of the restriction of Π p to a neighbourhood of a p on M and of the restriction of Π p to a simplex. 1. Let ρ be a positive scalar such that ρ < 1 2 and let r = ρ rch(M). The restriction of Π p to B M (p, r) is a 4ρ 2 -distortion map.

2. Let σ be a simplex incident to p with its vertices on M. If Θ(σ) > δ(σ), then the restriction of Π p to σ is a δ 2 (σ) Θ 2 (σ) -distortion map which embeds σ in T p .

Proof 1. For all x and y ∈ B M (p, r), we have from Lemmas 7.8 and 7.10 sin ∠(xy, T p ) ≤ sin ∠(xy, T x ) + sin ∠(T x , T p ) ≤ 2ρ < 1.

(7.6) Write x = Π p (x), y = Π p (y) and θ = ∠(xy, T p ). Using (7.6), we get

x -y -x -y = x -y (1 -cos θ) ≤ x -y (1 -1 -4ρ 2 ) ≤ 4ρ 2 x -y .
Adding the fact that xy ≤ xy , this shows that the restriction of Π p to B M (p, r) is a 4ρ 2 -distortion map. It then follows from Lemma 7.12 that Π p embeds B M (p, r) in T p . This ends the proof of the first part of the lemma.

2. Let x, y ∈ σ, x = Π p (x), y = Π p (y), and φ = ∠(xy, xy ) ≤ ∠(aff(σ), T p ). By Lemma 7.8, the vertices of σ are at distance at most h rch(M) from T p , where h = δ 2 (σ) 2 . It then follows from Lemma 5.14 that

sin φ ≤ 2h δ(σ)Θ(σ) = δ(σ) Θ(σ) . (7.7)
Using (7.7), we get

x -y = x -y cos φ ≥ x -y 1 - δ 2 (σ) Θ 2 (σ) ≥ x -y 1 - δ 2 (σ) Θ 2 (σ) .
We deduce

1 - δ 2 (σ) Θ 2 (σ) x -y ≤ x -y ≤ x -y ≤ 1 + δ 2 (σ) Θ 2 (σ) x -y
The restriction of Π p to σ is thus a δ 2 (σ) Θ 2 (σ) -distortion map and Lemma 7.12 ensures that Π p embeds σ in T p . This completes the proof of the lemma.

Triangulation of submanifolds

Definition 7.15 (Triangulation of a topological space) A triangulation of a topological space X is a simplicial complex K and a homeomorphism h : |K| → X.

The following theorem provides sufficient conditions for a simplicial complex M to be a triangulation of a submanifold M embedded in R d . This theorem will be used in Chapter 8 to reconstruct submanifolds from finite point sets. We recall that Π denotes the projection onto M and Π p the orthogonal projection onto the tangent space T p at p ∈ M. (e) Let r = 7 5 δ 0 rch(M ). Any vertex q of M that belongs to B(p, r) and is mapped by Π p onto a point q ∈ Π p (star(p)) has to be a vertex of star(p).

Then the following facts hold :

1. The restriction of Π to M is a homeomorphism and thus M is a triangulation of M.

2. The Hausdorff distance between M and M is at most 2δ2 0 rch(M).

x = Π -1 p (x)

Whitney's lemma

We write star (p) for Π p (star(p)) and V p for Π p (V p ), With a slight abuse of notation, in the rest of the proof of Theorem 7.16, we write Π -1 p for the inverse of the restriction of Π p to star(p), which is well defined since Π p embeds star(p) by Hypothesis (d). We further define the map F p : star (p) ⊂ T p → T p as F p = Π p • Π • Π -1 p . See Figure 7.8. By construction, F p leaves the vertices of star (p) fixed: if q is a vertex of star (p), then F p (q) = q. Our goal is to show that F p embeds V p = Π p (V p ). To do so, we will use the following result due to Whitney3 that we state without proof [131, App. II, Lemma 15a]. Definition 7.17 Let C be a k-simplicial complex embedded in R k . We say that a map F : C → R k is simplexwise positive if it is smooth and 1-1 on each k-simplex of C, and if the Jacobian of F is positive there.

Satisfying the conditions of Whitney's lemma

We will apply Whitney's lemma to Ω = V p , C = star (p) = Π p (star(p)) and to F = F p . This section contains the geometric arguments needed to prove that the conditions of Whitney's lemma are satisfied. After recalling that star(p) is an oriented combinatorial k-manifold (Point 1), we show that F p is simplexwise positive (Point 2). We then exhibit a point in F p (V p ) \ F p (∂star(p)) that is covered only once (Point 3) and finally prove that F p (V p ) is included in a single component of F p (star(p))\F p (∂star(p)) (Point 4). The proofs use extensively the bounds on the distortion of the two maps Π and Π p of Section 7.2.

1. Since M is a combinatorial k-manifold and Π p embeds star(p) (Hypothesis (d)), star (p) is a combinatorial k-manifold embedded in T p . We can then assume that it is oriented.

We now prove that

F p = Π p • Π • Π -1
p is simplexwise positive.

Lemma 7.19 (Distortion of F p on a simplex) Under the hypotheses of Theorem 7.16, the distortion of the restriction of F p to any simplex of M is less than

33δ 2 0 Θ 2 0 < 1.
Proof Rename, for convenience, Π -1 p as f 1 , the restriction of Π to star(p) as f 2 , and the restriction of Π p to U p = Π(star(p)) as f 3 . We have

F p = f 3 •f 2 •f 1 .
Write ξ i for the distortion of f i , i = 1, 2, 3, and ξ for the distortion of F p . By hypothesis, the diameter of any simplex in star(p) is at most δ 0 and its thickness is at least Θ 0 . Moreover, U p is contained in a ball centered at p of radius r = δ 0 rch(M) (1 + 2δ 0 ) < rch(M)/3 (Lemma 7.9).

Using the assumptions of Theorem 7.16 and Lemmas 7.14 and 7.13, we get

ξ 1 ≤ δ 2 0 Θ 2 0 1 - δ 2 0 Θ 2 0 ≤ 64 63
δ 2 0 Θ 2 0
(Exercise 7.9, Lemma 7.14(2) and Θ 0 ≥ 8δ 0 ) [START_REF] Boissonnat | Delaunay stability via perturbations[END_REF] (2) and Θ 0 ≤ 1)

ξ 2 ≤ 4δ 2 0 + 16δ 2 0 Θ 2 0 ≤ 20 δ 2 0 Θ 2 0 (Lemma 7.
ξ 3 ≤ 4δ 2 0 (1 + 2δ 0 ) 2 < 8δ 2 0 ≤ 8 δ 2 0 Θ 2 0
(Lemma 7.14(1) and δ 0 ≤ 1 5 )

TRIANGULATION OF SUBMANIFOLDS

173 Using Exercise 7.10 and Θ 0 > 9δ 0 , we obtain

ξ ≤ ξ 1 + ξ 2 + ξ 3 + ξ 1 ξ 2 + ξ 2 ξ 3 + ξ 3 ξ 1 + ξ 1 ξ 2 ξ 3 < 33δ 2 0 Θ 2 0 < 1.
It follows from Lemma 7.19 that F p embeds any simplex σ of star (p) and, from Lemma 7.12, that the Jacobian of F p does not vanish on σ. It remains to prove that it is positive. To do so, observe that the differential of the restriction of F p to σ at the point p ∈ σ is the identity. This follows from the observation that the differential of Π at p restricted to T p is the identity, since p lies on the manifold.

3. We will now prove that there is a point in F p (V p ) \ F p (∂star(p)) and not in the image of the (k -1)-skeleton that is covered once. For this purpose, we choose the image of the barycenter of a k-simplex of star (p).

d(b , ∂σ ) ≥ k(1 -ζ) Θ(σ) ∆(σ) k + 1 ≥ (1 -ζ) Θ 0 λ 0 rch(M) 2 ≥ 9(1 -ζ) δ 2 0 rch(M) 2
Using the bound on ζ above, we obtain

d(b , ∂σ ) ≥ 22 5 δ 2 0 rch(M) (7.8)
Since the distortion of the restriction of F p to σ is less than 1 (Lemma 7.19), F p embeds σ (Lemma 7.12) and therefore no point z ∈ σ distinct from b can verify F p (z ) = F p (b ). Let us consider now the case of a point z of star (p) \ σ . Write b = Π -1 p (b ) and z = Π -1 p (z ). Using Lemma 7.9, we get

F p (b ) -b = Π p (Π(b) -b) ≤ Π(b) -b ≤ 2δ 2 0 rch(M)
and similarly for F p (z )z .

Hence,

F p (b ) -F p (z ) ≥ b -z -F p (b ) -b -F p (z ) -z ≥ d(b , ∂σ ) -4δ 2 0 rch(M) ≥ 22 5 δ 2 0 rch(M) -4δ 2 0 rch(M) (By Equation 7.8) > 0 It follows that F p (b ) = F p (z ).
Since b ∈ V p , the previous lemma implies that there exists a point in F p (V p ) that is covered exactly once. Proof Arguing as in the proof of Lemma 7.20, we get

F p (x) -F p (y) ≥ x -y -F p (x) -x -F p (y) -y ≥ d(x, ∂star (p)) -4δ 2 0 rch(M)
Using Lemma 7.22, we can conclude in very much the same way as in the proof of Lemma 7.20. Plainly, γ intersects star (p) and star α (p) only at its endpoints and the intersection of γ with any simplex σ of star (p), if non empty, is a line segment we denote by γ σ . If we now note that the barycentric coordinates coincide on a face that is shared by two simplices we see that:

|γ| = σ |γ σ | ≥ σ |λ p (x σ ) -λ p (y σ )|D(p, σ ) ≥ σ |λ p (x σ ) -λ p (y σ )| k (1 -ζ) Θ 0 ∆(σ) ≥ σ (λ p (x σ ) -λ p (y σ )) k (1 -ζ) Θ 0 ∆(σ) ≥ αk (1 -ζ) Θ 0 L 0
where x σ is the point where γ enters σ and y σ where it leaves. Proof We have proved in the previous section that the conditions of Whitney's lemma are fulfilled for F = F p . Hence, F p embeds V p in T p and, since

Local homeomorphism

F p = Π p • Π • Π -1 p , Π must embed V p into M.
Moreover, since the set of all V p for all vertices of M cover M, we have proved that the map Π restricted to M is a local homeomorphism on M. This completes the proof of Lemma 7.23.

The restriction of Π to M is injective

Π is injective on M. Proof Let x be a point of Π( M). Π -1 | M(x)
is non empty and finite since Π embeds each simplex of M (Lemma 7.13) and there are only finitely many simplexes in M. For each point y ∈ Π -1 (x) ∩ M, we choose a sufficiently small open neighborhood U (y) of y such that the U (y) are disjoint and each U (y) is homeomorphic to a k-ball and contained in some V p . This is possible since the V p , p ∈ P , constitute an open cover of M. Since, as already noticed, Π embeds any V p on M, it also embeds each U (y) in M. Hence the preimage under Π | M of any sufficiently small open neighborhood U (x) of a point x of M is a union of disjoint open sets, each of which is contained in some V p ⊂ M and mapped homeomorphically onto U (x) by Π. (In topological terms, ( M, Π) is a covering space of Π( M).)

We now show that the cardinality of Π -1 | M(x) is constant over each connected component of M. Indeed, consider the function G that associates to a point x of M the cardinality of Π -1 M (x). From the above discussion, G is locally constant, which implies that it is constant on each connected component of M. Hence Π | M covers all the points of a connected component of its image Π( M) the same number of times. This number is 1 as is shown next.

Assume, for a contradiction, that there exists a vertex q and a simplex σ of M such that q belongs to the image Π(σ) but q is not a vertex of σ. Specifically, let x ∈ σ be such that Π(x) = q. In the rest of the proof, we denote by p a vertex of σ such that the associated barycentric coordinate of x satisfies λ p (x) ≥ 1 k+1 (which must exist). We write for convenience x = Π p (x) and q = Π p (q). Recall that

F p = Π p • Π • Π -1
p and observe that F p (x ) = F p (q ) for any vertex p of σ. Plainly, x belongs to Π p (σ) but q does not belong to star (p) = Π p (star(p)) by

We have thus proved the three statements of Theorem 7.16.

Exercises

Exercise 7.1 (ε-nets on submanifolds) Let P be an ε-dense sample of a submanifold M. Let P := ∅ and apply the following procedure : while there exists a point p of P \ P whose distance to the current set P is greater than εrch(M), insert p in P . Show that P is an (εrch(M), 1)-net of P and a (2ε, 1 2 )-net of M. Adapt the algorithms of Section 5.1 to the case of submanifolds.

Exercise 7.2 (Size of nets) Show that the size of an (ε, η)-net of a ksubmanifold with a bounded sampling ratio η depends exponentially on k.

Exercise 7.3 (Computing rch(M)) Let M be a smooth submanifold and write ax(M) for the medial axis of M. Show that rch(M) is the radius of a ball B(m) centered at a point m ∈ ax(M) and tangent to M. Show that if B(m) has only one contact point, B(m) is osculating M at the contact point. If B(m) has two distinct contact points, the two contact points are the endpoints of a diameter of B(m). Propose an algorithm to compute rch(M) when M is a hypersurface of R d implicitly defined as f (x) = 0 where f is a differentiable function defined over R d for which 0 is a regular value.

Exercise 7.4 (Non uniform nets) We define the local feature size lfs(x) at a point x of a submanifold M as the distance from x to the medial axis of M, ax(M). We say that a finite set of points P ⊂ M is a non uniform (ε, η)-net if it satisfies the following two properties:

1. Any point x of M is at distance at most ε lfs(x) from a point of P .

2. For any two points p, q of P , pq ≥ η min(lfs(p), lfs(q)).

Show that lfs is a 1-Lipschitz function, and, using this fact, extend the results of this chapter to sufficiently dense non uniform ε-nets.

Exercise 7.5 (Size of non-uniform nets) Provide upper and lower bounds on the size of a non-uniform (ε, η)-net of a k-submanifold as a function of k and the integral over M of lfs(x), the local feature size of M at x. Exercise 7.6 (Geodesic distance) Let x and y be two points on M such that xy ≤ α rch(M), α < 1. Show that the length of a shortest path on M joining x to y is at most x-y 1-α .

Exercise 7.7 (Angle between tangent spaces) Prove Lemma 7.10 (with possibly a bigger constant) using elementary arguments.

Exercise 7.8 Let x be a point of B M = B(p, r) ∩ M where r = ρ rch(M), ρ < 1. Show that there exists a point y ∈ T p such that Π(y) = x, where Π denotes the projection on M, and xy ≤ r 1-ρ .

Exercise 7.9 (Distortion)

Let F : U ⊆ R d → R d be a ξ-distortion map. Show that F -1 is well defined and that it is a ξ 1-ξ -distortion map. Exercise 7.10 If F 1 is a ξ 1 -distortion map and F 2 is a ξ 2 -distortion map, then F 1 • F 2 is a (ξ 1 + ξ 2 + ξ 1 ξ 2 )-distortion map.
Exercise 7.11 (Ambient isotopy) Assume that the conditions of Theorem 7.16 are satisfied. Show that the restriction of Π to M induces an ambient isotopy

Φ * : R d × [0, 1] -→ R d
such that the map Φ * (•, 0) restricted to M is the identity map on M and Φ * ( M, 1) = M. The isotopy does not move the points by more than O(δ 2 0 rch(M)).

Hint:

Let Φ : M × [0, 1] -→ R 3 , (x, t) → x + t (Π(x) -x)
Note that Φ(•, 0) is an identity map on M and Φ(•, 1) = Π | M. The map Φ is an isotopy because the maps

Φ t : M -→ R d , x → Φ(x, t)
are homeomorphisms between M and Φ t ( M).

Isotopy Φ can be extended to an ambient isotopy Φ * :

R d × [0, 1] -→ R 3 such that Φ * (•, 0) | M = Φ(•, 0) and Φ * (•, 1) | M = Φ(•, 1)
Exercise 7.12 (Extension of Theorem 7.16) Remove in Theorem 7.16 the assumption that the simplicial complex is embedded in R d and assume instead that we are given an abstract finite simplicial complex K without boundary. We then consider the piecewise linear map ι : K → R d defined by the coordinates of the vertices of K and define M as ι(K). Using essentially the same proof as in Sections 7.3.1-7.3.8, prove that Π • ι(K) is homeomorphic to the underlying space of |K| and that M is embedded in R d .

Bibliographical notes

The medial axis was introduced as a tool in image analysis. It is by now widely used to represent and analyze shapes. For mathematical and algorithmic properties, we refer the reader to the work of Lieutier [START_REF] Lieutier | Any open bounded subset of R n has the same homotopy type as it medial axis[END_REF] and to the survey paper [START_REF] Attali | Stability and computation of the medial axes. a State-of-the-Art Report[END_REF]. Lieutier proved that any bounded open subset of R d is homotopy equivalent to its medial axis [START_REF] Lieutier | Any open bounded subset of R n has the same homotopy type as it medial axis[END_REF]. The notion of local feature size (Exercise 7.4) was introduced by Amenta and Bern in their seminal paper on surface reconstruction [START_REF] Amenta | Surface reconstruction by Voronoi filtering[END_REF]. See also [START_REF] Boissonnat | Provably good sampling and meshing of surfaces[END_REF][START_REF] Giesen | Shape dimension and intrinsic metric from samples of manifolds[END_REF]. The related notion of reach has been introduced earlier by Federer [START_REF] Federer | Curvature measures[END_REF] who proved Lemmas 7.2, 7.8 and the first part of Lemma 7.13. Many other results on sets of positive reach can also be found in this paper. The link between the reach and the principal curvatures of a submanifold has been established by Niyogi, Smale and Weinberger [START_REF] Niyogi | Finding the Homology of Submanifolds with High Confidence from Random Samples[END_REF] who also proved a weaker form of Lemma 7.10. The improved bound is due to Boissonnat, Lieutier and Wintraecken [START_REF] Boissonnat | The reach, metric distortion, geodesic convexity and the variation of tangent spaces[END_REF].

Proving that any smooth manifold can be triangulated has been the subject of many important developments in the mathematical community by Cairns [START_REF] Cairns | A simple triangulation method for smooth maniolds[END_REF], Whitehead [START_REF] Whitehead | On C 1 -complexes[END_REF], Whitney [START_REF] Whitney | Geometric integration theory[END_REF], Munkres [START_REF] Munkres | Elementary differential topology[END_REF] and others. Our proof uses Lemma 7.18 which is due to Whitney. More recently, the Delaunay triangulation turned out to be a useful tool in this context leading to efficient algorithms. Variants of Theorem 7.16 have been proved by Cheng and al. [START_REF] Cheng | Manifold Reconstruction from Point Samples[END_REF], Boissonnat and Ghosh [START_REF] Boissonnat | Manifold reconstruction using tangential Delaunay complexes[END_REF] and Dyer et al. [START_REF] Dyer | Riemannian simplices and triangulations[END_REF]. The proof presented here is based on [START_REF] Boissonnat | Local criteria for triangulation of manifolds[END_REF]. A proof of Exercise 7.11 can be found in [START_REF] Hirsch | Differential Topology[END_REF].

Chapter 8

Reconstruction of submanifolds

CHAPTER 8. RECONSTRUCTION OF SUBMANIFOLDS

Let M be an unknown manifold and let P ⊂ M be a known finite sample. The reconstruction problem is to recover from P alone the topological type of M (manifold reconstruction) or the homotopy type of M (homotopy reconstruction). More concretely, we look for a simplicial complex M which approximates M, and, in particular, is provably homeomorphic or homotopy equivalent to M.

In Section 8.1, we will see that, under appropriate conditions on P , M has the same homotopy type as the union of balls centered on the points of P . It follows that the alpha-shape of P , for an appropriate value of α has the same homotopy type as M. This method however has some limitations. The complex captures the homotopy type but is not in general a triangulation of M and computing the alpha-shape is limited to low dimensional spaces.

In the following sections, we overcome these limitations and show how to reconstruct a simplicial complex with vertex set P that is homeomorphic to M. We have to face two main difficulties. First, even when a point set is a dense and sparse sampling on a manifold M, the Delaunay simplexes of dimension higher than 2 are not guaranteed to be thick (see Section 5.2) and therefore not guaranteed to approximate the tangent bundle of M (see Lemma 5.14). This is an issue since the main theorem of Chapter 7, Theorem 7.16, that provides conditions to triangulate a submanifold, requires simplices to be thick. To be able to reconstruct manifolds of dimension greater than 2, we will need to explicitly take care of non-thick simplices using techniques similar to what has been done in Chapter 5 in the Euclidean case.

The second major difficulty comes from the so-called curse of dimensionality. We have seen (Theorems 4.4 and 5.4) that the size of the Delaunay triangulation of n points grows exponentially with the dimension d of the embedding space. As a consequence, when d is large, we cannot afford to compute the d-dimensional Delaunay triangulation Del(P ) or any other subdivision of R d . Instead, we will introduce a subcomplex of Del(P ), called the tangential Delaunay complex, whose complexity depends on the intrinsic dimension of M and not on the ambient dimension d. This complex is defined locally and the various local triangulations are glued together so as to constitute a manifold complex that is embedded in R d and triangulates M.

HOMOTOPY RECONSTRUCTION USING ALPHA-SHAPES 183

Homotopy reconstruction using alpha-shapes

Unions of balls play a central role in manifold reconstruction. Indeed, while Chapter 6 shows how to capture the homotopy type of a union of balls with a simplicial complex, this section shows that the homotopy type of a sampled manifold can be obtained from the homotopy type of a union of balls. More precisely, we show here that the homotopy type, hence the homology groups, of a manifold M with positive reach can be obtained from union of balls centered at the points of a sample of M provided that the sample is dense enough with respect to the reach.

Theorem 8.1 Let M be a manifold with positive reach rch(M), and P ⊂ M be a point sample of M with sampling radius ε 2 rch(M), meaning that any point x of M is at distance less than ε 2 rch(M) from the closest sample point. If ε < 3 5 , the union of balls with radius ε rch(M) centered on P , is homotopy equivalent to M. Proof In the following, we denote by B(p, r) the ball with radius r centered on p and write for short U for the union of balls with radius εrch(M) centered on points of P :

U = p∈P B(p, εrch(M)).
Obviously, M is included in U . To prove the homotopy equivalence we prove below that U deformation retracts to M. For all x ∈ U and t ∈ [0, 1], we define

F (x, t) = (1 -t)x + tΠ(x),
where Π(x) is the projection on M. F is continuous from Lemma 7.13. For all x ∈ U , F (x, 0) = x, and F (x, 1) = Π(x) is in M, and for all x ∈ M and t ∈ [0, 1], F (x, t) = x. Therefore F is a deformation retracts from U to M, provided that F (x, t) belongs to U for any (x, t) ∈ U × [0, 1], which is proved now.

Let us consider Π U , the restriction of Π to U . The preimage Π -1

U (y) of a point y ∈ M is Π -1 U (y) = N y ∩ U ∩ B(y, rch(M)), (8.1)
where N y is the normal subspace of M at y. The ball with radius rch(M) centered at y, B(y, rch(M)), appears in Equation 8.

to remove orphan

Proof Let us consider the plane H through y, z and p. See Figure 8.1. In the plane H, we call n y the line H ∩N y , and h y the line orthogonal to n y that passes through y. Point z belongs to n y and point p lies anywhere outside of the two balls with radius rch(M) tangent to h y at y. Since the distance d(y, z) is constrained by the fact that d(p, z) ≤ εrch(M), the maximum of the distance d(y, z) occurs in the configuration where points p and z lie on the same side of h y , as shown in Figure 8.1. We denote by r p the radius of the circle tangent to M in y and going through p, and by θ p the angle ∠(h y , yp) between h y and yp.

We have r p ≥ rch(M) and d(y, p) = 2r p sin θ p . Furthermore we have (see Figure 8.1) :

d(y, z) = d(y, p) sin θ p + d(z, p) 2 -d(y, p) 2 cos 2 θ p = 2r p sin 2 θ p + d(z, p) 2 -r 2 p sin 2 2θ p ≤ 2r p sin 2 θ p + ε 2 rch(M) 2 -r 2 p sin 2 2θ p def = f (r p , θ p ) (8.2)
We have:

df dθ p = 2r p sin 2θ p - 2r 2 p sin 2θ p cos 2θ p ε 2 rch(M) 2 -r 2 p sin 2 2θ p = 2r p sin 2θ p   1 - r p cos 2θ p ε 2 rch(M) 2 -r 2 p sin 2 2θ p   .
Since ε < 3 5 < 1 and rch(M) ≤ r p , the function f is monotonically decreasing with respect to θ p and reaches its maximum when θ p is minimum, i.e. when d(y, p) = 2r p sin θ p = εrch(M). We have then

f (r p , θ p ) = εrch(M) sin θ p + ε 2 rch(M) 2 -ε 2 rch(M) 2 cos 2 θ p = 2εrch(M) sin θ p = ε 2 rch(M) 2 r p ≤ ε 2 rch(M),
which, together with Equation 8.2, achieves the proof.

M)). If P is ( ε 2 rch(M))-dense in M with ε < 3 5 rch(M), there is some point q ∈ P ∩ b ε (y) such that z ∈ b ε (q) ∩ N y .
Proof Because P is ( ε 2 rch(M))-dense in M, there is a point q ∈ P at distance at most ε 2 rch(M) from y. We prove that z ∈ B(q, ε). We consider now the plane H through y, z and q and write n y for the line H ∩ N y , and h y for the line orthogonal to H that passes through y. Figure 8.2, drawn in the plane H , shows the worst situation for the distance d(z, q). Denoting now by θ q the angle ∠(h y , yq) between h y and yq, we have d(z, q) 2 ≤ d(y, q) 2 cos 2 θ q + (d(y, q) sin θ q + d(y, z)) 2 ≤ d(y, q) 2 + 2d(y, q)d(y, z) sin θ q + d(y, z) 2 .

Since d(y, q) ≤ ε 2 rch(M) and d(y, z) ≤ ε 2 rch(M) (Lemma 8.4), we get

d(z, q) 2 ≤ ε 2 4 rch(M) 2 + ε 3 rch(M) 2 sin θ q + ε 4 rch(M) 2 .
We have d(y, q) = 2r q sin θ q ≤ ε 2 rch(M) where r q is the radius of the circle tangent to M at y and going through q. Since point q lies outside the two balls with radii rch(M) that are tangent to T y at y, r q is greater than 188 CHAPTER 8. RECONSTRUCTION OF SUBMANIFOLDS rch(M) and therefore sin θ q ≤ ε 4 . Thus,

d(z, q) 2 ≤ ε 2 4 rch(M) 2 + ε 4 4 rch(M) 2 + ε 4 rch(M) 2 ≤ ε 2 rch(M) 2 1 4 + 5 4 ε 2 , which is not greater than ε 2 rch(M) 2 if ε 2 ≤ 3 5 .

Tangential Delaunay complex

We introduce in this section a data structure, named the tangential Delaunay complex. Let M be a k-submanifold of R d . The only knowledge we have on M is a finite set of points P ∈ M and the tangent spaces at each point of P . The tangential Delaunay complex Del T M (P ) is a k-dimensional subcomplex of the d-dimensional Delaunay complex Del(P ). An important property is that Del T M (P ) can be constructed without computing any data structure of dimension higher than k, and in particular without computing the full Delaunay complex. We will see in Section 8.3 that Del T M (P ) can be used to reconstruct a triangulation of M.

Definition

Let P be a finite set of n > k + 1 points on M. Let Del(P ) be the Delaunay complex of P , i.e. the collection of all the simplices with vertices in P that admit an empty circumscribing d-dimensional ball. A ball of R d is called empty if its interior contains no point of P . For p ∈ P , we denote by Del p (P ) the Delaunay complex of P restricted to the tangent space T p , i.e. the subcomplex of Del(P ) formed by all the simplices with vertices in P that admit an empty circumscribing ball centered on T p . Equivalently, the simplices of Del p (P ) are the simplices of Del(P ) whose Voronoi dual face intersect T p .

In the rest of this chapter, we assume that the points of P are in general position wrt spheres so that the Delaunay complex Del(P ) naturally embeds in R d as a triangulation of P (see Section 4.3). We will further assume that P satisfies the following transversality condition : T p contains no point that is equidistant from more than k + 1 points of P . The transversality condition Definition 8.8 (Inconsistent simplex) A simplex σ ∈ Del T M (P ) is called inconsistent if σ does not belong to the stars of all its vertices. Let σ be an inconsistent simplex and let p i and p j be two vertices of σ so that σ is in star(p i ) but not in star(p j ), We say that the pair of vertices (p i , p j ) witnesses the inconsistent simplex σ.

Refer to Figure 8.4. Let σ be an inconsistent k-simplex witnessed by the pair of vertices (p i , p j ). The simplex σ belongs to the star of p i but not to the star of p j . Equivalently, the Voronoi (dk)-dimensional face Vor(σ) dual to σ intersects T p i (at a point c p i (σ)) but does not intersect T p j . Observe that c p i (σ) is the center of an empty d-dimensional ball B p i (σ) circumscribing σ. Let c p j (σ) denote the intersection of aff(Vor(σ)) with T p j . Differently from B p i (σ), the d-dimensional ball B p j (σ) centered at c p j (σ) that circumscribes σ contains a subset P j (σ) of points of P in its interior. Therefore, the line segment [c p i (σ) c p j (σ)] intersects the interior of some Voronoi cells (among which are the cells of the points of P j (σ)). Let p l be the point of P \ σ whose Voronoi cell is hit first by the segment [c p i (σ) c p j (σ)], when oriented from c p i (σ) to c p j (σ). We write σ I for the (k + 1)-simplex conv(σ, p l ) and i(σ I ) for the first point of the oriented segment [c p i (σ) c p j (σ)] that belongs to Vor(p l ). Observe that since the point i(σ I ) belongs Vor(σ)∩Vor(p l ), σ I is a (k + 1)-simplex of Del(P ). We say that the simplex σ I is an inconsistency trigger of σ. Note that an inconsistent simplex σ may have several pairs of witnesses and several inconsistency triggers, but at most one inconsistency trigger for each pair of witnesses. Considering all pairs of witnesses of an inconsistent simplex σ, we obtain the set of inconsistency triggers of σ.

Definition 8.9 (Inconsistency trigger) An inconsistency trigger of a ksimplex σ of Del T M (P ) is a (k + 1)-simplex of Del(P ) that is the inconsistency trigger of σ for some ordered pair of vertices of σ that witnesses the inconsistency.

Since we assumed that the points satisfy the transversality condition, the tangential complex does not contain faces of dimension greater than k. It follows that no inconsistency trigger can belong to the tangential complex.

Observe also that some of the subfaces of a inconsistency trigger may not belong to the tangential complex.

Since an inconsistency trigger σ I is a (k + 1)-simplex of Del(P ), we will use the same notations for σ I as for any other simplex, e.g. R(σ I ) for the radius 2. for any k-simplex σ ∈ star(p), R(σ) ≤ R p (σ) ≤ α 0 rch(M) (recall that and R p (σ) is the radius of the circumscribing ball of σ centered on T p .)

3. for any σ ∈ Del T M (P ), ∆(σ) ≤ 2α 0 rch(M).

Proof We prove (i). The other statements easily follow. Let x ∈ Vor(p)∩T p and write px = α rch(M). Let x be the point of M closest to x and let x = Π p (x ). We have xx ≤ xp and by the triangular inequality, px ≤ 2 xp = 2α rch(M) . It then follows from Lemma 7.8 that

x -x ≤ p -x 2 2rch(M) ≤ 2α 2 rch(M).
Now observe that xx = xx cos φ, where φ = ∠(T x , T p ). Assuming α ≤ 1 4 , we have, by Lemma 7.10, cos φ ≥ 1 -8α 2 . We conclude that

x -x ≤ 2α 2 rch(M) 1 -8α 2 .
Since P is ε-dense in M, there exists a point q ∈ P , such that xq ≤ ε rch(M). Together with x ∈ Vor(p), this implies

x -p ≤ x -q ≤ x -x + x -q ≤ 2α 2 1 -8α 2 + ε rch(M) (8.3) We thus have α ≤ 2α 2 1 -8α 2 + ε ≤ 2α 2 1 -2α + ε, (8.4)
where the last inequality is obtained by taking α ≤ 1/4.

Let α 0 = 1 8 (1 + 2ε - √ 1 -12ε + 4ε 2 ) and α 1 = 1 8 (1 + 2ε + √ 1 -12ε + 4ε 2 ) and note that α 0 ≈ ε and ε ≤ α 0 < 1 4 ≤ α 1 .
The inequality above is satisfied either when α ≤ α 0 or when α ≥ α 1 . Hence Vor(p) is contained in the union of B(p, α 0 ) and R d \ B(p, α 1 ). However, since Vor(p) is connected and contains p, Vor(p) must be entirely contained in B(p, α 0 rch(M)).

The following lemmas bound the size and shape of inconsistency triggers.

In particular the lemmas state that if an inconsistent simplex is small, thick and has a small circumradius, its inconsistency triggers have small circumradii (Lemma 8.11) and cannot be thick (Lemma 8.12). Lemma 8.11 Let σ be an inconsistent k-simplex and let σ I be a (k + 1)simplex that triggers the inconsistency of σ. Writing θ = max p∈σ (∠(aff(σ), T p )), we have

sin θ ≤ ∆(σ) Θ(σ) rch(M) and R(σ I ) ≤ R(σ) cos θ .
Proof We assume that the vertex pair (p i , p j ) is the witness pair of σ associated to the trigger σ I and use the same notations as in Subsection 8.2.2. Therefore σ belongs to Del p i (P ) but not to Del p j (P ), and the vertices of σ I lie in the closure of B ij = B p j (σ) \ B p i (σ). Observe also that c p i , c p j and i(σ I ) lie in the (dk)-flat that contains c(σ) and is perpendicular to aff(σ).

Hence the orthogonal projection of these four points onto aff(σ) is c(σ).

We now bound θ = ∠(aff(σ), T p ) for any p ∈ σ. By Lemma 7.8 (2), we have for any p, q ∈ σ, d(q, T p ) ≤ ∆ 2 (σ) 2rch(M) and by Lemma 5.14

sin θ ≤ 2 ∆ 2 (σ) 2rch(M) Θ(σ) ∆(σ) = ∆(σ) Θ(σ) rch(M )
.

Since the orthogonal projection of

c p i onto aff(σ) is c(σ), ω = ∠(p i -c p i , p i - c(σ)) = min u∈aff(σ) ∠(p i -c p i , u) ≤ θ. We thus have R p i (σ) = p i -c p i = R(σ) cos ω ≤ R(σ) cos θ .
and we get the same bound if p i is replaced by p j or by any other vertex p in the above inequality. Since i(σ

I ) ∈ [c p i c p j ], we also have R(σ I ) ≤ i(σ I ) -p i ≤ R(σ)/ cos θ.
We deduce from the lemma a bound on the thickness of inconsistency triggers. This is a crucial property to be used later to remove inconsistencies.

Lemma 8.12 The thickness of the (k + 1)-simplex σ I that triggers the inconsistency of a k-simplex σ satisfies :

Θ(σ I ) ≤ ∆(σ I ) 2(k + 1)rch(M) 1 + 2 Θ(σ)
Proof Let p l be the vertex of σ I that is not a vertex of σ. We bound the altitude D(p l , σ I ) of σ I . Let q ∈ σ. We deduce

D(p l , σ I ) = p l -q sin ∠(p l -q, aff(σ)) ≤ ∆(σ I ) (sin ∠(p l -q, T q ) + sin ∠(T q , aff(σ))) ≤ ∆(σ I ) ∆(σ I ) 2rch(M) + ∆(σ) Θ(σ) rch(M) (Lemmas 7.8 & 8.11) ≤ ∆ 2 (σ I ) 2rch(M) 1 + 2 Θ(σ)
The bound on the thickness then follows from the definition of thickness (see Section 5.2). Corollary 8.13 Let P be an ε-dense sample of M and let σ I be a (k + 1)simplex that triggers the inconsistency of a k-simplex σ. Assume that σ is Θ 0 -thick and that Θ 0 satisfies

Θ k+1 0 > α 0 k + 1 cos arcsin 2α 0 Θ k 0 -1 1 + 2 Θ k 0 (8.5)
where α 0 is defined in Lemma 8.10. Then σ I is not Θ 0 -thick.

Proof We need to prove that Θ(σ I ) < Θ k+1 0 . From Lemma 8.12 we have

Θ(σ I ) ≤ ∆(σ I ) 2(k + 1)rch(M) 1 + 2 Θ(σ) ≤ ∆(σ I ) 2(k + 1)rch(M) 1 + 2 Θ k 0 .
We now bound ∆(σ I ) :

∆(σ I ) ≤ 2R(σ I ) ≤ 2R(σ) cos arcsin ∆(σ) Θ(σ) rch(M) -1 (Lemma 8.11) ≤ 2α 0 rch(M) cos arcsin 2α 0 Θ k 0 -1 (Lemma 8.10) Hence Θ(σ I ) ≤ α 0 k + 1 cos arcsin 2α 0 Θ k 0 -1 1 + 2 Θ k 0 .
It follows that if Equation 8.5 holds, Θ(σ I ) < Θ k+1 0 , which means that σ I is not Θ 0 -thick.

Note that the condition in the corollary is satisfied when the thickness of the inconsistent simplexes satisfy Θ(σ) > Θ k 0 = Ω(ε 1/(k+1) ).

Submanifold reconstruction

Let M denote a submanifold of R d that is compact, closed, differentiable, and whose reach is positive. The only knowledge we have about M is its dimension k together with a finite point sample P ⊂ M and the tangent Proof The proof of (i) is an easy adaptation of the proof of Lemma 8.10. We define x, x and x and α as in the proof of Lemma 8.10 and still get

x -x ≤ 2α 2 rch(M) 1 -8α 2 .
Since P is ε-dense in M, there exists a point q ∈ P , such that xq ≤ ε rch(M). Since x is in Vor(p), this implies that

x -p 2 + w(p) ≤ x -q 2 + w(q) x -p 2 ≤ ( x -x + x -q ) 2 + w(q),
which yields

α 2 ≤ 2α 2 1 -8α 2 + ε 2 + 4 w0 ε 2 Hence, α ≤ 2α 2 1 -8α 2 + ε 1 + 2 w0 .
which is just Equation 8.4 where ε has been replaced by ε so that we can end the proof as in Lemma 8.10. ¡Let c p (σ) be the point of T p that is orthogonal to σ. Property (ii) follows easily since c p (σ) belongs to Vor(p) ∩ T p and d(c p (σ), p)

2 = R p (σ) 2 + w(p) . Hence R p (σ) ≤ d(c p (σ), p) ≤ α0 rch(M).
To prove Property (iii), we bound the Euclidean distance d(c p (σ), q) between c p (σ) and a vertex q of σ as follows:

d(c p (σ), q) 2 = R p (σ) 2 + w(q) ≤ α2 0 rch(M) 2 + 4 w0 ε 2 rch(M) 2 .
Hence,

d(c p (σ), q) ≤ α0 + 2ε w0 rch(M) = α1 rch(M)
Since this bound holds for any vertex q of σ, the bound given in (iii) for the diameter ∆(σ) follows.

Lemma 8.15 Let σ be an inconsistent k-simplex of Del T M ( P ) and let σ I be a (k + 1)-simplex that triggers the inconsistency of σ. If θ is defined by θ = max p∈σ (∠(aff(σ), T p ), we have

sin θ ≤ ∆(σ) Θ(σ) rch(M)
and R(σ

I ) ≤ R(σ) cos θ .
Proof The proof is the same as the proof of Lemma 8.11 Lemma 8.12 applies verbatim to the weighted case and finally an easy adaptation of the proof of Corollary 8.13 yields the following weighted version.

Corollary 8.16 Let P be an ε-dense sample of M and let w be a weighting scheme on P with a relative amplitude w ≤ w0 < 1/4. Let σ be an inconsistent k-simplex and let σ I be a (k + 1)-simplex that triggers the inconsistency of σ. Assume that σ is Θ 0 -thick and that Θ 0 satisfies

Θ k+1 0 > α1 k + 1 cos arcsin 2α 0 Θ k 0 - 1 1 + 2 Θ k 0 (8.6)
where α0 and α1 are defined in Lemma 8.14. Then σ I is not Θ 0 -thick.

Proof We need to prove that Θ(σ I ) < Θ k+1 0 . From Lemma 8.12 we have

Θ(σ I ) ≤ ∆(σ I ) 2(k + 1)rch(M) 1 + 2 Θ(τ ) (8.7)
We now bound ∆(σ I ). Let c(σ I ) be the weighted center of σ I and let q be any vertex of σ I . We have

d(c(σ I ), q) 2 = R(σ I ) 2 + w(q) ≤ R(σ) 2 cos θ 2 + 4 w0 ε 2 rch(M) 2 ≤ α2 0 + 4 w0 ε 2 cos θ 2 rch(M) 2 ≤ α2 1 cos θ 2 rch(M) 2
where θ is given by Lemma 8.15 and α1 is defined in Lemma 8.14. Since this is true for any vertex q of σ I , ∆(σ I ) can be bound by 2 α1 cos θ rch(M). Plugging this bound in Equation 8.7 yields that Θ(σ I ) < Θ k+1 0 if σ is Θ 0 -thick and Θ 0 satisfies Equation 8.6.

Note that Equation 8.6 in Corollary 8.16 is satisfied if Θ 0 = Ω(ε

1 k(k+1) ).
Theorem 8.17 Let M be a submanifold of positive reach and let P be an (ε, η)-net of M for a sufficiently small ε. Let in addition w0 < 1/4 and Θ 0 be two constants satisfying Equation 8.6 and the following Equation

6 η (1 + 4 √ w0 ) cos θ d(d+1 32Θ 0 w0 η3 (1 + 2 √ w0 )(1 + 4 √ w0 ) 2 cos 3 θ ≤ 1 e (8.8)
where

θ = arcsin 2 α1 Θ k 0 ≈ arcsin 2ε(1 + 4 √ w0 ) Θ k 0 .
Then Algorithm 8 terminates and outputs a weight assignment on the points of P such that the weighted tangential complex Del T M ( P ) is free of inconsistencies. The expected time complexity of the algorithm is O(|P |).

Proof First note that the algorithm removed inconsistencies only when there are no Θ 0 -flakes in Del T M ( P ). Then Equation 8.6 ensures that the trigger of an inconsistency is not Θ 0 -thick (Lemma 8.16) and therefore includes a Θ 0 -flake that can be resampled.

The resampled simplices are Θ 0 -flakes of Del( P ) that either belong to Del T M ( P ) or are included in an inconsistency trigger. Let σ be any resampled flake. From Lemmas 8.14 and 8.15, the weighted radius R(σ) is at most

R(σ) ≤ α0 cos θ rch(M),
and, from Lemma 8.14 and the proof of Corollary 8.16, its diameter is bounded by

∆(σ) ≤ 2α 1 cos θ rch(M).
Therefore Algorithm 8 is a variant of Moser-Tardos algorithm similar to the algorithm of Section 5.3.5 that removes from Del( P ) all Θ 0 -flakes with small weighted radii. Then, arguing as in Section 5.3.5, we show that Algorithm 8 terminates provided that the condition expressed in Equation 8. Assume that η and w0 < 1 4 are fixed. Then Equation 8.6 is satisfied if Θ 0 is sufficiently large with respect to ε and Algorithm 8 terminates provided 8.3. SUBMANIFOLD RECONSTRUCTION 203 that Θ 0 is sufficiently small with respect to η and w0 and is sufficiently large with respect to ε. Those conditions can be satisfied if the sampling radius ε is sufficiently small.

Guarantees on the reconstruction

The simplicial complex M = Del T M ( P ) output by the algorithm is free of inconsistencies. In addition, it is a good approximation of M as stated in the following theorem.

Theorem 8.18 (Guarantees) Under the same hypotheses as in Theorem 8.17, the Delaunay tangential complex M = Del T M ( P ) output by the algorithm satisfies the following properties:

1. All the simplices in M are Θ 0 -thick. Proof The first statement directly follows from the algorithm. Proving the second statement reduces to proving that the link of any vertex of M is a topological (k -1)-sphere. We first observe that, since M contains no inconsistencies, the star of any vertex p in M is identical to star(p), the star of p in Del p ( P ). Hence, to prove the second statement, it is enough to prove that the link of p in Del p ( P ) is a topological (k -1)-sphere, which is done in the next lemma. Lemma 8.19 M is a simplicial combinatorial manifold.

Proof It is sufficient to prove that, for any p ∈ P , the link of p in M is a topological (k -1)-sphere. By Lemma 8.7, star(p) is isomorphic to star p (p),

The claim implies that q has a non empty cell in the weighted Voronoi diagram Vor(Ψ p (P )) embedded in T p (see Section 8.7). Equivalently, q is a vertex of Del p (P ) and q is a vertex of Del(Ψ p (P )). Since Del(Ψ p (P )) is a triangulation embedded in T p (under the transversality condition of Section 8.2.1), q cannot belong to star (p) without being a vertex of star (p) and, accordingly, q must be a vertex of star(P ). Therefore, Hypothesis 4 holds and the lemma is proved. This ends the proof of Lemma 8.20. All hypotheses of Theorem 7.16 are satisfied. This ends the proof of Theorem 8.18.

Exercises

Exercise 8.1 Given is an (ε, η)-net P of a differentiable (unknown) submanifold M ∈ R d . Propose a method to approximate the tangent space T p of M at p ∈ P . Exercise 8.2 (Distance between components) Let P be an ε-dense sample of a submanifold M of positive reach rch(M). Prove that each connected component of M contains at least one point of P and therefore at least one vertex of Del T M (P ). (Hint : show that the distance between any two connected components of M is at least 2rch(M)).

Exercise 8.3 Show that Algorithm 8 terminates if the condition expressed as Equation 8.8 is satisfied. Observe that, for given values of η and w0 , the condition is satisfied if Θ 0 is sufficiently small and ε is sufficiently small compared to Θ k 0 .

Sketch of the proof. Equation 8.8 is the same as Equation 5.12 of Theorem 5.21 applied to the case of Algorithm 8. We use the notations of Section 8.3.2.

Using the bounds on the weighted radius and the diameter of a resampled flake σ (Lemma 8.14), we first bound, as in Section 5.3, the measure of the 206 CHAPTER 8. RECONSTRUCTION OF SUBMANIFOLDS weight range I(σ, p) of a vertex p of σ:

|I(σ, p)| ≤ 8Θ 0 ∆(σ) 2 L(σ) R(σ) ≤ 8Θ 0 εη 4 α2 1 α0 cos 3 θ rch(M) 2 ≤ 32Θ 0 η (1 + 2 √ w0 )(1 + 4 √ w0 ) 2 cos 3 θ ε 2 rch(M) 2 .
Then, the probability that such a flake occurs is at most |I(σ,p)| w0 L(p) 2 (Lemma 5.23), where L(p) is the length of the shortest edge incident to p in Del( P ). Thus

≤ 32Θ 0 w0 η3 (1 + 2 √ w0 )(1 + 4 √ w0 ) 2 cos 3 θ .
We then bound Γ + 1 where Γ is the number of events overlapping a given flake σ. Overlapping events are flakes that share at least one vertex. Because resampled flakes have their diameter bounded by ∆ m = 2 α1 rch(M) cos 3 θ , flakes overlapping a given flake σ have their vertices within the ball B(c(σ), 3 2 ∆ m ) where c(σ) is the circumcenter of σ. Using then the fact that two vertiuces are at least ηεrch(M) apart, we bound the number of vertices in this ball and then Γ + 1 using a by now standard volume argument:

Γ + 1 ≤ 3 2 ∆ m 1 2 ηεrch(M) k(k+2) ≤ 6 α1 η cos θ k(k+2) ≈ 6(1 + 4 √ w0 ) η cos θ k(k+2)
The condition for the termination of Algorithm 8 is then obtained by plugging the bounds on and Γ + 1 into Equation 5.12 of Theorem 5.21.

Bibliographical notes

Alpha-shapes and weighted alpha-shapes are among the first tools introduced in the area of shape reconstruction where one seeks to construct an approximation of the shape of a three-dimensional object from a set of points measured on the boundary of the object. References are provided in the bibliographical notes of Chapter 6. Theorem 8.1 that states that an α-complex of a finite sample of a manifold has the same homotopy type as the manifold is due to Niyogi, Smale and Weinberger [START_REF] Niyogi | Finding the Homology of Submanifolds with High Confidence from Random Samples[END_REF].

The tangential complex has been independently defined by Freedman [START_REF] Freedman | Efficient simplicial reconstructions of manifolds from their samples[END_REF] and by Boissonnat and Flottoto [START_REF] Boissonnat | A coordinate system associated with points scattered on a surface[END_REF]. Boissonnat and Ghosh later showed how to remove inconsistencies in the tangential complex by star stitching [START_REF] Boissonnat | Manifold reconstruction using tangential Delaunay complexes[END_REF] and proved Theorems 8.17 and 7.16. The tangential complex can be seen as a light variant of the cocone introduced by Cheng, Dey and Ramos [START_REF] Cheng | Manifold Reconstruction from Point Samples[END_REF].

The approach followed in this chapter that defines local triangulations and remove inconsistencies among the local triangulations has been pioneered by Shewchuk to maintain triangulations of moving points [START_REF] Shewchuk | Star splaying: An algorithm for repairing delaunay triangulations and convex hulls[END_REF] and by Boissonnat, Wormser and Yvinec to generate anisotropic meshes [START_REF] Boissonnat | Anisotropic Delaunay mesh generation[END_REF]. The central question behind this approach is the stability of Delaunay triangulations and the existence and construction of Delaunay triangulations on manifolds [START_REF] Boissonnat | The Stability of Delaunay Triangulations[END_REF][START_REF] Boissonnat | Delaunay stability via perturbations[END_REF][START_REF] Boissonnat | Delaunay triangulation of manifolds[END_REF].

In this chapter, we have assumed that the dimension of the submanifold is known and that the tangent space can be computed at any data point.

Giesen and Wagner have shown how to estimate the dimension [START_REF] Giesen | Shape dimension and intrinsic metric from samples of manifolds[END_REF]. Estimating the tangent space can be done using principal component analysis (PCA) [START_REF] Jolliffe | Principal component analysis[END_REF].

An implementation of the tangential complex can be found in the Gudhi library [START_REF]GUDHI User and Reference Manual[END_REF]. In the sequel, all the considered shapes and their approximations are represented by compact subsets of an Euclidean space R d . We use indifferently the words shape and compact set. In this chapter, we address the general problem consisting in recovering the topology of a shape from an approximation.

In general, the topological and geometric invariants of a shape cannot be directly extracted from the corresponding invariants of an approximating shape. In particular this is always the case for a (continuous) shape K, e.g. a surface in R 3 , approximated by a finite point cloud data set K : point clouds in themselves do not carry any non trivial topological or geometric structure. Moreover, the occurence of some features may depend on a "scale" at which the data and the shape are considered: for example, viewed with human eyes, the surface of a real world object may look very regular but at a microscopic scale it appears as a much more complicated surface with many holes and tunnels. It is thus necessary to "build" some scale-dependant geometric structure on top of such point clouds to recover informations about the shapes they approximate. For that purpose, the approach we adopt in this chapter consists in considering the distance functions to compact sets and to compare the topology of the sublevel sets (i.e. the offsets) of close compact sets. The underlying intuition is that "at some scales" (i.e. for some range values of the offsets), two close compact sets should have the same offset topology as illustrated on figure 9.1. The goal of this chapter is to turn this intuition into a formal framework with rigorous statements. This requires to proceed in two steps. First, one needs to understand how the topology of the offsets K r of a given compact set K evolves with the parameter r. The answer to this question is given by the theory of critical points for distance functions. Second, it is necessary to compare the topology of the offsets of two close (for the Hausdorff distance) compact sets. This leads to stability results and sampling conditions necessary to ensure correct geometric inference.

The general mathematical framework introduced in this chapter allows to generalize and extend the results of Chapter 6, Section 8.1 and Chapter 8 to a wide class of non smooth shapes encountered in practical applications.

x, x ∈ R d , |d K (x) -d K (x )| ≤ x -x . Moreover, K is completely characterized by d K since K = d -1 K (0).
For any non-negative real number r, the r-offset K r of K is the r-sublevel set of d K defined by

K r = d -1 K ([0, r]) = {x ∈ R d : d K (x) ≤ r}.
Recall from Section 1.2.2 that if K and K are two compact subsets of R d , then the Hausdorff distance d H (K, K ) is the infimum of the sets of non negative numbers r ≥ 0 such that K ⊂ K r and K ⊂ K r . Indeed, the Hausdorff distance can be expressed in various equivalent ways in terms of distance functions:

Proposition 9.1 Let K, K ⊂ R d be two compact sets. The Hausdorff distance d H (K, K ) between K and K is defined by any of the following equivalent assertions:

• d H (K, K ) is the smallest number r such that K ⊂ K r and K ⊂ K r . • d H (K, K ) = max (sup x∈K d K (x), sup x∈K d K (x)). • d H (K, K ) = d K -d K := sup x∈R d |d K (x) -d K (x)|.

Critical points of distance functions

Given a compact set K ⊂ R d , the distance function d K is usually not differentiable. For example, if K is the union of the four sides of a square in the plane, d K is not differentiable along the diagonals of K. Nevertheless, it is possible to define a generalized gradient vector field ∇ K : R d → R d for d K that coincides with the classical gradient at the points where d K is differentiable.

For any point x ∈ R d we denote by Γ K (x) the set of points in K closest to x:

Γ K (x) = {y ∈ K : d(x, y) = d K (x)} ⊂ R d .
This is a non empty compact subset of K.

Let B K (x) be the smallest closed ball enclosing Γ K (x) and let c K (x) be its center and F K (x) its radius (see figure 9.2). For x ∈ R d \ K, the generalized gradient ∇d K (x) is defined by

∇d K (x) = x -c K (x) d K (x)
and for x ∈ K, ∇d K (x) = 0.

The norm of the gradient is given by

∇d K (x) 2 = 1 - F 2 K (x) d 2 K (x)
.

(9.1)

CRITICAL POINTS OF DISTANCE FUNCTIONS

215

K x Γ K (x) B K (x) c K (x)
∇d K (x)

F K (x)
Figure 9.2: The gradient of the distance function.

Equivalently, the norm of ∇d K (x) is the cosine of the half angle of the smallest circular cone with apex x that contains Γ K (x). Intuitively, the direction of ∇d K (x) is the one along which the directional derivative of d K is the largest or, in other words, the one in which the slope of the graph {(y, d K (y)) : y ∈ R d } ⊂ R d+1 is the largest at the point (x, d K (x)) (see Figure 9.3).

The map x ∈ R d → ∇d K (x) ∈ R d is in general not continuous. In other words, ∇d K is a discontinuous vector field. Nevertheless it is possible to show [START_REF] Lieutier | Any open bounded subset of R n has the same homotopy type as it medial axis[END_REF][START_REF] Petrunin | Semiconcave functions in alexandrov's geometry[END_REF] that x → ∇d K (x) is a lower semi-continuous function, i.e. for any a ∈ R, ∇d K -1 ((-∞, a]) is a closed subset of R d . Moreover, ∇d K is integrable in the following sense. Proposition 9.2 There exists a continuous map C : R + × R d → R d such that for any x ∈ R d , the map t → C(t, x), called a trajectory of ∇d K is a satisfying X(0) = x. Moreover this continuous trajectory can be parametrized by arc length s → C(t(s), x) and one has

d K (C(t(l), x)) = d K (x) + l 0 ∇d K (C(t(s), x)) ds. (9.2)
The above equation implies that d K is non decreasing along the trajectories of ∇d K . It can also be shown [START_REF] Lieutier | Any open bounded subset of R n has the same homotopy type as it medial axis[END_REF] that F K is also non decreasing along the trajectories of ∇d K .

The gradient ∇d K allows to define the notion of critical point for d K in the same way as for differentiable functions.

Definition 9.3 (Critical point) A point x is a critical point of d K if ∇d K (x) = 0. A real c ≥ 0 is a critical value of d K if there exists a critical point x ∈ R d such that d K (x) = c.
A regular value of d K is a value which is not critical.

TOPOLOGY OF THE OFFSETS

217

When there is no risk of confusion, we make the small abuse of language consisting in calling a critical (resp. regular) point of d K a critical (resp. regular) point of K.

Topology of the offsets

Using the notion of critical point defined in the previous section, it appears that some properties of distance functions are similar to the ones of differentiable functions. In particular, the sublevel sets of d K are topological submanifolds of R d and their topology can change only at critical points. These properties are formalized in the following two theorems.

Theorem 9.4 Let K ⊂ R d be a compact set and let r be a regular value of

d K . The level set d -1 K (r) is a (d -1)-dimensional topological submanifold of R d .
Theorem 9.5 (Isotopy Lemma) Let K ⊂ R d be a compact set and let r 1 < r 2 be two real numbers such that [r 1 , r 2 ] does not contain any critical value of d K . Then all the level sets d -1 K (r), r ∈ [r 1 , r 2 ] are homeomorphic (and even isotopic) and the set

A(r 1 , r 2 ) = {x ∈ R d : r 1 ≤ d K (x) ≤ r 2 } is homeomorphic to d -1 K (r 1 ) × [r 1 , r 2 ].
An immediate consequence of these two results is that the topology of the offsets of K can only change at critical values and for any regular value r of d K , the offset K r is a d-dimensional topological manifold with boundary. In particular, the topology of the small offsets K r , r > 0, cannot change while r is smaller than the smallest positive critical value of d K (if it exists). This leads to the notion of weak feature size. It follows from the Isotopy Lemma 9.5 that if 0 < α ≤ β < wfs(K), then K α and K β are isotopic. In a more intuitive way, the knowledge of K at precision, or scale, α gives the same information for any choice of 0 < α < CHAPTER 9. STABILITY OF DISTANCE FUNCTIONS wfs(K). Moreover, the following result allows to compare the topology of the offsets of two close compact sets with positive weak feature sizes.

Theorem 9.7 Let K, K ⊂ R d and ε > 0 be such that d H (K, K ) < ε, wfs(K) > 2ε and wfs(K ) > 2ε. Then for any 0 < α ≤ 2ε, K α and K α are homotopy equivalent.

Proof Let δ > 0 be such that wfs(K) > 2ε + δ and wfs(K ) > 2ε + δ. It is enough to prove that K δ+2ε and K δ+ε are homotopy equivalent. Since d H (K, K ) < ε, the following diagram, where each map is an inclusion, is commutative.

K δ a 0 / / d 0 ' ' K δ+ε d 1 ( ( a 1 / / K δ+2ε K δ c 0 7 7 b 0 / / K δ+ε c 1 6 6 b 1 / / K δ+2ε
The Isotopy Lemma 9.5 implies that the inclusions a 0 , a 1 , b 0 and b 1 are homotopy equivalences. Let s 0 , s 1 , r 0 and r 1 be the homotopic inverses of a 0 , a 1 , b 0 and b 1 respectively.

The following computation, where ∼ = denotes the homotopy equivalence relation, shows that c 1 is an homotopy equivalence between K δ+ε and K δ+2ε with homotopic inverse r 1 • d 1 • s 1 :

c 1 • r 1 • d 1 • s 1 ∼ = c 1 • (r 1 • b 1 ) • d 0 • s 0 • s 1 ∼ = (c 1 • d 0 ) • s 0 • s 1 ∼ = a 1 • a 0 • s 0 • s 1 ∼ = id K δ+2ε
Similarly, we get

r 1 • d 1 • s 1 • c 1 ∼ = id K δ+ε
The previous theorem shows that the compact sets with positive weak feature size provide a class of compact sets with interesting topological stability properties. Moreover, it is possible to show that this class is large enough to include most of the shapes encountered in practical applications. In particular, smooth manifolds, polyhedra, polyhyedral sets, semi-algebraic sets and more generally the so-called subanalytic compact sets (i.e. obtained from 9.4. STABILITY OF CRITICAL POINTS 219 analytic equations and inequalities) all have positive weak feature size. Nevertheless, the previous theorem suffers from a weakness that prevents it to be really useful in practice. Indeed, the assumption involving both wfs(K) and wfs(K ) is hardly satisfied in practical situations. For example if K is a continuous shape approximated by a finite point cloud K , wfs(K ) is equal to half of the distance between the two closest points of K which is usually smaller than 2d H (K, K ) as illustrated on figure 9.4. As a consequence, even if the weak feature size of K is large, whatever the quality of the approximation of K by K the assumptions of the theorem 9.7 may not be satisfied. This phenomenon can also be interpreted as a lack of continuity of the map K → wfs(K) or as an instability property of the critical points of distance functions.

Stability of critical points

Since the topology of the offsets of a compact set can only change for critical values of d K , it is natural to study the stability of these critical points when K is replaced by a close compact set K . Unfortunately, it appears that the critical points are unstable, as illustrated on figure 9.5.

To overcome this stability problem we introduce a parametrized notion of critical point.

Definition 9.8 (µ-critical points) Let K ⊂ R d be a compact set and let

0 ≤ µ ≤ 1. A point x ∈ R d is µ-critical for d K if ∇d K (x) ≤ µ.
Note that the notion of 0-critical point coincides with the notion of critical point of Definition 9.3 . The family of µ-critical points satisfies the following fundamental stability property. The proof of this theorem follows from two technical lemmas. The first one shows that the function d K cannot grow too fast in a neighborhood of a µ-critical point.

Lemma 9.10 Let K ⊂ R d be a compact set and x one of its µ-critical points. For any y ∈ R d , we have:

d 2 K (y) ≤ d 2 K (x) + 2µd K (x)||x -y|| + ||x -y|| 2 .
Proof Let Γ = Γ K (x) be the set of points closest to x on K, and let S be the sphere with center x and radius d K (x). Let also c = c K (x) be the center of the minimal enclosing ball of Γ, and α = arccos -1 (µ) (see Figure 9.6). For any x ∈ Γ we have

d 2 K (y) ≤ y -x 2 = ((y -x) + (x -x ).(y -x) + (x -x )) = y -x 2 + x -x 2 + 2((y -x).(x -x )) = d 2 K (x) + 2d K (x) x -y cos(y -x, x -x ) + x -y 2
To prove the lemma it is thus sufficient to prove the following claim.

Claim: there exists a point x ∈ Γ such that the angle between (yx) and (xx) is not smaller than α.

We distinguish between two cases.

Case 1: µ = 0 Assume that the claim is not satisfied. Then for any x ∈ Γ the angle between (xx) and (yx) is smaller than α. Since Γ is compact, there exists α < α such that Γ is contained in the "circular" cone with apex x and axis the half-line directed by yx and apex angle α . This cone intersects S along a (d -2)-sphere with center c and radius R = d K (x) sin α . Since Γ is also contained in S, Γ is contained in the ball of center c and radius

R = d K (x) sin α < d K (x) sin α = F K (x): a contradiction.
Case 2: µ = 0 the last inequality coming from the fact that √ 1 + u ≤ 1 + u 2 for u ≥ 0. Noticing that ||x -y|| ≤ ρ, dividing by ρ, and applying equation (9.3) shows that p satisfies the desired requirements.

Proof [of Theorem 9.9] The bound of the previous lemma can be optimized by choosing ρ = 2 εd K (x). It then becomes equal to 2 ε/d K (x) + µ. The theorem follows immediately. Remark 9.12 Note that since d K is increasing along the trajectories of ∇d K (see Equation 9.2), the µ -critical point p for d K of Lemma 9.11 can be chosen such that d K (p) ≥ d K (x).

The critical function of a compact set

The critical point stability Theorem 9.9 plays a fundamental role to get topological stability results. It allows to introduce a general framework for inferring the topology and the geometry of a large class of (non-smooth) compact sets. For that purpose, we first introduce a one variable real-valued function that encodes the criticality of the level sets of d K .

Definition 9. [START_REF] Boissonnat | Delaunay stability via perturbations[END_REF] The critical function of a compact set K ⊂ R d , χ K : (0, +∞) → R + is defined by

χ K (r) = inf x∈d -1 K (r) ∇d K (x)
An example of a critical function is given in Figure 9.7. Note that from the isotopy Lemma 9.5 the zeros of the critical functions correspond to the changes in the topology of the offsets of K. As we will see later, the main interest of the critical function χ K is to provide information about the topological stability of some offsets of the compact sets contained in a neighborhood of K. In particular, whether a compact set K is a Hausdorff approximation of a simple compact set or not can be directly read from its critical function.

Using the critical points stability Theorem 9.9, we easily get the following stability result for the critical function. Theorem 9.14 (Critical function stability theorem) Let K and K be two compact subsets of R d such that d H (K, K ) ≤ ε. For all r ≥ 0 , we have:

inf{χ K (u) | u ∈ I(r, ε)} ≤ χ K (r) + 2 ε r
where

I(r, ε) = [r -ε, r + 2χ K (r) √ εr + 3ε]
This result shows that if the critical function of K is not smaller than some value α on the interval I(d, ε) then the critical function of K at the point r 9.6. SAMPLING CONDITIONS AND µ-REACH 225 cannot be smaller than α-2 ε r . In particular, if α > 2 ε r then r cannot be a critical value of d K . Since the topology of the offsets of K can only change at critical values, it is thus possible to locate intervals on which the topology of the offsets of K does not change. The Figures 9.7 and 9.8 illustrate this property.

From an algorithmic point of view, it is not difficult to see that when K is a finite point cloud, the critical function of K can be easily computed from the Voronoi diagram of K -see Exercise 9.11.

Proof Let r ≥ 0 and let x ∈ d -1 K (r) be such that ∇d K (x) = χ K (r). The existence of such a point x comes from the fact that the infimum involved in the definition of χ K is indeed a minimum. This follows from the lower semi-continuity of ∇d K and the compactness of d -1 K (r). The critical point stability Theorem 9.9 implies that there exists a point p which is (2 ε r + χ K (r))-critical for d K at distance at most 2 √ εr from x. Applying Lemma 9.10 to x, p and K we get

d K (p) ≤ r 2 + 4χ K (r)r √ εr + 4εr ≤ r 1 + 4χ K (r) ε/r + 4ε/r ≤ r + 2χ K (r) √ εr + 2ε
Now, according to Remark 9.12, p can be chosen such that d K (p) ≥ d K (x).

Using that |d K (p)d K (p)| ≤ ε, the theorem follows from the above inequality.

The example of Figure 9.8 illustrates the critical function Theorem 9.14.

The critical function of a point cloud sampling a torus shape reveals three intervals with stable topology for K: the first one corresponds to offsets having the topology of a torus (bottom left), the second one corresponds to solid torus with a hole homeomorphic to a ball inside (bottom middlenot visible from outside) and the third one is unbounded and correspond to offsets that have the topology of a ball (bottom right).

Sampling conditions and µ-reach

In this section we introduce the µ-reach, a stronger regularity condition than the weak feature size, that allows to give stronger reconstruction results than Theorem 9.7. It follows from the critical point stability Theorem 9.9 that the positiveness of the µ-reach of a compact set K implies some constraints on the location CHAPTER 9. STABILITY OF DISTANCE FUNCTIONS Exercise 9.10 Give an example of a compact set (e.g. a compact subset of R 2 ) K such that lim µ→0 + r µ (K) = wfs(K).

Exercise 9.11 Let P ⊂ R d be a finite set of points. We denote Vor(P ) and Del(P ) the Voronoi diagram and Delaunay triangulation of P . We use the notations of Section 9.2.

1. What can be said about the restriction of F P to a Voronoi cell of Vor(P )?

2. For each Delaunay simplex τ , let V τ its dual Voronoi cell and let f τ : R + → R + the function defined by

f τ (r) = 1 - F 2 P (τ ) r 2 if r ∈ d P (V τ )
and f τ (r) = 1 otherwise. Show that the critical function of P is equal to the minimum, taken over all the Delaunay simplices of Del(P ), of the functions f τ .

3. Deduce from the previous question an algorithm that takes Del(P ) as input and output the critical function of P .

Exercise 9.12 Prove the critical values separation Theorem 9.16. Hint: this is a consequence of Theorem 9.14 -see also [START_REF] Chazal | A sampling theory for compact sets in euclidean space[END_REF].

Bibliographical notes

The distance functions framework for geometric inference has been introduced in [START_REF] Chazal | A sampling theory for compact sets in euclidean space[END_REF] and the proof of the isotopic reconstruction Theorem 9.18 is given in [START_REF] Chazal | Normal cone approximation and offset shape isotopy[END_REF]. It is not restricted to topological inference and shape reconstruction but has been extended to other geometric inference problems. For example, it has been used to prove stability results for normals [START_REF] Chazal | Normal cone approximation and offset shape isotopy[END_REF] and curvatures [START_REF] Chazal | Stability of Curvature Measures[END_REF] estimation of compact sets with positive µ-reach. It has also been used to prove that some smoothing operations involving offsets of shapes in Computer Aided Geometric Design are theoretically well-founded [START_REF] Chazal | Shape smoothing using double offsets[END_REF].

Distance functions have been widely studied and used in Riemannian geometry [START_REF] Cheeger | Critical points of distance functions and applications to geometry[END_REF][START_REF] Grove | Critical point theory for distance functions[END_REF] and non-smooth analysis [START_REF] Clarke | Optimization and Nonsmooth Analysis[END_REF]. The notion of critical point introduced in this chapter coincides with the notion of critical point for distance function used in riemannian geometry and non-smooth analysis where the notion of Clarke gradient [START_REF] Clarke | Optimization and Nonsmooth Analysis[END_REF] is closely related to the above defined gradient. The general properties of the gradient of d K and of its trajectories given in Section 9.2, are established in [START_REF] Lieutier | Any open bounded subset of R n has the same homotopy type as it medial axis[END_REF] or, in a more general setting, in [START_REF] Petrunin | Semiconcave functions in alexandrov's geometry[END_REF].

Distance functions are also particular cases of the so-called semiconcave functions. Many of the results presented in this section can be deduced from general properties of semiconcave functions [START_REF] Petrunin | Semiconcave functions in alexandrov's geometry[END_REF]. This allows in particular to extend most of the results given in this section to compact subsets of Riemannian manifolds. When K is a finite set of points, several variants of the gradient flow C defined in this chapter have been previously and independently considered in the literature [START_REF] Edelsbrunner | Surface reconstruction by wrapping finite point sets in space[END_REF][START_REF] Giesen | The flow complex: a data structure for geometric modeling[END_REF][START_REF] Chaine | A geometric convection approach of 3d-reconstruction[END_REF].

The notion of weak feature size has been introduced in [START_REF] Chazal | The λ-medial axis[END_REF][START_REF] Chazal | Weak feature size and persistent homology: Computing homology of solids in R n from noisy data samples[END_REF][START_REF] Chazal | Stability and computation of topological invariants of solids in R n[END_REF]. The positiveness of the weak feature size of large classes of compact sets is discussed in [85, p. 1045] and [START_REF] Chazal | Weak feature size and persistent homology: Computing homology of solids in R n from noisy data samples[END_REF], proposition 3.6. The notion of reach for compact subsets of R d has been introduced by H. Federer [START_REF] Federer | Curvature measures[END_REF] in the setting of geometric measure theory.

The problem of outliers As we have seen in Chapter 9, the use of distance functions provides an interesting approach for the robust estimation of the topological and geometric properties of shapes in R d from approximating data. Here, approximation is meant with respect to the Hausdorff distance that requires all the data points to be located in a close neighborhood of the shape. However, in many practical applications the data come with outliers, i.e. observations (points) that are not located close to the approximated shape. For such data the Hausdorff distance is no longer relevant to formalize the notion of approximation: just adding one point p at distance R from a given data set K makes the Hausdorff distance between K and K ∪{p} equal to R (see Figure 10.1). As a consequence, the distancebased approach of Chapter 9 fails for data corrupted by noise and outliers as illustrated on Figure 10.2. To overcome this issue, in this chapter, we adapt the distance-based framework for geometric inference to the general framework of data carrying noise and outliers. • Stability of the map K → d K : for any compact subsets K, K of R d we have

d K -d K ∞ = d H (K, K ) where d K -d K ∞ = sup x∈R d |d K (x) -d K (x)|. • For any compact set K ⊂ R d , the distance function d K is 1-Lipschitz: for any x, x ∈ R d , |d K (x) -d K (x )| ≤ x -x . • For any compact set K ⊂ R d , the distance function d 2 K is 1-semiconcave: x → x 2 -d 2 K (x) is convex (see Exercise 10.1).
The first property is an obvious condition to ensure that the offsets of two close compact sets are close to each other. The second and third properties are the fundamental ingredients to prove the existence and integrability of the gradient of d K (Section 9.2) and the isotopy lemma of Section 9.3. These results still hold for general proper semiconcave functions, motivating the following definition of functions that are of particular interest for geometric inference.

joint Borel subsets of R d , µ (∪ i∈N B i ) = i µ(B i ). A probability measure is a measure whose total mass µ(R d ) is equal to 1.

Definition 10.10 The support of a measure µ is the smallest, with respect to inclusion, closed set K on which the mass of µ is concentrated, i.e. such that µ(R d \ K) = 0.

For some compact sets such as point clouds, submanifolds of R d or some more general shapes there exist natural ways to associate probability measures whose support are these compact sets as shown in the following examples.

The Wasserstein distance W 2

There exist a whole family of Wasserstein distances W p (p ≥ 1) between probability measures in R d . Their definition relies on the notion of transport plan between measures. Although some of the results of this chapter can be stated for any distance W p , for technical reasons that become clear in the following we only consider the W 2 distance.

A transport plan between two probability measures µ and ν on R d is a probability measure π on R d × R d such that for every Borel sets The coefficient π i,j can be seen as the amount of the mass of µ located at x j that is transported to y i . The cost of such a transport plan is then given by

A, B ⊆ R d , π(A × R d ) = µ(A) and π(R d × B) = ν(B).
C(Π) =   n i=1 m j=1 π i,j x j -y i 2   1/2
. Definition 10.11 The Wasserstein distance of order 2 between two probability measures µ and ν on R d is the minimum cost C(π) of a transport plan π between µ and ν. It is denoted by W 2 (µ, ν).

Notice that W 2 (µ, ν) may be infinite. However, if µ and ν have finite moment of order 2, i.e. R d x 2 dµ(x) < +∞ and R d x 2 dν(x) < +∞, then W 2 (µ, ν) is finite and the space of probability measures with finite moment of order 2 endowed with W 2 is a metric space [START_REF] Villani | Topics in Optimal Transportation[END_REF].

Even for measures with finite support, the computation of the Wasserstein distance is very expensive. However, it provides an interesting notion to quantify the resilience to outliers. To illustrate this, consider a set From a geometric inference point of view, since, in practice, we are working with point sets sampled according to some unknown probability distribution µ, the question of the convergence of the empirical measure µ N to µ with respect to the Wasserstein distance is of fundamental importance. This question is beyond the scope of this book but has been a subject of study in probability and statistics for a long time. For example, if µ is supported on a compact set, then µ N converges almost surely to µ in the W 2 distance. However all the stability and inference results stated in this chapter only rely on the Wasserstein distance between the considered measures and are independent of any convergence property of empirical measures.

C = {x 1 , x 2 , • • • , x N } of N points in R d

Distance function to a probability measure

In this section, we associate to any probability measure in R d a family of real valued functions that are both distance-like and robust with respect to perturbations of the probability measure.

Definition

The distance function to a compact set K evaluated at x ∈ R d is defined as the smallest radius r such that the closed ball centered at x of radius r contains at least a point of K. A natural idea to adapt this definition when K is replaced by a measure µ is to consider the smallest radius r such that the ball with center x and radius r contains a given fraction m of the total mass of µ. Notice that for m = 0, the definition coincides with the (usual) distance function to the support of the measure µ. Moreover for any m ∈ [0, 1), δ µ,m is 1-Lipschitz.

Unfortunately δ µ,m is not robust with respect to perturbations of the measure µ. Indeed, the map µ → δ µ,m is not continuous as shown by the following example. Let µ ε = ( 1 2ε)δ 0 + ( 1 2 + ε)δ 1 be the weighted sum of two Dirac measures at 0 and 1 in R and let m = 1/2. Then, for ε ≥ 0 one has δ µε,1/2 (t) = |1 -t| for t < 0 while if ε < 0, one obtains δ µ 0 ,1/2 (t) = |t| which means that ε → δ µε,1/2 is not continuous at ε = 0.

To overcome this issue we define the distance function associated to µ as a L 2 average of the pseudo-distances δ µ,m for a range [0, m 0 ] of parameters m: Definition 10.13 (Distance-to-measure) Let µ be a probability measure on R d , and m 0 be a positive mass parameter 0 < m 0 ≤ 1. The distance function to µ with parameter m 0 is the function d µ,m 0 : R d → R + defined by :

d 2 µ,m 0 : R n → R + , x → 1 m 0 m 0 0 δ 2 µ,m (x)dm

Distance function to empirical measures

An interesting property of the above defined functions is that they have a simple expression in terms of nearest neighbors. More precisely, let C be a point cloud with n points in R d , and µ C be the uniform measure on it: µ C = 1 n p∈C δ p . For 0 < m ≤ 1, the function δ µ C ,m evaluated at a given point x ∈ R d is by definition equal to the distance between x and its k-th nearest neighbor in C, where k is the smallest integer larger than mn. Hence the function m → δ µ C ,m (x) is constant and equal to the distance from x to its k-th nearest neighbor in C on each interval [ k-1 n , k n ). Integrating the square of this piecewise constant functions gives the following expression for d 2 µ,m 0 , where m 0 = k 0 /n:

d 2 µ,m 0 (x) = 1 m 0 m 0 0 δ 2 µ,m (x)dm = 1 m 0 k 0 k=1 1 n δ 2 µ,k/n (x) = 1 k 0 p∈NN k 0 C (x) p -x 2
where NN k 0 C (x) denote the set of the first k 0 nearest neighbors of x in C. As a consequence the pointwise evaluation of d 2 µ C ,k 0 /n (x) reduces to a k-nearest neighbor query in C.

C x C (1) x C (2) x C (3) δ µ,m x -x C (1) x -x C (2) x -x C (3) 1 n 2 n 3 n • • • • • • • • •

Equivalent formulation

In this paragraph, we provide another characterization of the distance function to a measure d µ,m 0 showing that it is in fact the distance function to a closed set, but in the non Euclidean space of probability measures endowed with the W 2 metric (see figure 10.4). This equivalent formulation will be used to deduce that µ → d µ,m 0 is Lipschitz and x → d 2 µ,m 0 (x) is semiconcave.

Definition 10.14 A measure ν is a submeasure of another measure µ if for every Borel subset B of R d , ν(B) ≤ µ(B). The set of all submeasures of a given measure is denoted by Sub(µ), while the set of submeasures of µ with a prescribed total mass m 0 > 0 is denoted by Sub m 0 (µ). Proposition 10.15 For any probability measure µ on R d , the distance function to µ evaluated at x is defined as:

d µ,m 0 (x) = min {m -1/2 0 W 2 (m 0 δ x , ν) ; ν ∈ Sub m 0 (µ)} (10.1)
Moreover, for any measure µ x,m 0 that realizes the above minimum one has:

d µ,m 0 (x) = 1 m 0 R d x -h 2 dµ x,m 0 (h) 1/2
Said otherwise, the distance d µ,m 0 evaluated at a point x ∈ R d is the minimal Wasserstein distance between the Dirac mass m 0 δ x and the set of submeasures of µ with total mass m 0 .

The set R µ,m 0 (x) of submeasures minimizing the above expression corresponds to the nearest neighbors of the Dirac measure m 0 δ x on the set of submeasures Sub m 0 (µ). It is not empty but it might not be reduced to a

0 > 0, then d µ,m 0 -d µ ,m 0 ∞ ≤ 1 √ m 0 W 2 (µ, µ ).
The proof of theorem 10.16 follows from the following proposition.

Proposition 10.17 Let µ and µ be two probability measures on R d . Then,

d H (Sub m 0 (µ), Sub m 0 (µ )) ≤ W 2 (µ, µ )
where d H (., .) is the Hausdorff distance in the space of probability measures endowed with the W 2 metric.

Proof (sketch of) Let ε be the Wasserstein distance of order 2 between µ and µ , and π be a corresponding optimal transport plan, i.e. a transport plan between µ and µ such that R d ×R d xy 2 dπ(x, y) = ε 2 . Given a submeasure ν of µ, one can find a submeasure π of π that transports ν to a submeasure ν of µ (notice that this later claim is not completely obvious and its formal proof is beyond the scope of this book. It can be proven using the Radon-Nykodim theorem). Then,

W 2 (ν, ν ) 2 ≤ R d ×R d x -y 2 dπ (x, y) ≤ ε 2
This shows that dist(ν, Sub m 0 (µ )) ≤ ε for every submeasure ν ∈ Sub m 0 (µ). The same holds by exchanging the roles of µ and µ , thus proving the bound on the Hausdorff distance.

Proof [of Theorem 10.16] The following sequence of equalities and inequalities, that follows from Propositions 10.15 and 10.17, proves the theo-CHAPTER 10. DISTANCE TO PROBABILITY MEASURES rem:.

d µ,m 0 (x) = 1 √ m 0 dist W 2 (m 0 δ x , Sub m 0 (µ)) ≤ 1 √ m 0 (d H (Sub m 0 (µ), Sub m 0 (µ )) + dist W 2 (m 0 δ x , Sub m 0 (µ ))) ≤ 1 √ m 0 W 2 (µ, µ ) + d µ ,m 0 (x)
10.3.5 The distance to a measure is a distance-like function.

The subdifferential of a function f : Ω ⊆ R d → R at a point x, is the set of vectors v of R d , denoted by ∂ x f , such that for all small enough vector h, f (x + h) ≥ f (x) + h.v. This gives a characterization of convexity: a function f : R d → R is convex if and only if its subdifferential ∂ x f is non-empty for every point x. If this is the case, then f admits a derivative at a point x if and only if the subdifferential ∂ x f is a singleton, in which case the gradient ∇ x f coincides with its unique element [START_REF] Clarke | Optimization and Nonsmooth Analysis[END_REF].

Proposition 10. [START_REF] Boissonnat | Manifold reconstruction using tangential Delaunay complexes[END_REF] The function v µ,m 0 : x ∈ R d → x 2d 2 µ,m 0 is convex, and its subdifferential at a point x ∈ R d is given by

∂ x v µ,m 0 = 2x - 2 m 0 h∈R d (x -h) dµ x,m 0 (h) ; µ x,m 0 ∈ R µ,m 0 (x)
Proof For any two points x and y of R d , let µ x,m 0 and µ y,m 0 be in R µ,m 0 (x) and R µ,m 0 (y) respectively. Thanks to Proposition 10.15, we have the following sequence of equalities and inequalities:

d 2 µ,m 0 (y) = 1 m 0 h∈R d y -h 2 dµ y,m 0 (h) ≤ 1 m 0 h∈R d y -h 2 dµ x,m 0 (h) ≤ 1 m 0 h∈R d x -h 2 + 2(x -h).(y -x) + y -x 2 dµ x,m 0 (h) ≤ d 2 µ,m 0 (x) + y -x 2 + v.(y -x)

DISTANCE FUNCTION TO A PROBABILITY MEASURE

247

where v is the vector defined by

v = 2 m 0 h∈R d (x -h) dµ x,m 0 (h).
The inequality can be rewritten as:

( y 2 -d 2 µ,m 0 (y)) -( x 2 -d 2 µ,m 0 (x)) ≥ (2x -v).(y -x)
which shows that the vector (2xv) belongs to the subdifferential of v at x. By the characterization of convex functions by that we recalled above, one deduces that v µ,m 0 is convex.

The proof of the reverse inclusion is slightly more technical and beyond the scope of the book.

Corollary 10. [START_REF] Boissonnat | The reach, metric distortion, geodesic convexity and the variation of tangent spaces[END_REF] The function d 2 µ,m 0 is 1-semiconcave. Moreover, (i) d 2 µ,m 0 is differentiable almost everywhere in R d , with gradient defined by

∇ x d 2 µ,m 0 = 2 m 0 h∈R d [x -h] dµ x,m 0 (h)
where µ x,m 0 is the only measure in R µ,m 0 (x).

(ii) the function

x ∈ R d → d µ,m 0 (x) is 1-Lipschitz.
Proof (i). It follows from the fact that a convex function is differentiable at almost every point, at which its gradient is the only element of the subdifferential at that point.

(ii). The gradient of d µ,m 0 can be written as:

∇ x d µ,m 0 = ∇ x d 2 µ,m 0 2d µ,m 0 = 1 √ m 0 h∈R d [x -h] dµ x,m 0 (h) ( h∈R d x -h 2 dµ x,m 0 (h)) 1/2
Using the Cauchy-Schwartz inequality we find ∇ x d µ,m 0 ≤ 1 which proves the statement. Corollary 10.21 (i) If the support S of µ is compact, then d S is the uniform limit of d µ,m 0 as m 0 converges to 0:

d µ,m 0 -d S ∞ = sup x∈R d |d µ,m 0 (x) -d S (x)| m 0 →0 -→ 0 (ii) If the measure µ has dimension at most k > 0, then d µ,m 0 -d S ∞ ≤ C(µ) -1/k m 1/k 0 Proof (i) If S is compact, there exists a sequence x 1 , x 2 , • • • of points in S such that for any ε > 0, S ⊆ ∪ n i=1 B(x i , ε/2) for some n = n(ε). By definition of the support of a measure, η(ε) = min i=1•••n µ(B(x i , ε/2)) is positive. Now, for any point x ∈ S, there is a x i such that x -x i ≤ ε/2. Hence, B(x i , ε/2) ⊆ B(x, ε), which means that µ(B(x, ε)) ≥ η(ε). (ii)
Follows straightforwardly from the lemma.

For example, the uniform probability measure on a k-dimensional compact submanifold S has dimension at most k. The following proposition gives a more precise convergence speed estimate based on curvature. Notice in particular that the convergence speed of d µ,m 0 to d S depends only on the intrinsic dimension k of the submanifold S, and not on the ambient dimension d. The proof of this result is beyond the scope of this book and relies on the so-called Günther-Bishop theorem (cf [88, Section 3.101]).

Shape reconstruction from noisy data

The previous results lead to shape reconstruction theorems that work for noisy data with outliers. To fit in our framework we consider shapes that CHAPTER 10. DISTANCE TO PROBABILITY MEASURES are defined as supports of probability measures. Let µ be a probability measure of dimension at most k > 0 with compact support K ⊂ R d and let d K : R d → R + be the (Euclidean) distance function to K. If µ is another probability measure (e.g. the empirical measure given by a point cloud sampled according to µ), one has

d K -d µ ,m 0 ∞ ≤ d K -d µ,m 0 ∞ + d µ,m 0 -d µ ,m 0 ∞ (10.2) ≤ C(µ) -1/k m 1/k 0 + 1 √ m 0 W 2 (µ, µ ) (10.3)
This inequality insuring the closeness of d µ ,m 0 to the distance function d K for the sup-norm follows immediately from the stability Theorem 10.16 and Corollary 10.21. As expected, the choice of m 0 is a trade-off: small m 0 lead to better approximation of the distance function to the support, while large values of m 0 make the distance functions to measures more stable. Eq. ( 10.3) leads to the following corollary of Theorem 10.7:

Corollary 10.23 Let µ be a measure and K its support. Suppose that µ has dimension at most k and that reach α (d K ) ≥ R for some R > 0. Let µ be another measure, and ε be an upper bound on the uniform distance between d K and d µ ,m 0 . Then, for any r ∈ [4ε/α 2 , R -3ε], the r-sublevel sets of d µ,m 0 and the offsets K η , for 0 < η < R are homotopy equivalent as soon as:

W 2 (µ, µ ) ≤ R √ m 0 5 + 4/α 2 -C(µ) -1/k m 1/k+1/2 0
Figure 10.5 illustrates Theorem 10.7 on a sampled mechanical part with 10% of outliers. In this case µ is the normalized sum of the Dirac measures centered on the data points and the (unknown) measure µ is the uniform measure on the mechanical part.

Exercises

Exercise 10.1 Let K ⊂ R d be a compact set. Show that the map x → x 2d 2 K (x) is convex. Hint: Recall that the supremum of any family of convex functions is convex and show that x → x 2 -d 2 K (x) is the supremum of a set of affine functions.

Show that δ µ,m is 1-Lipschitz: ∀x, y ∈ R d , |δ µ,m (x) -δ µ,m (y)| ≤ x -y .
Exercise 10.5 Let µ be a probability measure on R d and let 0 < m 0 < 1 and x ∈ R d . Recall that we denote by R µ,m 0 (x) the set of submeasures minimizing the right hand term of Equation (10.1). Give an example of a probability measure µ such that R µ,m 0 (x) contains only one element and an example such that R µ,m 0 (x) contains an infinite number of elements. (Hint: for R µ,m 0 (x) to contain more than one submeasure, the measure µ(S(x, δ µ,m 0 )) of the sphere of center x and radius δ µ,m 0 must be positive.

Bibliographical notes

Most of the chapter comes from [START_REF] Chazal | Geometric inference for probability measures[END_REF] that introduces and studies stability properties of distance functions to a probability measure. Approximation and computation of the distance to measure function and its connections with power distances has been studied in [START_REF] Guibas | Witnessed k-distance[END_REF]. Extensions of the distanceto-measure framework to general metric spaces has been considered in [START_REF] Buchet | Efficient and robust persistent homology for measures[END_REF]. Statistical aspects of distance-to-measure functions in relation with density estimation and deconvolution have been considered in [START_REF] Biau | A weighted k-nearest neighbor density estimate for geometric inference[END_REF][START_REF] Caillerie | Deconvolution for the Wasserstein metric and geometric inference[END_REF][START_REF] Chazal | Robust topological inference: Distance to a measure and kernel distance[END_REF][START_REF] Chazal | Rates of convergence for robust geometric inference[END_REF].

Wasserstein distances are closely related to the theory of optimal transportation (see e.g. [START_REF] Villani | Topics in Optimal Transportation[END_REF]). The distance W 1 is also known as the earth-mover distance, and has been used in various domains such as, e.g., vision [START_REF] Peleg | A unified approach to the change of resolution: space and gray-level[END_REF] or image retrieval [START_REF] Rubner | The Earth Mover's Distance as a Metric for Image Retrieval[END_REF].

General results about semiconcave functions can be found in [START_REF] Petrunin | Semiconcave functions in alexandrov's geometry[END_REF][START_REF] Cannarsa | Semiconcave Functions, Hamilton-Jacobi Equations, and Optimal Control[END_REF].

The convergence properties of empirical measure with respect to the Wasserstein metric have been widely studied and quantitative results can be found in [START_REF] Bolley | Quantitative Concentration Inequalities for Empirical Measures on Non-compact Spaces[END_REF].

The complete proofs of Propositions 10.15, 10.18 and 10.4 are given in [START_REF] Chazal | Geometric inference for probability measures[END_REF].

The Günther-Bishop Theorem is stated in [88, Section 3.101] and the proof of Proposition 10.22 can be found in [START_REF] Chazal | Geometric inference for probability measures[END_REF].

CHAPTER 11. HOMOLOGY INFERENCE

Although the distance-based approach introduced in the two previous chapters provides a powerful mathematical framework for shape reconstruction, it is not always possible, nor desirable, to fully reconstruct the approximated shapes from data. This chapter focuses on weaker topological invariants, homology, Betti numbers and persistent homology, that turn out to be easier to infer and that are widely used in applied topology and topological data analysis. The introduction of homology is restricted to the minimum that is necessary to understand the basic ideas of homology inference and persistent homology and its usage in topological data analysis.

Simplicial homology and Betti numbers

In this section we introduce the basic notions of simplicial homology that are necessary to define and study topological persistence. To avoid minor technical discussions about the orientation of simplices, we restrict to the homology with coefficients in the finite field Z/2Z = {0, 1}. In the sequel of this chapter, K denotes a finite d-dimensional simplicial complex.

The space of k-chains

For any non negative integer k, the space of k-chains is the vector space of all the formal sums (with coefficient in Z/2Z) of k-dimensional simplices of K. More precisely, if {σ 1 , • • • , σ p } is the set of k-simplices of K any k-chain c can be uniquely written

c = p i=1 ε i σ i with ε i ∈ Z/2Z If c = p i=1 ε i σ i is another k-chain
, the sum of two k-chains and the product of a chain by a scalar are defined by

c + c = p i=1 (ε i + ε i )σ i and λ.c = p i=1 (λε i )σ i
where the sums ε i + ε i and the products λε i are modulo 2.

Definition 11.1 The space of k-chains is the set C k (K) of the simplicial k-chains of K with the two operations defined above. This is a Z/2Z-vector space whose zero element is the empty chain 0 = p i=1 0.σ i .

SIMPLICIAL HOMOLOGY AND BETTI NUMBERS

255

Notice that the set of k-simplices of K is a basis of C k (K). For example, for the simplicial complex K of Chains with coefficient in Z/2Z have an obvious geometric interpretation: since any k-chain can be uniquely written as c = σ i 1 + σ i 2 + • • • + σ im where the σ i j are k-simplices, c can be considered as the union of the simplices σ i j .

The sum of two k-chains is equal to their symetric difference.

The boundary operator and homology groups

Definition 11.2 (Boundary of a simplex) The boundary ∂(σ) of a ksimplex σ is the sum of its (k -1)-faces. This is a (k -1)-chain.

If σ = [v 0 , • • • , v k ] is a k-simplex, then ∂(σ) = k i=0 [v 0 • • • vi • • • v k ] where [v 0 • • • vi • • • v k ] is the (k -1)
-simplex spanned by the sets of all the vertices of σ except v i .

Remark 11.3 Notice that in the general case where the coefficient of the chains are taken in another field than Z/2Z it is important to take into account the ordering of the vertices in σ and the boundary of σ has to be defined as [START_REF] Munkres | Elements of algebraic topology[END_REF].

∂(σ) = k i=0 (-1) i [v 0 • • • vi • • • v k ] -see

CHAPTER 11. HOMOLOGY INFERENCE

The boundary operator, defined on the simplices of K, extends linearly to C k (K).

Definition 11.4 The boundary operator is the linear map defined by

∂ : C k (K) → C k-1 (K) c → ∂c = σ∈c ∂(σ)
Notice that one should denote ∂ k the above defined operator but to avoid heavy notations one usually omits the index in the notations.

Proposition 11.5 The boundary of the boundary of a chain is always zero:

∂∂ := ∂ • ∂ = 0.
Proof Since the boundary operator is linear, it is sufficient to check the property for a simplex.

Let σ = [v 0 • • • v k ] be a k-simplex. ∂∂σ = ∂ k i=0 [v 0 • • • vi • • • v k ] = k i=0 ∂[v 0 • • • vi • • • v k ] = j<i [v 0 • • • vj • • • vi • • • v k ] + j>i [v 0 • • • vi • • • vj • • • v k ] = 0
The boundary operator defines a sequence of linear maps between the spaces of chains.

Definition 11.6 (Chain complex) The chain complex associated to a complex K of dimension d is the following sequence of linear operators

{0} → C d (K) ∂ → C d-1 (K) ∂ → • • • ∂ → C k+1 (K) ∂ → C k (K) ∂ → • • • ∂ → C 0 (K) ∂ → {0} 11.1. SIMPLICIAL HOMOLOGY AND BETTI NUMBERS 257 For k ∈ {0, • • • , d}, the set Z k (K) of k-cycles of K is the kernel of ∂ : C k → C k-1 : Z k (K) := ker(∂ : C k → C k-1 ) = {c ∈ C k : ∂c = 0} The image B k (K) of ∂ : C k+1 → C k is the set of k-chains bounding a (k + 1)-chain: B k (K) := im(∂ : C k+1 → C k ) = {c ∈ C k : ∃ c ∈ C k+1 , c = ∂c }
B k and Z k are subspaces of C k and according to Proposition 11.5, one has

B k (K) ⊂ Z k (K) ⊂ C k (K).
Examples of chains, cycles and boundaries are given in Figure 11. Definition 11.7 (Homology groups) The k th homology group of K is the quotient vector space

H k (K) = Z k /B k H k (K)
is a vector space and its elements are the homology classes of K.

The dimension β k (K) of H k (K) is the k th Betti number of K. The homology class of a cycle c ∈ Z k (K) is the set c + B k (K) = {c + b : b ∈ B k (K)}.
Two cycles c, c that are in the same homology class are said to be homologous.

β 0 = 1 β 1 = 0 β 2 = 0 β 0 = 1 β 1 = 1 β 2 = 0 β 0 = 1 β 1 = 0 β 2 = 0 β 0 = 1 β 1 = 0 β 2 = 1

An algorithm to compute Betti numbers

Let K be a finite simplicial complex of dimension d and

∅ = K 0 ⊂ K 1 ⊂ • • • ⊂ K m = K a filtration of K such that for any i = 0, • • • m -1, K i+1 = K i ∪ σ i+1 where σ i+1 is a simplex.
By considering the evolution of the Betti numbers of the filtration as we add the simplices σ i we get the following algorithm.

To prove the correctness of the algorithm, one has to understand how the topology of the filtration evolves each time we add a simplex. Let assume that the Betti numbers of K i-1 have been computed and add the simplex σ i of dimension k + 1 to get K i . Remark that according to the definition of filtration, σ i cannot be part of the boundary of any (k + 2)-simplex of K i . As a consequence if σ i is contained in a (k + 1)-cycle in K i , this cycle is not the boundary of a (k + 2)-chain in K i . Let consider the two alternatives of the algorithm that are illustrated in Figure 11.4:

Case 1: assume that σ i is contained in a (k + 1)-cycle c in K i . Then c cannot be homologous to any (k + 1)-cycle in K i-1 . Indeed, otherwise there

AN ALGORITHM TO COMPUTE BETTI NUMBERS 259

Algorithm 9 Betti numbers computation Input: A filtration of a d-dimensional simplicial complex K containing m simplices.

β 0 ← 0; β 1 ← 0; • • • ; β d ← 0 for i = 1 to m do k = dim σ i -1 if σ i is contained in a (k + 1)-cycle in K i then β k+1 ← β k+1 + 1 else β k ← β k -1 Output: The Betti numbers β 0 , β 1 , • • • , β d of K.
would exist a cycle c in K i-1 such that c + c is the boundary of a (k + 2)chain d. But since σ i cannot be contained in c , it has to be contained in c + c = ∂d contradicting the above remark. So, c creates a new homology class which is linearly independent of the classes created by the cycles in K i-1 . As a consequence, β k+1 (K i ) ≥ β k+1 (K i-1 ) + 1. To conclude this first case, it is sufficient to remark that adding the (k + 1)-simplex σ i to K i-1 cannot increase the dimension of the k th homology group by more than one: if c and c are two (k + 1)-cycles containing σ i , then c + c is a (k + 1)-cycle in K i-1 implying that c is contained in the linear subspace spanned by Z k+1 (K i-1 ) and c. It follows that dim

Z k+1 (K i ) ≤ dim Z k+1 (K i-1 ) + 1 and since B k+1 (K i-1 ) ⊂ B k+1 (K i ), β k+1 (K i ) ≤ β k+1 (K i-1 ) + 1.
Case 2: assume that σ i is not contained in any (k + 1)-cycle in K i . Then the k-cycle ∂σ i is not a boundary in K i-1 . Indeed, otherwise there would exist a chain c in K i-1 such that ∂c = ∂σ i or equivalently ∂(c + σ i ) = 0. Thus c + σ i is a (k + 1)-cycle in K i containing σ i : a contradiction. As a consequence, since the k-cycle ∂σ i which is not a boundary in K i-1 becomes a boundary in K i , one has β k (K i ) ≤ β k (K i-1 ) -1. One proves as in Case 1 that this inequality is indeed an equality.

The above discussion suggests to distinguish between the two types of simplices in the filtration of K that will play an important role in the definition of topological persistence. Definition 11.8 Let K be a d-dimensional simplicial complex and let When σ i is not contained in a 1-cycle (left), its insertion results in the connection of two connected components of K i-1 . When σ i is contained in a 1-cycle (right), its insertion create a new 1-cycle that is not homologous to any previously existing in K i-1 .

∅ = K 0 ⊂ K 1 ⊂ • • • ⊂ K m = K σ i σ i
be a filtration of K. A simplex σ i is called positive if it is contained in a (k + 1)-cycle in K i (which is necessarily not a boundary in K i according to the remark at the beginning of the proof of the correctness of the algorithm) and negative otherwise.

With the aforementioned definition, the k th Betti number of K is equal to the difference between the number of positive k-simplices (which are creating k-cycles) and the number of negative (k + 1)-simplices (which are "killing" k-cycles).

As an example, if one considers the simplicial complex K of figure 11 It is important to notice that the above algorithm needs to be able to decide whether a simplex is positive or negative. This is not, a priori, an obvious question but an answer will be given in Section 11.5. It is also important to notice that the algorithm not only computes the Betti numbers of K but also the Betti numbers of all the subcomplexes K i of the filtration.

SINGULAR HOMOLOGY AND TOPOLOGICAL INVARIANCE261

Singular homology and topological invariance

The homology groups and Betti numbers are topological invariants: if K and K are two simplicial complexes with homeomorphic geometric realizations then their homology groups are isomorphic and their Betti numbers are equal. This result is still true if the geometric realizations of K and K are just homotopy equivalent. The proof of this invariance property is a classical, but not obvious, result in algebraic topology. It is beyond the scope of this book (see [START_REF] Munkres | Elements of algebraic topology[END_REF][START_REF] Hatcher | Algebraic Topology[END_REF] for details).

Singular homology is another notion of homology that allows to consider general spaces that are not necessarily homeomorphic to simplicial complexes. The definition of singular homology is similar to the one of simplicial homology except that it relies on the notion of singular simplex. Let ∆ k be the standard k-dimensional simplex in R k+1 , i.e. the geometric simplex spanned by the vertices x i , i = 1, • • • k + 1, whose all coordinates are 0 except the i th one which is equal to 1. Given a topological space X, a singular k-simplex σ is a continuous map σ : ∆ k → X. As in the case of simplicial homology, the space of singular k-chains is the vector space of formal linear combinations of singular k-simplices. The boundary ∂σ of a singular k-simplex is the sum of the restriction of σ to each of the (k -1)-faces of ∆ k . Proposition 11.5 still holds for the (singular) boundary operator and the k th singular homology group of X is defined similarly as the quotient of the space of cycles by the space of boundaries.

A remarkable fact is that simplicial and singular homology are related in the following way: if X is a topological space homeomorphic to the support of a simplicial complex K, then the singular homology groups of X are isomorphic to the simplicial homology groups of K. For example, if X is a surface and if K and K are two triangulations of X, then the homology groups H k (K) and H k (K ) are isomorphic. Thus they have the same Betti numbers that are, indeed, the ones of X. As a consequence, in the sequel of the Chapter, we will consider indifferently simplicial or singular homology.

Another important property of singular (and thus simplicial) homology is that continuous maps between topological spaces canonically induce homomorphisms between their homology groups. Indeed, if f : X → Y is a continuous map between two topological spaces and if σ : ∆ k → X is a singular simplex in X, then f • σ : ∆ k → Y is a singular simplex in Y . So, f induces a linear map between the spaces of chains on X and Y that preserves cycles and boundaries. As a consequence, f also induces an homomorphism f : H k (X) → H k (Y ). Moreover if f is an homeomorphism, f is an isomorphism and (f ) -1 = (f -1 ) . Similarly, if f is an homotopy equivalence with homotopic inverse g : Y → X, then f is an isomorphism with inverse g . As a consequence, two spaces that are homotopy equivalent have the same Betti numbers. Notice that, when X is not homotopy equivalent to a finite simplicial complex, its Betti numbers might not be finite.

Betti numbers inference

Singular homology allows to consider Betti numbers of compact sets in R d and of their offsets. Using its connexion to simplicial homology and the distance functions framework of Chapter 9, we derive explicit methods to infer the Betti numbers of compact subsets with positive weak feature size.

Let K ⊂ R d be a compact set with wfs(K) > 0 and let P ∈ R d be a finite set of points such that d H (K, P ) < ε for some given ε > 0. Recall that, from the isotopy Lemma 9.5, all the r-offsets K r of K, for 0 < r < wfs(K), are homeomorphic and thus have isomorphic homology groups. The goal of this section is to provide an effective method to compute the Betti numbers β k (K r ), 0 < r < wfs(K), from P .

Theorem 11.9 Let K ⊂ R d be a compact set with wfs(K) > 0 and let P ∈ R d be a finite set of points such that d H (K, P ) < ε for some given ε > 0. Assume that wfs(K) > 4ε. For α > 0 such that 4ε + α < wfs(K), let i : P α+ε → P α+3ε be the canonical inclusion. Then for any non negative integer k and any 0 < r < wfs(K),

H k (K r ) ∼ = im i : H k (P α+ε ) → H k (P α+3ε )
where im denotes the image of the homomorphism and ∼ = means that the two groups are isomorphic.

Proof Since d H (K, P ) < ε, we have the following sequence of inclusion maps K α ⊆ P α+ε ⊆ K α+2ε ⊆ P α+3ε ⊆ K α+4ε that induces the following sequence of homomorphisms (the one induced by the canonical inclusion maps) at the homology level

H k (K α ) → H k (P α+ε ) → H k (K α+2ε ) → H k (P α+3ε ) → H k (K α+4ε ).

BETTI NUMBERS INFERENCE

Since wfs(K) > α+4ε, it follows from the isotopy Lemma 9.5 that the homomorphisms H k (K α ) → H k (K α+2ε ) and H k (K α+2ε ) → H k (K α+4ε ) induced by the inclusion maps are indeed isomorphisms. Notice that the above sequence implies that the rank of these isomorphisms is finite (see Exercise 11.5). It immediately follows that the rank of H k (P α+ε ) → H k (P α+3ε ) is equal to the rank of these isomorphisms which is equal to β k (K α ).

Theorem 11.9 shows that the Betti numbers of the offsets of K can be deduced from the offsets of P . However, the direct computation of the homology groups of a union of balls, which is a continuous object and not a finite simplicial complex, is not obvious. To overcome this issue, recall that the Nerve Theorem 2.8 implies that for any r ≥ 0, P r is homotopy equivalent to Čech(P, r). As a consequence H k (P r ) and H k ( Čech(P, r)) are isomorphic. Moreover, one can show that the isomorphisms can be chosen to commute with the ones induced by inclusions maps [START_REF] Chazal | Towards persistence-based reconstruction in Euclidean spaces[END_REF], making the following diagram commutative H k (P r ) → H k (P r ) ↑ ↑ H k ( Čech(P, r)) → H k ( Čech(P, r )) (11.1) We immediately obtain the following result.

Proposition 11.10 Assume that wfs(K) > 4ε. For α > 0 such that 4ε + α < wfs(K), let i : Čech(P, α + ε) → Čech(P, α + 3ε) be the canonical inclusion. Then for any non negative integer k and any 0 < r < wfs(K), H k (K r ) ∼ = im(i : H k ( Čech(P, α + ε)) → H k ( Čech(P, α + 3ε)).

Thanks to the previous proposition, inferring the Betti numbers of K r now boils down to homology computation on finite Čech complexes. However, as already noticed in Chapter 2.5, computing Čech complexes require to determine if finite sets of balls intersect, which quickly becomes prohibitive as d and the cardinality of P increase. Using the interleaving property between Čech and Vietoris-Rips filtrations established in Lemma 2.13, we obtain the following theorem.

Theorem 11.11 Assume that wfs(K) > 9ε. For any 2ε ≤ α ≤ 1 4 (wfs(K)ε) and any 0 < r < wfs(K) we have β k (K r ) = rk(H k (Rips(P, α) → H k (Rips(P, 4α))

where rk(H k (Rips(P, α) → H k (Rips(P, 4α)) denotes the rank of the homomorphism induced by the inclusion Rips(P, α) ⊆ Rips(P, 4α). This last result raises two questions. The first one is about how to compute the rank of the homomorphisms induced by the inclusion maps between the homology groups of the subcomplexes of the V ietoris-Rips complex. This question will be answered in next Section when the persistence algorithm will be presented. The second, and more tricky, question is about the effective choice of α when K and wfs(K) are not known. This is an ill-posed problem because wfs(K) does not depend continuously of K -see Section 9.3. However, it is possible for the user to try to guess a good choice of α using the following algorithm. When applied to a point cloud sampled around a compact subset of R d with positive weak feature size, the algorithm provides the diagrams of rank numbers β 16α k,4α that are constant on some intervals of values α as illustrated on Figure 11.5. Identifying these intervals allows the user to determine the scales at which the topological features of K r can be infered. Notice that intervals on which the persistent Betti numbers are constant can appear at different scales, reflecting multiscale topological features of the offsets of K -see Figure 11.6.

The previous algorithm comes with the following theoretical guarantees justifying the existence of intervals of constant persistent Betti numbers [START_REF] Chazal | Towards persistence-based reconstruction in Euclidean spaces[END_REF].

Theorem 11.12 Let K ⊂ R d be a compact set with wfs(K) > 0 and let P ∈ R d be a finite set of points such that d H (K, P ) < ε for some given ε > 0. Assume that wfs(K) > 18ε. Then at each iteration of the algorithm such that ε < α < 1 18 wfs(K),

β k (K r ) = β 16α k,4α
for any r ∈ (0, wfs(K)) and any non negative integer k.

The example of Figure 11.6 where P is sampled around a smooth 2-dimensional torus in R 1000 illustrates this property: it would not have been possible to do the computation if the complexity was exponential in d = 1000.

Persistent homology

The algorithm of Section 11.2 to compute the Betti numbers of a filtered simplicial complex also provides the Betti numbers of all the subcomplexes of the filtration. Intuitively, the goal of persistent homology is to keep track of all this information and to pair the creation and destruction time of homology classes appearing during the process. When one considers functions f defined over higher dimensional spaces, passing through critical values may not only change the connectedness of the sublevel sets but also other topological features: creation/destruction of cycles, voids, etc... All these events corresponds to a change in the corresponding homology groups (H 0 for connected components, H 1 for cycles, H 2 for voids,...). In the sequel of this section we show that we can define pairs and persistence diagrams for each dimension.

Now, if we replace the function f by a function g on the Figure 11.8 which is close to f , we observe that the number of pairs of g is much larger than the one of f . However most of these pairs correspond to intervals with short length (points close to the diagonal) while the pairs corresponding to long interval are close to the ones of f . In other words, the topological features having a large persistence with respect to the size of the perturbation are preserved while the topological features created by the perturbation have a small persistence. We will see that this is a general phenomenon: two

Persistent homology of a filtration

We first define the notion of persistence for a filtration of a simplicial complex. Its goal is to study the evolution of the homology of the subcomplexes of the filtration.

Let K be a d-dimensional simplicial complex and let

∅ = K 0 ⊂ K 1 ⊂ • • • ⊂ K m = K
be a filtration of K such that, for any i = 0, • • • , m -1, K i+1 = K i ∪ σ i+1 where σ i+1 is a simplex.

For any 0 ≤ n ≤ m, we denote by C n k the set of k-chains (with coefficients in Z/2Z) of K n . Notice that the restriction of the boundary operator to C n k has its image contained in C n-1 k-1 . We denote by Z n k and B n k the sets of k-cycles and k-boundaries of K n respectively. The k-th homology group of K n is thus

H n k = Z n k /B n k
With these notations, we have the following inclusions The k-th persistent Betti number of K l represents the number of independent homology classes of k-cycles in K l that are not boundaries in K l+p . Intuitively, a k-cycle in K l generating a non-zero element in H l,p k is a cycle that has appeared in the filtration before the step l + 1 and that is still not a boundary at step l + p. We have seen in Section 11.2 that a homology class is created when a positive simplex is added in the filtration and that a homology class is destroyed when a negative simplex is added. Persistent homology provides a natural way to pair positive and negative simplices such that whenever a positive simplex is added to the filtration it creates a homology class and a corresponding cycle that becomes a boundary when the negative simplex to which it is paired is added.

Z 0 k ⊂ Z 1 k ⊂ • • • ⊂ Z n k • • • ⊂ Z m k = Z k (K) B 0 k ⊂ B 1 k ⊂ • • • ⊂ B n k • • • ⊂ B m k = B k (K)
Cycle associated to a positive simplex Lemma 11.14 Let σ = σ i be a positive k-simplex in the filtration of K. There exists a unique k-cycle c that is not a boundary in K i , that contains σ and that does not contain any other positive k-simplex.

Proof The lemma is proven by induction on the order of the positive ksimplices in the filtration. Assume that for any positive k-simplex added to the filtration before σ there exists a k-cycle, that is not a boundary and that contains σ but no other positive k-simplex. Since σ is positive, there exists a k-cycle d that is not a boundary in K i and that contains σ. Let σ i j , j = 1, • • • , p be the positive k-simplices different from σ contained in d and let c j be the cycles which are not boundaries containing them and not containing any other positive simplices. Then

c = d + c 1 + • • • + c p is a k-cycle
in which σ is the only positive simplex. Since σ = σ i is the last simplex added in K i there does not exist any (k + 1)-simplex in K i containing σ in its boundary. As a consequence, c cannot be a boundary cycle.

The uniqueness of c is proven in a similar way.

Persistent homology basis and persistent pairs

The k-cycles associated to the positive k-simplices in Lemma 11.14 allow to maintain a basis of the k-dimensional homology groups of the subcomplexes of the filtration. At the beginning, the basis of H k (K 0 ) is empty. Bases of the H k (K i ) are built inductively in the following way. Assume that the basis of H i-1 k has been built and that the i-th simplex σ i is positive and of dimension k. We add to the basis of H i-1 k the homology class of the cycle c i associated to σ i to obtain a basis of H i k . Indeed, since c i is the sum of σ i and negative simplices, it is not homologous to any linear combination of cycles defining the basis of H i-1 k . Since dim H i k = dim H i-1 k + 1 we thus obtain a basis of H i k .

Now assume that the basis of H j-1 k is built and the j-th simplex σ j is negative and of dimension k + 1. Let c i 1 , • • • , c ip be the cycles associated to the positive simplices σ i 1 , • • • σ ip whose homology classes form a basis of H j-1 k . The boundary d = ∂σ j of σ j is a k-cycle in K j-1 which is not a boundary in K j-1 but is a boundary in K j (see the proof of the algorithm to compute Betti numbers in the previous section). So it can be written in a unique way as

d = ∂σ j = p k=1 ε k c i k + b
where ε k ∈ {0, 1} and b is a boundary. We then denote l(j) = max{i k : ε k = 1} and we remove the homology class of c l(j) from the basis of H j-1 k .

Claim: We obtain a basis of H j k .

Since dim H j-1 k = dim H j k + 1 we just need to prove that c l(j) is, up to a boundary, a linear combination of the cycles c i k in Z j k , i k = l(j), which is equivalent to the above decomposition of d. Definition 11.15 (Persistent pairs) The pairs of simplices (σ l(j) , σ j ) are called the persistence pairs of the filtration of K.

Intuitively, the homology class created by σ l(j) in K l(j) is destroyed by σ j in K j . The persistence of this pair is jl(j) -1. From the above discussion we deduce a first algorithm to compute the persistent pairs of a filtration of a simplicial complex K of dimension d with m simplices.

Algorithm 11 Persistent pairs computation

Input: A filtration of a d-dimensional simplicial complex K containing m simplices.

L 0 = L 1 = • • • = L d-1 = ∅
for j = 0 to m do k = dim σ j -1 if σ j is negative then l(j) = the largest index of the positive k-simplices associated to ∂σ j ;

L k ← L k ∪ {(σ l(j) , σ j )}; Output: Return the persistent pairs in each dimension L 0 , L 1 , • • • , L d-1 ; Notice that, as for the algorithm to compute the Betti numbers, the main issue with this algorithm is to determine l(j). We overcome it by considering a matrix version of the above algorithm.

Persistence algorithm: the matrix version

We now present an easy to implement version of the persistence algorithm. It relies on a simple reduction of the matrix of the boundary operator.

Let K be a simplicial complex of dimension d and

∅ = K 0 ⊂ K 1 ⊂ • • • ⊂ K m = K
be a filtration of K such that for any i = 0, • • • , m -1, K i+1 = K i ∪ σ i+1 where σ i+1 is a simplex. Let M = (m i,j ) i,j=1,•••m be the matrix with coefficients in Z/2Z of the boundary operator defined by: m i,j = 1 if σ i is a face of σ j and m i,j = 0 otherwise. Hence, if σ j is a (k + 1)-simplex the j-th column of M represents the set of the k-dimensional faces of the boundary of σ j . Since the simplices of K are ordered according to the filtration, the matrix M is upper triangular. For any column C j of M , we denote by l(j) the index of the lowest line of M containing a non-zero term in the column C j :

(i = l(j)) ⇔ (m i,j = 1 and m i ,j = 0 ∀i > i)

CHAPTER 11. HOMOLOGY INFERENCE

Notice that l(j) is not defined when the column C j does not contain any non zero term. We then have the following very simple algorithm to compute the persistent pairs.

Algorithm 12 Persistent computation -Matrix version

Input: A filtration of a d-dimensional simplicial complex K containing m simplices and the matrix M of the boundary operator.

for j = 0 to m do while there exists j < j such that l(j ) == l(j) do C j = C j + C j mod(2); Output: Return the pairs (l(j), j); Proposition 11. [START_REF] Boissonnat | Local criteria for triangulation of manifolds[END_REF] The previous algorithm computes the persistent pairs of the filtration

∅ = K 0 ⊂ K 1 ⊂ • • • ⊂ K m = K.
Proof The result immediately follows from a sequence of elementary facts. This is proven by an immediate induction.

Fact 2 : At the end of the algorithm, if j is such that l(j) is defined, then σ l(j) is a positive simplex. Indeed, the column C j represents a chain of the form σ l(j) + p<l(j) η p σ p with η p ∈ {0, 1}, but according to Fact 1, C j also represents a boundary in K j . So the previous chain is a cycle (since ∂ • ∂ = 0) in K l(j) containing σ l(j) . The simplex σ l(j) is thus positive. Fact 4 : If at the end of the algorithm, the column C j contains non zero terms, then (σ l(j) , σ j ) is a persistence pair.

Combining Facts 1 and 2, the boundary of σ j can be written as ∂σ j = σ l(j) + p<l(j)

η p σ p + ∂   i<j ε i σ i  
Moreover σ l(j) is positive and thus was added to the persistent homology basis at time l(j) and has not been paired before time j. Remarking that at the end of the algorithm a line of the matrix cannot contain more than one lowest non-zero term of a column, we deduce that (σ l(j) , σ j ) is a persistence pair.

Remark 11.17 Notice that the time complexity of the above algorithm is O(m 3 ) in the worst case. However in practical applications it usually happens to be much faster (O(m) or O(m log m)).

Persistence diagrams and bottleneck distance

For a fixed k, the persistent pairs of simplices of respective dimensions k and k + 1 are conveniently represented as a diagram in the plane R 2 : each pair (σ l(j) , σ j ) is represented by the point of coordinates (l(j), j). For each positive simplex σ i which is not paired to any negative simplex in the filtration, we associate the pair (σ i , +∞). For technical reasons that will become clear in the next section, we add to this finite set the diagonal {y = x} of R 2 to get the k-dimensional persistence diagram of the filtration. More generally, if the filtration is indexed by a non decreasing sequence of real numbers, as, e.g., in the case of a filtration associated to the sublevel sets of a function,

∅ = K α 0 ⊂ K α 1 ⊂ • • • ⊂ K αm = K with α 0 ≤ α 1 • • • ≤ α m
a persistent pair of simplices (σ i , σ j ) is represented in the diagram as the point of coordinates (α i , α j ). In this later case, we have to take care that, since the sequence (α i ) is non decreasing, several pairs can be associated to the same point in the plane. A persistence diagram is thus a multiset and the multiplicity of a point is defined as the number of pairs associated to this point. By convention, the points on the diagonal have infinite multiplicity. By convention, if a simplex σ i is not paired, we then add the point of coordinates (α i , +∞) to the persistence diagram. Notice that, as a consequence, the persistence diagram is a multiset in R 2 where R = R ∪ +∞.

Persistence diagrams can be compared using a matching distance called the bottleneck distance.

Definition 11.18 (Bottleneck distance) Let D 1 and D 2 be two persistence diagrams The bottleneck distance between D 1 and D 2 is defined as

d B (D 1 , D 2 ) = inf γ sup p∈D 1 p -γ(p) ∞
where γ is the set of bijections between the multi-sets D 1 and D 2 (a point with multiplicity m > 1 is considered as m disjoint copies) and pq ∞ = max(| x px q |, | y py q |). By convention, if y p = y q = +∞, then pq ∞ =| x px q |.

The above definition motivates the inclusion of the diagonal of R 2 in the definition of persistence diagram: it allows to compare diagrams that do not have the same numbers of off-diagonal points by matching them with points on the diagonal (see Figure 11.9).

Persistence modules, interleaving and stability

Persistence can be defined in a purely algebraic way that turns out to be particularly useful and powerful in many settings. The proofs of the results presented in this section are beyond the scope of this book but the algebraic framework introduced in this section allows to efficiently prove the results of the next sections.

The notion of persistence can be extended to more general sequences of vector spaces in the following way.

In the sequel, when there is no ambiguity, the notation dgm(f ) denotes the persistence diagram of F k , for any k. Applying the Persistence Stability Theorem 11.23, we immediately obtain the following stability result for functions.

Theorem 11.27 Let X be a topological space and let f, g : X → R be two q-tame functions. Then

d B (dgm(F k ), dgm(G k )) ≤ f -g ∞ .
From a practical point of view, the above theorem provides a rigorous way to approximate the persistence diagrams of continuous functions defined on a triangulated space. For example, assume that X is a triangulated manifold in R d where the diameter of each simplex is upper bounded by some δ > 0 and assume f : X → R to be c-Lipschitz for some c > 0, i.e. |f (x)f (x )| ≤ c xx . Then, given a non negative integer k, one can easily check that the bottleneck distance between the persistence diagram of f and the persistence diagram of the filtered complex induced by the values of f at the vertices of the triangulation is upper bounded by cδ (see Exercise 11.8).

Persistence stability for compact sets and complexes built on top of point clouds

Proposition 11.28 Let X ⊂ R d be a compact set. The distance function d X : R d → R is q-tame.

Proof Given 0 ≤ α < β and a non negative integer k, we just need to prove that the homomorphism H k (X α ) → H k (X β ) induced by the inclusion of the offsets, X α ⊂ X β , has finite rank. Denoting ε = (βα)/2 > 0, since X is compact, there exists a finite subset P ⊆ X of X such that d H (X, P ) < ε.

As a consequence we have the following inclusion X α ⊆ P α+ε ⊆ X β that induces the following sequence of homomorphisms Now, it follows from the nerve Lemma that P α+ε is a finite union of balls homotopy equivalent to Čech(P, α + ε) which is a finite simplicial complex. As a consequence dim H k (P α+ε ) < +∞ and rk(H k (X α ) → H k (X β )) ≤ dim H k (P α+ε ) < +∞.

H k (X α ) → H k (P α+ε ) → H k (X β ).
The above proposition implies that distance functions to compact subsets of R d have well-defined persistence diagrams. Recalling that if X, Y ⊂ R d are compact, then d H (X, Y ) = d Xd Y ∞ , we immediately obtain the following corollary. The stability of persistence diagrams has been initially proven by [START_REF] Cohen-Steiner | Stability of persistence diagrams[END_REF] for tame continuous functions defined on triangulable spaces. It was then extended and generalized by [START_REF] Chazal | Proximity of persistence modules and their diagrams[END_REF] and [START_REF] Chazal | The structure and stability of persistence modules[END_REF] to a more algebraic framework that appeared of fundamental importance in topological data analysis. An introductory course to computational topology is provided in [START_REF] Edelsbrunner | Computational topology: an introduction[END_REF] and a recent and general presentation of persistent homology theory is given in [START_REF] Oudot | Persistence Theory: From Quiver Representations to Data Analysis[END_REF].

Theorem 11.31 is a particular case of a result proven in [START_REF] Chazal | Persistence stability for geometric complexes[END_REF] and it has found various applications in shape classification [START_REF] Chazal | Gromov-Hausdorff stable signatures for shapes using persistence[END_REF] and in statistical analysis of data -see, e.g., [START_REF] Chazal | Convergence rates for persistence diagram estimation in topological data analysis[END_REF][START_REF] Fasy | Confidence sets for persistence diagrams[END_REF][START_REF] Blumberg | Robust statistics, hypothesis testing, and confidence intervals for persistent homology on metric measure spaces[END_REF][START_REF] Chazal | Subsampling methods for persistent homology[END_REF].

1 .

 1 the empty set ∅ and X are elements of O, 2. any union of elements of O is an element of O, 3. any finite intersection of elements of O is an element of O. The set X together with the family O, whose elements are called open sets, is a topological space. A subset C of X is closed if its complement is an open set. If Y ⊂ X is a subset of X, then the family O Y = {O ∩ Y : O ∈ O} is a topology on Y , called the induced topology. Definition 1.2 (Closure, interior and boundary) Lat S be a subset of a topological space X. The closure S of S, is the smallest closed set containing S. The interior S of S is the largest open set contained in S. The boundary ∂S of S is the set difference ∂S = S \ S.

  Euclidean spaces. The space R d , d ≥ 1 and its subsets are examples of particular interest. All along the book, for x = (x 1 , • • • , x d ) ∈ R d denotes the Euclidean norm on R d . It induces the Euclidean metric on R d : d(x, y) = xy . The standard topology on R d is the one induced by the Euclidean metric.

Figure 1 . 1 :

 11 Figure 1.1: Two surfaces embedded in R 3 homeomorphic to a torus that are not isotopic.

Figure 1 . 2 :

 12 Figure 1.2: An example of two maps that are homotopic (left) and examples of spaces that are homotopy equivalent, but not homeomorphic (right).

1. 2 .

 2 COMPARING TOPOLOGICAL SPACES 1. ∀x ∈ X, H(0, x) = x, 2. ∀x ∈ X, H(1, x) ∈ Y , 3. ∀y ∈ Y, ∀t ∈ [0, 1], H(t, y) ∈ Y ,then X and Y are homotopy equivalent. Definition 1.12 (Deformation retract) If, in Proposition 1.11, the last property of H is replaced by the following stronger one ∀y ∈ Y, ∀t ∈ [0, 1], H(t, y) = y, then H is called a deformation retract of X to Y .

  x∈X xy ≤ ε} = x∈X B(x, ε)} where B(x, ε) denotes the closed ball {y ∈ R d : xy ≤ ε}. CHAPTER 1. TOPOLOGICAL SPACES Definition 1.14 The Hausdorff distance d H (X, Y ) between two closed subsets X and Y of R d is the infimum of the ε ≥ 0 such that X ⊂ Y ε and Y ⊂ X ε . Equivalently, d H (X, Y ) = max sup y∈Y

CHAPTER 2 .Figure 2 . 2 :

 222 Figure 2.2: The Čech (left) and Vietoris-Rips (right) complexes built on top of a finite set of points in R 2 . Note that they both contains a 3-simplex and are thus not embedded in R 2 .

, 3 , 4 ,;Figure 2 . 3 :

 3423 Figure 2.3: Simplicial complex and corresponding Hasse diagram.

20

 20

Figure 2 . 4 :

 24 Figure 2.4:A simplicial complex on 10 vertices and its simplex tree. The deepest node represents the tetrahedron of the complex. All the positions of a given label at a given depth are linked in a list, as illustrated in the case of label 5.

Figure 2 . 3 :

 23 Figure 2.3: A Hasse diagram and a Simplex Tree with their associated simplicial complexes.

  [Novikov]. It is trivial for d = 2 and decidable for d = 3. The question remains open d = 4.

d 2 -

 2 faces of P.

2 )

 2 now the number of k-faces for k > 0. The number of k-faces incident to any vertex of P is d dk , which is a constant for fixed d. Hence the upper bound O(n d holds also for the number of faces of any dimension.

Figure 3 . 1 :

 31 Figure 3.1: Incremental convex hull algorithm. Top: d = 2. Bottom: d = 3.

Figure 3 . 2 :

 32 Figure 3.2: When adding point p i+1 , the set of purple facets of conv(P i ) is isomorphic to a (d -1)-polytope with at most i vertices.

Theorem 3 . 11

 311 The randomized incremental algorithm computes the con-vex hull of n points in R d in expected time O n log n + n d 2

Figure 3 . 3 :

 33 Figure 3.3: Randomized construction of the convex hull: updating the conflicting graph.The up left picture show the set of red facets when inserting p i+1 , the three other pictures show, in three different cases, the set of facets of conv(P i ) in conflict with p i+1 and p j . In upper right picture, p j is internal to conv(P i+1 ), in lower left picture, case 1 and case 2 both occur, in lower right picture only case 2 occurs.

Figure 4 . 1 :

 41 Figure 4.1: The lower envelope of a set of univariate functions. The minimization diagram is drawn on the horizontal line with the corresponding indices. The face of index {1} consists of two components.

Figure 4 . 2 :

 42 Figure 4.2: The Voronoi diagram of a set of 9 points.

Figure 4 . 3 :

 43 Figure 4.3: V(P ), with one of its faces projected onto R d .

2 .

 2 is the intersection of the upper half-spaces bounded by the hyperplanes in H. Since the Voronoi diagram Vor(P ) is the maximization diagram of the set of functions {f 1 , . . . , f n }, it is the projection onto the space R d = {x, x(d+1) = 0} of the upper envelope V(P ), see Figure 4.3. We deduce that the combinatorial complexity of the Voronoi diagram of n points of R d is at most the combinatorial complexity of a polyhedron defined as the intersection of n half-spaces of R d+1 , which is O n d 2 as shown in Section 3.3. This bound is tight (Exercise 4.3). Moreover, we can construct Vor(P ) by constructing V(P ) ⊂ R d+1 and then projecting its faces onto R d . Thanks to Theorem 3.11, we conclude that Vor(P ) can be constructed in time Θ n log n + n d

Figure 4 . 4 :

 44 Figure 4.4: The Delaunay triangulation of a point set (in bold) and its dual Voronoi diagram (thin lines).

Lemma 4 . 1 (

 41 The empty ball property) Any subset σ ⊂ P is a simplex of the Delaunay complex of P iff it has a circumscribing (open) ball empty of points of P . Such a ball is called a Delaunay ball.

Theorem 4 . 3 (

 43 Delaunay triangulation) If a finite set of points P ∈ R d is in general position wrt spheres, then the Delaunay complex Del(P ) has a natural embedding 1 in R d . This embedding is a triangulation of P called the Delaunay triangulation of P .

  Let b = b(c, r) be a d-ball of R d with center c and radius r. The lifting map φ associates to b the point φ

Figure 4 . 5 :

 45 Figure 4.5: The empty ball property.

  The sphere ∂b bounding b(c, r) is the projection onto R d of the intersection of Q with the hyperplan φ(b) * (see Figure 4.6). Furthermore, the point x belongs to the (open) ball b iff φ(x) belongs to the halfspace φ(b) * -below φ(b) * . Therefore, we have:

PFigure 4 . 6 :

 46 Figure 4.6: The polar hyperplane of a ball.

Theorem 4 . 4

 44 The combinatorial complexity of the Voronoi diagram of a set of n points of R d and of its Delaunay complex is Θ n d 2

Figure 4 . 7 :

 47 Figure 4.7: The weighted distance: two weighted points with respectively a negative (left), null (middle) and positive (right) weighted distance.

  and let us denote by V(P ) the upper envelope of the hyperplanes of H. The maximization diagram of F is obtained by projecting vertically the faces of the upper envelope V( P ).

Figure 4 . 8 :

 48 Figure 4.8: A weighted Voronoi diagram.

Figure 4 . 9 :

 49 Figure 4.9: The weighted delaunay triangulation associated to the weighted Voronoi diagram of Figure 4.8.

Theorem 4 . 7

 47 following theorem states that computing the weighted Voronoi diagram of n weighted points of R d × R (or equivalently its dual weighted Delaunay triangulation) has the same asymptotic complexity as computing the Euclidean Voronoi diagram or the Delaunay triangulation of n points of R d . The theorem is a direct consequence of Section 4.4.3 and of results on convex hulls (Theorems 3.9 and 3.11). The combinatorial complexity of the weighted Voronoi diagram of n weighted points of R d × R and of its dual weighted Delaunay triangulation are Θ n d 2

Figure 4 .

 4 [START_REF] Blumberg | Robust statistics, hypothesis testing, and confidence intervals for persistent homology on metric measure spaces[END_REF]. For k = 1, we obtain the usual Voronoi diagram.

Figure 4 . 10 :Theorem 4 . 8

 41048 Figure 4.10: The 2-order Voronoi diagram of a set of points (in bold line) and the corresponding 1-order Voronoi diagram (in thin line).

Figure 4 . 11 :

 411 Figure 4.11: The Bregman divergence.

1 2 1 2

 11 (xy) T Q(xy) (also known as the squared Mahalanobis distance extensively used in Computer Vision and Data Mining), obtained with F (x) = x T Qx where Q is a symmetric positive definite matrix. See Exercise 4.16 for other examples.

92 CHAPTER 4

 924 . DELAUNAY COMPLEXES Bregman diagrams and complexes of the second type We have defined Bregman diagrams as the minimization diagram of the functions D F (x||p i ). A symmetric definition can be given when exchanging the variable x and the site p i and considering D F (p i ||x). The bisectors are no longer hyperplanes and the diagram is no longer a weighted Voronoi diagram. Still, Legendre duality, an essential notion in convex analysis, allows to transform a diagram of the second type into a diagram of the first type as explained next (Lemma 4.11).

Exercise 4 . 1 (

 41 Space of spheres) Let b be a d-ball of R d of center c and radius r and let s = c 2 -r 2 . We associate to b the point of R d+1 φ(σ) = (c, s).

Exercise 4 . 2 (

 42 Farthest point diagram) Consider the diagram obtained by projecting the faces of h - p 1 ∩ • • • ∩ h - pn vertically, where the h p i are defined as in Exercise 4.1. Characterize the points that belong to a face of this diagram.

Exercise 4 . 3 (

 43 Upper bound) Contsider first the case of a set of points P lying on two non coplanar lines of R 3 . Let n 1 + 1 and n 2 + 1 be the numbers of points on each of the lines. Show that the Delaunay complex of P has n 1 n 2 tetrahedra (or, equivalently, that their Voronoi diagram has n 1 n 2 vertices).

Exercise 4 . 4 (

 44 Triangulation of linear size) Prove that any set of n points of R d in general position admits a triangulation of size O(n).

Exercise 4 . 5 (

 45 in ball predicate) Let B be a ball of R d whose bounding sphere S passes through d + 1 points p 0 , . . . , p d . Show that a point p d+1 of R d lies on S, in the interior of B or outside B, depending whether the determinant of the (d + 2) × (d + 2) matrix in sphere(p 0 , . .

Exercise 4 . 10 (

 410 Conservation law) Prove the following conservation law for flows entering a weighted Voronoi cell V (σ i ) normally to the facets of the cell: if f ij , j ∈ J, are the facets of L(σ i ), we have j∈J vol(f ij ) p j -p i p j -p i = 0. This property makes Voronoi and weighted Voronoi diagrams useful when applying finite volume methods in fluid dynamics. (Hint : use Exercise 3.18).

  Exercise 4.11 (Section of a Voronoi diagram) Let H be a k-dimensional affine space of R d . Show that the intersection L H of H with the weighted Voronoi diagram of n weighted points R d is the weighted Voronoi diagram of n weighted points of H.

Exercise 4 . 12 (

 412 Union of balls) Show that the combinatorial complexity of the union of n balls of R d is the same as the combinatorial complexity of their weighted Voronoi diagram. Design a worst-case optimal algorithm to compute such a union of balls. (Hint : bound first the number of vertices.)

Exercise 4 . 14 (

 414 Maximization diagrams) Show that the maximization diagram of n affine functions defined over R d is the weighted Voronoi diagram of n weighted points of R d .

98 CHAPTER 4

 984 . DELAUNAY COMPLEXES Exercise 4.16 (Examples of divergences) The Itakura-Saito (or Burg) divergence is defined as

5 :

 5 CHAPTER 5. GOOD TRIANGULATIONS Theorem 5.6 Let P be an ε-net in R d . The randomized incremental construction of a Delaunay complex of P requires on expectation 2 O(d 2 ) |P | memory space and 2 O(d 2 ) |P | log |P | time.

  The algorithm requires O(|W |) storage and its time complexity is easily seen to be O(|L| × |W |). Algorithm 3 Farthest point insertion Input: the distance matrix of a finite point set W and either a positive constant λ (Case 1) or an integer k (Case 2) L := ∅ W := W L(w) := p ∞ for all w ∈ W {p ∞ is a fake point at infinite distance from W } λ * := max w∈W w -L(w) w * := a point p ∈ W such that p -L(p) = λ * while either λ * > λ (Case 1) or |L| < k (Case 2) do add w * to L and remove w * from W for each point w of W such that ww * < w -L(w) do L(w) := w * update λ * and w * Output : L ⊆ W , a (λ, 1)-net of W (Case 1), an approximate solution to the k-centers problem (Case 2)

Figure 5

 5 Figure 5.1:The four vertices of a squared face f of a uniform grid are cocircular and can be circumscribed by a sphere centered at the center of the face. This sphere does not enclose any other vertex of the grid. We can then slightly perturb the vertices of f so that the convex hull of the vertices of f is now a tetrahedron of positive volume whose circumscribing sphere does not include any other vertex of the grid. Hence, it is a tetrahedron in the Delaunay triangulation of the (perturbed) vertices of the grid.

Figure 5 . 3 :

 53 Figure 5.3: The Schwarz lantern.

Figure 5 . 4 :

 54 Figure 5.4: For the proof of Lemma 5.20.

9 )

 9 where D(p, σ) is the altitude of p in σ and H(p, σ) = d(c(σ), c(σ p )) if p and c(σ) are on the same side of aff(σ p ) and H(p, σ) = -d(c(σ), c(σ p )) otherwise.

122 CHAPTER 5 .

 1225 GOOD TRIANGULATIONSWriting F (p, σ) = d 2 (p, N (σ p )) + D 2 (p, σ) -R 2 (σ p ), we get:w(p) = F (p, σ) -2D(p, σ)H(p, σ). Hence, |w(p) -F (p, σ)| = 2D(p, σ) d(c(σ), c(σ p )).(5.10)Observe that F (p, σ) depends on the locations of the vertices of σ and on the weights of the vertices of σ p but does not depend on the weight w(p) of p.From Lemma 5.19, D(p, σ) ≤ 2Θ 0 ∆(σ) 2

. 11 )

 11 In the case where σ belongs to an (ε, η)-net, we have L(σ) ≥ ηε and, from Lemma 5.15, ∆(σ) ≤ 2 √ 2ε. The weight range |I(σ, p)| then satisfies |I(σ, p)| ≤ 64 Θ 0 2 η .

Lemma 5 . 27 (

 527 and ∀q ∈ P \ σ. Separation and thickness from protection) Let P be an (ε, η)-net of a bounded domain Ω ⊂ R d . Assume that |P | > d + 1 and that every d-simplex in Del(P ) is δ-protected. Then the separation ratio of P satisfies η ≥ δ, and the thickness of any simplex σ (of any dimension) of Del(P ) is at least

Claim 5 .

 5 28 Let B = B(c, R) and B = B(c , R ) be two n-balls whose bounding spheres ∂B and ∂B intersect, and let H be the bisecting hyperplane of B and B , i.e. the hyperplane that contains the (n -2)-sphere S = ∂B ∩ ∂B . Let θ be the angle of the cone (c, S). Writing ρ = R R and cc = λR, we have cos(θ) = 1 + λ 2ρ 2 2λ .

Claim 5 .Figure 5 . 5 :

 555 Figure 5.5: Construction used in Claims 5.28 and 5.29.

Exercise 5 . 2 (b 1 -a c t , for a, c b 2 . 5 . 3 (Exercise 5 . 5

 52125355 Hypergeometric distribution) Suppose a, b, c are positive integers, with max{a, b} ≤ c. The hypergeometric distribution with 5.5. EXERCISES 131 parameters a, b, c is the distribution of the random variable X = |A ∩ B|, where A is a random sample of size a, from a universe C of size c, which has a subset B of size b. Prove that given b ≤ a, the probability that the random sample A contains B, and is disjoint from another fixed set T with cardinality t, T ∩ B = ∅, is at most a c Exercise Delaunay refinement) Adapt Algorithm 3 to add sample points in T d so that the sample P is an ε-net of T d . Exercise 5.4 (k-center clustering) Given is a set of points P and an integer k. The k-clustering problem consists in partitioning P into k clusters so as to minimize the maximum diameter of a cluster. Propose an algorithm that gives an approximation ratio of 2 for the k-clustering problem. Let Ω be an open subset of R 2 and P an (ε, η)-net of Ω in general position wrt circles. Show that all triangles of Del |Ω (P ) have all their angles greater or equal to arcsin( η 2 ).

Algorithm 6

 6 Computing Delaunay filtrations Input: the set of points P in R d Compute the Delaunay complex Del(P ) for each d-simplex τ ∈ Del(P ) do set α(τ ) = r(τ ) 2 (the squared circumradius of τ ) for k = d -1, ..., 0 do for each d-simplex τ ∈ Del(P ) do if τ is a Gabriel simplex then α(τ ) = r(τ ) 2 (the squared smallest circumradius of τ ) else α(τ ) = min σ∈U (τ ) α(σ) Output: The critical α-value of each simplex in Del(P ) has been computed

Lemma 6 . 1

 61 Let B be a finite set of balls in R d . The union U (B) of balls in B is homotopy equivalent to the α-complex A(B, 0). See Figure 6.2 for an illustration of this fact. Proof Each ball b in B may be regarded as a weighted point (c(b), r 2 (b)) where c(b) and r 2 (b) are respectively the center and the squared radius of b. We denote by Del(B), Vor(B) and A(B, α) respectively the Delaunay complex, Voronoi diagram and α-shape of the balls in B. Let V (b) be the cell of b in Vor(B). We claim that {b ∩ V (b), b ∈ B} forms a finite convex cover of U (B) as defined in Section 2.3. First, because b and V (b) are both convex subsets of R d , each subset b ∩ V (b) is convex. We show next that {b ∩ V (b), b ∈ B} is a cover of U (B), i.e.: U (B) = b∈B b ∩ V (b). The inclusion b∈B b∩V (b) ⊂ U (B) is trivial. To show the reverse inclusion, let us consider a point p in U (B). Point p belongs to at least one ball b 1 of B and let b(p) be the ball in B whose Voronoi cell contains p. Since p ∈ b 1 , the weighted distance D(p, b 1 ) is negative and, since b(p) minimizes the weighted distance to p, we have: D(p, b(p)) ≤ D(p, b 1 ) ≤ 0, which means that p belongs to b(p) and therefore to b(p) ∩ V (b(p)) and to b∈B b ∩ V (b). The claim is proved. It follows from the claim and the Nerve theorem (Theorem 2.8) that the union U (B) of balls in B is homotopy equivalent to the nerve of the cover 142 CHAPTER 6. DELAUNAY FILTRATIONS b∈B b ∩ V (b). We now show that the nerve of this cover is just the αcomplex A(B, 0). Let B ⊂ B be a subset of B. The subset B belongs to the nerve of the cover {b ∩ V (b), b ∈ B} iff the intersection b∈B b ∩ V (b) is non empty. This in turn is equivalent to say that that there exists a point x in b∈B b ∩ V (b). Such a point x is at an equal negative weighted distance w(x) to the balls in B and at a greater weighted distance to any ball of B \ B . In other words, the weighted point x = (x, w(x)) is orthogonal to any ball in B and has a positive weighted distance to any ball in B \ B . Therefore B belongs to Del(B) and, since w(x) ≤ 0, to the α-complex A(B, 0).

L 10 Figure 6 . 3 :

 1063 Figure 6.3: A simplex and one of its witnesses.

Lemma 6 . 5

 65 Let Ω be a subset of R d . Del |Ω (L) ⊆ Wit(L, Ω).

Theorem 6 . 6 (

 66 Weak characterization) For any convex Ω ⊆ R d and any finite point set L ⊂ Ω, we have Wit(L, Ω) = Del |Ω (L).Proof We have already proved that Del |Ω (L) ⊆ Wit(L, Ω) (Lemma 6.5). We prove now the converse inclusion by an induction on the dimension k of the simplices. The claim holds for k = 0 since any vertex of Wit(L, Ω) is a point of L and thus a vertex of Del |Ω (L).

Figure 6 . 4 :

 64 Figure 6.4: Proof of Lemma 6.6.

Figure 6 . 4 .Figure 6 . 5 :

 6465 Figure 6.5: Two triangles that have a witness but not their common edge, even if W = R d . These two triangles are not Delaunay triangles.

Lemma 6 . 8 (

 68 Identity from protection) Let Ω be a convex subset of R d and let W and L be two finite sets of points in Ω. If W is ε-dense in Ω and if all simplices (of all dimensions) of Del |Ω (L) are δ-protected with δ ≥ 2ε, then Wit(L, W )) = Del |Ω (L).

  M be a matrix of size |W | × k. The lines in M are associated to the elements of W and the line M (w) associated to w ∈ W stores the list of the k landmarks that are closest to w, sorted by increasing distance from w (M can be trivially computed in time O(|W | × |L| log |L|) and, with more clever algorithms, in time O(|W | (log |W | + k) time) (see the bibliographical notes in Section 6.4). We write M (w) = (M 1 (w), ..., M k (w)). Algorithm 7 below computes Wit k (L, W ) from M . We assume without real loss of generality that L ⊂ W . Under the general position assumption above, the number of i-simplices of Wit(L, W ) is at most |W | for any i ≤ k. Hence the total number of simplices of Wit k (L, W ) is at most k |W | = O(|W |).

7. 1 .Figure 7 . 1 :

 171 Figure 7.1: A k-dimensional submanifold M of R d (here k = 1 and d = 2) is a subset of R d that is locally diffeomorphic to an open set of a k-dimensional affine subspace.

Figure 7 . 2 :

 72 Figure 7.2: The tangent and normal spaces to a 2-dimensional submanifold M of R 3 at a point p ∈ M.

Figure 7 . 3 :

 73 Figure 7.3: The medial axis of a closed curve. We only show the component of the medial axis that is contained in the domain bounded by the curve. Various offsets of the curve are also shown as thin curves.

Lemma 7 . 2 (

 72 Tubular neighborhood) Let M be a manifold with positive reach rch(M) and let B Np (r) be the intersection of the ball B(p, r) with the normal space at p. If r < rch(M), then, for every point x ∈ B Np (r), Π(x) = p.

Lemma 7 . 3 Lemma 7 . 4 Figure 7 . 4 :

 737474 Figure 7.4: For the proof of Lemma 7.4.

Figure 7 . 5 :

 75 Figure 7.5: An illustration of the proof of Lemma 7.8 in the case where M is a curve of R 2 . θ = ∠(pq, T p ).

Figure 7 . 6 :

 76 Figure 7.6: For the proof of Lemma 7.13 (1).

Figure 7 . 7 :

 77 Figure 7.7: For the proof of Lemma 7.13 (2).

Lemma 7 . 14 (

 714 Distortion of Π p ) Let p ∈ M, and write B(p, r) for the ball of R d centered at p of radius r and B M (p, r) for B(p, r) ∩ M.

Theorem 7 . 16 (

 716 Triangulation of submanifolds) Let M be a closed 2 ksubmanifold of R d of positive reach rch(M) and let M be a combinatorial k-manifold without boundary embedded in R d that satisfies the following assumptions : (a) The vertices of M belong to M and each connected component of M contains some vertices of M, (b) The diameter of any k-simplex of M is less than ∆ 0 = δ 0 rch(M) where δ 0 ≤ 1/5, (c) The thickness of the k-simplices of M is at least Θ 0 ≥ 9 δ 2 0 /λ 0 , where L 0 = λ 0 rch(M) is a lower bound on the edge lengths of the simplices, (d) For any vertex p ∈ M, Π p embeds star(p, M).

Figure 7 . 8 :

 78 Figure 7.8: For the proof of Lemma 7.23.

Lemma 7 .

 7 18 (Whitney's lemma) Assume C is a combinatorial k-manifold with boundary embedded in R k . Let F : C → R k be simplexwise positive in C. Then for any connected open subset Ω of R k \ F (∂C), any two points of Ω not in the image of the (k -1)-skeleton of C are covered the same number of times. If this number is 1, then F , considered in the open subset F -1 (Ω) of C only, is one to one onto Ω. CHAPTER 7. TRIANGULATION OF SUBMANIFOLDS

Lemma 7 . 20

 720 Assume that the conditions of Theorem 7.16 hold and let b be the barycenter of a k-simplex σ in star (p). Then the image of b , F p (b ), is covered once, i.e. F -1 p (F p (b )) = {b }. Proof We denote as usual by ∆(σ )the diameter of σ , by L(σ ) the length of the shortest edge of σ , and by D(p, σ ) the altitude of p in σ . Let σ = Π -1 p (σ ) and write ζ for the distortion of the restriction of Π p to σ. By Lemma 7.19, we have ζ ≤ δ 2 0 /Θ 2 0 and, using Conditions (b) and (c) in Theorem 7.16 and Θ 0 ≤ 1, we get ζ ≤ 1/45. We thus have D(p, σ ) ≥ (1ζ) D(p, σ). Now observe that the distance d(b , ∂σ ) from the barycenter b to the boundary of σ is min p∈vert(σ ) D(p,σ ) k+1 . A lower bound on d(b , ∂σ ) is then obtained using the definition of thickness, k ≥ 1 and Condition (c):

4 .

 4 The next lemma shows that F p (V p ) ∩ F p (∂star (p)) = ∅. Lemma 7.21 Assume that the conditions of Theorem 7.16 hold and let x ∈ σ ⊂ star (p) and y ∈ ∂dstar (p). If the barycentric coordinate of x with respect to p is at least 1 k+1 , then F p (x) = F p (y).

Lemma 7 . 22

 722 Let σ be a k-simplex of star (p) and let x be a point of σ whose barycentric coordinate associated to p in σ satisfies λ p (x) ≥ α. Then d(x, ∂star (p)) ≥ αk(1-ζ) L 0 Θ 0 , where ζ is an upper bound on the distortion of the restriction of Π p to a simplex of M, L 0 = λ 0 rch(M) is a lower bound on the edge lengths of the simplices and Θ 0 is a lower bound on their thickness. Proof Let γ σ be a line segment joining two points x σ and y σ of σ and denote by λ p (x σ ) and λ p (y σ ) respectively their p-th barycentric coordinates. Then |γ σ | ≥ |λ p (x σ )λ p (y σ )| D(p, σ ), where D(p, σ ) denotes the altitude of p in σ and we indicate the length of a curve by | • |. As noted in the proof of Lemma 7.20, D(p, σ ) ≥ (1ζ) D(p, σ) Let star α (p) = {z ∈ star(p), λ p (z) ≥ α}. Equivalently, star α (p) is the image of star (p) by the homothety of center p and ratio 1α. Consider a shortest line segment γ connecting a point of ∂star (p) to a point of ∂star α (p).

Lemma 7 .

 7 23 (Π | M is a local homeomorphism) If the conditions of Theorem 7.16 hold, then Π embeds V p in M and the restriction of Π to M is a local homeomorphism.

Lemma 7 . 24 (

 724 Injectivity of Π | M) Under the conditions of Theorem 7.16,

8. 1 .Figure 8 . 2 :Lemma 8 . 5

 18285 Figure 8.2: For the proof of Lemma 8.4.

Figure 8 . 5 : 1 8 1 -

 8511 Figure 8.5: Figure (a) shows M, the sample P , the tangent lines at the sample points, the Voronoi diagram of P and Del T M (P ). The dashed lines indicate the inconsistent edges. In Figure (b), the line segments denote Del T M (P ) and the grey triangles denote the inconsistency triggers.

2 .

 2 M is a piecewise linear k-submanifold without boundary; 3. M is homeomorphic to M; 4. The Hausdorff distance between M and M is at most 4ε 2 rch(M); 5. If σ is a k-simplex of M and p is a vertex of σ, we have sin ∠(aff(σ), T p ) ≤ 2ε Θ 0 .

Fig. 8 . 208 CHAPTER 8 .

 82088 Figure 8.6: A Riemann surface embedded in R 8 reconstructed using the tangential Delaunay complex. For visualization purposes, the surface has been projected in R 3 .

9. 1 . 9 . 1

 191 DISTANCE FUNCTION AND HAUSDORFF DISTANCE 213 Distance function and Hausdorff distance Given a compact subset K ⊂ R d , the distance function d K to K is the non-negative function defined by d K (x) = inf y∈K d(x, y) for all x ∈ R d where d(x, y) = x-y is the euclidean distance between x and y in R d . The distance function to K is continuous and indeed 1-Lipschitz: for all

CHAPTER 9 .Figure 9 . 1 :

 991 Figure 9.1: Various offsets of a point cloud data set sampled around a torus in R 3 .

Figure 9 . 3 :

 93 Figure 9.3:The graph of the distance to a square in the plane. Along the diagonal of the square, the direction of the gradient is given by the diagonals and its norm is the slope of the edges of the graph above the diagonals.

Definition 9 . 6 (

 96 Weak feature size) Let K ⊂ R d be a compact set. The weak feature size wfs(K) of K is the infimum of the positive critical values of d K . If d K does not have critical values, wfs(K) = +∞.

Figure 9 . 4 :

 94 Figure 9.4: A segment K approximated by a point cloud K . The weak feature size of K is obviously smaller than two times the Hausdorff distance between K and K .

Figure 9 . 5 :Theorem 9 . 9 (

 9599 Figure 9.5: When K is a rectangle, the set of critical points of d K is the whole segment [AB]. This segment collapses to a single critical point A as one stretches the bottom side of K to obtain K . Nevertheless, along the previously critical segment, the norm of the gradient of d K remains small.

Figure 9 . 6 :

 96 Figure 9.6: Proof of lemma 9.10

Figure 9 . 7 :

 97 Figure 9.7: The critical function of a square embedded in R 3 with edge length equal to 50 (top) and the critical function of a point cloud sampling this square (bottom).

Figure 9 . 8 :

 98 Figure 9.8: A points set (left) sampled around a torus shape in R 3 and its critical function (the upper curve). The lowest curve represents the lower bound for the critical function of any shape K at distance less than some fixed threshold (here 0.001, the diameter of the torus being 10) from the point cloud.

Figure 10 . 1 :Figure 10 . 2 :

 101102 Figure 10.1: Adding just one point at distance R to a point cloud sampling a circle changes the Hausdorff distance between the shape and the sample by R.

  Given a point x ∈ R d the Dirac measure δ x at x is defined as δ x (B) = 1 if x ∈ B and δ x (B) = 0 otherwise. Given a set of n points C, the empirical or uniform measure µ C , associated to C, is defined asµ C (B) = 1 n |B ∩ C|. It is the sum of n Dirac masses of weight 1/n, centered at each point of C. Given a compact k-dimensional manifold M ⊆ R d , let vol M be the kdimensional volume measure on M . As M is compact, vol M (M )is finite and we define a probability measure µ M supported on M by µ M (B) = vol M (B ∩ M )/vol M (M ), for any Borel set B ⊆ R d . For example, if M is a curve, µ M (B) is the fraction of the total length of M that is contained in B; similarly, if M is a surface, µ M (B) is the fraction of the total area of M that is contained in B. Notice that if M is a finite union of submanifolds M 1 , • • • , M k , then we can define probability measures on M just by considering weighted sums of the measures µ M i .

2

 2 Intuitively π(A × B) corresponds to the amount of mass of µ contained in A that will be transported to B by CHAPTER 10. DISTANCE TO PROBABILITY MEASURES the transport plan. The cost of such a transport plan π is given byC(π) = R d ×R dxy 2 dπ(x, y) 1/As an example, consider two probability measures with finite supports µ and ν: µ = m i=1 c i δ x i and ν = n j=1 d j δ y j with m i=1 c i = 1 and n j=1 d j = 1. A transport plan between µ and ν is then a n × m matrix Π = (π i,j ) with non negative entries such that n j=1 π i,j = c i and m i=1 π i,j = d j .

1 N p∈C δ p and ν = 1 N

 11 and a noisy version C obtained by replacing the first n points in C by pointsy i such that d C (y i ) = R > 0 for i = 1, • • • , n.If we denote by µ = q∈C δ q the empirical measures associated to C and C respectively then one hasW 2 (µ, ν) = n N (R + diam(C))10.3. DISTANCE FUNCTION TO A PROBABILITY MEASURE241while the Hausdorff distance between C and C is at least R. To prove this inequality, consider the transport plan Π from ν to µ that moves the outliers back to their original position and leave the other points fixed. The matrix Π of this transport plan (see the above example) is defined by π i,j = 1/N if i = j and 0 otherwise. Since x iy i ≤ R + diam(C) for i = 0 • • • n and x i = y i for i > n, we immediately deduce that the cost of this transport plan is upper bounded by n/N (R + diam(C)). As a consequence, replacing a small amount of points (n << N ) of C by outliers results in a new measure that remains close to the original one.

Definition 10 . 12

 1012 Let µ be a probability measure on R d and 0 ≤ m < 1 a CHAPTER 10. DISTANCE TO PROBABILITY MEASURES given parameter. We denote by δ µ,m the function defined by δ µ,m : x ∈ R d → inf{r > 0 ; µ( B(x, r)) > m} where B(x, r) denotes the closed ball with center x and radius r.

  x

Figure 10 . 3 :

 103 Figure 10.3: Computation of the distance to the empirical measure associated to a point set C (x C (k) denotes the k-th nearest neighbor of x.

Figure 10 . 4 :

 104 Figure 10.4: The distance function to a measure as a usual distance function in an infinite dimensional space.

10. 3 .

 3 DISTANCE FUNCTION TO A PROBABILITY MEASURE 245 single element. Indeed, it coincides with the set of submeasures µ x,m 0 of total mass m 0 whose support is contained in the closed ball B(x, δ µ,m 0 (x)), and whose restriction to the open ball B(x, δ µ,m 0 (x)) coincides with µ. 10.3.4 Stability of the distance function to a measure The characterization of d µ,m 0 given in Proposition 10.15 provides a rather easy way to prove the stability of µ → d µ,m 0 . Theorem 10.16 (Distance function stability) If µ and µ are two probability measures on R d and m

Proposition 10 .

 10 [START_REF] Boissonnat | Provably good sampling and meshing of surfaces[END_REF] Let S be a smooth k-dimensional submanifold of R d whose curvature radii are lower bounded by R, and µ the uniform probability measure on S, thend Sd µ,m 0 ∞ ≤ C(S) -1/k m 1/k 0for m 0 small enough and C(S) = (2/π) k β k /vol k (S) where β k is the volume of the unit ball in R k .

Figure 10 . 5 :Exercise 10 . 2

 105102 Figure 10.5: On the left, a point cloud sampled on a mechanical part to which 10% of outliers (uniformly sampled in a box enclosing the model) have been added. On the right, the reconstruction of an isosurface of the distance function d µ C ,m 0 to the uniform probability measure on this point cloud.

Figure 11 . 1 ,Figure 11 . 1 :

 111111 Figure 11.1: A very simple simplicial complex made of 4 vertices, 4 edges and 1 triangle.

  2.

c 1 c 2 c 3 Figure 11 . 2 :

 23112 Figure 11.2: Examples of chains, cycles and boundaries: c 1 is a cycle which is not a boundary, c 2 is a boundary and c 3 is a chain that is not a cycle.

Figure 11 . 3 :

 113 Figure 11.3: Examples of Betti numbers for simple simplicial complexes: from left to right, an edge, the boundary of a triangle, a triangle and the boundary of a tetrahedron.

Figure 11 . 4 :

 114 Figure 11.4: Examples of insertion of a 1-simplex σ i to a subcomplex K i-1 . When σ i is not contained in a 1-cycle (left), its insertion results in the connection of two connected components of K i-1 . When σ i is contained in a 1-cycle (right), its insertion create a new 1-cycle that is not homologous to any previously existing in K i-1 .

  .1 with the filtration defined by the simplices ordering ∅, a, b, c, ab, bc, d, ac, cd, abc, then the positive simplices are a, b, c, d and ac. The Betti numbers of K are β 0 = 1, β 1 = 0 and β 2 = 0.

Algorithm 10

 10 Betti numbers inference Input: P ⊂ R d a finite set. Let L := ∅, α := +∞; while L P do Let p := argmax w∈P min v∈L wv ; // pick arbitrary p if L = ∅ L ← L ∪ {p}; α ← max w∈P min v∈L wv ; Update Rips(L, 4α) and Rips(L, 16α); Compute β 16α k,4α = rk(i : H k (Rips(L, 4α)) → H k (Rips(L, 16α))); Output: diagram showing the evolution of persistent Betti numbers, i.e. the ranks of i versus α.

Figure 11 . 5 :

 115 Figure 11.5: An example of persistent Betti numbers curves obtained from a point cloud sampled on a torus. They are plotted as functions of 1/α. These numbers are constant on an interval containing [18/wfs(K), 1/ε] and correspond to the three first Betti numbers of the torus: β 0 = 1, β 1 = 2 and β 2 = 1.

Figure 11 . 6 :Figure 11 . 7 :

 116117 Figure 11.6: The persistent Betti numbers curves obtained from a point cloud sampled on a closed curve spiraling on a torus which was itself non linearly embedded into R 1000 . They are plotted as functions of 1/δ. We distinguish two intervals on which the computed ranks are constant. The right-most one (corresponding to the smaller range of δ) exhibits the Betti numbers of a circle (1, 1, 0), while left most one (intuitively corresponding to a larger scale) exhibits the Betti numbers of the torus (1, 2, 0).

CHAPTER 11 .Figure 11 . 8 :

 11118 Figure 11.8: An approximation g of f and its persistence diagram.

11. 5 . PERSISTENT HOMOLOGY 269 Definition 11 . 13 (

 52691113 Persistent Betti numbers) For p ∈ {0, • • • , m} et l ∈ {0, • • • , m -p}, the k-th persistent Betti number of K l is the dimension of the vector space H l,p k = Z l k /(B l+p k ∩ Z l k ).

Fact 1 :

 1 At each step of the algorithm, the column C j represents a chain of the following form∂   σ j + i<j ε i σ i   with ε i ∈ {0, 1}.

Fact 3 :

 3 If at the end of the algorithm the column C j only contains zero terms, then σ j is positive. σ j is contained in a cycle of K j .

Figure 11 . 10 :

 1110 Figure 11.10: Comparing the persistence diagrams of two close functions defined on a segment

Corollary 11 .

 11 [START_REF] Buchet | Efficient and robust persistent homology for measures[END_REF] Let X, Y ⊂ R d be compact. Thend B (dgm(d X ), dgm(d Y )) ≤ d H (X, Y ).In particular, if P, Q ⊂ R d are finite point clouds, then for any non negative integer k, d B (dgm(H k ( Čech(P ))), dgm(H k ( Čech(Q)))) ≤ d H (P, Q)

  k)-face of P * + is the intersection of P * + with k + 1 hyperplanes in P * (see Exercise 3.6). Let us consider a (d -1k)-face f * of P * + and say that f * is the intersection of P * + with the k hyperplanes {p * i , i = 1, . . . k + 1}. Equations 3.1 , 3.2 and 3.3 show that any point h * in f *

	)
	Equations 3.1, 3.2 and 3.3 show that the point h * belongs to the (d -1 -k)-face f * of P * + which is the intersection of P * + with the k + 1 hy-perplanes {p * i , i = 1, . . . k + 1}. Therefore, duality maps the k-face f = conv({p 1 , . . . , p k+1 }) of lowerhull(P ) to the (d -1 -k)-face f * = p * 1 ∩ p * 2 ∩ . . . ∩ p * k+1 ∩ P * + of P * + .
	In the other way, any (d -1

  Indeed point p i+1 is

	Algorithm 1 Incremental convex hull algorithm
	Input: A set P of n points in R d
	Sort the points of P by lexicographic order of coordinates
	Let p 1 , p 2 . . . p n be the points of P in lexicographic order
	Let P i be the subset of first i points
	Build the Hasse diagram of conv(P d+1 )
	for i = d+1 to i=n-1 do
	Find a red facet of conv(P i ) {with respect to p i+1 } Find all red and purple faces of conv(P i )
	Update the Hasse of conv(P i ) into the Hasse diagram of conv(P i+1

  Algorithm 2 Randomized convex hull algorithm Input: A set P of n points in R d Choose randomly a subset P d+1 of d + 1 points in P Build the Hasse diagram of conv(P d+1 ) Initialize the conflict graph for i = d+1 to i=n-1 do Choose randomly p i+1 ∈ P \ P i P i+1 = P i ∪ {p i+1 } Follow the conflict edge of p i+1 to find a first red facet Find all red and purple faces of conv(P i ) Update the Hasse and compute the Hasse diagram of conv(P i+1 ). Update the conflict graph Output: The Hasse diagram of the convex hull of P

  t 2 , . . . t d ), t ∈ R} Polarity has been introduced with the paraboloid Q. A sphere could have been used instead as shown in this exercise. Let o be a point of R d . Polarity associates to any point p of R d distinct of o the hyperplane p * = {x : (xo) • (po) = 1}. Show that polarity is a bijection between points of R d distinct de o and hyperplanes not passing through o. Let P be a set of point of R d whose convex hull includes

	Show that a cyclic polytope of R d with n vertices has	n k	(k -1)-faces
	for any k such that 0 ≤ k ≤ d/2.
	Exercise 3.13 (Polarity) o. Show that polarity induces a duality between the boundary complex
	of the polytope (P ) = conv(P ) and the boundary complex of the polytope
	(P * + ) = p∈P p * + where p * + is the half-space bounded by p * not containing
	o.
	Exercise 3.14 (Lower bound for incremental convex hull computation)
	Show that any incremental algorithm that constructs the convex hull of n
	points of R d takes Ω(n	d+1 2

  4 w0 ε 2 by Lemma 5.1, and ∆(σ ) ≤ 2 √ 2ε by Lemma 5.15, we get:

The theory of randomized algorithms is well-developed and finds applications in many areas of computer science. See the book by Motwani and Raghavan for a broad perspective[START_REF] Motwani | Randomized Algorithms[END_REF], and the books of Boissonnat and Yvinec[25] and of Mulmuley[START_REF] Mulmuley | Computational Geometry: An Introduction Through Randomized Algorithms[END_REF] for a geometric viewpoint.

Defined in Section

2.2.

Let a = dc(y) and b = r and suppose that the set d -1 c (a, b), consisting of all p ∈ M with a ≤ dc(p) ≤ b, contains no critical points of dc (i.e. no point q of M where B(c, cq ) is tangent to M). Then M a = {x ∈ M, dc ≤ a} is homeomorphic to M b = {x ∈ M, dc ≤ b}.

i.e. compact and without boundary.

Whitney proved a more general result which does not assume that C is embedded in R k .

The invariance of domain theorem states that, given an open subset U ⊆ R d and an injective and continuous function f : U → R d then f is a homeomorphism between U and f (U ). The theorem and its proof are due to L. E. J. Brouwer[START_REF] Munkres | Elements of algebraic topology[END_REF] Theorem 36.5].

See Definition 7.7.

wfs(K ) dH (K, K ) K

The symetric difference of two sets A and B is defined by A∆B = (A ∪ B) \ (A ∩ B).

CHAPTER 11. HOMOLOGY INFERENCE

Bibliography

The research leading to this book has been partially supported by the Agence Nationale de la Recherche under the project TopData and by the European Research Council under the Advanced Grant GUDHI (Geometric Understanding in Higher Dimensions).

Jean-Daniel Boissonnat Frédéric Chazal Mariette Yvinec 1

See

T. Tao's blog https://terrytao.wordpress.

The total number of for loops that are executed is |Wit k (L, W )| + |W | = O(|W |). Indeed, each loop either constructs a new simplex or removes a point from the set of active witnesses W . A loop has to decide if a isimplex as well as its i facets belong to the current complex Wit k (L, W ). Each of these tests can be done in time O(log |L|) if one uses for example the simplex tree described in Exercise 2.1. Since i ≤ k, the cost of a single loop is thus O(k log |L|) The overall complexity of the algorithm is therefore

The algorithm is general and applies to any distance matrix M . In the case where L and W belong to R d , and if the points of L are in general position with respect to spheres, we know that Wit(L, W ) is a subcomplex of Del(L) and thus embedded in R d and of dimension at most d. Hence the entire witness complex is computed if one takes k = d.

Relaxed witness complexes

As before, W and L denote two sets of points in some subset Ω ⊂ R d . L is finite. Definition 6.9 (Relaxed witness) Let σ be a simplex with vertices in L. We say that a point w ∈ W is an α-witness of σ if wp ≤ wq + α ∀p ∈ σ and ∀q ∈ L \ σ.

Restricted Delaunay complex and relaxed witness complex

We consider now the case where Ω ⊆ R d is not necessarily convex and extend Lemma 6.8. Specifically, we will show that, for a large enough relaxation, Del |Ω (L) is contained in the relaxed witness complex. Lemma 6.11 Let Ω be a subset of R d (not necessarily convex). Assume that W is ε-dense in Ω and that all the simplices of Del |Ω (L) are δ-protected. If α ≥ max(0, 2εδ), then Del |Ω (L) ⊆ Wit α (L, W ).

Proof Let σ be a d-simplex of Del |Ω (L) and write c σ for its circumcenter. Since W is ε-dense in Ω, there exists a point w in W such that c σw ≤ ε.

For any p ∈ σ and q ∈ L \ σ, we then have

which proves the lemma.

Note that if δ ≥ 2ε, the lemma gives Del |Ω (L) ⊆ Wit(L, W ) (as in Lemma 6.8).

Exercises

Exercise 6.1 (Full classification with respect to the α-complex.) Let P be a set of weighted points in R d . Each simplex τ of the Delaunay triangulation Del( P ) can be classified with respect to the α-complex A( P , α) as

Part III

Reconstruction of smooth submanifolds

Chapter 7

Triangulation of submanifolds 155 CHAPTER 7. TRIANGULATION OF SUBMANIFOLDS 3. If σ is a k-simplex of M and p one of its vertices, we have sin ∠(aff(σ), T p ) ≤ δ 0 Θ 0 .

The proof is given in the following sections. A more general version of the theorem holds. Indeed, we can remove the assumption that the simplicial complex M is embedded in R d . The fact that the complex is naturally embedded in R d is a consequence of this more general version of the theorem.

In the sequel, we will denote by P the set of vertices of M.

Proof of statement 1

Write as before Π for the projection onto M and consider Π | M : M → M, the restriction of Π to M. Note that Π | M is well defined since M does not intersect the medial axis of M as δ 0 < 1. We will prove that Π | M is a homeomorphism, which implies that M is a triangulation of M.

Here is an overview of the proof. We have already seen that Π embeds any simplex of M into M (Lemma 7.13 (2)). We will extend this result and prove that Π | M is a local homeomorphism (Lemma 7.23). More specifically,

we define an open cover of M as follows. We attach to each vertex p of M an open set V p such that the union of the V p , for all vertices p of M, covers M. Specifically W p is defined as the set of points of star(p) ⊂ M whose barycentric coordinate with respect to p is at least 1 k+1 , and V p is an open set that contains W p and is arbitrarily close to W p . Since the barycentric coordinates in each k-simplex sum to 1, this ensures that the sets V p cover M. We will show that Π embeds each V p , which will prove that Π | M is a local homeomorphism.

We will then prove that Π | M is injective (Lemma 7.24) and surjective (Lemma 7.25). Furthermore, Π | M is continuous by Lemma 7.13(1) and its inverse is also continuous since M and M are both k-manifolds without boundary (see Section 1.2.1). It will follow that Π | M is a homeomorphism and that M and M are homeomorphic.

Hypothesis (e). We conclude that F p (x ) = F p (q ) from Lemma 7.21, a contradiction.

The restriction of Π to M is surjective

Lastly we prove that the restriction of Π to M is surjective. Proof Since M has no boundary, the same is true for Π( M) by the invariance of domain theorem, 4 . Hence any connected component of M that intersects Π( M) has to be totally included in Π( M). Since by Hypothesis 1 of Theorem 7.16, every connected component of M intersects Π( M), M is included in Π( M).

End of proof of statement 1

We have shown that Π | M is a bijection from M to M. Furthermore, Π | M is continuous by Lemma 7.13(1) and its inverse is also continuous since M is compact and M is a metric space (see Section 1.2.1). It follows that Π | M is a homeomorphism and that M and M are homeomorphic, which is the first statement in Theorem 7.16.

Proof of statements 2 and 3, and of Theorem 7.16

To prove the second statement, let x be a point of M and let y be the point of M such that x = Π(y). Such a point y exists by the first statement. It then follows from Lemma 7.9 that xy ≤ 2δ 2 0 rch(M).

The third statement of the theorem follows from Lemma 5.14 as in the proof of Lemma 7.14 (Equation (7.7)).

CHAPTER 8. RECONSTRUCTION OF SUBMANIFOLDS

components of N y ∩ U , i. e. components which do not contain y, and may arise from the fact that M is curved. Therefore,

We also consider the subset st(y) defined as

Obviously, st(y) ⊂ Π -1 U (y). Then Lemma 8.2 below proves that st(y) is star shaped with respect to y and Lemma 8.3 proves that st(y) = Π -1 U (y). It follows that for any y ∈ M, Π -1 U (y) is star shaped with respect to y and that for any (x, t) ∈ U × [0, 1], F (x, t) belongs to U . Proof We are left to show that Π -1 U (y) ⊂ st(y). Let z be a point in B(p, εrch(M)) ∩ N y ∩ B(y, rch(M)) where p is a point of P such that p ∈ B(y, εrch(M)). Lemma 8.4 shows that the distance from z to y is at most ε 2 rch(M) and Lemma 8.5 shows that if P is ( ε 2 rch(M))-dense in M with ε < 3 5 , there is some point q ∈ P ∩ B(y, εrch(M)) such that z ∈ B(q, εrch(M)) which achieves the proof. implies that the restricted Delaunay complex Del p (P ) is a subcomplex of dimension at most k. Furthermore, if T p intersects a (dk)-face f of Vor(P ), the intersection consists of a single point c. The unique point c is the center of an empty ball circumscribing the k-simplex of Del(P ) dual to f . It is easy to see that applying an infinitesimal perturbation to P is sufficient to ensure the transversality condition.

We write star(p) for the closed star of p in Del p (P ), i.e. the subcomplex of Del p (P ) consisting of the simplices of Del p (P ) that are incident to p together with their faces (see Figure 8.3). In the following, we will simply call star a closed star. For a k-simplex σ in star(p), we write B p (σ) for the ball centered on T p that circumscribes σ, c p (σ) for its center and R p (σ) for its radius. Observe that R p (σ) ≥ R(σ), where R(σ) is the radius of the smallest ball circumscribing σ.

Definition 8.6 (Tangential Delaunay complex) We call tangential Delaunay complex, or tangential complex for short, the simplicial complex Del T M (P ) = {σ, σ ∈ star(p), p ∈ P }.

Plainly, Del T M (P ) is a subcomplex of Del(P ) and is therefore a simplicial complex embedded in R d if the points of P are in general position wrt spheres (see Section 4.3). The following lemma is crucial since it shows that computing the tangential complex reduces to computing n weighted Delaunay triangulations in the k-dimensional flats T p , p ∈ P .

CHAPTER 8. RECONSTRUCTION OF SUBMANIFOLDS

We define a map Ψ p : P → T p × R that associates to each point p i ∈ P a weighted point in T p . Specifically, Ψ p (p i ) = (p i , p i ) ∈ T p × R, where p i is the orthogonal projection of p i onto T p and p i =p ip i 2 . Observe that, under the transversality assumption, Ψ p is 1-1.

It is known that the d-dimensional Voronoi diagram Vor(P ) intersects T p along the weighted k-dimensional Voronoi diagram Vor(Ψ p (P )) (see Exercise 4.11). Accordingly Del p (P ), the restriction of the d-dimensional Delaunay complex Del(P ) to T p , is isomorphic to the weighted Delaunay complex Del(Ψ p (P )). Note that the transversality condition implies the fact that the set (Ψ p (P )) is in general position wrt to spheres in T p . Therefore, the simplicial complex Del(Ψ p (P )) is naturally embedded in T p . Moreover, the simplices of Del(Ψ p (P )) are obtained by projecting onto T p the simplices of Del p (P ). Conversely, the simplices of Del p (P ) can be deduced from the simplices of Del(Ψ p (P )) by a piecewise linear map that we call the lifting map. Specifically, the lifting map lifts each weighted point (p , p ) associated to a vertex of Del(Ψ p (P )) to the unique point p ∈ P such that (p , p ) = Ψ p (p). The lift of a simplex σ p of Del p (P ) is then the geometric simplex σ whose vertices are the lifts of the vertices of σ p . Del p (P ) is then the image of Del(Ψ p (P )) by the lifting map. We summarize our discussion in the following lemma : Lemma 8.7 If the points of P are in general position and satisfy the transversality condition, Del p (P ) is the lift of Del(Ψ p (P )), the k-dimensional weighted Delaunay triangulation of Ψ p (P ) in T p .

We deduce from the lemma an efficient algorithm to compute star(p) = star(p, Del p (P )) : project P onto T p , compute star Tp (p) = star(p, Del(Ψ p (P ))), the star of p in Del(Ψ p (P )), and then lift star Tp (p) to star(p). Apart from the projection of the points onto T p , this algorithm involves only operations in the k-dimensional flat T p . If P is an (ε, η)-net of M, we can even restrict our attention to the subset of P inside the ball of radius 2ε centered at p. The transversality condition with respect to the tangent plane T p is therefore only required for points in that ball.

Inconsistent simplices

In general, the tangential complex is not a combinatorial manifold (see Definition 2.17). This is due to the presence of so-called inconsistent simplices. of the smallest circumscribing ball or Θ(σ I ) for its thickness. We write Inc(p) for the set of inconsistency triggers incident to p and Inc(P ) = ∪ p∈P Inc(p). We also define the completed tangential complex Del +I T M (P ) = Del T M (P ) ∪ Inc(P ). See Figure 8.5.

TANGENTIAL DELAUNAY COMPLEX CHAPTER 8. RECONSTRUCTION OF SUBMANIFOLDS

Calculating Del +I

T M (P ) is easy once we know Del(P ). Indeed, it suffices to detect the inconsistent k-simplices that do not appear in the stars of all their vertices. Let σ be an inconsistent simplex witnessed by the pair (p i , p j ). To compute the associated inconsistency trigger, we need to identify the point p l . This can be done by computing the restriction of Vor(P ) to the line

. This in turn can be done by projecting the points of P onto L ij and computing a 1-dimensional weighted Voronoi diagram (see Exercise 4.11).

Geometric properties of inconsistency triggers

We give some simple geometric lemmas that, in particular, bound the thickness of the inconsistency triggers. We will use angles between affine spaces spaces at those points. From that knowledge, we want to construct a triangulation of M. We assume that P is an (ε, η)-net of M (See Definition 7.7). The parameters ε and η need not to be known but must satisfy some conditions to be made explicit in the analysis of the algorithm. In particular, we need ε to be sufficiently small.

The main idea of the proposed reconstruction algorithm is to rely on the tangential complex Del T M (P ). However, we know from the previous section that Del T M (P ) may not be a combinatorial manifold, and our first goal is to obtain a complex that is a k-combinatorial manifold. This will be achieved by assigning weights to the points of P and resorting to the weighted tangential complex Del T M ( P ) which is the natural counterpart of the tangential complex when the point set P is replaced by a set P of weighted points. Properties of tangential complexes extend to weighted tangential complexes and, in particular, we will show that the occurrence of inconsistencies in Del T M ( P ) is triggered by the existence of non-thick simplices of dimension at most k + 1 in Del( P ). Then, since it is possible to assign weights to the points of P to get a thick weighted Delaunay complex (Section 5.3), it is a fortiori possible to get a weighted tangential complex Del T M ( P ) with no inconsistency. Finally, an algorithm is derived from Moser Tardos algorithm (Section 5.2). The algorithm uses data structures of dimension at most k. Its output is a k-dimensional combinatorial manifold that we will show to be homeomorphic to M and close to M.

Weight assignment

We recall the definition of a weighting scheme introduced in Section 5.3. Given a point set P = {p 1 , . . . , p n } ⊆ R d , a weighting scheme on P is a function w that assigns to each point p i ∈ P a non-negative real weight w(p i ). We write pi = (p i , w(p i )) and P = {p 1 , . . . , pn }.

We recall the definition of the relative amplitude of w as w = max p∈P

From this point onwards, we assume that all weights are non negative and that w ≤ w0 , for some constant w0 < 1/4. Hence, for any point p ∈ P ,

The condition on w implies in particular that the weighted points in P have pairwise positive weighted distances which ensures that any point in P appears as a vertex of the weighted Delaunay complex Del( P ) (see Section 4.4.3).

We can extend the definition of the tangential complex to the case of a set P of weighted points. We simply need to replace in Definition 8.6 the Delaunay complex Del(P ) by the weighted Delaunay complex Del( P ). The role played above by Delaunay balls will be played by Delaunay weighted points, i.e. weighted points orthogonal to weighted Delaunay simplices and free of weighted points in P . Lemma 8.7 remains valid provided that the mapping Ψ p is extended to weighted points as follows.

, where p i is the orthogonal projection of p i on the tangent space T p .

We now extend to the weighted case the properties of the inconsistency triggers shown in Section 8.2.

Let P be an ε-dense sample of a submanifold M and assume that the weighting scheme on P has a relative amplitude w ≤ w0 < 1/4. We denote by Del p ( P ) the weighted Delaunay complex restricted to T p and by star(p) the star of p in Del p ( P ). We further write Vor(p) for the cell of p in the weighted Voronoi diagram Vor( P ). For any k-simplex σ in Del p ( P ), we denote respectively by R(σ) and R(σ) the circumradius and weighted radius of σ, by R p (σ) the radius of the ball centered on T p that circumscribes σ and by R p (σ) the radius of the ball centered on T p that is orthogonal to σ. Lemma 8.14 Let

and assume α0 ≤ 1 4 . Then we have:

(iii) for any σ ∈ Del T M ( P ), ∆(σ) ≤ 2α 1 rch(M).

Reconstruction algorithm

We conclude from the previous section that if P is an (ε, η)-net of M, the occurrence of inconsistencies in the tangential complex Del T M (P ) is due to the occurrence of non-thick simplices of dimension up to k+1 in the Delaunay complex Del(P ). This property still holds in the weighted case provided that the weighting scheme has a small relative amplitude. We can thus proceed in a way similar to what has been done in Section 5.3 to remove nonthick simplices from Delaunay complexes using a variant of Moser-Tardos algorithm. Here we want to find a weighting scheme on P such that the simplices of the tangential complex as well as the inconsistency triggers (all are simplices of Del( P )) are thick. As a consequence, the tangential complex Del T M ( P ) won't contain any inconsistency.

The algorithm depends on two parameters w0 and Θ 0 . Here as in Section 5.3, we call resampling the operation which consists in reassigning the weights of the vertices of a simplex. The weights are taken independently. The weight of a vertex p is taken uniformly at random in [0, w0 L 2 (p)]. The algorithm maintains the weighted tangential complex Del T M ( P ) and resamples the Θ 0 -flakes that may appear in Del T M ( P ) or in the (k + 1) simplices that trigger an inconsistency. Note that the algorithm does not compute the full weighted Delaunay complex Del( P ) but only a subcomplex of dimension k + 1.

Algorithm 8 Tangential complex with no inconsistency

Input: P , {T p , p ∈ P }, w0 , Θ 0 Initialize all weights to 0 and compute Del T M ( P ) while there are Θ 0 -flakes or inconsistencies in Del T M ( P ) do while there is a Θ 0 -flake σ in Del T M ( P ) do resample σ update Del T M ( P ) if there is an inconsistent simplex σ in Del T M ( P ) then compute a trigger simplex σ I associated to σ resample the flake σ ⊂ σ I update Del T M ( P ) Output: A weighting scheme on P and the corresponding weighted tangential Delaunay complex Del T M ( P ) which is granted to be Θ 0 -thick and to have no inconsistency.

CHAPTER 8. RECONSTRUCTION OF SUBMANIFOLDS

the star of p in Del(Ψ p ( P )). Since star p (p) is a k-dimensional triangulated topological ball under the general position and transversality assumptions, the same is true for star(p). To prove the lemma, it is then sufficient to show that p cannot belong to the boundary of star p (p). Consider the dual cell V of p = Ψ p (p) in the weighted Voronoi diagram Vor(Ψ p ( P )). V is the intersection of the Voronoi cell of p with T p , i.e. V = Vor(p) ∩ T p . By Lemma 8.10, V is bounded, which implies that p cannot belong to the boundary of star p (p). It follows that p cannot belong to the boundary of star(p).

Statements 3 -5 in Theorem 8.18 then follow from Theorem 7.16. We need to check that the five hypotheses of Theorem 7.16 are satisfied.

Hypotheses (a) -(c) of the theorem are satisfied provided that ε is small enough (see Exercises 8.2 and 8.3). Hypothesis (d) is satisfied thanks to Lemma 8.7. We now prove that Hypothesis (e) holds also. Lemma 8.20 Hypothesis (e) of Theorem 7.16 is satisfied.

Proof Let q be a vertex of M that q belongs to U p = B(p, r) ∩ M where r = ε rch(M ) (1+2ε). We write q = Π p (q) for the projection of q onto T p and star (p) = Π p (star(p)) for the projection of star(p) onto T p . To prove that Hypothesis (e) is satisfied, it is sufficient to prove that q is a vertex of the kdimensional weighted Delaunay triangulation Del(Ψ p (P )) (see Lemma 8.7), which is equivalent to proving the following claim.

Claim The Voronoi cell of q intersects T p .

Proof of the claim. To prove the claim, we will make use of Lemma 7.6 that states that V (q) has a large extent in N q and therefore intersects T p . Denote by q the (unique) intersection point of N q and T p , and by q the projection of q onto T p . Since q ∈ U p , we have pq < ε(1 + 2ε) rch(M) = ε rch(M), and it follows from Lemma 7.8 that qq < ε 2 rch(M)

2

. Write now θ = ∠(T p , T q ) and recall that θ < 2ε (Lemma 7.10). It follows that qq < qq cos θ < rch(M) by our assumption on ε. It then follows from Lemma 7.6 that q ∈ V (q)∩T p , which proves the claim.

Part IV

Distance-based inference 209 Chapter 9

Stability of distance functions CHAPTER 9. STABILITY OF DISTANCE FUNCTIONS α = π 2 and Γ cannot be enclosed in any hemisphere of S. So there is at least one point x ∈ Γ such that the angle between (yx) and (xx) is not smaller than π 2 .

The next lemma allows to study the behavior of the µ-critical points when K is replaced by a close approximation K .

Lemma 9.11 Let K and K be two compact subsets of R d and d H (K, K ) ≤ ε. For any µ-critical point x of K and any ρ > 0, there is a µ -critical point of K at distance at most ρ from x, with:

Proof Let us consider the trajectory s → C(s) of the vector field ∇d K parameterized by arc length and starting at x. If C reaches a critical point of K before s = ρ, the lemma holds. Assume this is not the case. Letting y = C(ρ), we have:

Therefore, there must exist a point p on the curve C between s = 0 and s = ρ such that:

3)

The curve C being parametrized by arc length, note that ||p -x|| ≤ ρ. Now Lemma 9.10 applied to x, y, and K reads:

THE CRITICAL FUNCTION OF A COMPACT SET

of the critical points of any close enough approximation K of K . More precisely we have the following result (Exercise 9.12).

Theorem 9.16 (Critical values separation theorem) Let K and K be two compact subsets of R d , ε the Hausdorff distance between K and K , and µ a non-negative number. The distance function d K has no critical values in the interval (4ε/µ 2 , r µ (K ) -3ε). Besides, for any µ < µ, χ K is larger than µ on the interval

Note that taking µ too small does not give any information on the critical values, since the lower bound then exceeds the upper bound. It is also possible to build examples showing that the bounds of the interval in the above theorem are tight.

The notion of µ-reach allows to introduce the following sampling condition. Definition 9.17 Given two positive real numbers κ and µ, one says that a compact set

The notion of (κ, µ)-approximation generalizes the notion of (ε, η)-net introduced for smooth submanifolds in Chapter 7.

Offset reconstruction

Equipped with the notion of (κ, µ)-approximation and the stability properties of critical points of distance functions proved in the previous section, we are now able to get easily offsets reconstruction results from approximations. Theorem 9.18 (Isotopic reconstruction theorem) Let K ⊂ R d be a compact set such that r µ = r µ (K ) > 0 for some µ > 0. Let K be a (κ, µ)approximation of K where

CHAPTER 9. STABILITY OF DISTANCE FUNCTIONS

Assume that r, r are such that 0 < r < wfs(K ) and 4κr µ µ 2 ≤ r < r µ (K ) -3κr µ .

Then the offset K r and level set d -1 K (r) are isotopic to K r and d -1 K (r ) respectively.

The proof of the isotopy between the offsets is beyond the scope of this book. We prove here the following weaker version.

then the complement of K α is homotopy equivalent to the complement of K and K α is homotopy equivalent to K η as soon as

Proof The critical values separation Theorem 9.16 applied to K and K ensures that d K does not have any critical value in the interval (4ε/µ 2 , r µ (K )-3ε) where ε = d H (K, K ). It follows from the isotopy Lemma 9.5 that all the offsets of K corresponding to the values contained in this interval are isotopic. It is thus sufficient to prove the theorem for α = 4ε/µ 2 . Since the critical functions of K and K α are related by the relation

(see Exercise 9.9), we have wfs(K α ) ≥ r µ (K ) -3ε -4ε/µ 2 . We also have

According to Theorem 9.7, the theorem holds as soon as

An easy computation shows that this inequality holds when κ < µ 2 5µ 2 +12 .

Exercises

Exercise 9.1 Prove that d K is 1-Lipschitz.

Exercise 9.2 Prove Proposition 9.1.

Exercise 9.3 Prove that σ K (x) the smallest enclosing ball containing Γ K (x) exists and is unique.

Exercise 9.4 Show that the map from R d to the space of compact subsets of R d is semi-continuous, i.e.

∀x, ∀r > 0, ∃α > 0, y -

Exercise 9.6 Prove that for any x ∈ R d one has the following equivalence: (x is a critical point of d K ) ⇔ (x lies in the convex hull of Γ K (x)).

Exercise 9.7 Let P be a finite set of points in R 2 in general position. Prove that a point x ∈ R 2 is a critical point of d P if and only if it satisfies one of the following conditions: -x ∈ P , -x is the intersection point between a Voronoi edge and its dual Delaunay edge, -x is a Voronoi vertex contained in its dual Delaunay triangle. How does this result generalize for finite point clouds in higher dimensions?

Exercise 9.9 Show that for any compact set K ⊂ R d and any α ≥ 0,

Hint: first prove the same kind of relation between d K α and d K .

Let φ : R d → R be a distance-like function. The 1-semiconcavity of φ 2 allows to define a notion of gradient vector field ∇φ(x) for φ, defined everywhere and satisfying ∇φ(x) ≤ 1. Although not continuous, the vector field ∇φ is sufficiently regular to be integrated in a continuous locally Lipschitz flow Φ t : R d → R d , t ≥ 0. The flow Φ t integrates the gradient ∇φ in the sense that for every x ∈ R d , the curve γ : t → Φ t (x) is right-differentiable, and for every t > 0, dγ dt t -= ∇φ(γ(t)). Moreover, for any integral curve γ : [a, b] → R d parametrized by arc-length, one has:

Definition 10.2 Let φ be a distance-like function. We denote by φ r = φ -1 ([0, r]) the r sublevel set of φ.

0-critical point is simply called a critical point. It follows from the 1-semiconcavity of φ 2 that ∇φ(x) is the infimum of the α ≥ 0 such that x is α-critical.

2. The weak feature size of φ at r is the maximum r > 0 such that φ doesn't have any critical value between r and r + r . We denote it by wfs φ (r). For any 0 < α < 1, the α-reach of φ is the maximum r such that φ -1 ((0, r]) does not contain any α-critical point.

Notice that the α-reach is always a lower bound for the weak-feature size, with r = 0.

The Isotopy Lemma 9.5 extends to distance-like functions.

Theorem 10.3 (Extended isotopy lemma) Let φ be a distance-like function and r 1 < r 2 be two positive numbers such that φ has no critical points in the subset φ -1 ([r 1 , r 2 ]). Then all the sublevel sets φ -1 ([0, r]) are isotopic for r ∈ [r 1 , r 2 ].

EXTENDING THE SAMPLING THEORY FOR COMPACT SETS237

The proof of the following theorem, showing that the offsets of two uniformly close distance-like functions with large weak feature size have the same homotopy type, relies on Theorem 10.3 and is almost verbatim the same as the one of Theorem 9.7.

Proposition 10.4 Let φ and ψ be two distance-like functions, such that φψ ∞ ≤ ε. Suppose moreover that wfs φ (r) > 2ε and wfs ψ (r) > 2ε.

Then, for every 0 < η ≤ 2ε, φ r+η and ψ r+η have the same homotopy type.

The Critical Point Stability Theorem 9.9 also holds for distance-like functions.

Theorem 10.5 Let φ and ψ be two distance-like functions with φψ ∞ ≤ ε. For any α-critical point x of φ, there exists a α -critical point x of ψ with xx ≤ 2 εφ(x) and α ≤ α + 2 ε/φ(x).

Proof The proof is almost verbatim the same as the proof of Theorem 9.9

Corollary 10.6 Let φ and ψ be two ε-close distance-like functions, and suppose that reach α (φ) ≥ R for some α > 0. Then, ψ has no critical value in the interval 4ε/α 2 , R -3ε .

Proof The proof is almost verbatim the same as the proof of Theorem 9.16.

Theorem 10.7 (Extended reconstruction theorem) Let φ, ψ be two εclose distance-like functions, with reach α (φ) ≥ R for some positive α. Then, for any r ∈ [4ε/α 2 , R -3ε], and for 0 < η < R, the sublevel sets ψ r and φ η are homotopy equivalent, as soon as

Proof By the extended isotopy Lemma 10.3, all the sublevel sets ψ r have the same homotopy type, for r in the given range. Let us choose r = 4ε/α 2 . We have: wfs φ (r) ≥ R -4ε/α 2 and wfs ψ (r) ≥ R -3ε -4ε/α 2 CHAPTER 10. DISTANCE TO PROBABILITY MEASURES By Proposition 10.4, the sublevel sets φ r and ψ r have the same homotopy type as soon as the uniform distance ε between φ and ψ is smaller than 1 2 wfs φ (r) and 1 2 wfs ψ (r). This is true, provided that 2ε ≤ Rε(3 + 4/α 2 ). The theorem follows.

Remark that in the Definition 10.2 the notion of α-reach could be made dependent on a parameter r, i.e. the (r, α)-reach of φ could be defined as the maximum r such that the set φ -1 ((r, r + r ]) does not contain any αcritical value. A reconstruction theorem similar to Theorem 10.7 would still hold under the weaker condition that the (r, α)-reach of φ is positive.

Measures and the Wasserstein distance W 2

To overcome the problem of outliers, a first idea is to consider geometric objects as mass distributions, i.e. measures, instead of purely geometric compact sets. Considering probability measures as the new class of studied objects leads to a much better adapted framework to cope with noise and outliers.

Replacing compact sets by measures

The definition of measure relies on the notion of σ-algebra. All the measures considered in this book will be defined on the so-called Borel σ-algebra whose definition is given below.

The set of Borel sets of R d is the smallest σ-algebra containing all the open sets of R d (and thus all the closed sets). Definition 10.9 A Borel measure or, for short in this book, a measure, µ on R d is a map from the set of Borel subsets B of R d to the set of nonnegative real numbers such that whenever (B i ) is a countable family of dis-

Applications to geometric inference

Reconstruction from point clouds in presence of outliers was the main motivation for introducing the distance function to a measure. In this section, we show how the extended reconstruction Theorem 10.7 can be applied to distance to measure functions. It is also possible to adapt most of the topological and geometric inference results of Chapter 9 in a similar way. Definition 11.20 (q-tameness) The persistence module V is said to be q-tame if rk(v b a ) < +∞ whenever a < b.

The sequence of homology groups of the filtration of K considered in the previous section together with the homomorphisms induced by the inclusion maps is a persistence module indexed over the set

) for any i < j. This property extends to q-tame modules.

CHAPTER 11. HOMOLOGY INFERENCE

Theorem 11.21 If a persistence module V is q-tame, then it has a welldefined persistence diagram dgm(V) ⊂ R 2 . When V is the persistence module defined by a filtration of a finite simplicial complex, this diagram coincides with the one defined in Section 11.5.3.

To avoid technical difficulties in the sequel of this section, we assume that all the considered persistence modules are indexed by R. This is not a restrictive assumption in our setting: if V is a persistence module indexed by a finite set α 1 < α 2 < • • • < α m it can be extended to a piecewise constant module indexed by R by defining V α = V α j for α ∈ [α j , α j+1 ) with the convention α 0 = -∞ and α m+1 = +∞. The linear maps are then defined in an obvious way by letting v b a = Id whenever α j ≤ a ≤ b < α j+1 .

Let U, V be persistence modules over R, and let ε be any real number. A homomorphism of degree ε is a collection Φ of linear maps

Composition is defined in the obvious way. For ε ≥ 0, the most important degree-ε endomorphism is the shift map

which is the collection of maps (v a+ε a ) from the persistence structure on V.

If Φ is a homomorphism U → V of any degree, then by definition Φ1 ε U = 1 ε V Φ for all ε ≥ 0. Definition 11.22 (Interleaving of persistence modules) Two persistence modules U, V are said to be ε-interleaved if there are maps

The notion of interleaving allows to state the fundamental stability theorem for persistence diagrams.

PERSISTENT HOMOLOGY

where Čech(.) denotes the Čech filtration.

The second part of the corollary follows from the nerve Lemma 2.8 and the paragraph before Proposition 11.10 showing that P α and Čech(P, α) are homotopy equivalent for any α and the homotopy equivalences can be chosen to commute with the inclusion maps at the homology level. As a consequence the persistence modules induced by the sublevel sets of d P and the Čech filtration are 0-interleaved. Using that P α is also homotopy equivalent to the alpha-complex A(P, α) the same result also holds when Čech(P ) is replaced by the alpha-complex filtration A(P ).

Application: topological signatures for shapes. The same kind of result can be also established for the Vietoris-Rips complex and, thanks to these stability properties, the obtained persistence diagrams can be considered as robust multiscale topological signatures associated to point clouds. They can thus be used to compare the topological structure of points clouds sampled from different shapes. Notice that if the finite point cloud P is transformed by an isometry of R d into another point cloud P , then the Čech , the Vietoris-Rips and alpha-shape filtrations of P and P are the same. However, d H (P , Q) can become much larger than d H (P, Q) while the bottleneck distance between persistence diagrams remains unchanged, making the second inequality of Corollary 11.29 less interesting. To overcome this issue one can consider the Gromov-Hausdorff distance defined in the following way. This theorem can be extended to point clouds in non Euclidean metric spaces, except for the alpha-shape filtration which is no longer defined. In particular, to define the Vietoris-Rips complex, one just needs to know the pairwise distances between the points. As the computation of the Gromov-Hausdorff distance is usually intractable in practice, we can thus use the persistence diagrams of the Vietoris-Rips filtrations to compare the topological structure of finite data sets coming with pairwise distance information. Thanks to Theorem 11.31, the bottleneck distance provides a discriminative comparison tool: if the bottleneck distance between the diagrams is large, the two corresponding sets are far away from each other with respect to d GH . The reverse is not true.

Exercises

Exercise 11.1 Let K be a finite simplicial complex. Prove that β 0 (K) is equal to the number of connected components of K. Hint: use the result of Exercise 2.1. Exercise 11.5 Let P ⊂ R d be a finite set of points. Prove that, for any r ≥ 0, the Betti numbers β k (P r ) of the r-offset P r are finite.

Hint: use the Nerve theorem.

Exercise 11.6 Let F be a filtration of a simplicial complex K. Prove that all the vertices of K are positive and that an edge σ i is positive if and only if the two ends (vertices) of σ i are in the same connected component of K i-1 .

Exercise 11.7 Let F be a filtration of a simplicial complex K. 1. Prove that any cycle in K contains at least one positive simplex. 2. Prove that the cycle associated to a positive simplex in lemma 11.14 is uniquely defined.

Exercise 11.8 Let X be a (finitely) triangulated subset of R d and let f : X → R be a c-Lipschitz function, c > 0. Let K f be the filtration induced by f on the triangulation of X. Denoting by δ > 0 the largest diameter of the simplices of the triangulation of X, prove that, d B (dgm(K f ), dgm(f )) ≤ cδ.

Bibliographical notes

A detailed introduction to algebraic topology and simplicial and singular homology can be found [START_REF] Munkres | Elements of algebraic topology[END_REF][START_REF] Hatcher | Algebraic Topology[END_REF].

The results of Section 11.4 are derived from [START_REF] Chazal | Towards persistence-based reconstruction in Euclidean spaces[END_REF] where complete proofs are given.

Persistent homology has been independently introduced by different authors [START_REF] Edelsbrunner | Topological persistence and simplification[END_REF][START_REF] Frosini | Size theory as a topological tool for computer vision[END_REF][START_REF] Robins | Towards computing homology from finite approximations[END_REF] and has know important developments during the last decade.