to discrete & computational geometry an introduction · 2019-11-05 · to discrete &...
TRANSCRIPT
![Page 1: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/1.jpg)
Midi – Rouen, September 2015
Xavier Goaoc
LIGM - Universite Paris-Est Marne-la-Vallee
An introductionto discrete & computational geometry
![Page 2: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/2.jpg)
“Builds general tools – analytic and computational – to satisfy the algorithmic needs of geometric computing.”[CG impact task force, ’96]
Computational geometry studies the algorithmic foundations of geometric computing.
Design of algorithms, analysis of their resource consumption.
?
![Page 3: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/3.jpg)
“Builds general tools – analytic and computational – to satisfy the algorithmic needs of geometric computing.”[CG impact task force, ’96]
Computational geometry studies the algorithmic foundations of geometric computing.
Algorithms are described and analyzed in a computational model.Define the operations allowed and their costs.
Design of algorithms, analysis of their resource consumption.
Usual model: Real RAM (exact arithmetic over R in constant time).
Complexity measured as a function of the input size.
?
![Page 4: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/4.jpg)
“Builds general tools – analytic and computational – to satisfy the algorithmic needs of geometric computing.”[CG impact task force, ’96]
Computational geometry studies the algorithmic foundations of geometric computing.
Algorithms are described and analyzed in a computational model.Define the operations allowed and their costs.
Design of algorithms, analysis of their resource consumption.
Usual model: Real RAM (exact arithmetic over R in constant time).
Complexity measured as a function of the input size.
Interested in the asymptotic behaviour.Compare algorithms independently of implementation or technology.
?
![Page 5: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/5.jpg)
70’s - beginnings
segments intersectionVoronoi diagramsnearest neighbours
![Page 6: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/6.jpg)
70’s - beginnings
segments intersectionVoronoi diagramsnearest neighbours
80’s - exact solutions, lower bounds
range searching
convex hullsarrangements
triangulations
![Page 7: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/7.jpg)
70’s - beginnings
segments intersectionVoronoi diagramsnearest neighbours
80’s - exact solutions, lower bounds
range searching
convex hullsarrangements
triangulations
90’s - approximation, probabilistic methods
ε-nets, cuttings...robustness, CGAL...applications : GIS, CAD...
![Page 8: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/8.jpg)
70’s - beginnings
segments intersectionVoronoi diagramsnearest neighbours
80’s - exact solutions, lower bounds
range searching
convex hullsarrangements
triangulations
90’s - approximation, probabilistic methods
ε-nets, cuttings...robustness, CGAL...applications : GIS, CAD...
00’s - other geometries, large amount of data
metric spaces, embeddings...computational topologyexternal memory algorithms
![Page 9: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/9.jpg)
Computational geometry makes heavy use ofdiscrete properties of geometric objects...
... which are the specialty of discrete geometry.
Packing & covering
Polytopes
Space partitions
Points configurations
Geometric (hyper)graphs
These two communities merged during the 80’s.
![Page 10: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/10.jpg)
Some classicsArrangements
Delaunay triangulations & Voronoi diagrams
New development: algebraic/polynomial methodsIncidence geometry, around the Szemeredi-Trotter theorem
Solution to the joint problem by algebraic arguments
New developments: topological methodsTopological combinatorics and inclusion-exclusion formulas
Persistent homology and topological inference
![Page 11: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/11.jpg)
Some classicsArrangements
Delaunay triangulations & Voronoi diagrams
New development: algebraic/polynomial methodsIncidence geometry, around the Szemeredi-Trotter theorem
Solution to the joint problem by algebraic arguments
New developments: topological methodsTopological combinatorics and inclusion-exclusion formulas
Persistent homology and topological inference
![Page 12: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/12.jpg)
(Geometric) arrangements
The arrangement of a family of subsets of R2
is the subdivision of R2 induced by the boundaries of these objects.
Embedded combinatorial structure.
The boundaries of any two objects intersect in a finite number of points.
![Page 13: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/13.jpg)
(Geometric) arrangements
The arrangement of a family of subsets of R2
is the subdivision of R2 induced by the boundaries of these objects.
Embedded combinatorial structure.
The boundaries of any two objects intersect in a finite number of points.
![Page 14: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/14.jpg)
(Geometric) arrangements
The arrangement of a family of subsets of R2
is the subdivision of R2 induced by the boundaries of these objects.
Embedded combinatorial structure.
The boundaries of any two objects intersect in a finite number of points.
Various interesting sub-structures and refinements.
An arrangement of 6 segments.
Their lower envelope.
The zone of a 7th segment.
Their trapezoidal decomposition.
![Page 15: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/15.jpg)
(Geometric) arrangements
The arrangement of a family of subsets of R2
is the subdivision of R2 induced by the boundaries of these objects.
Embedded combinatorial structure.
The boundaries of any two objects intersect in a finite number of points.
Various interesting sub-structures and refinements.
An arrangement of 6 segments.
Their lower envelope.
The zone of a 7th segment.
Their trapezoidal decomposition.
![Page 16: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/16.jpg)
(Geometric) arrangements
The arrangement of a family of subsets of R2
is the subdivision of R2 induced by the boundaries of these objects.
Embedded combinatorial structure.
The boundaries of any two objects intersect in a finite number of points.
Various interesting sub-structures and refinements.
An arrangement of 6 segments.
Their lower envelope.
The zone of a 7th segment.
Their trapezoidal decomposition.
![Page 17: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/17.jpg)
(Geometric) arrangements
The arrangement of a family of subsets of R2
is the subdivision of R2 induced by the boundaries of these objects.
Embedded combinatorial structure.
The boundaries of any two objects intersect in a finite number of points.
Various interesting sub-structures and refinements.
An arrangement of 6 segments.
Their lower envelope.
The zone of a 7th segment.
Their trapezoidal decomposition.
![Page 18: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/18.jpg)
(Geometric) arrangements
The arrangement of a family of subsets of R2
is the subdivision of R2 induced by the boundaries of these objects.
Embedded combinatorial structure.
The boundaries of any two objects intersect in a finite number of points.
Various interesting sub-structures and refinements.
Many problems can be modelled by questions on arrangements.
An arrangement of 6 segments.
Their lower envelope.
The zone of a 7th segment.
Their trapezoidal decomposition.
The piano mover’s problem.
![Page 19: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/19.jpg)
(Geometric) arrangements
The arrangement of a family of subsets of R2
is the subdivision of R2 induced by the boundaries of these objects.
Embedded combinatorial structure.
The boundaries of any two objects intersect in a finite number of points.
Various interesting sub-structures and refinements.
Many problems can be modelled by questions on arrangements.
An arrangement of 6 segments.
Their lower envelope.
The zone of a 7th segment.
Their trapezoidal decomposition.
The piano mover’s problem.
![Page 20: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/20.jpg)
(Geometric) arrangements
The arrangement of a family of subsets of R2
is the subdivision of R2 induced by the boundaries of these objects.
Embedded combinatorial structure.
The boundaries of any two objects intersect in a finite number of points.
Various interesting sub-structures and refinements.
Many problems can be modelled by questions on arrangements.
An arrangement of 6 segments.
Their lower envelope.
The zone of a 7th segment.
Their trapezoidal decomposition.
The piano mover’s problem.
Arrangement in the space of motions.
R2 for translations in the plane.
R3 × SO(3) for rigid motions in space.
Motions forbidden by each obstacle.
![Page 21: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/21.jpg)
(Geometric) arrangements
The arrangement of a family of subsets of R2
is the subdivision of R2 induced by the boundaries of these objects.
Embedded combinatorial structure.
The boundaries of any two objects intersect in a finite number of points.
Various interesting sub-structures and refinements.
Many problems can be modelled by questions on arrangements.
An arrangement of 6 segments.
Their lower envelope.
The zone of a 7th segment.
Their trapezoidal decomposition.
The piano mover’s problem.
Arrangement in the space of motions.
R2 for translations in the plane.
R3 × SO(3) for rigid motions in space.
Motions forbidden by each obstacle.
![Page 22: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/22.jpg)
(Geometric) arrangements
The arrangement of a family of subsets of R2
is the subdivision of R2 induced by the boundaries of these objects.
Embedded combinatorial structure.
The boundaries of any two objects intersect in a finite number of points.
Various interesting sub-structures and refinements.
Many problems can be modelled by questions on arrangements.
An arrangement of 6 segments.
Their lower envelope.
The zone of a 7th segment.
Their trapezoidal decomposition.
The piano mover’s problem.
Arrangement in the space of motions.
R2 for translations in the plane.
R3 × SO(3) for rigid motions in space.
Motions forbidden by each obstacle.
![Page 23: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/23.jpg)
Central question in discrete geometry:
Estimate the asymptotic complexity of various sub-structures of arrangements.
![Page 24: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/24.jpg)
Notion of complexity (of a sub-structure) of an arrangement.
Expressed as a function of the number n of objects.
In the worst-case position.
Central question in discrete geometry:
Estimate the asymptotic complexity of various sub-structures of arrangements.
The number of elements, of all dimensions.# vertices+ # edges + # faces.
Possibly for a restricted class of objects.Line, segments, circles, squares, rectangles...
In arbitrary position, congruents under translation...
![Page 25: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/25.jpg)
Notion of complexity (of a sub-structure) of an arrangement.
Expressed as a function of the number n of objects.
In the worst-case position.
Central question in discrete geometry:
Estimate the asymptotic complexity of various sub-structures of arrangements.
The number of elements, of all dimensions.# vertices+ # edges + # faces.
Possibly for a restricted class of objects.Line, segments, circles, squares, rectangles...
In arbitrary position, congruents under translation...
Question: What is the complexity of the lower envelopeof n segments in the plane?
![Page 26: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/26.jpg)
Number the segments (arbitrarily).
Read off the sequence of segments appearing on the lower envelope.
Lower envelope of n segments → word on 1, 2, . . . n.1
2
4
3
5
6
1 2 5 2 4 2
![Page 27: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/27.jpg)
Number the segments (arbitrarily).
Read off the sequence of segments appearing on the lower envelope.
Lower envelope of n segments → word on 1, 2, . . . n.
This word obeys (at least) two rules:
(1) Consecutive letters are distinct.
(2) For any letter a, b there is no sub-word a . . . b . . . a . . . b . . . a.
1
2
4
3
5
6
1 2 5 2 4 2
![Page 28: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/28.jpg)
Number the segments (arbitrarily).
Read off the sequence of segments appearing on the lower envelope.
Lower envelope of n segments → word on 1, 2, . . . n.
This word obeys (at least) two rules:
(1) Consecutive letters are distinct.
(2) For any letter a, b there is no sub-word a . . . b . . . a . . . b . . . a.
1
2
4
3
5
6
1 2 5 2 4 2
![Page 29: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/29.jpg)
Number the segments (arbitrarily).
Read off the sequence of segments appearing on the lower envelope.
Lower envelope of n segments → word on 1, 2, . . . n.
This word obeys (at least) two rules:
(1) Consecutive letters are distinct.
(2) For any letter a, b there is no sub-word a . . . b . . . a . . . b . . . a.
1
2
4
3
5
6
1 2 5 2 4 2
Define λ3(n) as the maximum length of a word on 1, 2, . . . , n obeying these two rules.
![Page 30: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/30.jpg)
Number the segments (arbitrarily).
Read off the sequence of segments appearing on the lower envelope.
Lower envelope of n segments → word on 1, 2, . . . n.
This word obeys (at least) two rules:
(1) Consecutive letters are distinct.
(2) For any letter a, b there is no sub-word a . . . b . . . a . . . b . . . a.
1
2
4
3
5
6
1 2 5 2 4 2
Define λ3(n) as the maximum length of a word on 1, 2, . . . , n obeying these two rules.
n 7→ α(n) is the inverse of the Ackermann function n 7→ An(n) defined by A2(n) = 2n and Ak(n) = Ak−1(Ak(n− 1)).
α(n) ≤ 4 for n ≤ 22...2
(tower of 65536 exponentials).
Related to path compressions on trees and inspired by union-find structures [Tarjan 1975].
Theorem. [Hart-Sharir, 1986] λ3(n) = Θ(nα(n)).
![Page 31: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/31.jpg)
Number the segments (arbitrarily).
Read off the sequence of segments appearing on the lower envelope.
Lower envelope of n segments → word on 1, 2, . . . n.
This word obeys (at least) two rules:
(1) Consecutive letters are distinct.
(2) For any letter a, b there is no sub-word a . . . b . . . a . . . b . . . a.
1
2
4
3
5
6
1 2 5 2 4 2
Define λ3(n) as the maximum length of a word on 1, 2, . . . , n obeying these two rules.
n 7→ α(n) is the inverse of the Ackermann function n 7→ An(n) defined by A2(n) = 2n and Ak(n) = Ak−1(Ak(n− 1)).
α(n) ≤ 4 for n ≤ 22...2
(tower of 65536 exponentials).
Related to path compressions on trees and inspired by union-find structures [Tarjan 1975].
Theorem. The lower envelope of n segments in the plane has complexity Θ(nα(n)).
Theorem. [Hart-Sharir, 1986] λ3(n) = Θ(nα(n)).
![Page 32: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/32.jpg)
Number the segments (arbitrarily).
Read off the sequence of segments appearing on the lower envelope.
Lower envelope of n segments → word on 1, 2, . . . n.
This word obeys (at least) two rules:
(1) Consecutive letters are distinct.
(2) For any letter a, b there is no sub-word a . . . b . . . a . . . b . . . a.
1
2
4
3
5
6
1 2 5 2 4 2
Define λ3(n) as the maximum length of a word on 1, 2, . . . , n obeying these two rules.
n 7→ α(n) is the inverse of the Ackermann function n 7→ An(n) defined by A2(n) = 2n and Ak(n) = Ak−1(Ak(n− 1)).
α(n) ≤ 4 for n ≤ 22...2
(tower of 65536 exponentials).
Related to path compressions on trees and inspired by union-find structures [Tarjan 1975].
Theorem. The lower envelope of n segments in the plane has complexity Θ(nα(n)).
Theorem. [Hart-Sharir, 1986] λ3(n) = Θ(nα(n)).
One of many applications of Davenport-Schinzel sequences.
![Page 33: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/33.jpg)
A triangulation of a finite point set P ⊆ Rd is adecomposition of the convex hull of P in a unionof simplices with vertices in P and disjoint interiors.
![Page 34: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/34.jpg)
A triangulation of a finite point set P ⊆ Rd is adecomposition of the convex hull of P in a unionof simplices with vertices in P and disjoint interiors.
![Page 35: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/35.jpg)
A triangulation of a finite point set P ⊆ Rd is adecomposition of the convex hull of P in a unionof simplices with vertices in P and disjoint interiors.
![Page 36: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/36.jpg)
A triangulation of a finite point set P ⊆ Rd is adecomposition of the convex hull of P in a unionof simplices with vertices in P and disjoint interiors.
Any set of n ≥ 5 points in R2 has several triangulations.
![Page 37: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/37.jpg)
A triangulation of a finite point set P ⊆ Rd is adecomposition of the convex hull of P in a unionof simplices with vertices in P and disjoint interiors.
Any set of n ≥ 5 points in R2 has several triangulations.
![Page 38: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/38.jpg)
A triangulation of a finite point set P ⊆ Rd is adecomposition of the convex hull of P in a unionof simplices with vertices in P and disjoint interiors.
Any set of n ≥ 5 points in R2 has several triangulations.
1n−1
(2n−4n−2
)∼ 4n
n√πn
triangulations for n+ 2 points in convex position in R2.
Any planar set of n points has Ω(2.43n) and O(30n) triangulations
and there exist examples with Ω(8.65n) triangulations.
The number of triangulations grows exponentially with the number n of points.
![Page 39: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/39.jpg)
A triangulation of a finite point set P ⊆ Rd is adecomposition of the convex hull of P in a unionof simplices with vertices in P and disjoint interiors.
Any set of n ≥ 5 points in R2 has several triangulations.
1n−1
(2n−4n−2
)∼ 4n
n√πn
triangulations for n+ 2 points in convex position in R2.
Any planar set of n points has Ω(2.43n) and O(30n) triangulations
and there exist examples with Ω(8.65n) triangulations.
The number of triangulations grows exponentially with the number n of points.
Exception: cospherical (d+ 2)-tuples of points need to be handled separately.
The simplices whose circumscribed ball contains no otherpoint in its interior form the Delaunay triangulation.
![Page 40: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/40.jpg)
A triangulation of a finite point set P ⊆ Rd is adecomposition of the convex hull of P in a unionof simplices with vertices in P and disjoint interiors.
Any set of n ≥ 5 points in R2 has several triangulations.
1n−1
(2n−4n−2
)∼ 4n
n√πn
triangulations for n+ 2 points in convex position in R2.
Any planar set of n points has Ω(2.43n) and O(30n) triangulations
and there exist examples with Ω(8.65n) triangulations.
The number of triangulations grows exponentially with the number n of points.
Exception: cospherical (d+ 2)-tuples of points need to be handled separately.
The simplices whose circumscribed ball contains no otherpoint in its interior form the Delaunay triangulation.
Nice properties, eg. maximizes the smallest angle.Triangulation → vector of its angles in increasing order.
Triangulation de Delaunay → lexicographically maximal vector.
![Page 41: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/41.jpg)
S = p1, p2 . . . pn a set of points in R2.
The Voronoi diagram of S is the partition of R2
into regions R1, . . . Rn where
Ri = x ∈ R2 | ∀j ∈ 1, 2, . . . , n \ i, ‖xpj‖ ≥ ‖xpi‖
![Page 42: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/42.jpg)
S = p1, p2 . . . pn a set of points in R2.
The Voronoi diagram of S is the partition of R2
into regions R1, . . . Rn where
Ri = x ∈ R2 | ∀j ∈ 1, 2, . . . , n \ i, ‖xpj‖ ≥ ‖xpi‖
Captures growth phenomena.
![Page 43: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/43.jpg)
S = p1, p2 . . . pn a set of points in R2.
The Voronoi diagram of S is the partition of R2
into regions R1, . . . Rn where
Ri = x ∈ R2 | ∀j ∈ 1, 2, . . . , n \ i, ‖xpj‖ ≥ ‖xpi‖
Captures growth phenomena.
![Page 44: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/44.jpg)
S = p1, p2 . . . pn a set of points in R2.
The Voronoi diagram of S is the partition of R2
into regions R1, . . . Rn where
Ri = x ∈ R2 | ∀j ∈ 1, 2, . . . , n \ i, ‖xpj‖ ≥ ‖xpi‖
also known as Dirichlet tesselations.
Used by Descartes to study “cosmic fragmentation”.
Used in meteorology under the name of Thiessen polygons.
Used in chemistry under the name of Wigner-Seitz cell.
Captures growth phenomena.
Used in biology under the name of area potentiallyavailable to a tree or plant polygon.
![Page 45: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/45.jpg)
S = p1, p2 . . . pn a set of points in R2.
The Voronoi diagram of S is the partition of R2
into regions R1, . . . Rn where
Ri = x ∈ R2 | ∀j ∈ 1, 2, . . . , n \ i, ‖xpj‖ ≥ ‖xpi‖
also known as Dirichlet tesselations.
Used by Descartes to study “cosmic fragmentation”.
Used in meteorology under the name of Thiessen polygons.
Used in chemistry under the name of Wigner-Seitz cell.
Captures growth phenomena.
Used in biology under the name of area potentiallyavailable to a tree or plant polygon.
Generalizes to arbitrary families of subsets of a metric space.
![Page 46: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/46.jpg)
Dualities between Delaunay triangulation and Voronoi diagram.
![Page 47: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/47.jpg)
Dualities between Delaunay triangulation and Voronoi diagram.
Combinatorial
Voronoi vertex= center of a ball circumscribed to a Delaunay simplex.
![Page 48: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/48.jpg)
Dualities between Delaunay triangulation and Voronoi diagram.
q
q′h(q′)
Combinatorial
Voronoi vertex= center of a ball circumscribed to a Delaunay simplex.
Quadratic form (here for d = 2)
Let Γ be the paraboloid in R3 with equation z = x2 + y2.
We “lift” q = (x, y) to q′ = (x, y, x2 + y2) ∈ Γ.
The dual of q′ is h(q′), the tangent plane to Γ in q′.
![Page 49: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/49.jpg)
Dualities between Delaunay triangulation and Voronoi diagram.
q
q′h(q′)
height of q′2 : x22 + y22.
h(q′1) : 2x1(x− x1) + 2y1(y − y1)− z + x21 + y21 = 0
Let q1, q2 ∈ R2 and let q′′2 be the lift of q2 on h(q′1).
⇒ ‖q1q2‖2 = ‖q′2q′′2 ‖.
height of q′′2 : (2x1(x2 − x1) + 2y1(y2 − y1) + xx1 + y21)
Combinatorial
Voronoi vertex= center of a ball circumscribed to a Delaunay simplex.
Quadratic form (here for d = 2)
The Voronoi diagram of p1, p2, . . . , pn
' upper enveloppe of h(p′1), h(p′2), . . . , h(p′n).
Delaunay triangulation of p1, p2, . . . , pn
' convex hull of p′1, p′2, . . . , p
′n.
Let Γ be the paraboloid in R3 with equation z = x2 + y2.
We “lift” q = (x, y) to q′ = (x, y, x2 + y2) ∈ Γ.
The dual of q′ is h(q′), the tangent plane to Γ in q′.
![Page 50: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/50.jpg)
Dualities between Delaunay triangulation and Voronoi diagram.
q
q′h(q′)
height of q′2 : x22 + y22.
h(q′1) : 2x1(x− x1) + 2y1(y − y1)− z + x21 + y21 = 0
Let q1, q2 ∈ R2 and let q′′2 be the lift of q2 on h(q′1).
⇒ ‖q1q2‖2 = ‖q′2q′′2 ‖.
height of q′′2 : (2x1(x2 − x1) + 2y1(y2 − y1) + xx1 + y21)
Combinatorial
Voronoi vertex= center of a ball circumscribed to a Delaunay simplex.
Quadratic form (here for d = 2)
Topological
Delaunay = Nerve(Voronoi). cf. “topological methods”
The Voronoi diagram of p1, p2, . . . , pn
' upper enveloppe of h(p′1), h(p′2), . . . , h(p′n).
Delaunay triangulation of p1, p2, . . . , pn
' convex hull of p′1, p′2, . . . , p
′n.
Let Γ be the paraboloid in R3 with equation z = x2 + y2.
We “lift” q = (x, y) to q′ = (x, y, x2 + y2) ∈ Γ.
The dual of q′ is h(q′), the tangent plane to Γ in q′.
![Page 51: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/51.jpg)
T ← p1p2p3 // We assume p1p2p3 contains all the points
For i = 4 . . . nFind the triangle pqr in T that contains pi.
T ← T \ pqr ∪ pipq, piqr, pirpMake T Delaunay by flips.
Incremental algorithm to construct Delaunay triangulations.Localization
pi
![Page 52: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/52.jpg)
Subdivision
T ← p1p2p3 // We assume p1p2p3 contains all the points
For i = 4 . . . nFind the triangle pqr in T that contains pi.
T ← T \ pqr ∪ pipq, piqr, pirpMake T Delaunay by flips.
Incremental algorithm to construct Delaunay triangulations.Localization
pi
![Page 53: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/53.jpg)
Subdivision
T ← p1p2p3 // We assume p1p2p3 contains all the points
For i = 4 . . . nFind the triangle pqr in T that contains pi.
T ← T \ pqr ∪ pipq, piqr, pirpMake T Delaunay by flips.
Incremental algorithm to construct Delaunay triangulations.Localization
pi
![Page 54: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/54.jpg)
Subdivision
T ← p1p2p3 // We assume p1p2p3 contains all the points
For i = 4 . . . nFind the triangle pqr in T that contains pi.
T ← T \ pqr ∪ pipq, piqr, pirpMake T Delaunay by flips.
Incremental algorithm to construct Delaunay triangulations.Localization
pi
![Page 55: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/55.jpg)
Subdivision
Correction
T ← p1p2p3 // We assume p1p2p3 contains all the points
For i = 4 . . . nFind the triangle pqr in T that contains pi.
T ← T \ pqr ∪ pipq, piqr, pirpMake T Delaunay by flips.
Incremental algorithm to construct Delaunay triangulations.Localization
pi
![Page 56: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/56.jpg)
Subdivision
Correction
T ← p1p2p3 // We assume p1p2p3 contains all the points
For i = 4 . . . nFind the triangle pqr in T that contains pi.
T ← T \ pqr ∪ pipq, piqr, pirpMake T Delaunay by flips.
Incremental algorithm to construct Delaunay triangulations.Localization
pi
![Page 57: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/57.jpg)
Subdivision
Correction
T ← p1p2p3 // We assume p1p2p3 contains all the points
For i = 4 . . . nFind the triangle pqr in T that contains pi.
T ← T \ pqr ∪ pipq, piqr, pirpMake T Delaunay by flips.
Incremental algorithm to construct Delaunay triangulations.Localization
pi
![Page 58: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/58.jpg)
Subdivision
Correction
T ← p1p2p3 // We assume p1p2p3 contains all the points
For i = 4 . . . nFind the triangle pqr in T that contains pi.
T ← T \ pqr ∪ pipq, piqr, pirpMake T Delaunay by flips.
Incremental algorithm to construct Delaunay triangulations.Localization
pi
![Page 59: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/59.jpg)
Subdivision
T ← p1p2p3 // We assume p1p2p3 contains all the points
For i = 4 . . . nFind the triangle pqr in T that contains pi.
T ← T \ pqr ∪ pipq, piqr, pirpMake T Delaunay by flips.
Correction
Incremental algorithm to construct Delaunay triangulations.Localization
pi
![Page 60: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/60.jpg)
Subdivision
T ← p1p2p3 // We assume p1p2p3 contains all the points
For i = 4 . . . nFind the triangle pqr in T that contains pi.
T ← T \ pqr ∪ pipq, piqr, pirpMake T Delaunay by flips.
Correction
Incremental algorithm to construct Delaunay triangulations.Localization
pi
![Page 61: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/61.jpg)
Subdivision
T ← p1p2p3 // We assume p1p2p3 contains all the points
For i = 4 . . . nFind the triangle pqr in T that contains pi.
T ← T \ pqr ∪ pipq, piqr, pirpMake T Delaunay by flips.
Correction
Incremental algorithm to construct Delaunay triangulations.Localization
pi
![Page 62: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/62.jpg)
Subdivision
T ← p1p2p3 // We assume p1p2p3 contains all the points
For i = 4 . . . nFind the triangle pqr in T that contains pi.
T ← T \ pqr ∪ pipq, piqr, pirpMake T Delaunay by flips.
Correction
Incremental algorithm to construct Delaunay triangulations.
At most di flips.
Analysis of the correction phase:
di = degree of pi in Del(p1, p2, . . . , pi).
Backward analysis for a random insertion order.
Localization
pi
![Page 63: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/63.jpg)
Start from a known triangle.
Choose one of its edges whose supporting line separatesthe target point from the interior of the current triangle.
Example of open question.
Cross this edge to find the new current triangle.
Repeat until the triangle containing the target point is found.
Efficient localization uses (random) walks.
Start from a known triangle.
Walk in the triangulation
Various walking strategies exist.
(triangles have pointers to adjacent triangles).
![Page 64: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/64.jpg)
Start from a known triangle.
Choose one of its edges whose supporting line separatesthe target point from the interior of the current triangle.
Example of open question.
Cross this edge to find the new current triangle.
Repeat until the triangle containing the target point is found.
Efficient localization uses (random) walks.
Start from a known triangle.
Walk in the triangulation
Various walking strategies exist.
(triangles have pointers to adjacent triangles).
![Page 65: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/65.jpg)
Start from a known triangle.
Choose one of its edges whose supporting line separatesthe target point from the interior of the current triangle.
Example of open question.
Cross this edge to find the new current triangle.
Repeat until the triangle containing the target point is found.
Efficient localization uses (random) walks.
Start from a known triangle.
Walk in the triangulation
Various walking strategies exist.
(triangles have pointers to adjacent triangles).
![Page 66: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/66.jpg)
Start from a known triangle.
Choose one of its edges whose supporting line separatesthe target point from the interior of the current triangle.
Example of open question.
Cross this edge to find the new current triangle.
Repeat until the triangle containing the target point is found.
Efficient localization uses (random) walks.
Start from a known triangle.
Walk in the triangulation
Various walking strategies exist.
(triangles have pointers to adjacent triangles).
![Page 67: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/67.jpg)
Start from a known triangle.
Choose one of its edges whose supporting line separatesthe target point from the interior of the current triangle.
Example of open question.
Cross this edge to find the new current triangle.
Repeat until the triangle containing the target point is found.
Efficient localization uses (random) walks.
Start from a known triangle.
Walk in the triangulation
Various walking strategies exist.
(triangles have pointers to adjacent triangles).
![Page 68: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/68.jpg)
Start from a known triangle.
Choose one of its edges whose supporting line separatesthe target point from the interior of the current triangle.
Example of open question.
Cross this edge to find the new current triangle.
Repeat until the triangle containing the target point is found.
Efficient localization uses (random) walks.
Start from a known triangle.
Walk in the triangulation
Various walking strategies exist.
(triangles have pointers to adjacent triangles).
![Page 69: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/69.jpg)
Start from a known triangle.
Choose one of its edges whose supporting line separatesthe target point from the interior of the current triangle.
Example of open question.
Cross this edge to find the new current triangle.
Repeat until the triangle containing the target point is found.
Conjecture: Let P be a set of n random points chosenuniformly in [0, 1]2. The expectation of the maximumnumber of steps in a visibility walk is O(
√n).
Efficient localization uses (random) walks.
Start from a known triangle.
Walk in the triangulation
Various walking strategies exist.
(triangles have pointers to adjacent triangles).
![Page 70: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/70.jpg)
Start from a known triangle.
Choose one of its edges whose supporting line separatesthe target point from the interior of the current triangle.
Example of open question.
Cross this edge to find the new current triangle.
Repeat until the triangle containing the target point is found.
Conjecture: Let P be a set of n random points chosenuniformly in [0, 1]2. The expectation of the maximumnumber of steps in a visibility walk is O(
√n).
Efficient localization uses (random) walks.
Start from a known triangle.
Walk in the triangulation
Various walking strategies exist.
(triangles have pointers to adjacent triangles).
Other open problem: probabilistic complexity, in particular smoothed complexity.
[Spielman-Tang’04]
![Page 71: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/71.jpg)
Some classicsArrangements
Delaunay triangulations & Voronoi diagrams
New development: algebraic/polynomial methodsIncidence geometry, around the Szemeredi-Trotter theorem
Solution to the joint problem by algebraic arguments
New developments: topological methodsTopological combinatorics and inclusion-exclusion formulas
Persistent homology and topological inference
![Page 72: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/72.jpg)
An incidence between a set C of curves and a set P of points isa pair (c, p) ∈ C × P such that c ∈ p.
Problem: estimate the maximum number of incidencesgiven |C|, |P | and the nature of the curves in C.
![Page 73: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/73.jpg)
An incidence between a set C of curves and a set P of points isa pair (c, p) ∈ C × P such that c ∈ p.
Problem: estimate the maximum number of incidencesgiven |C|, |P | and the nature of the curves in C.
Theorem. [Szemeredi-Trotter, 1983] The number of incidencesbetween n points and ` lines in the plane is O(n+ `+n2/3`2/3).
![Page 74: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/74.jpg)
An incidence between a set C of curves and a set P of points isa pair (c, p) ∈ C × P such that c ∈ p.
Problem: estimate the maximum number of incidencesgiven |C|, |P | and the nature of the curves in C.
A+A = x+ y | x, y ∈ A and A ∗A = x ∗ y | x, y ∈ A
Application:
Sum-product conjecture [Erdos-Szemeredi, 1983]: For any ε > 0 there exists C ∈ Rsuch that for any A ⊂ N finite and large enough, max|A+A|, |A ∗A| ≥ C|A|2−ε.
Theorem. [Szemeredi-Trotter, 1983] The number of incidencesbetween n points and ` lines in the plane is O(n+ `+n2/3`2/3).
![Page 75: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/75.jpg)
An incidence between a set C of curves and a set P of points isa pair (c, p) ∈ C × P such that c ∈ p.
Problem: estimate the maximum number of incidencesgiven |C|, |P | and the nature of the curves in C.
A+A = x+ y | x, y ∈ A and A ∗A = x ∗ y | x, y ∈ A
Application:
[Elekes, 1997]
Associate to A the points P = (A+A)× (A ·A) and lines L = y = a(x− b) : a, b ∈ A.
Szemeredi-Trotter ⇒ |A||L| = O(|P |2/3|L|2/3) ⇒ |P | = Ω(|A|3/2|L|1/2) = Ω(|A|5/2).
Sum-product conjecture [Erdos-Szemeredi, 1983]: For any ε > 0 there exists C ∈ Rsuch that for any A ⊂ N finite and large enough, max|A+A|, |A ∗A| ≥ C|A|2−ε.
|P | = |A+A||A ∗A| implies max|A + A|, |A ·A| = Ω(|A|5/4).
Theorem. [Szemeredi-Trotter, 1983] The number of incidencesbetween n points and ` lines in the plane is O(n+ `+n2/3`2/3).
any line y = a(x− b) contains every point (c+ b, a · c) for c ∈ A.
The number of incidence is at least |A||L|.
![Page 76: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/76.jpg)
Preparation for the proof of the Szemeredi-Trotter theorem.
[Leighton, 1983] [Ajtai-Chvatal-Newborn-Szemeredi, 1982]
Conjectured by [Erdos-Guy, 1972]
Crossing lemma. Let G be a graph with v vertices and e ≥ 4v edges. In any
drawing of G in the plane, at least e3
64v2 pairs of edges cross.
1
2
3 4
edges = Jordan arcs
crossing = intersection other than a common endpoint.
![Page 77: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/77.jpg)
Preparation for the proof of the Szemeredi-Trotter theorem.
[Leighton, 1983] [Ajtai-Chvatal-Newborn-Szemeredi, 1982]
Conjectured by [Erdos-Guy, 1972]
Setting p = 4ve
yields Cr(χ) ≥ e3
16v2− 3 e3
64v2= e3
64v2.
Crossing lemma. Let G be a graph with v vertices and e ≥ 4v edges. In any
drawing of G in the plane, at least e3
64v2 pairs of edges cross.
1
2
3 4
edges = Jordan arcs
crossing = intersection other than a common endpoint.
Proof: χ a drawing of G and Cr(χ) = its number of crossings.
Fix p ∈ [0, 1] and delete every vertex of G with probability 1− p (independently).
We obtain a random graph Gp and a drawing χp of Gp induced by χ.
(*) ⇒ p4Cr(χ) = E[Cr(χp)] ≥ p2e− 3pv so Cr(χ) ≥ ep2− 3 v
p3
(*) Cr(χ) ≥ e− 3v.
Any planar graph has at most 3v − 3 edges (Euler relation + double counting).
[Proofs from the book]
![Page 78: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/78.jpg)
Proof:
Consider the graph with vertices the n points andedges the pairs of points incident to a common lineand consecutive on that line.
Start with a family of n points and ` lines.
Let k be the number of point/line incidences.
This graph has at most k edges.
Theorem. [Szemeredi-Trotter, 1983] The number of incidencesbetween n points and ` lines in the plane is O(n+ `+n2/3`2/3).
![Page 79: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/79.jpg)
Proof:
Consider the graph with vertices the n points andedges the pairs of points incident to a common lineand consecutive on that line.
Start with a family of n points and ` lines.
Let k be the number of point/line incidences.
This graph has at most k edges.
Theorem. [Szemeredi-Trotter, 1983] The number of incidencesbetween n points and ` lines in the plane is O(n+ `+n2/3`2/3).
![Page 80: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/80.jpg)
Proof:
Consider the graph with vertices the n points andedges the pairs of points incident to a common lineand consecutive on that line.
Start with a family of n points and ` lines.
Let k be the number of point/line incidences.
This graph has at most k edges.
In the straight-line drawing of this graph there are at most(`2
)crossings.
Theorem. [Szemeredi-Trotter, 1983] The number of incidencesbetween n points and ` lines in the plane is O(n+ `+n2/3`2/3).
![Page 81: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/81.jpg)
Proof:
Consider the graph with vertices the n points andedges the pairs of points incident to a common lineand consecutive on that line.
Start with a family of n points and ` lines.
Let k be the number of point/line incidences.
This graph has at most k edges.
In the straight-line drawing of this graph there are at most(`2
)crossings.
By the crossing lemma, any drawing of a graph with v vertices
and e ≥ 4v edges has at least e3
64v2 crossings.
k < 4n or k3
64n2 ≤(`2
)⇒ k = O(n+ `+ n2/3`2/3).
Theorem. [Szemeredi-Trotter, 1983] The number of incidencesbetween n points and ` lines in the plane is O(n+ `+n2/3`2/3).
![Page 82: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/82.jpg)
Motivation: understand cycles in depth orders.
A joint in a set of lines is a point incident to 3 non-coplanar lines.
Question: what is the maximum number ofjoints in a set of n lines in R3?
![Page 83: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/83.jpg)
Motivation: understand cycles in depth orders.
√n
√n
√n
nLower bound: Ω(n
√n).
3n lines
n√n joints
A joint in a set of lines is a point incident to 3 non-coplanar lines.
Question: what is the maximum number ofjoints in a set of n lines in R3?
![Page 84: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/84.jpg)
Motivation: understand cycles in depth orders.
√n
√n
√n
nLower bound: Ω(n
√n).
3n lines
n√n joints
Upper bounds: O(n7/4) → O(n23/14 log31/14 n) → O(n√n)
[Chazelle et al.’92] [Sharir’94] [Guth-Katz’08]
A joint in a set of lines is a point incident to 3 non-coplanar lines.
Question: what is the maximum number ofjoints in a set of n lines in R3?
Uses an idea from Dvir’s solution to the discrete Kakeya problem.
![Page 85: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/85.jpg)
A Kakeya set is a subset of Rd containing a unit-length segmentin every direction.
![Page 86: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/86.jpg)
A Kakeya set is a subset of Rd containing a unit-length segmentin every direction.
Theorem. [Besicovitch 1919] There exist planar Kakeya setsof arbitrarily small measure.
![Page 87: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/87.jpg)
A Kakeya set is a subset of Rd containing a unit-length segmentin every direction.
Theorem. [Besicovitch 1919] There exist planar Kakeya setsof arbitrarily small measure.
Kakeya conjecture. Any Kakeya set in Rd has dimension d.
Need clarifications: which classes of sets? Which dimension?...
Proven for d = 2 and open for any d ≥ 3.
![Page 88: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/88.jpg)
A Kakeya set is a subset of Rd containing a unit-length segmentin every direction.
Theorem. [Besicovitch 1919] There exist planar Kakeya setsof arbitrarily small measure.
Kakeya conjecture. Any Kakeya set in Rd has dimension d.
Need clarifications: which classes of sets? Which dimension?...
Proven for d = 2 and open for any d ≥ 3.
Discrete analogue of the Kakeya conjecture:
Fix a field F with q elements.
A discrete Kakeya set is a subset K ⊆ Fd satisfying: for anyx ∈ Fd there exists y ∈ Fd such that y + ax : a ∈ F ⊂ K.
How large must a discrete Kakeya set be?
![Page 89: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/89.jpg)
A Kakeya set is a subset of Rd containing a unit-length segmentin every direction.
Theorem. [Besicovitch 1919] There exist planar Kakeya setsof arbitrarily small measure.
Kakeya conjecture. Any Kakeya set in Rd has dimension d.
Need clarifications: which classes of sets? Which dimension?...
Proven for d = 2 and open for any d ≥ 3.
Discrete analogue of the Kakeya conjecture:
Fix a field F with q elements.
A discrete Kakeya set is a subset K ⊆ Fd satisfying: for anyx ∈ Fd there exists y ∈ Fd such that y + ax : a ∈ F ⊂ K.
How large must a discrete Kakeya set be?
Lower bounds: Ω(qd+22 ) → Ω(q
47d) → Ω(qd−1)
[Wolff’99] [Bourgain-Katz-Tao’04] [Mockenhaupt-Tao’04][Dvir’09]
Dvir’s idea: a non-zero polynomial of deg. b has at most bqd−1 zeros. [Zippel’79][Shwartz’80]
![Page 90: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/90.jpg)
Theorem. [Guth-Katz, 2008] Any set of n lines in R3 hasO(n√n) joints.
Proof: Let L be a set of n lines in R3 with j joints.
We can assume that every line of L contains at least j2n joints.
Eliminate any line with less than j2n
joints and any joint on less than 3 remaining lines.
If αn lines were eliminated then at most α2j joints were eliminated.
(1− α2
)j = O((1− α)3/2n3/2)⇒ j = O(n3/2).
![Page 91: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/91.jpg)
Theorem. [Guth-Katz, 2008] Any set of n lines in R3 hasO(n√n) joints.
Proof: Let L be a set of n lines in R3 with j joints.
We can assume that every line of L contains at least j2n joints.
Eliminate any line with less than j2n
joints and any joint on less than 3 remaining lines.
If αn lines were eliminated then at most α2j joints were eliminated.
(1− α2
)j = O((1− α)3/2n3/2)⇒ j = O(n3/2).
Choose a polynomial P (x, y, z) 6= 0 vanishing in every jointsand with minimal total degree b.
Every joint defines a linear constraint in the(b+33
)coefficients of P so b = O(j1/3).
![Page 92: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/92.jpg)
Theorem. [Guth-Katz, 2008] Any set of n lines in R3 hasO(n√n) joints.
Proof: Let L be a set of n lines in R3 with j joints.
We can assume that every line of L contains at least j2n joints.
Eliminate any line with less than j2n
joints and any joint on less than 3 remaining lines.
If αn lines were eliminated then at most α2j joints were eliminated.
(1− α2
)j = O((1− α)3/2n3/2)⇒ j = O(n3/2).
Choose a polynomial P (x, y, z) 6= 0 vanishing in every jointsand with minimal total degree b.
Every joint defines a linear constraint in the(b+33
)coefficients of P so b = O(j1/3).
Minimality imposes b ≥ j2n .
Else every line of L is contained in P (x, y, z) = 0 (Bezout).
then−−→gradP = ~0 in every joint; since one of ∂P
∂x, ∂P∂y
, ∂P∂z
is not identically zero, b is not minimal.
![Page 93: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/93.jpg)
Theorem. [Guth-Katz, 2008] Any set of n lines in R3 hasO(n√n) joints.
Proof: Let L be a set of n lines in R3 with j joints.
We can assume that every line of L contains at least j2n joints.
Eliminate any line with less than j2n
joints and any joint on less than 3 remaining lines.
If αn lines were eliminated then at most α2j joints were eliminated.
(1− α2
)j = O((1− α)3/2n3/2)⇒ j = O(n3/2).
Choose a polynomial P (x, y, z) 6= 0 vanishing in every jointsand with minimal total degree b.
Every joint defines a linear constraint in the(b+33
)coefficients of P so b = O(j1/3).
Minimality imposes b ≥ j2n .
Else every line of L is contained in P (x, y, z) = 0 (Bezout).
then−−→gradP = ~0 in every joint; since one of ∂P
∂x, ∂P∂y
, ∂P∂z
is not identically zero, b is not minimal.
Thus, j2n = O(j1/3) and we have j = O(n3/2).
![Page 94: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/94.jpg)
Stimulated a re-examination of old questions through a polynomial lens.
Erdos’ distinct distances problem.
Question: how few distinct distances are determinedby n points in the plane?
![Page 95: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/95.jpg)
Stimulated a re-examination of old questions through a polynomial lens.
Erdos’ distinct distances problem.
Question: how few distinct distances are determinedby n points in the plane?
O(n/√
logn) for regular grids, conjectured to be minimal.
Slow progress on lower bounds of the form Ω(nc).
c = 1/2→ 2/3→ 5/7→ 4/5→ 6/7→ 4e5e−1
− ε→ 48−14e55−16e
− ε
[Erdos’46][Moser’52][Chung’84][Chung-Szemeredi-Trotter’92][Szekely’93]
[Solymosi-Toth’01][Tardos’03][Katz-Tardos’04]
![Page 96: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/96.jpg)
Stimulated a re-examination of old questions through a polynomial lens.
Erdos’ distinct distances problem.
Question: how few distinct distances are determinedby n points in the plane?
O(n/√
logn) for regular grids, conjectured to be minimal.
Slow progress on lower bounds of the form Ω(nc).
c = 1/2→ 2/3→ 5/7→ 4/5→ 6/7→ 4e5e−1
− ε→ 48−14e55−16e
− ε
[Erdos’46][Moser’52][Chung’84][Chung-Szemeredi-Trotter’92][Szekely’93]
[Solymosi-Toth’01][Tardos’03][Katz-Tardos’04]
Ω(n/ logn) by incidence geometry + polynomial method.[Guth-Katz’15] using [Elekes-Sharir’10]
![Page 97: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/97.jpg)
Stimulated a re-examination of old questions through a polynomial lens.
Erdos’ distinct distances problem.
Question: how few distinct distances are determinedby n points in the plane?
O(n/√
logn) for regular grids, conjectured to be minimal.
Slow progress on lower bounds of the form Ω(nc).
c = 1/2→ 2/3→ 5/7→ 4/5→ 6/7→ 4e5e−1
− ε→ 48−14e55−16e
− ε
[Erdos’46][Moser’52][Chung’84][Chung-Szemeredi-Trotter’92][Szekely’93]
[Solymosi-Toth’01][Tardos’03][Katz-Tardos’04]
Ω(n/ logn) by incidence geometry + polynomial method.[Guth-Katz’15] using [Elekes-Sharir’10]
Partitioning theorems.
Partition a set of n points into r balanced subsets so that any lineintersects O(
√r) of the convex hulls of the subsets.
Cuttings, simplicial partition theorem... [Chazelle-Friedman’90]
Algorithmic applications (eg. range searching) by divide-and-conquer.
Complicated proofs, not effective.
[Chazelle’93][Matousek & Chazelle’88-’93]
![Page 98: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/98.jpg)
Stimulated a re-examination of old questions through a polynomial lens.
Erdos’ distinct distances problem.
Question: how few distinct distances are determinedby n points in the plane?
O(n/√
logn) for regular grids, conjectured to be minimal.
Slow progress on lower bounds of the form Ω(nc).
c = 1/2→ 2/3→ 5/7→ 4/5→ 6/7→ 4e5e−1
− ε→ 48−14e55−16e
− ε
[Erdos’46][Moser’52][Chung’84][Chung-Szemeredi-Trotter’92][Szekely’93]
[Solymosi-Toth’01][Tardos’03][Katz-Tardos’04]
Ω(n/ logn) by incidence geometry + polynomial method.[Guth-Katz’15] using [Elekes-Sharir’10]
Partitioning theorems.
Partition a set of n points into r balanced subsets so that any lineintersects O(
√r) of the convex hulls of the subsets.
Cuttings, simplicial partition theorem... [Chazelle-Friedman’90]
Algorithmic applications (eg. range searching) by divide-and-conquer.
Complicated proofs, not effective.
[Chazelle’93][Matousek & Chazelle’88-’93]
![Page 99: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/99.jpg)
Stimulated a re-examination of old questions through a polynomial lens.
Erdos’ distinct distances problem.
Question: how few distinct distances are determinedby n points in the plane?
O(n/√
logn) for regular grids, conjectured to be minimal.
Slow progress on lower bounds of the form Ω(nc).
c = 1/2→ 2/3→ 5/7→ 4/5→ 6/7→ 4e5e−1
− ε→ 48−14e55−16e
− ε
[Erdos’46][Moser’52][Chung’84][Chung-Szemeredi-Trotter’92][Szekely’93]
[Solymosi-Toth’01][Tardos’03][Katz-Tardos’04]
Ω(n/ logn) by incidence geometry + polynomial method.[Guth-Katz’15] using [Elekes-Sharir’10]
Partitioning theorems.
Partition a set of n points into r balanced subsets so that any lineintersects O(
√r) of the convex hulls of the subsets.
Cuttings, simplicial partition theorem... [Chazelle-Friedman’90]
Algorithmic applications (eg. range searching) by divide-and-conquer.
Complicated proofs, not effective.
Simplified and strengthened using the polynomial ham-sandwich theorem.
[Chazelle’93][Matousek & Chazelle’88-’93]
![Page 100: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/100.jpg)
Some classicsArrangements
Delaunay triangulations & Voronoi diagrams
New development: algebraic/polynomial methodsIncidence geometry, around the Szemeredi-Trotter theorem
Solution to the joint problem by algebraic arguments
New developments: topological methodsTopological combinatorics and inclusion-exclusion formulas
Persistent homology and topological inference
![Page 101: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/101.jpg)
Geometric graph theory studies graphs through their embedding properties.
Rich theory of planar graphs.
Generalizes to the theory of graphs embedding on a compact 2-manifold .
Structural properties (eg. planar separator theorem).
Heawood inequality: if Kn embeds into M then
# edges ≤ 3# vertices -3
Circle packing theorem [Koebe][Thurston][Andreev]
Characterization by excluded minors.
. . .
Euler characteristic, characterization by excluded minors...
(n− 3)(n− 4) ≤ 6b1(M) = 12− 6χ(M).
M is a compact 2-manifold and bi(M) is its ith Betti number.
![Page 102: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/102.jpg)
Generalization of graphs: (uniform) hypergraphs model r-wise interactions for r > 2.
Hypergraph with vertex set V = set of subsets of V .
Uniform if all subsets have the same size.
![Page 103: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/103.jpg)
Generalization of graphs: (uniform) hypergraphs model r-wise interactions for r > 2.
Generalization of embedded graphs: simplicial complexes.
Hypergraph with vertex set V = set of subsets of V .
Uniform if all subsets have the same size.
geometric simplicial complexabstract simplicial complex
“Collection of geometric simplices in Rd s.t. anytwo are disjoint or intersect in a common face.”
∅, 1, 2, 3, 4, 1, 2, 1, 3, 1, 4
“Collection of sets that is closed undertaking subsets.”
![Page 104: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/104.jpg)
Generalization of graphs: (uniform) hypergraphs model r-wise interactions for r > 2.
Generalization of embedded graphs: simplicial complexes.
Hypergraph with vertex set V = set of subsets of V .
Uniform if all subsets have the same size.
geometric simplicial complexabstract simplicial complex
set of vertices forming a geometric simplex
“Collection of geometric simplices in Rd s.t. anytwo are disjoint or intersect in a common face.”
∅, 1, 2, 3, 4, 1, 2, 1, 3, 1, 4
“Collection of sets that is closed undertaking subsets.”
map singletons to points in general position in Rd, d large enough
take convex hulls of points corresponding to abstract simplices
geometric realization:
![Page 105: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/105.jpg)
Conjecture [Grunbaum][Sarkaria][Kalai][Dey] For any d there exists Cd such thatfd(K) ≤ Cdfd−1(K) for any finite simplicial complex K embedding in Rd.
fi(K) is the number of faces of dimension i of K.
Known for d = 2, 3 and open for any d ≥ 4.
![Page 106: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/106.jpg)
We can study these combinatorial objects through their associated topological space.
If K is a simplicial complex and |K| is its realization then
χ(K) =∑i≥0
(−1)ifi(K) =∑i≥0
(−1)iβi(|K|)
Conjecture [Grunbaum][Sarkaria][Kalai][Dey] For any d there exists Cd such thatfd(K) ≤ Cdfd−1(K) for any finite simplicial complex K embedding in Rd.
fi(K) is the number of faces of dimension i of K.
Known for d = 2, 3 and open for any d ≥ 4.
![Page 107: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/107.jpg)
The nerve N (F) of a family F of sets is N (F) = G : G ⊆ F and ∩ G 6= ∅.
F
N (F) =
1
2
3
∅, 1, 2, 3
We can study these combinatorial objects through their associated topological space.
If K is a simplicial complex and |K| is its realization then
χ(K) =∑i≥0
(−1)ifi(K) =∑i≥0
(−1)iβi(|K|)
Conjecture [Grunbaum][Sarkaria][Kalai][Dey] For any d there exists Cd such thatfd(K) ≤ Cdfd−1(K) for any finite simplicial complex K embedding in Rd.
fi(K) is the number of faces of dimension i of K.
Known for d = 2, 3 and open for any d ≥ 4.
![Page 108: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/108.jpg)
The nerve N (F) of a family F of sets is N (F) = G : G ⊆ F and ∩ G 6= ∅.
F
N (F) =
1
2
3
∅, 1, 2, 3, 1, 2
We can study these combinatorial objects through their associated topological space.
If K is a simplicial complex and |K| is its realization then
χ(K) =∑i≥0
(−1)ifi(K) =∑i≥0
(−1)iβi(|K|)
Conjecture [Grunbaum][Sarkaria][Kalai][Dey] For any d there exists Cd such thatfd(K) ≤ Cdfd−1(K) for any finite simplicial complex K embedding in Rd.
fi(K) is the number of faces of dimension i of K.
Known for d = 2, 3 and open for any d ≥ 4.
![Page 109: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/109.jpg)
The nerve N (F) of a family F of sets is N (F) = G : G ⊆ F and ∩ G 6= ∅.
F
N (F) =
1
2
3
∅, 1, 2, 3, 1, 2, 1, 3, 2, 3
We can study these combinatorial objects through their associated topological space.
If K is a simplicial complex and |K| is its realization then
χ(K) =∑i≥0
(−1)ifi(K) =∑i≥0
(−1)iβi(|K|)
Conjecture [Grunbaum][Sarkaria][Kalai][Dey] For any d there exists Cd such thatfd(K) ≤ Cdfd−1(K) for any finite simplicial complex K embedding in Rd.
fi(K) is the number of faces of dimension i of K.
Known for d = 2, 3 and open for any d ≥ 4.
![Page 110: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/110.jpg)
The nerve N (F) of a family F of sets is N (F) = G : G ⊆ F and ∩ G 6= ∅.
F
N (F) =
1
2
3
∅, 1, 2, 3, 1, 2, 1, 3, 2, 3, 1, 2, 3
We can study these combinatorial objects through their associated topological space.
If K is a simplicial complex and |K| is its realization then
χ(K) =∑i≥0
(−1)ifi(K) =∑i≥0
(−1)iβi(|K|)
Conjecture [Grunbaum][Sarkaria][Kalai][Dey] For any d there exists Cd such thatfd(K) ≤ Cdfd−1(K) for any finite simplicial complex K embedding in Rd.
fi(K) is the number of faces of dimension i of K.
Known for d = 2, 3 and open for any d ≥ 4.
![Page 111: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/111.jpg)
The nerve N (F) of a family F of sets is N (F) = G : G ⊆ F and ∩ G 6= ∅.
F
N (F) =
1
2
3
∅, 1, 2, 3, 1, 2, 1, 3, 2, 3, 1, 2, 3
Nerves are simplicial complexes.
We can study these combinatorial objects through their associated topological space.
If K is a simplicial complex and |K| is its realization then
χ(K) =∑i≥0
(−1)ifi(K) =∑i≥0
(−1)iβi(|K|)
Conjecture [Grunbaum][Sarkaria][Kalai][Dey] For any d there exists Cd such thatfd(K) ≤ Cdfd−1(K) for any finite simplicial complex K embedding in Rd.
fi(K) is the number of faces of dimension i of K.
Known for d = 2, 3 and open for any d ≥ 4.
![Page 112: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/112.jpg)
The nerve N (F) of a family F of sets is N (F) = G : G ⊆ F and ∩ G 6= ∅.
F
N (F) =
1
2
3
∅, 1, 2, 3, 1, 2, 1, 3, 2, 3, 1, 2, 3
Nerves are simplicial complexes.
We can study these combinatorial objects through their associated topological space.
If K is a simplicial complex and |K| is its realization then
χ(K) =∑i≥0
(−1)ifi(K) =∑i≥0
(−1)iβi(|K|)
Conjecture [Grunbaum][Sarkaria][Kalai][Dey] For any d there exists Cd such thatfd(K) ≤ Cdfd−1(K) for any finite simplicial complex K embedding in Rd.
fi(K) is the number of faces of dimension i of K.
Known for d = 2, 3 and open for any d ≥ 4.
Nerve Theorem.[Borsuk’48][Leray] If F isa good cover in Rd then N (F) '
⋃F .
good cover = any subfamily has empty or contractible intersection.
' ' 6'
![Page 113: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/113.jpg)
For any family F = A1, A2, . . . , An of sets 1⋃ni=1 Ai
=∑∅6=S⊆[n](−1)|S|+11⋂
i∈S Ai .
Question: can we express 1∪ using fewer 1∩’s?
Effective volume computation, inclusion-exclusion algorithms
We can use simplicial complexes to simplify inclusion-exclusion formulas.
1X is the indicator function of X.
![Page 114: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/114.jpg)
For any family F = A1, A2, . . . , An of sets 1⋃ni=1 Ai
=∑∅6=S⊆[n](−1)|S|+11⋂
i∈S Ai .
Question: can we express 1∪ using fewer 1∩’s?
Effective volume computation, inclusion-exclusion algorithms
1A∪B∪C = λa1A + λb1B + λc1C + λab1A∩B + λac1A∩C + λbc1B∩C + λabc1A∩B∩C
A
B
C
We can use simplicial complexes to simplify inclusion-exclusion formulas.
1X is the indicator function of X.
Not in general...
Set systems with complete Venn diagram have only one inclusion-exclusion formula.
⇒ λa = 1 ⇒ λb = 1 ⇒ λa + λb + λab = 1⇒ λab = −1⇒ λa = 1 ⇒ λb = 1 ⇒ λa + λb + λab = 1⇒ λab = −1
![Page 115: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/115.jpg)
For any family F = A1, A2, . . . , An of sets 1⋃ni=1 Ai
=∑∅6=S⊆[n](−1)|S|+11⋂
i∈S Ai .
Question: can we express 1∪ using fewer 1∩’s?
Effective volume computation, inclusion-exclusion algorithms
1A∪B∪C = λa1A + λb1B + λc1C + λab1A∩B + λac1A∩C + λbc1B∩C + λabc1A∩B∩C
A
B
C
We can use simplicial complexes to simplify inclusion-exclusion formulas.
1X is the indicator function of X.
Not in general...
A
B
C
1A∪B∪C = 1A + 1B + 1C − 1A∩B − 1A∩C − 1B∩C + 1A∩B∩C
... but sometimes.
Set systems with complete Venn diagram have only one inclusion-exclusion formula.
⇒ λa = 1 ⇒ λb = 1 ⇒ λa + λb + λab = 1⇒ λab = −1⇒ λa = 1 ⇒ λb = 1 ⇒ λa + λb + λab = 1⇒ λab = −1
![Page 116: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/116.jpg)
For any family F = A1, A2, . . . , An of sets 1⋃ni=1 Ai
=∑∅6=S⊆[n](−1)|S|+11⋂
i∈S Ai .
Question: can we express 1∪ using fewer 1∩’s?
Effective volume computation, inclusion-exclusion algorithms
1A∪B∪C = λa1A + λb1B + λc1C + λab1A∩B + λac1A∩C + λbc1B∩C + λabc1A∩B∩C
A
B
C
We can use simplicial complexes to simplify inclusion-exclusion formulas.
1X is the indicator function of X.
Not in general...
A
B
C
since A ∩ C = A ∩B ∩ C.1A∪B∪C = 1A + 1B + 1C − 1A∩B − 1A∩C − 1B∩C + 1A∩B∩C
... but sometimes.
Set systems with complete Venn diagram have only one inclusion-exclusion formula.
Any set system has a inclusion-exclusion formula quasi-polynomial
in the number of sets and the size of the Venn diagram.
[Goaoc-Matousek-Patak-Safernova-Tancer’15]
⇒ λa = 1 ⇒ λb = 1 ⇒ λa + λb + λab = 1⇒ λab = −1⇒ λa = 1 ⇒ λb = 1 ⇒ λa + λb + λab = 1⇒ λab = −1
![Page 117: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/117.jpg)
Theorem [Naiman-Wynn’92’97] 1⋃ni=1 Bi
=∑σ∈K
(−1)dimσ1∩i∈σBi .
Let F = B1, B2, . . . , Bn be a family of unit balls in Rd.
K the simplicial complex encoding the Delaunay triangulation of p1, p2, . . . , pn.σ ∈ K ⇔ pi : i ∈ σ has no pj in the interior of its circumscribed ball.
For d = 2, 6n− 11 terms, each of size at most 3, and computable in O(n logn) time.
Idem for balls of different radii but uses the power diagram.
Write pi for the center of Bi.
“A correct inclusion-exclusion formula for a family of unitradius balls in Rd is given by the Delaunay triangulationof their centers.”
For d ≥ 3, O(ndd/2e) terms, each of size at most d, and computable in O(ndd/2e) time.
![Page 118: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/118.jpg)
Theorem [Naiman-Wynn’92’97] 1⋃ni=1 Bi
=∑σ∈K
(−1)dimσ1∩i∈σBi .
Let F = B1, B2, . . . , Bn be a family of unit balls in Rd.
K the simplicial complex encoding the Delaunay triangulation of p1, p2, . . . , pn.σ ∈ K ⇔ pi : i ∈ σ has no pj in the interior of its circumscribed ball.
For d = 2, 6n− 11 terms, each of size at most 3, and computable in O(n logn) time.
Idem for balls of different radii but uses the power diagram.
Write pi for the center of Bi.
“A correct inclusion-exclusion formula for a family of unitradius balls in Rd is given by the Delaunay triangulationof their centers.”
For d ≥ 3, O(ndd/2e) terms, each of size at most d, and computable in O(ndd/2e) time.
![Page 119: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/119.jpg)
Theorem [Naiman-Wynn’92’97] 1⋃ni=1 Bi
=∑σ∈K
(−1)dimσ1∩i∈σBi .
Let F = B1, B2, . . . , Bn be a family of unit balls in Rd.
K the simplicial complex encoding the Delaunay triangulation of p1, p2, . . . , pn.σ ∈ K ⇔ pi : i ∈ σ has no pj in the interior of its circumscribed ball.
For d = 2, 6n− 11 terms, each of size at most 3, and computable in O(n logn) time.
Idem for balls of different radii but uses the power diagram.
Write pi for the center of Bi.
“A correct inclusion-exclusion formula for a family of unitradius balls in Rd is given by the Delaunay triangulationof their centers.”
For d ≥ 3, O(ndd/2e) terms, each of size at most d, and computable in O(ndd/2e) time.
![Page 120: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/120.jpg)
Theorem [Naiman-Wynn’92’97] 1⋃ni=1 Bi
=∑σ∈K
(−1)dimσ1∩i∈σBi .
Let F = B1, B2, . . . , Bn be a family of unit balls in Rd.
K the simplicial complex encoding the Delaunay triangulation of p1, p2, . . . , pn.σ ∈ K ⇔ pi : i ∈ σ has no pj in the interior of its circumscribed ball.
For d = 2, 6n− 11 terms, each of size at most 3, and computable in O(n logn) time.
Idem for balls of different radii but uses the power diagram.
Write pi for the center of Bi.
“A correct inclusion-exclusion formula for a family of unitradius balls in Rd is given by the Delaunay triangulationof their centers.”
It suffices to prove that for any x ∈ ∪ni=1Bi∑σ∈K(−1)dimσ1∩i∈σBi(x) = 1.
For d ≥ 3, O(ndd/2e) terms, each of size at most d, and computable in O(ndd/2e) time.
![Page 121: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/121.jpg)
Claim. For any x ∈ ∪ni=1Bi,∑σ∈K(−1)dimσ1∩i∈σBi(x) = 1.
Ri = y ∈ Rd | ∀j ∈ 1, 2, . . . , n \ i, ‖ypj‖ ≥ ‖ypi‖
B1, B2, . . . , Bn unit balls in Rd with Bi centered in pi.
K the simplicial complex encoding the Delaunay triangulation of p1, p2, . . . , pn.σ ∈ K ⇔ pi : i ∈ σ has no pj in the interior of its circumscribed ball.
![Page 122: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/122.jpg)
Claim. For any x ∈ ∪ni=1Bi,∑σ∈K(−1)dimσ1∩i∈σBi(x) = 1.
Ri = y ∈ Rd | ∀j ∈ 1, 2, . . . , n \ i, ‖ypj‖ ≥ ‖ypi‖
B1, B2, . . . , Bn unit balls in Rd with Bi centered in pi.
K the simplicial complex encoding the Delaunay triangulation of p1, p2, . . . , pn.σ ∈ K ⇔ pi : i ∈ σ has no pj in the interior of its circumscribed ball.
Proof: ∑σ∈K(−1)dimσ1∩i∈σBi(x) =
∑σ∈K;σ⊂Fx(−1)dimσ = χ(K[Fx]).
Define Fx = i : x ∈ Bi. It suffices to show that K[Fx] is contractible:
K[Fx] is the subcomplex of K induced by Fx = all simplices contained in Fx.
![Page 123: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/123.jpg)
Claim. For any x ∈ ∪ni=1Bi,∑σ∈K(−1)dimσ1∩i∈σBi(x) = 1.
Ri = y ∈ Rd | ∀j ∈ 1, 2, . . . , n \ i, ‖ypj‖ ≥ ‖ypi‖
B1, B2, . . . , Bn unit balls in Rd with Bi centered in pi.
K the simplicial complex encoding the Delaunay triangulation of p1, p2, . . . , pn.σ ∈ K ⇔ pi : i ∈ σ has no pj in the interior of its circumscribed ball.
Proof: ∑σ∈K(−1)dimσ1∩i∈σBi(x) =
∑σ∈K;σ⊂Fx(−1)dimσ = χ(K[Fx]).
Define Fx = i : x ∈ Bi. It suffices to show that K[Fx] is contractible:
K[Fx] is the subcomplex of K induced by Fx = all simplices contained in Fx.
Delaunay = Nerve(Voronoi) ⇒ K[Fx] is the nerve of Ri : x ∈ Bi.
Nerve theorem ⇒ it suffices to argue that⋃
i:x∈Bi
Ri is contractible.
![Page 124: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/124.jpg)
Claim. For any x ∈ ∪ni=1Bi,∑σ∈K(−1)dimσ1∩i∈σBi(x) = 1.
Ri = y ∈ Rd | ∀j ∈ 1, 2, . . . , n \ i, ‖ypj‖ ≥ ‖ypi‖
B1, B2, . . . , Bn unit balls in Rd with Bi centered in pi.
K the simplicial complex encoding the Delaunay triangulation of p1, p2, . . . , pn.σ ∈ K ⇔ pi : i ∈ σ has no pj in the interior of its circumscribed ball.
Proof: ∑σ∈K(−1)dimσ1∩i∈σBi(x) =
∑σ∈K;σ⊂Fx(−1)dimσ = χ(K[Fx]).
Define Fx = i : x ∈ Bi. It suffices to show that K[Fx] is contractible:
K[Fx] is the subcomplex of K induced by Fx = all simplices contained in Fx.
Delaunay = Nerve(Voronoi) ⇒ K[Fx] is the nerve of Ri : x ∈ Bi.
Nerve theorem ⇒ it suffices to argue that⋃
i:x∈Bi
Ri is contractible.
Renumber the pi so that ‖xp1‖ ≤ ‖xp2‖ ≤ . . . ≤ ‖xpn‖.
Define R′i = y ∈ Rd | ∀j ∈ i+ 1, i+ 2, . . . , n, ‖ypj‖ ≥ ‖ypi‖
![Page 125: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/125.jpg)
Claim. For any x ∈ ∪ni=1Bi,∑σ∈K(−1)dimσ1∩i∈σBi(x) = 1.
Ri = y ∈ Rd | ∀j ∈ 1, 2, . . . , n \ i, ‖ypj‖ ≥ ‖ypi‖
B1, B2, . . . , Bn unit balls in Rd with Bi centered in pi.
K the simplicial complex encoding the Delaunay triangulation of p1, p2, . . . , pn.σ ∈ K ⇔ pi : i ∈ σ has no pj in the interior of its circumscribed ball.
Proof: ∑σ∈K(−1)dimσ1∩i∈σBi(x) =
∑σ∈K;σ⊂Fx(−1)dimσ = χ(K[Fx]).
Define Fx = i : x ∈ Bi. It suffices to show that K[Fx] is contractible:
K[Fx] is the subcomplex of K induced by Fx = all simplices contained in Fx.
Delaunay = Nerve(Voronoi) ⇒ K[Fx] is the nerve of Ri : x ∈ Bi.
Nerve theorem ⇒ it suffices to argue that⋃
i:x∈Bi
Ri is contractible.
Renumber the pi so that ‖xp1‖ ≤ ‖xp2‖ ≤ . . . ≤ ‖xpn‖.
Define R′i = y ∈ Rd | ∀j ∈ i+ 1, i+ 2, . . . , n, ‖ypj‖ ≥ ‖ypi‖
![Page 126: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/126.jpg)
Claim. For any x ∈ ∪ni=1Bi,∑σ∈K(−1)dimσ1∩i∈σBi(x) = 1.
Ri = y ∈ Rd | ∀j ∈ 1, 2, . . . , n \ i, ‖ypj‖ ≥ ‖ypi‖
B1, B2, . . . , Bn unit balls in Rd with Bi centered in pi.
K the simplicial complex encoding the Delaunay triangulation of p1, p2, . . . , pn.σ ∈ K ⇔ pi : i ∈ σ has no pj in the interior of its circumscribed ball.
Proof: ∑σ∈K(−1)dimσ1∩i∈σBi(x) =
∑σ∈K;σ⊂Fx(−1)dimσ = χ(K[Fx]).
Define Fx = i : x ∈ Bi. It suffices to show that K[Fx] is contractible:
K[Fx] is the subcomplex of K induced by Fx = all simplices contained in Fx.
Delaunay = Nerve(Voronoi) ⇒ K[Fx] is the nerve of Ri : x ∈ Bi.
Nerve theorem ⇒ it suffices to argue that⋃
i:x∈Bi
Ri is contractible.
Renumber the pi so that ‖xp1‖ ≤ ‖xp2‖ ≤ . . . ≤ ‖xpn‖.
Define R′i = y ∈ Rd | ∀j ∈ i+ 1, i+ 2, . . . , n, ‖ypj‖ ≥ ‖ypi‖⋃i:x∈Bi
Ri =⋃
i:x∈Bi
R′i which is star-shaped wrt x.
![Page 127: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/127.jpg)
Data is commonly obtained by sampling.
Distance/similarity notion influenced by the underlying topology/geometry.
Another kind of use of topological methods: topological data analysis
![Page 128: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/128.jpg)
Topological data analysis aims at infering these structures.
Data is commonly obtained by sampling.
Distance/similarity notion influenced by the underlying topology/geometry.
Better understand the observed phenomena.
Improve the treatment of this data (dimension reduction, parameterization...)
Applications : clustering, matching, classification, visualization, learning,...
Another kind of use of topological methods: topological data analysis
![Page 129: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/129.jpg)
Topological data analysis aims at infering these structures.
Data is commonly obtained by sampling.
Distance/similarity notion influenced by the underlying topology/geometry.
Better understand the observed phenomena.
Improve the treatment of this data (dimension reduction, parameterization...)
Applications : clustering, matching, classification, visualization, learning,...
Need for intermediate constructions (simplicial complexes).
Distinguish ”signal” from ”topological noise”, multi-scale information.
Another kind of use of topological methods: topological data analysis
![Page 130: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/130.jpg)
βi(X) is the rank of the ith homology group Hi(X).
Xβ0 = number of connected components.
βi formalizes the “number of independent holes of dimension i”.
Exemple: Betti numbers inference.
![Page 131: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/131.jpg)
βi(X) is the rank of the ith homology group Hi(X).
Xβ0 = number of connected components.
βi formalizes the “number of independent holes of dimension i”.
Exemple: Betti numbers inference.
Data: a sample S from a compact space X.
S
X
The geometry/topology of X is not known (ex: all configurations of a given molecule).
We assume X sufficiently “regular”.
(This assumption can be dispensed of.)
![Page 132: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/132.jpg)
βi(X) is the rank of the ith homology group Hi(X).
Xβ0 = number of connected components.
βi formalizes the “number of independent holes of dimension i”.
Exemple: Betti numbers inference.
Data: a sample S from a compact space X.
S
X
The geometry/topology of X is not known (ex: all configurations of a given molecule).
We assume X sufficiently “regular”.
(This assumption can be dispensed of.)
We use the reach of X.
Distance from X to its medial axis.
= locus of the points with more than one nearest neighbour on X.
positive if X is smooth.
![Page 133: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/133.jpg)
Approach: union of balls.
S
X
For ε > 0 let S(ε) =⋃p∈S B(p, ε).
![Page 134: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/134.jpg)
Approach: union of balls.
S
X
dH(P,X) = maxsupp∈P infx∈X ‖px‖, supx∈X infp∈P ‖px‖ (Hausdorff distance).
rX : reach of X.
For ε > 0 let S(ε) =⋃p∈S B(p, ε).
Theorem.[Nyiogi-Smale-Weinberger’04] Let X ⊂ Rd be a smooth, compactmanifold and S ⊂ Rd finite. For any ε ∈ [dH(P,X), (3−
√8)rX ],
∀i ∈ N, βi(S((2+
√2)ε))
= βi(X)
![Page 135: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/135.jpg)
Approach: union of balls.
Intuition: take ε large enough to fill the holes in the sampling,small enough not to fill the holes in X.
S
X
dH(P,X) = maxsupp∈P infx∈X ‖px‖, supx∈X infp∈P ‖px‖ (Hausdorff distance).
rX : reach of X.
For ε > 0 let S(ε) =⋃p∈S B(p, ε).
Theorem.[Nyiogi-Smale-Weinberger’04] Let X ⊂ Rd be a smooth, compactmanifold and S ⊂ Rd finite. For any ε ∈ [dH(P,X), (3−
√8)rX ],
∀i ∈ N, βi(S((2+
√2)ε))
= βi(X)
![Page 136: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/136.jpg)
Approach: union of balls.
Intuition: take ε large enough to fill the holes in the sampling,small enough not to fill the holes in X.
S
X
dH(P,X) = maxsupp∈P infx∈X ‖px‖, supx∈X infp∈P ‖px‖ (Hausdorff distance).
rX : reach of X.
For ε > 0 let S(ε) =⋃p∈S B(p, ε).
Theorem.[Nyiogi-Smale-Weinberger’04] Let X ⊂ Rd be a smooth, compactmanifold and S ⊂ Rd finite. For any ε ∈ [dH(P,X), (3−
√8)rX ],
∀i ∈ N, βi(S((2+
√2)ε))
= βi(X)
Algorithm:
Compute a radius ε such that βi(S(ε))= βi(X).
Compute the nerve N of the balls of radius ε centered in S.
Input: a sample S of a space X .
Compute the Betti numbers of N using simplicial homology.
![Page 137: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/137.jpg)
This algorithm can be improved using Vietoris-Rips complexes.
The Vietoris-Rips complex Rt(S) of S with parameter tis the clique complex of the intersection graph of St.
S = p1, p2, . . . , pn ⊂ Rd and St = B(p1, t), B(p2, t), . . . , B(pn, t).
Rt(S) = I ⊂ 1, 2, . . . , n | ∀i, j ∈ I, ‖pipj‖ ≤ 2t.Nerve
Vietoris-Rips
![Page 138: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/138.jpg)
This algorithm can be improved using Vietoris-Rips complexes.
The Vietoris-Rips complex Rt(S) of S with parameter tis the clique complex of the intersection graph of St.
S = p1, p2, . . . , pn ⊂ Rd and St = B(p1, t), B(p2, t), . . . , B(pn, t).
Rt(S) = I ⊂ 1, 2, . . . , n | ∀i, j ∈ I, ‖pipj‖ ≤ 2t.
Critical because one extra or fewer simplex changes the βi.
Nerve
Vietoris-RipsRt(S) is easier to compute than the nerve of St.
Only needs the 1-skeleton, makes for a greater numerical stability.
Theorem.[Attali-Lieutier-Salinas’10] For any smooth, compact manifold X ⊂ Rd,any finite subset S ⊂ Rd, any ε ∈ [dH(P,X), 0.034rX ],
∀i ∈ N, βi (R7.22ε(S)) = βi(X)
![Page 139: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/139.jpg)
This algorithm can be improved using Vietoris-Rips complexes.
The Vietoris-Rips complex Rt(S) of S with parameter tis the clique complex of the intersection graph of St.
S = p1, p2, . . . , pn ⊂ Rd and St = B(p1, t), B(p2, t), . . . , B(pn, t).
Rt(S) = I ⊂ 1, 2, . . . , n | ∀i, j ∈ I, ‖pipj‖ ≤ 2t.
Critical because one extra or fewer simplex changes the βi.
Nerve
Vietoris-Rips
Proof: collapse Vietoris-Rips complexes onto nerves.
Rt(S) is easier to compute than the nerve of St.
Only needs the 1-skeleton, makes for a greater numerical stability.
Theorem.[Attali-Lieutier-Salinas’10] For any smooth, compact manifold X ⊂ Rd,any finite subset S ⊂ Rd, any ε ∈ [dH(P,X), 0.034rX ],
∀i ∈ N, βi (R7.22ε(S)) = βi(X)
![Page 140: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/140.jpg)
Another improvement: consider the sequence of S(r) as r ranges in [0,+∞[.
We obtain a family of nerves filtered by the radius of the balls.
![Page 141: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/141.jpg)
Effective computation based on Rips-Vietoris / nerve interleavings.
Another improvement: consider the sequence of S(r) as r ranges in [0,+∞[.
We obtain a family of nerves filtered by the radius of the balls.
For x < y the injection S(x) → S(y) induces a morphism Hk(S(x))→ Hk(S(y)).
We can follow the “birth” and “death” of the generators of homology groups,
to obtain a persistence diagram (or a topological bar code).
∞
![Page 142: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/142.jpg)
and provides a multiscale topological signature of the sampled space.
Effective computation based on Rips-Vietoris / nerve interleavings.
Another improvement: consider the sequence of S(r) as r ranges in [0,+∞[.
We obtain a family of nerves filtered by the radius of the balls.
For x < y the injection S(x) → S(y) induces a morphism Hk(S(x))→ Hk(S(y)).
We can follow the “birth” and “death” of the generators of homology groups,
to obtain a persistence diagram (or a topological bar code).
∞
This persistence diagram is continuous in the space that is sampled(If the metrics are chosen adequately.)
![Page 143: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/143.jpg)
And the story could continue...
![Page 144: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/144.jpg)
Discrepancy
[Weil][Roth][Beck][Spencer][Matousek][Chazelle]... [Bansal]...
Geometric Ramsey theory...[Erdos][Szemeredi][Gowers][Tao][Pach][Fox]...
VC-dimension, sampling[Vapnick-Chervonenkis][Alon][Frankl][Clarkson][Haussler-Welzl]...
Convex/combinatorial geometry, convex optimization, combinatorial LP...
[Lovasz][Kannan][Barvinok][Vempala][Kalai][Clarkson][Matousek]...
Embedding & dimension reduction, computational geometry on GPU, algebraic(hyper)graphs, matroids, optimal transport...
![Page 145: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/145.jpg)
Thank you for your attention
![Page 146: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/146.jpg)
Thank you for your attention
Further reading...
![Page 147: to discrete & computational geometry An introduction · 2019-11-05 · to discrete & computational geometry \Builds general tools { analytic and computational { to satisfy the algorithmic](https://reader036.vdocuments.net/reader036/viewer/2022062603/5f08da4e7e708231d4240981/html5/thumbnails/147.jpg)
Thank you for your attention
Further reading...
And for your next linear algebra class check out