Introduction to Computational Topology Ahmed Abdelkader Guest - - PowerPoint PPT Presentation

introduction to computational topology ahmed abdelkader
SMART_READER_LITE
LIVE PREVIEW

Introduction to Computational Topology Ahmed Abdelkader Guest - - PowerPoint PPT Presentation

Introduction to Computational Topology Ahmed Abdelkader Guest Lecture CMSC 754 Spring 2020 May 7th, 2020 Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 1 / 41 Introduction Pages 13 Early Topological


slide-1
SLIDE 1

Introduction to Computational Topology Ahmed Abdelkader

Guest Lecture CMSC 754 – Spring 2020 May 7th, 2020

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 1 / 41

slide-2
SLIDE 2

Introduction Pages 1–3

Early Topological Insights

Seven Bridges of K¨

  • nigsberg: find a path that crosses each bridge exactly once

The Origins of Graph Theory Euler observed that the subpaths within each land mass are irrelevant. Use an abstract model of land masses and their connectivity – a graph! A path enters a node through an edge, and exits through another edge. The solution exists if there are exactly 0 or 2 nodes of odd degree.

Figures from Wikipedia [1, 2] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 2 / 41

slide-3
SLIDE 3

Introduction Pages 1–3

Early Topological Insights

Seven Bridges of K¨

  • nigsberg: find a path that crosses each bridge exactly once

The Origins of Graph Theory Euler observed that the subpaths within each land mass are irrelevant. Use an abstract model of land masses and their connectivity – a graph! A path enters a node through an edge, and exits through another edge. The solution exists if there are exactly 0 or 2 nodes of odd degree.

Figures from Wikipedia [1, 2] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 2 / 41

slide-4
SLIDE 4

Introduction Pages 1–3

Early Topological Insights

Seven Bridges of K¨

  • nigsberg: find a path that crosses each bridge exactly once

The Origins of Graph Theory Euler observed that the subpaths within each land mass are irrelevant. Use an abstract model of land masses and their connectivity – a graph! A path enters a node through an edge, and exits through another edge. The solution exists if there are exactly 0 or 2 nodes of odd degree.

Figures from Wikipedia [1, 2] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 2 / 41

slide-5
SLIDE 5

Introduction Pages 1–3

Early Topological Insights

Seven Bridges of K¨

  • nigsberg: find a path that crosses each bridge exactly once

The Origins of Graph Theory Euler observed that the subpaths within each land mass are irrelevant. Use an abstract model of land masses and their connectivity – a graph! A path enters a node through an edge, and exits through another edge. The solution exists if there are exactly 0 or 2 nodes of odd degree.

Figures from Wikipedia [1, 2] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 2 / 41

slide-6
SLIDE 6

Introduction Pages 1–3

Early Topological Insights

Seven Bridges of K¨

  • nigsberg: find a path that crosses each bridge exactly once

The Origins of Graph Theory Euler observed that the subpaths within each land mass are irrelevant. Use an abstract model of land masses and their connectivity – a graph! A path enters a node through an edge, and exits through another edge. The solution exists if there are exactly 0 or 2 nodes of odd degree.

Figures from Wikipedia [1, 2] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 2 / 41

slide-7
SLIDE 7

Introduction Pages 1–3

Early Topological Insights

Seven Bridges of K¨

  • nigsberg: find a path that crosses each bridge exactly once

The Origins of Graph Theory Euler observed that the subpaths within each land mass are irrelevant. Use an abstract model of land masses and their connectivity – a graph! A path enters a node through an edge, and exits through another edge. The solution exists if there are exactly 0 or 2 nodes of odd degree.

Figures from Wikipedia [1, 2] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 2 / 41

slide-8
SLIDE 8

Introduction Pages 1–3

More Graph Theory

Complete graph K5, complete bipartite graph K3,3, and the Petersen graph Forbidden Graph Characterizations A minor H of a graph G is the result of a sequence of operations: Contraction (merge two adjacent vertices), edge and vertex deletion. A graph if planar iff it does not have any K5 or K3,3 minors. Hadwiger conjecture: a graph is t-colorable iff it does not have any Kt minors.

Figures from Wikipedia [3, 4, 5] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 3 / 41

slide-9
SLIDE 9

Introduction Pages 1–3

More Graph Theory

Complete graph K5, complete bipartite graph K3,3, and the Petersen graph Forbidden Graph Characterizations A minor H of a graph G is the result of a sequence of operations: Contraction (merge two adjacent vertices), edge and vertex deletion. A graph if planar iff it does not have any K5 or K3,3 minors. Hadwiger conjecture: a graph is t-colorable iff it does not have any Kt minors.

Figures from Wikipedia [3, 4, 5] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 3 / 41

slide-10
SLIDE 10

Introduction Pages 1–3

More Graph Theory

Complete graph K5, complete bipartite graph K3,3, and the Petersen graph Forbidden Graph Characterizations A minor H of a graph G is the result of a sequence of operations: Contraction (merge two adjacent vertices), edge and vertex deletion. A graph if planar iff it does not have any K5 or K3,3 minors. Hadwiger conjecture: a graph is t-colorable iff it does not have any Kt minors.

Figures from Wikipedia [3, 4, 5] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 3 / 41

slide-11
SLIDE 11

Introduction Pages 1–3

More Graph Theory

Complete graph K5, complete bipartite graph K3,3, and the Petersen graph Forbidden Graph Characterizations A minor H of a graph G is the result of a sequence of operations: Contraction (merge two adjacent vertices), edge and vertex deletion. A graph if planar iff it does not have any K5 or K3,3 minors. Hadwiger conjecture: a graph is t-colorable iff it does not have any Kt minors.

Figures from Wikipedia [3, 4, 5] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 3 / 41

slide-12
SLIDE 12

Introduction Pages 1–3

Surfaces

0 holes 1 hole 2 handles 3 handles

Topological Invariants Instead of edge deletion and contraction for graphs, we study surfaces under continuous deformations that do not tear or pinch the surface. The genus corresponds to the number of holes or handles. Joke: a topologist cannot distinguish his coffee mug from his doughnut!

Topology as rubber-sheet geometry

Figures from Wikipedia [6, 7, 8, 9] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 4 / 41

slide-13
SLIDE 13

Introduction Pages 1–3

Surfaces

0 holes 1 hole 2 handles 3 handles

Topological Invariants Instead of edge deletion and contraction for graphs, we study surfaces under continuous deformations that do not tear or pinch the surface. The genus corresponds to the number of holes or handles. Joke: a topologist cannot distinguish his coffee mug from his doughnut!

Topology as rubber-sheet geometry

Figures from Wikipedia [6, 7, 8, 9] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 4 / 41

slide-14
SLIDE 14

Introduction Pages 1–3

Surfaces

0 holes 1 hole 2 handles 3 handles

Topological Invariants Instead of edge deletion and contraction for graphs, we study surfaces under continuous deformations that do not tear or pinch the surface. The genus corresponds to the number of holes or handles. Joke: a topologist cannot distinguish his coffee mug from his doughnut!

Topology as rubber-sheet geometry

Figures from Wikipedia [6, 7, 8, 9] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 4 / 41

slide-15
SLIDE 15

Introduction Pages 1–3

Surfaces

0 holes 1 hole 2 handles 3 handles

Topological Invariants Instead of edge deletion and contraction for graphs, we study surfaces under continuous deformations that do not tear or pinch the surface. The genus corresponds to the number of holes or handles. Joke: a topologist cannot distinguish his coffee mug from his doughnut!

Topology as rubber-sheet geometry

Figures from Wikipedia [6, 7, 8, 9] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 4 / 41

slide-16
SLIDE 16

Introduction Pages 1–3

Surfaces

0 holes 1 hole 2 handles 3 handles

Topological Invariants Instead of edge deletion and contraction for graphs, we study surfaces under continuous deformations that do not tear or pinch the surface. The genus corresponds to the number of holes or handles. Joke: a topologist cannot distinguish his coffee mug from his doughnut!

Topology as rubber-sheet geometry

Figures from Wikipedia [6, 7, 8, 9] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 4 / 41

slide-17
SLIDE 17

Introduction Pages 1–3

How do you compute the genus without looking?

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 5 / 41

slide-18
SLIDE 18

Introduction Pages 1–3

Convex Polytopes

4 − 6 + 4 8 − 12 + 6 6 − 12 + 8 20 − 30 + 12 12 − 30 + 20

Euler’s Polyhedron Formula Alternating sum of the number of vertices (V), edges (E), and facets (F) χ = V − E + F As spheres can be continuously deformed into convex polytopes, they also have an Euler characteristic of 2. Unlike the genus, this is easily computed by simple counting or algebra.

Figures from Wikipedia [10, 11, 12, 13, 14] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 6 / 41

slide-19
SLIDE 19

Introduction Pages 1–3

Convex Polytopes

4 − 6 + 4 8 − 12 + 6 6 − 12 + 8 20 − 30 + 12 12 − 30 + 20

Euler’s Polyhedron Formula Alternating sum of the number of vertices (V), edges (E), and facets (F) χ = V − E + F As spheres can be continuously deformed into convex polytopes, they also have an Euler characteristic of 2. Unlike the genus, this is easily computed by simple counting or algebra.

Figures from Wikipedia [10, 11, 12, 13, 14] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 6 / 41

slide-20
SLIDE 20

Introduction Pages 1–3

Convex Polytopes

4 − 6 + 4 8 − 12 + 6 6 − 12 + 8 20 − 30 + 12 12 − 30 + 20

Euler’s Polyhedron Formula Alternating sum of the number of vertices (V), edges (E), and facets (F) χ = V − E + F As spheres can be continuously deformed into convex polytopes, they also have an Euler characteristic of 2. Unlike the genus, this is easily computed by simple counting or algebra.

Figures from Wikipedia [10, 11, 12, 13, 14] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 6 / 41

slide-21
SLIDE 21

Preliminaries Page 4

What about non-convex surfaces?

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 7 / 41

slide-22
SLIDE 22

Preliminaries Page 4

Wireframes

Rendering all triangles Wireframe, edges only

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 8 / 41

slide-23
SLIDE 23

Preliminaries Page 4

Simplicial Complexes

A 3-simplex Four 2-simplices Six 1-simplices Four 0-simplices

Definitions A p-simplex is the convex hull of (p + 1) affinely-independent points. We write this as σ = [v0, . . . , vp] = conv{v0, . . . , vp} and say dim σ = p. A simplicial complex K is a set of simplices closed under intersection, and its dimension dim K is the maximum dimension of its simplices. If σ1, σ2 ∈ K, then σ1 ∩ σ2 ∈ K. The (−1)-simplex ∅ is always in K.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 9 / 41

slide-24
SLIDE 24

Preliminaries Page 4

Simplicial Complexes

A 3-simplex Four 2-simplices Six 1-simplices Four 0-simplices

Definitions A p-simplex is the convex hull of (p + 1) affinely-independent points. We write this as σ = [v0, . . . , vp] = conv{v0, . . . , vp} and say dim σ = p. A simplicial complex K is a set of simplices closed under intersection, and its dimension dim K is the maximum dimension of its simplices. If σ1, σ2 ∈ K, then σ1 ∩ σ2 ∈ K. The (−1)-simplex ∅ is always in K.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 9 / 41

slide-25
SLIDE 25

Preliminaries Page 4

Simplicial Complexes

A 3-simplex Four 2-simplices Six 1-simplices Four 0-simplices

Definitions A p-simplex is the convex hull of (p + 1) affinely-independent points. We write this as σ = [v0, . . . , vp] = conv{v0, . . . , vp} and say dim σ = p. A simplicial complex K is a set of simplices closed under intersection, and its dimension dim K is the maximum dimension of its simplices. If σ1, σ2 ∈ K, then σ1 ∩ σ2 ∈ K. The (−1)-simplex ∅ is always in K.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 9 / 41

slide-26
SLIDE 26

Preliminaries Page 4

Simplicial Complexes

A 3-simplex Four 2-simplices Six 1-simplices Four 0-simplices

Definitions A p-simplex is the convex hull of (p + 1) affinely-independent points. We write this as σ = [v0, . . . , vp] = conv{v0, . . . , vp} and say dim σ = p. A simplicial complex K is a set of simplices closed under intersection, and its dimension dim K is the maximum dimension of its simplices. If σ1, σ2 ∈ K, then σ1 ∩ σ2 ∈ K. The (−1)-simplex ∅ is always in K.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 9 / 41

slide-27
SLIDE 27

Preliminaries Page 4

Simplicial Complexes

A 3-simplex Four 2-simplices Six 1-simplices Four 0-simplices

Definitions A face τ is a k-simplex connecting (k + 1) of the vertices of σ. We write this as τ σ, and say that σ is a coface of τ. A (co)face τ of a simplex σ is proper if dim τ = dim σ. The boundary ∂σ is the collection of proper faces of σ The interior of σ is defined as |σ| = σ − ∂σ. The underlying space of a complex K is defined as |K| = ∪σ∈K|σ|.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 9 / 41

slide-28
SLIDE 28

Preliminaries Page 4

Simplicial Complexes

A 3-simplex Four 2-simplices Six 1-simplices Four 0-simplices

Definitions A face τ is a k-simplex connecting (k + 1) of the vertices of σ. We write this as τ σ, and say that σ is a coface of τ. A (co)face τ of a simplex σ is proper if dim τ = dim σ. The boundary ∂σ is the collection of proper faces of σ The interior of σ is defined as |σ| = σ − ∂σ. The underlying space of a complex K is defined as |K| = ∪σ∈K|σ|.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 9 / 41

slide-29
SLIDE 29

Preliminaries Page 4

Simplicial Complexes

A 3-simplex Four 2-simplices Six 1-simplices Four 0-simplices

Definitions A face τ is a k-simplex connecting (k + 1) of the vertices of σ. We write this as τ σ, and say that σ is a coface of τ. A (co)face τ of a simplex σ is proper if dim τ = dim σ. The boundary ∂σ is the collection of proper faces of σ The interior of σ is defined as |σ| = σ − ∂σ. The underlying space of a complex K is defined as |K| = ∪σ∈K|σ|.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 9 / 41

slide-30
SLIDE 30

Preliminaries Page 4

Simplicial Complexes

A 3-simplex Four 2-simplices Six 1-simplices Four 0-simplices

Definitions A face τ is a k-simplex connecting (k + 1) of the vertices of σ. We write this as τ σ, and say that σ is a coface of τ. A (co)face τ of a simplex σ is proper if dim τ = dim σ. The boundary ∂σ is the collection of proper faces of σ The interior of σ is defined as |σ| = σ − ∂σ. The underlying space of a complex K is defined as |K| = ∪σ∈K|σ|.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 9 / 41

slide-31
SLIDE 31

Preliminaries Page 4

Simplicial Complexes

A 3-simplex Four 2-simplices Six 1-simplices Four 0-simplices

Definitions A face τ is a k-simplex connecting (k + 1) of the vertices of σ. We write this as τ σ, and say that σ is a coface of τ. A (co)face τ of a simplex σ is proper if dim τ = dim σ. The boundary ∂σ is the collection of proper faces of σ The interior of σ is defined as |σ| = σ − ∂σ. The underlying space of a complex K is defined as |K| = ∪σ∈K|σ|.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 9 / 41

slide-32
SLIDE 32

Simplicial Approximations Pages 5–7

How to represent a mapping between two surfaces?

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 10 / 41

slide-33
SLIDE 33

Simplicial Approximations Pages 5–7

Continuous Deformations

A continuous deformation of a cow model into a ball

Figure from Wikipedia [15] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 11 / 41

slide-34
SLIDE 34

Simplicial Approximations Pages 5–7

Continuous Maps

Continuity at x = 2 by (ε, δ) Continuity at x ∈ X using neighborhoods

Definition of Continuity Small changes in the input yield small changes in the output. Calculus formalizes this notion using the (ε, δ)-definition of the limit. For general topologies, we use neighborhoods instead of (ε, δ) intervals.

Figures from Wikipedia [16, 17] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 12 / 41

slide-35
SLIDE 35

Simplicial Approximations Pages 5–7

Continuous Maps

Continuity at x = 2 by (ε, δ) Continuity at x ∈ X using neighborhoods

Definition of Continuity Small changes in the input yield small changes in the output. Calculus formalizes this notion using the (ε, δ)-definition of the limit. For general topologies, we use neighborhoods instead of (ε, δ) intervals.

Figures from Wikipedia [16, 17] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 12 / 41

slide-36
SLIDE 36

Simplicial Approximations Pages 5–7

Continuous Maps

Continuity at x = 2 by (ε, δ) Continuity at x ∈ X using neighborhoods

Definition of Continuity Small changes in the input yield small changes in the output. Calculus formalizes this notion using the (ε, δ)-definition of the limit. For general topologies, we use neighborhoods instead of (ε, δ) intervals.

Figures from Wikipedia [16, 17] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 12 / 41

slide-37
SLIDE 37

Simplicial Approximations Pages 5–7

Homeomorphisms

f f −1 Definition Two topological spaces X and Y are said to be homeomorphic whenever there exists a continuous map f : X → Y with a continuous inverse f −1 : Y → X. Such a function f is called a homeomorphism.

Figure from Wikipedia [15] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 13 / 41

slide-38
SLIDE 38

Simplicial Approximations Pages 5–7

But, we will be using the triangulations rather than the surfaces ...

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 14 / 41

slide-39
SLIDE 39

Simplicial Approximations Pages 5–7

Triangulations

Definition A triangulation of a topological space X is a simplicial complex ˆ X such that X and | ˆ X| are homeomorphic. A topological space is triangulable if it admits a triangulation.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 15 / 41

slide-40
SLIDE 40

Simplicial Approximations Pages 5–7

Triangulations

Definition A triangulation of a topological space X is a simplicial complex ˆ X such that X and | ˆ X| are homeomorphic. A topological space is triangulable if it admits a triangulation.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 15 / 41

slide-41
SLIDE 41

Simplicial Approximations Pages 5–7

Continuous Maps between Simplicial Complexes

Simplicial Neighborhoods Fix a simplicial complex K. The star of σ is the collection its cofaces: StK(σ) = {τ ∈ K | σ τ}. The star neighborhood of σ is the union of the interior of its cofaces: NK(σ) = ∪τ∈StK (σ)|τ|.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 16 / 41

slide-42
SLIDE 42

Simplicial Approximations Pages 5–7

Continuous Maps between Simplicial Complexes

Simplicial Neighborhoods Fix a simplicial complex K. The star of σ is the collection its cofaces: StK(σ) = {τ ∈ K | σ τ}. The star neighborhood of σ is the union of the interior of its cofaces: NK(σ) = ∪τ∈StK (σ)|τ|.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 16 / 41

slide-43
SLIDE 43

Simplicial Approximations Pages 5–7

Continuous Maps between Simplicial Complexes

Simplicial Neighborhoods Fix a simplicial complex K. The star of σ is the collection its cofaces: StK(σ) = {τ ∈ K | σ τ}. The star neighborhood of σ is the union of the interior of its cofaces: NK(σ) = ∪τ∈StK (σ)|τ|.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 16 / 41

slide-44
SLIDE 44

Simplicial Approximations Pages 5–7

Continuous Maps between Simplicial Complexes

ˆ X → ˆ Y

The Star Condition Fix two simplicial complexes ˆ X and ˆ Y and a map ˆ f : | ˆ X| → | ˆ Y |. We say that ˆ f satisfies the star condition if for all vertices v ∈ ˆ X ˆ f

  • N ˆ

X(v)

  • ⊆ N ˆ

Y (u)

for some vertex u = φ(v) ∈ ˆ Y . The map φ : Vert ˆ X → Vert ˆ Y extends to a simplicial map that maps every simplex σ ∈ ˆ X to some simplex τ ∈ ˆ Y . The simplicial map induces a simplicial approximation: a piecewise-linear map ˆ f∆ : ˆ X → ˆ Y that approximates the original function f .

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 16 / 41

slide-45
SLIDE 45

Simplicial Approximations Pages 5–7

Continuous Maps between Simplicial Complexes

ˆ X → ˆ Y

The Star Condition Fix two simplicial complexes ˆ X and ˆ Y and a map ˆ f : | ˆ X| → | ˆ Y |. We say that ˆ f satisfies the star condition if for all vertices v ∈ ˆ X ˆ f

  • N ˆ

X(v)

  • ⊆ N ˆ

Y (u)

for some vertex u = φ(v) ∈ ˆ Y . The map φ : Vert ˆ X → Vert ˆ Y extends to a simplicial map that maps every simplex σ ∈ ˆ X to some simplex τ ∈ ˆ Y . The simplicial map induces a simplicial approximation: a piecewise-linear map ˆ f∆ : ˆ X → ˆ Y that approximates the original function f .

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 16 / 41

slide-46
SLIDE 46

Simplicial Approximations Pages 5–7

Continuous Maps between Simplicial Complexes

ˆ X → ˆ Y

The Star Condition Fix two simplicial complexes ˆ X and ˆ Y and a map ˆ f : | ˆ X| → | ˆ Y |. We say that ˆ f satisfies the star condition if for all vertices v ∈ ˆ X ˆ f

  • N ˆ

X(v)

  • ⊆ N ˆ

Y (u)

for some vertex u = φ(v) ∈ ˆ Y . The map φ : Vert ˆ X → Vert ˆ Y extends to a simplicial map that maps every simplex σ ∈ ˆ X to some simplex τ ∈ ˆ Y . The simplicial map induces a simplicial approximation: a piecewise-linear map ˆ f∆ : ˆ X → ˆ Y that approximates the original function f .

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 16 / 41

slide-47
SLIDE 47

Simplicial Approximations Pages 5–7

Continuous Maps between Simplicial Complexes

ˆ X → ˆ Y

The Star Condition Fix two simplicial complexes ˆ X and ˆ Y and a map ˆ f : | ˆ X| → | ˆ Y |. We say that ˆ f satisfies the star condition if for all vertices v ∈ ˆ X ˆ f

  • N ˆ

X(v)

  • ⊆ N ˆ

Y (u)

for some vertex u = φ(v) ∈ ˆ Y . The map φ : Vert ˆ X → Vert ˆ Y extends to a simplicial map that maps every simplex σ ∈ ˆ X to some simplex τ ∈ ˆ Y . The simplicial map induces a simplicial approximation: a piecewise-linear map ˆ f∆ : ˆ X → ˆ Y that approximates the original function f .

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 16 / 41

slide-48
SLIDE 48

Simplicial Approximations Pages 5–7

What if ˆ f : | ˆ X| → | ˆ Y | fails the star condition?

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 17 / 41

slide-49
SLIDE 49

Simplicial Approximations Pages 5–7

Simplicial Approximation Theorem

Barycentric Subdivisions If there exists a vertex v ∈ ˆ X such that ˆ f

  • N ˆ

X(v)

  • is not contained in

N ˆ

Y (u) for any vertex u ∈ ˆ

Y , then N ˆ

X(v) is too large!

Solution: refine ˆ X without changing ˆ f : ˆ X → ˆ Y . The barycenter of σ = [v0, . . . , vp] is defined as

1 p+1

p

i=0 vi.

Repeated subdivisions eventually achieve the star condition.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 18 / 41

slide-50
SLIDE 50

Simplicial Approximations Pages 5–7

Simplicial Approximation Theorem

Barycentric Subdivisions If there exists a vertex v ∈ ˆ X such that ˆ f

  • N ˆ

X(v)

  • is not contained in

N ˆ

Y (u) for any vertex u ∈ ˆ

Y , then N ˆ

X(v) is too large!

Solution: refine ˆ X without changing ˆ f : ˆ X → ˆ Y . The barycenter of σ = [v0, . . . , vp] is defined as

1 p+1

p

i=0 vi.

Repeated subdivisions eventually achieve the star condition.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 18 / 41

slide-51
SLIDE 51

Simplicial Approximations Pages 5–7

Simplicial Approximation Theorem

Barycentric Subdivisions If there exists a vertex v ∈ ˆ X such that ˆ f

  • N ˆ

X(v)

  • is not contained in

N ˆ

Y (u) for any vertex u ∈ ˆ

Y , then N ˆ

X(v) is too large!

Solution: refine ˆ X without changing ˆ f : ˆ X → ˆ Y . The barycenter of σ = [v0, . . . , vp] is defined as

1 p+1

p

i=0 vi.

Repeated subdivisions eventually achieve the star condition.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 18 / 41

slide-52
SLIDE 52

Simplicial Approximations Pages 5–7

Simplicial Approximation Theorem

Barycentric Subdivisions If there exists a vertex v ∈ ˆ X such that ˆ f

  • N ˆ

X(v)

  • is not contained in

N ˆ

Y (u) for any vertex u ∈ ˆ

Y , then N ˆ

X(v) is too large!

Solution: refine ˆ X without changing ˆ f : ˆ X → ˆ Y . The barycenter of σ = [v0, . . . , vp] is defined as

1 p+1

p

i=0 vi.

Repeated subdivisions eventually achieve the star condition.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 18 / 41

slide-53
SLIDE 53

Simplicial Approximations Pages 5–7

Simplicial Approximation Theorem

Barycentric Subdivisions If there exists a vertex v ∈ ˆ X such that ˆ f

  • N ˆ

X(v)

  • is not contained in

N ˆ

Y (u) for any vertex u ∈ ˆ

Y , then N ˆ

X(v) is too large!

Solution: refine ˆ X without changing ˆ f : ˆ X → ˆ Y . The barycenter of σ = [v0, . . . , vp] is defined as

1 p+1

p

i=0 vi.

Repeated subdivisions eventually achieve the star condition.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 18 / 41

slide-54
SLIDE 54

Chains Pages 8–9

From Convex Polyhedra to Simplicial Complexes

Simplicial Counting Recall the alternating sum used to compute the Euler characteristic χ. We would like to derive a similar computation on a simplicial complex K. But, a single simplex can be shared among multiple cofaces. How do we keep track of the correct count?

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 19 / 41

slide-55
SLIDE 55

Chains Pages 8–9

From Convex Polyhedra to Simplicial Complexes

Simplicial Counting Recall the alternating sum used to compute the Euler characteristic χ. We would like to derive a similar computation on a simplicial complex K. But, a single simplex can be shared among multiple cofaces. How do we keep track of the correct count?

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 19 / 41

slide-56
SLIDE 56

Chains Pages 8–9

From Convex Polyhedra to Simplicial Complexes

Simplicial Counting Recall the alternating sum used to compute the Euler characteristic χ. We would like to derive a similar computation on a simplicial complex K. But, a single simplex can be shared among multiple cofaces. How do we keep track of the correct count?

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 19 / 41

slide-57
SLIDE 57

Chains Pages 8–9

From Convex Polyhedra to Simplicial Complexes

Simplicial Counting Recall the alternating sum used to compute the Euler characteristic χ. We would like to derive a similar computation on a simplicial complex K. But, a single simplex can be shared among multiple cofaces. How do we keep track of the correct count?

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 19 / 41

slide-58
SLIDE 58

Chains Pages 8–9

From Convex Polyhedra to Simplicial Complexes

Simplicial Counting Recall the alternating sum used to compute the Euler characteristic χ. We would like to derive a similar computation on a simplicial complex K. But, a single simplex can be shared among multiple cofaces. How do we keep track of the correct count? Algebra!

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 19 / 41

slide-59
SLIDE 59

Chains Pages 8–9

Chains

Counting Modulo 2 Define a p-chain as a subset of the p-simplices in the complex K. We write a p-chain as a formal sum c =

i aiσi, where σi ranges over

the p-simplices and ai is a coefficient. We will work with coefficients in F2 = {0, 1} with addition modulo 2.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 20 / 41

slide-60
SLIDE 60

Chains Pages 8–9

Chains

Counting Modulo 2 Define a p-chain as a subset of the p-simplices in the complex K. We write a p-chain as a formal sum c =

i aiσi, where σi ranges over

the p-simplices and ai is a coefficient. We will work with coefficients in F2 = {0, 1} with addition modulo 2.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 20 / 41

slide-61
SLIDE 61

Chains Pages 8–9

Chains

Counting Modulo 2 Define a p-chain as a subset of the p-simplices in the complex K. We write a p-chain as a formal sum c =

i aiσi, where σi ranges over

the p-simplices and ai is a coefficient. We will work with coefficients in F2 = {0, 1} with addition modulo 2.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 20 / 41

slide-62
SLIDE 62

Chains Pages 8–9

Chains

Counting Modulo 2 Two p-chains can be added to obtain a new p-chain. Letting c1 =

i aiσi and c2 = i biσi. Then, c1 + c2 = i(ai + bi)σi.

As ai + bi ∈ F2 for all i, we get that c1 + c2 is a chain. Regarding p-chains as sets, we can interpret that c1 + c2 with modulo 2 coefficients is the symmetric difference between the two sets.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 20 / 41

slide-63
SLIDE 63

Chains Pages 8–9

Chains

Counting Modulo 2 Two p-chains can be added to obtain a new p-chain. Letting c1 =

i aiσi and c2 = i biσi. Then, c1 + c2 = i(ai + bi)σi.

As ai + bi ∈ F2 for all i, we get that c1 + c2 is a chain. Regarding p-chains as sets, we can interpret that c1 + c2 with modulo 2 coefficients is the symmetric difference between the two sets.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 20 / 41

slide-64
SLIDE 64

Chains Pages 8–9

Chains

Counting Modulo 2 Two p-chains can be added to obtain a new p-chain. Letting c1 =

i aiσi and c2 = i biσi. Then, c1 + c2 = i(ai + bi)σi.

As ai + bi ∈ F2 for all i, we get that c1 + c2 is a chain. Regarding p-chains as sets, we can interpret that c1 + c2 with modulo 2 coefficients is the symmetric difference between the two sets.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 20 / 41

slide-65
SLIDE 65

Chains Pages 8–9

Chains

Counting Modulo 2 Two p-chains can be added to obtain a new p-chain. Letting c1 =

i aiσi and c2 = i biσi. Then, c1 + c2 = i(ai + bi)σi.

As ai + bi ∈ F2 for all i, we get that c1 + c2 is a chain. Regarding p-chains as sets, we can interpret that c1 + c2 with modulo 2 coefficients is the symmetric difference between the two sets.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 20 / 41

slide-66
SLIDE 66

Chains Pages 8–9

Chain Groups

Algebra I A group (A, •) is a set A together with a binary operation satisfying: Closure: for all α, β ∈ A, we have that α • β ∈ A. Associativity: so that for all α, β, γ ∈ A we have α • (β • γ) = (α • β) • γ. A has an identity element ω such that α + ω = α for all α ∈ A. If, in addition, • is commutative, we have that α • β = β • α for all α, β ∈ A, and we say the group (A, •) is abelian. Chains as Groups We can now recognize p-chains (Cp, +) as abelian groups. Chains as Vector Spaces If the complex K has np p-simplices, then Cp is (isomorphic to) the set of binary vectors of length np, i.e., {0, 1}np, with the exclusive-or operation ⊕.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 21 / 41

slide-67
SLIDE 67

Chains Pages 8–9

Chain Groups

Algebra I A group (A, •) is a set A together with a binary operation satisfying: Closure: for all α, β ∈ A, we have that α • β ∈ A. Associativity: so that for all α, β, γ ∈ A we have α • (β • γ) = (α • β) • γ. A has an identity element ω such that α + ω = α for all α ∈ A. If, in addition, • is commutative, we have that α • β = β • α for all α, β ∈ A, and we say the group (A, •) is abelian. Chains as Groups We can now recognize p-chains (Cp, +) as abelian groups. Chains as Vector Spaces If the complex K has np p-simplices, then Cp is (isomorphic to) the set of binary vectors of length np, i.e., {0, 1}np, with the exclusive-or operation ⊕.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 21 / 41

slide-68
SLIDE 68

Chains Pages 8–9

Chain Groups

Algebra I A group (A, •) is a set A together with a binary operation satisfying: Closure: for all α, β ∈ A, we have that α • β ∈ A. Associativity: so that for all α, β, γ ∈ A we have α • (β • γ) = (α • β) • γ. A has an identity element ω such that α + ω = α for all α ∈ A. If, in addition, • is commutative, we have that α • β = β • α for all α, β ∈ A, and we say the group (A, •) is abelian. Chains as Groups We can now recognize p-chains (Cp, +) as abelian groups. Chains as Vector Spaces If the complex K has np p-simplices, then Cp is (isomorphic to) the set of binary vectors of length np, i.e., {0, 1}np, with the exclusive-or operation ⊕.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 21 / 41

slide-69
SLIDE 69

Chains Pages 8–9

Chain Groups

Algebra I A group (A, •) is a set A together with a binary operation satisfying: Closure: for all α, β ∈ A, we have that α • β ∈ A. Associativity: so that for all α, β, γ ∈ A we have α • (β • γ) = (α • β) • γ. A has an identity element ω such that α + ω = α for all α ∈ A. If, in addition, • is commutative, we have that α • β = β • α for all α, β ∈ A, and we say the group (A, •) is abelian. Chains as Groups We can now recognize p-chains (Cp, +) as abelian groups. Chains as Vector Spaces If the complex K has np p-simplices, then Cp is (isomorphic to) the set of binary vectors of length np, i.e., {0, 1}np, with the exclusive-or operation ⊕.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 21 / 41

slide-70
SLIDE 70

Chains Pages 8–9

Chain Groups

Algebra I A group (A, •) is a set A together with a binary operation satisfying: Closure: for all α, β ∈ A, we have that α • β ∈ A. Associativity: so that for all α, β, γ ∈ A we have α • (β • γ) = (α • β) • γ. A has an identity element ω such that α + ω = α for all α ∈ A. If, in addition, • is commutative, we have that α • β = β • α for all α, β ∈ A, and we say the group (A, •) is abelian. Chains as Groups We can now recognize p-chains (Cp, +) as abelian groups. Chains as Vector Spaces If the complex K has np p-simplices, then Cp is (isomorphic to) the set of binary vectors of length np, i.e., {0, 1}np, with the exclusive-or operation ⊕.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 21 / 41

slide-71
SLIDE 71

Chains Pages 8–9

Chain Groups

Algebra I A group (A, •) is a set A together with a binary operation satisfying: Closure: for all α, β ∈ A, we have that α • β ∈ A. Associativity: so that for all α, β, γ ∈ A we have α • (β • γ) = (α • β) • γ. A has an identity element ω such that α + ω = α for all α ∈ A. If, in addition, • is commutative, we have that α • β = β • α for all α, β ∈ A, and we say the group (A, •) is abelian. Chains as Groups We can now recognize p-chains (Cp, +) as abelian groups. Chains as Vector Spaces If the complex K has np p-simplices, then Cp is (isomorphic to) the set of binary vectors of length np, i.e., {0, 1}np, with the exclusive-or operation ⊕.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 21 / 41

slide-72
SLIDE 72

Chains Pages 8–9

Chain Groups

Algebra I A group (A, •) is a set A together with a binary operation satisfying: Closure: for all α, β ∈ A, we have that α • β ∈ A. Associativity: so that for all α, β, γ ∈ A we have α • (β • γ) = (α • β) • γ. A has an identity element ω such that α + ω = α for all α ∈ A. If, in addition, • is commutative, we have that α • β = β • α for all α, β ∈ A, and we say the group (A, •) is abelian. Chains as Groups We can now recognize p-chains (Cp, +) as abelian groups. Chains as Vector Spaces If the complex K has np p-simplices, then Cp is (isomorphic to) the set of binary vectors of length np, i.e., {0, 1}np, with the exclusive-or operation ⊕.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 21 / 41

slide-73
SLIDE 73

Chains Pages 8–9

Boundary of a Chain

Linear Extensions Fix a p-simplex σ = [v0, . . . , vp] in the complex K. Recall that the boundary of σ is the collection of its proper faces, which we denoted by ∂σ. We can now express the boundary elements as a single (p − 1)-chain ∂pσ =

p

  • i=0

[v0, . . . , ˆ vi, . . . , vp], where ˆ vi indicates that vi is excluded in the corresponding face. Notice that we used the subscript to qualify the boundary operator as the one acting on the p-th chain group. For any p-chain c =

i aiσi, its boundary is the (p − 1)-chain

∂pc = ∂p

  • i

aiσi

  • =
  • i

ai∂pσi.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 22 / 41

slide-74
SLIDE 74

Chains Pages 8–9

Boundary of a Chain

Linear Extensions Fix a p-simplex σ = [v0, . . . , vp] in the complex K. Recall that the boundary of σ is the collection of its proper faces, which we denoted by ∂σ. We can now express the boundary elements as a single (p − 1)-chain ∂pσ =

p

  • i=0

[v0, . . . , ˆ vi, . . . , vp], where ˆ vi indicates that vi is excluded in the corresponding face. Notice that we used the subscript to qualify the boundary operator as the one acting on the p-th chain group. For any p-chain c =

i aiσi, its boundary is the (p − 1)-chain

∂pc = ∂p

  • i

aiσi

  • =
  • i

ai∂pσi.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 22 / 41

slide-75
SLIDE 75

Chains Pages 8–9

Boundary of a Chain

Linear Extensions Fix a p-simplex σ = [v0, . . . , vp] in the complex K. Recall that the boundary of σ is the collection of its proper faces, which we denoted by ∂σ. We can now express the boundary elements as a single (p − 1)-chain ∂pσ =

p

  • i=0

[v0, . . . , ˆ vi, . . . , vp], where ˆ vi indicates that vi is excluded in the corresponding face. Notice that we used the subscript to qualify the boundary operator as the one acting on the p-th chain group. For any p-chain c =

i aiσi, its boundary is the (p − 1)-chain

∂pc = ∂p

  • i

aiσi

  • =
  • i

ai∂pσi.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 22 / 41

slide-76
SLIDE 76

Chains Pages 8–9

Boundary of a Chain

Linear Extensions Fix a p-simplex σ = [v0, . . . , vp] in the complex K. Recall that the boundary of σ is the collection of its proper faces, which we denoted by ∂σ. We can now express the boundary elements as a single (p − 1)-chain ∂pσ =

p

  • i=0

[v0, . . . , ˆ vi, . . . , vp], where ˆ vi indicates that vi is excluded in the corresponding face. Notice that we used the subscript to qualify the boundary operator as the one acting on the p-th chain group. For any p-chain c =

i aiσi, its boundary is the (p − 1)-chain

∂pc = ∂p

  • i

aiσi

  • =
  • i

ai∂pσi.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 22 / 41

slide-77
SLIDE 77

Chains Pages 8–9

Boundary of a Chain

Linear Extensions Fix a p-simplex σ = [v0, . . . , vp] in the complex K. Recall that the boundary of σ is the collection of its proper faces, which we denoted by ∂σ. We can now express the boundary elements as a single (p − 1)-chain ∂pσ =

p

  • i=0

[v0, . . . , ˆ vi, . . . , vp], where ˆ vi indicates that vi is excluded in the corresponding face. Notice that we used the subscript to qualify the boundary operator as the one acting on the p-th chain group. For any p-chain c =

i aiσi, its boundary is the (p − 1)-chain

∂pc = ∂p

  • i

aiσi

  • =
  • i

ai∂pσi.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 22 / 41

slide-78
SLIDE 78

Chains Pages 8–9

The Chain Complex

∂3

− →

∂2

− →

∂1

− →

∂0

− → 0 Boundary Homomorphisms The boundary operator ∂p commutes with the group operations. If c1 and c2 are p-chains, then: ∂p(c1 +(p) c2) = ∂pc1 +(p−1) ∂pc2, where we qualify the addition operators on each side of the equation. This means that ∂p induces a group homomorphism or a mapping between groups that preserves the group structures: ∂p : Cp → Cp−1. We can arrange the chain groups into a chain complex, effectively replacing the geometric complex K with a series of algebraic modules. . . .

∂p+2

− − → Cp+1

∂p+1

− − → Cp

∂p

− → Cp−1

∂p−1

− − − → . . .

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 23 / 41

slide-79
SLIDE 79

Chains Pages 8–9

The Chain Complex

∂3

− →

∂2

− →

∂1

− →

∂0

− → 0 Boundary Homomorphisms The boundary operator ∂p commutes with the group operations. If c1 and c2 are p-chains, then: ∂p(c1 +(p) c2) = ∂pc1 +(p−1) ∂pc2, where we qualify the addition operators on each side of the equation. This means that ∂p induces a group homomorphism or a mapping between groups that preserves the group structures: ∂p : Cp → Cp−1. We can arrange the chain groups into a chain complex, effectively replacing the geometric complex K with a series of algebraic modules. . . .

∂p+2

− − → Cp+1

∂p+1

− − → Cp

∂p

− → Cp−1

∂p−1

− − − → . . .

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 23 / 41

slide-80
SLIDE 80

Chains Pages 8–9

The Chain Complex

∂3

− →

∂2

− →

∂1

− →

∂0

− → 0 Boundary Homomorphisms The boundary operator ∂p commutes with the group operations. If c1 and c2 are p-chains, then: ∂p(c1 +(p) c2) = ∂pc1 +(p−1) ∂pc2, where we qualify the addition operators on each side of the equation. This means that ∂p induces a group homomorphism or a mapping between groups that preserves the group structures: ∂p : Cp → Cp−1. We can arrange the chain groups into a chain complex, effectively replacing the geometric complex K with a series of algebraic modules. . . .

∂p+2

− − → Cp+1

∂p+1

− − → Cp

∂p

− → Cp−1

∂p−1

− − − → . . .

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 23 / 41

slide-81
SLIDE 81

Chains Pages 8–9

The Chain Complex

∂3

− →

∂2

− →

∂1

− →

∂0

− → 0 Boundary Homomorphisms The boundary operator ∂p commutes with the group operations. If c1 and c2 are p-chains, then: ∂p(c1 +(p) c2) = ∂pc1 +(p−1) ∂pc2, where we qualify the addition operators on each side of the equation. This means that ∂p induces a group homomorphism or a mapping between groups that preserves the group structures: ∂p : Cp → Cp−1. We can arrange the chain groups into a chain complex, effectively replacing the geometric complex K with a series of algebraic modules. . . .

∂p+2

− − → Cp+1

∂p+1

− − → Cp

∂p

− → Cp−1

∂p−1

− − − → . . .

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 23 / 41

slide-82
SLIDE 82

Chains Pages 8–9

But like .. what’s the point?

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 24 / 41

slide-83
SLIDE 83

Chains Pages 8–9

Boundary Matrices

Chains Groups as Vector Spaces Let {σi}i and {τj}j denote the p-simplices and (p − 1)-simplices of K. The boundary of a p-chain c =

i aiσi is the (p − 1)-chain

∂pc = ∂p

  • i

aiσi

  • =
  • i

ai∂pσi =

  • i

ai

  • j

∂j,i

p τj =

  • j

bjτj, where bi =

i

  • ai∂j,i

p

  • , and ∂j,i

p

is 1 if τj ∈ ∂pσi and 0 otherwise. With that, we can express the boundary operator ∂p in matrix form. ∂pc =      b1 b2 . . . bnp−1      , ∂p =       ∂1,1

p

∂1,2

p

· · · ∂1,np

p

∂2,1

p

∂2,2

p

· · · ∂2,np

p

. . . . . . ... . . . ∂np−1,0

p

∂np−1,2

p

· · · ∂np−1,np

p

      , c =      a1 a2 . . . anp     

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 25 / 41

slide-84
SLIDE 84

Chains Pages 8–9

Boundary Matrices

Chains Groups as Vector Spaces Let {σi}i and {τj}j denote the p-simplices and (p − 1)-simplices of K. The boundary of a p-chain c =

i aiσi is the (p − 1)-chain

∂pc = ∂p

  • i

aiσi

  • =
  • i

ai∂pσi =

  • i

ai

  • j

∂j,i

p τj =

  • j

bjτj, where bi =

i

  • ai∂j,i

p

  • , and ∂j,i

p

is 1 if τj ∈ ∂pσi and 0 otherwise. With that, we can express the boundary operator ∂p in matrix form. ∂pc =      b1 b2 . . . bnp−1      , ∂p =       ∂1,1

p

∂1,2

p

· · · ∂1,np

p

∂2,1

p

∂2,2

p

· · · ∂2,np

p

. . . . . . ... . . . ∂np−1,0

p

∂np−1,2

p

· · · ∂np−1,np

p

      , c =      a1 a2 . . . anp     

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 25 / 41

slide-85
SLIDE 85

Chains Pages 8–9

Boundary Matrices

Chains Groups as Vector Spaces Let {σi}i and {τj}j denote the p-simplices and (p − 1)-simplices of K. The boundary of a p-chain c =

i aiσi is the (p − 1)-chain

∂pc = ∂p

  • i

aiσi

  • =
  • i

ai∂pσi =

  • i

ai

  • j

∂j,i

p τj =

  • j

bjτj, where bi =

i

  • ai∂j,i

p

  • , and ∂j,i

p

is 1 if τj ∈ ∂pσi and 0 otherwise. With that, we can express the boundary operator ∂p in matrix form. ∂pc =      b1 b2 . . . bnp−1      , ∂p =       ∂1,1

p

∂1,2

p

· · · ∂1,np

p

∂2,1

p

∂2,2

p

· · · ∂2,np

p

. . . . . . ... . . . ∂np−1,0

p

∂np−1,2

p

· · · ∂np−1,np

p

      , c =      a1 a2 . . . anp     

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 25 / 41

slide-86
SLIDE 86

Chains Pages 8–9

Boundaries and Cycles

Which Boundaries are Useful? Consider the 1-chains on the torus to the right. We have a blue and a red loop. Also the boundary of the black triangle. Which of those help distinguish the torus from a sphere? Chains with No Boundary Any such chain is called a p-cycle. A p-cycle that arises as the boundary of a (p + 1)-chain is a p-boundary. We need a way to count distinct p-cycles while ignoring all p-boundaries. Observe that ∂p ◦ ∂p+1 = 0.

Figure from Wikipedia [18] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 26 / 41

slide-87
SLIDE 87

Chains Pages 8–9

Boundaries and Cycles

Which Boundaries are Useful? Consider the 1-chains on the torus to the right. We have a blue and a red loop. Also the boundary of the black triangle. Which of those help distinguish the torus from a sphere? Chains with No Boundary We are particularly interested in p-chains c satisfying ∂pc = ∅. Any such chain is called a p-cycle. A p-cycle that arises as the boundary of a (p + 1)-chain is a p-boundary. We need a way to count distinct p-cycles while ignoring all p-boundaries. Observe that ∂p ◦ ∂p+1 = 0.

Figure from Wikipedia [18] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 26 / 41

slide-88
SLIDE 88

Chains Pages 8–9

Boundaries and Cycles

Which Boundaries are Useful? Consider the 1-chains on the torus to the right. We have a blue and a red loop. Also the boundary of the black triangle. Which of those help distinguish the torus from a sphere? Chains with No Boundary We are particularly interested in p-chains c satisfying ∂pc = ∅. Any such chain is called a p-cycle. A p-cycle that arises as the boundary of a (p + 1)-chain is a p-boundary. We need a way to count distinct p-cycles while ignoring all p-boundaries. Observe that ∂p ◦ ∂p+1 = 0.

Figure from Wikipedia [18] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 26 / 41

slide-89
SLIDE 89

Chains Pages 8–9

Boundaries and Cycles

Which Boundaries are Useful? Consider the 1-chains on the torus to the right. We have a blue and a red loop. Also the boundary of the black triangle. Which of those help distinguish the torus from a sphere? Chains with No Boundary We are particularly interested in p-chains c satisfying ∂pc = ∅. Any such chain is called a p-cycle. A p-cycle that arises as the boundary of a (p + 1)-chain is a p-boundary. We need a way to count distinct p-cycles while ignoring all p-boundaries. Observe that ∂p ◦ ∂p+1 = 0.

Figure from Wikipedia [18] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 26 / 41

slide-90
SLIDE 90

Chains Pages 8–9

Boundaries and Cycles

Which Boundaries are Useful? Consider the 1-chains on the torus to the right. We have a blue and a red loop. Also the boundary of the black triangle. Which of those help distinguish the torus from a sphere? Chains with No Boundary We are particularly interested in p-chains c satisfying ∂pc = ∅. Any such chain is called a p-cycle. A p-cycle that arises as the boundary of a (p + 1)-chain is a p-boundary. We need a way to count distinct p-cycles while ignoring all p-boundaries. Observe that ∂p ◦ ∂p+1 = 0.

Figure from Wikipedia [18] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 26 / 41

slide-91
SLIDE 91

Chains Pages 8–9

Boundaries and Cycles

Which Boundaries are Useful? Consider the 1-chains on the torus to the right. We have a blue and a red loop. Also the boundary of the black triangle. Which of those help distinguish the torus from a sphere? Chains with No Boundary We are particularly interested in p-chains c satisfying ∂pc = ∅. Any such chain is called a p-cycle. A p-cycle that arises as the boundary of a (p + 1)-chain is a p-boundary. We need a way to count distinct p-cycles while ignoring all p-boundaries. Observe that ∂p ◦ ∂p+1 = 0.

Figure from Wikipedia [18] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 26 / 41

slide-92
SLIDE 92

Chains Pages 8–9

Boundaries and Cycles

Which Boundaries are Useful? Consider the 1-chains on the torus to the right. We have a blue and a red loop. Also the boundary of the black triangle. Which of those help distinguish the torus from a sphere? Chains with No Boundary We are particularly interested in p-chains c satisfying ∂pc = ∅. Any such chain is called a p-cycle. A p-cycle that arises as the boundary of a (p + 1)-chain is a p-boundary. We need a way to count distinct p-cycles while ignoring all p-boundaries. Observe that ∂p ◦ ∂p+1 = 0. The fundamental lemma of homology!

Figure from Wikipedia [18] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 26 / 41

slide-93
SLIDE 93

Homology Page 10

Equivalence and Quotients

Boundaries and Cycles as Subgroups Denote all p-cycles by Zp and all p-boundaries by Bp. As the boundary map commutes with addition, Zp is a subgroup of Cp. Likewise, Bp is a subgroup of Zp. For any p-cycle α ∈ Zp and a p-boundary β, we get that α + β ∈ Zp. Algebra II We define an equivalence relation that identifies a pair of elements α, α′ ∈ Zp whenever α′ = α + β for some β ∈ Bp. The equivalence relation partitions Zp into equivalence classes or cosets; the coset [α] consists of all the elements identified with α. Then, the collection of cosets together with the addition operator give rise to the quotient group Zp/Bp of the elements in Zp modulo the elements in Bp.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 27 / 41

slide-94
SLIDE 94

Homology Page 10

Equivalence and Quotients

Boundaries and Cycles as Subgroups Denote all p-cycles by Zp and all p-boundaries by Bp. As the boundary map commutes with addition, Zp is a subgroup of Cp. Likewise, Bp is a subgroup of Zp. For any p-cycle α ∈ Zp and a p-boundary β, we get that α + β ∈ Zp. Algebra II We define an equivalence relation that identifies a pair of elements α, α′ ∈ Zp whenever α′ = α + β for some β ∈ Bp. The equivalence relation partitions Zp into equivalence classes or cosets; the coset [α] consists of all the elements identified with α. Then, the collection of cosets together with the addition operator give rise to the quotient group Zp/Bp of the elements in Zp modulo the elements in Bp.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 27 / 41

slide-95
SLIDE 95

Homology Page 10

Equivalence and Quotients

Boundaries and Cycles as Subgroups Denote all p-cycles by Zp and all p-boundaries by Bp. As the boundary map commutes with addition, Zp is a subgroup of Cp. Likewise, Bp is a subgroup of Zp. For any p-cycle α ∈ Zp and a p-boundary β, we get that α + β ∈ Zp. Algebra II We define an equivalence relation that identifies a pair of elements α, α′ ∈ Zp whenever α′ = α + β for some β ∈ Bp. The equivalence relation partitions Zp into equivalence classes or cosets; the coset [α] consists of all the elements identified with α. Then, the collection of cosets together with the addition operator give rise to the quotient group Zp/Bp of the elements in Zp modulo the elements in Bp.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 27 / 41

slide-96
SLIDE 96

Homology Page 10

Equivalence and Quotients

Boundaries and Cycles as Subgroups Denote all p-cycles by Zp and all p-boundaries by Bp. As the boundary map commutes with addition, Zp is a subgroup of Cp. Likewise, Bp is a subgroup of Zp. For any p-cycle α ∈ Zp and a p-boundary β, we get that α + β ∈ Zp. Algebra II We define an equivalence relation that identifies a pair of elements α, α′ ∈ Zp whenever α′ = α + β for some β ∈ Bp. The equivalence relation partitions Zp into equivalence classes or cosets; the coset [α] consists of all the elements identified with α. Then, the collection of cosets together with the addition operator give rise to the quotient group Zp/Bp of the elements in Zp modulo the elements in Bp.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 27 / 41

slide-97
SLIDE 97

Homology Page 10

Equivalence and Quotients

Boundaries and Cycles as Subgroups Denote all p-cycles by Zp and all p-boundaries by Bp. As the boundary map commutes with addition, Zp is a subgroup of Cp. Likewise, Bp is a subgroup of Zp. For any p-cycle α ∈ Zp and a p-boundary β, we get that α + β ∈ Zp. Algebra II We define an equivalence relation that identifies a pair of elements α, α′ ∈ Zp whenever α′ = α + β for some β ∈ Bp. The equivalence relation partitions Zp into equivalence classes or cosets; the coset [α] consists of all the elements identified with α. Then, the collection of cosets together with the addition operator give rise to the quotient group Zp/Bp of the elements in Zp modulo the elements in Bp.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 27 / 41

slide-98
SLIDE 98

Homology Page 10

Equivalence and Quotients

Boundaries and Cycles as Subgroups Denote all p-cycles by Zp and all p-boundaries by Bp. As the boundary map commutes with addition, Zp is a subgroup of Cp. Likewise, Bp is a subgroup of Zp. For any p-cycle α ∈ Zp and a p-boundary β, we get that α + β ∈ Zp. Algebra II We define an equivalence relation that identifies a pair of elements α, α′ ∈ Zp whenever α′ = α + β for some β ∈ Bp. The equivalence relation partitions Zp into equivalence classes or cosets; the coset [α] consists of all the elements identified with α. Then, the collection of cosets together with the addition operator give rise to the quotient group Zp/Bp of the elements in Zp modulo the elements in Bp.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 27 / 41

slide-99
SLIDE 99

Homology Page 10

Equivalence and Quotients

Boundaries and Cycles as Subgroups Denote all p-cycles by Zp and all p-boundaries by Bp. As the boundary map commutes with addition, Zp is a subgroup of Cp. Likewise, Bp is a subgroup of Zp. For any p-cycle α ∈ Zp and a p-boundary β, we get that α + β ∈ Zp. Algebra II We define an equivalence relation that identifies a pair of elements α, α′ ∈ Zp whenever α′ = α + β for some β ∈ Bp. The equivalence relation partitions Zp into equivalence classes or cosets; the coset [α] consists of all the elements identified with α. Then, the collection of cosets together with the addition operator give rise to the quotient group Zp/Bp of the elements in Zp modulo the elements in Bp.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 27 / 41

slide-100
SLIDE 100

Homology Page 10

Homology

Algebra III Take a group (A, •).

The order of the group is the cardinality of A. The rank of the group is the cardinality of a minimal generator.

For a set of binary vectors, such as Cp or Zp

The order is the number of distinct binary vectors. The rank is the number basis vectors that span the entire set.

Homology Groups and Betti Numbers We can now defined the p-th homology group as Hp = Zp/Bp. The rank of Hp is known as the p-th Betti number βp βp = rank Hp = rank Zp − rank Bp.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 28 / 41

slide-101
SLIDE 101

Homology Page 10

Homology

Algebra III Take a group (A, •).

The order of the group is the cardinality of A. The rank of the group is the cardinality of a minimal generator.

For a set of binary vectors, such as Cp or Zp

The order is the number of distinct binary vectors. The rank is the number basis vectors that span the entire set.

Homology Groups and Betti Numbers We can now defined the p-th homology group as Hp = Zp/Bp. The rank of Hp is known as the p-th Betti number βp βp = rank Hp = rank Zp − rank Bp.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 28 / 41

slide-102
SLIDE 102

Homology Page 10

Homology

Algebra III Take a group (A, •).

The order of the group is the cardinality of A. The rank of the group is the cardinality of a minimal generator.

For a set of binary vectors, such as Cp or Zp

The order is the number of distinct binary vectors. The rank is the number basis vectors that span the entire set.

Homology Groups and Betti Numbers We can now defined the p-th homology group as Hp = Zp/Bp. The rank of Hp is known as the p-th Betti number βp βp = rank Hp = rank Zp − rank Bp.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 28 / 41

slide-103
SLIDE 103

Homology Page 10

Homology

Algebra III Take a group (A, •).

The order of the group is the cardinality of A. The rank of the group is the cardinality of a minimal generator.

For a set of binary vectors, such as Cp or Zp

The order is the number of distinct binary vectors. The rank is the number basis vectors that span the entire set.

Homology Groups and Betti Numbers We can now defined the p-th homology group as Hp = Zp/Bp. The rank of Hp is known as the p-th Betti number βp βp = rank Hp = rank Zp − rank Bp.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 28 / 41

slide-104
SLIDE 104

Homology Page 10

Homology

Algebra III Take a group (A, •).

The order of the group is the cardinality of A. The rank of the group is the cardinality of a minimal generator.

For a set of binary vectors, such as Cp or Zp

The order is the number of distinct binary vectors. The rank is the number basis vectors that span the entire set.

Homology Groups and Betti Numbers We can now defined the p-th homology group as Hp = Zp/Bp. The rank of Hp is known as the p-th Betti number βp βp = rank Hp = rank Zp − rank Bp.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 28 / 41

slide-105
SLIDE 105

Homology Page 10

Homology

Algebra III Take a group (A, •).

The order of the group is the cardinality of A. The rank of the group is the cardinality of a minimal generator.

For a set of binary vectors, such as Cp or Zp

The order is the number of distinct binary vectors. The rank is the number basis vectors that span the entire set.

Homology Groups and Betti Numbers We can now defined the p-th homology group as Hp = Zp/Bp. The rank of Hp is known as the p-th Betti number βp βp = rank Hp = rank Zp − rank Bp.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 28 / 41

slide-106
SLIDE 106

Homology Page 10

Homology

Algebra III Take a group (A, •).

The order of the group is the cardinality of A. The rank of the group is the cardinality of a minimal generator.

For a set of binary vectors, such as Cp or Zp

The order is the number of distinct binary vectors. The rank is the number basis vectors that span the entire set.

Homology Groups and Betti Numbers We can now defined the p-th homology group as Hp = Zp/Bp. The rank of Hp is known as the p-th Betti number βp βp = rank Hp = rank Zp − rank Bp.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 28 / 41

slide-107
SLIDE 107

Homology Page 10

Homology

Algebra III Take a group (A, •).

The order of the group is the cardinality of A. The rank of the group is the cardinality of a minimal generator.

For a set of binary vectors, such as Cp or Zp

The order is the number of distinct binary vectors. The rank is the number basis vectors that span the entire set.

Homology Groups and Betti Numbers We can now defined the p-th homology group as Hp = Zp/Bp. The rank of Hp is known as the p-th Betti number βp βp = rank Hp = rank Zp − rank Bp.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 28 / 41

slide-108
SLIDE 108

Homology Page 10

Rank-Nullity

Algebra IV Let V and W be vector spaces and T : V → W a linear transformation. We define the kernel of T as the subspace of V , denoted Ker(T) of all vectors v such that T(v) = 0. The remaining elements v ∈ V for which T(v) = 0 are mapped to a subspace of W , i.e., the image of T. The rank-nullity theorem states that dim V = dim Image(T) + dim Ker(T). In the Context of Homology Zp is the kernel of ∂p, while Bp−1 is its image. Hence, rank Cp = rank Zp + rank Bp−1.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 29 / 41

slide-109
SLIDE 109

Homology Page 10

Rank-Nullity

Algebra IV Let V and W be vector spaces and T : V → W a linear transformation. We define the kernel of T as the subspace of V , denoted Ker(T) of all vectors v such that T(v) = 0. The remaining elements v ∈ V for which T(v) = 0 are mapped to a subspace of W , i.e., the image of T. The rank-nullity theorem states that dim V = dim Image(T) + dim Ker(T). In the Context of Homology Zp is the kernel of ∂p, while Bp−1 is its image. Hence, rank Cp = rank Zp + rank Bp−1.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 29 / 41

slide-110
SLIDE 110

Homology Page 10

Rank-Nullity

Algebra IV Let V and W be vector spaces and T : V → W a linear transformation. We define the kernel of T as the subspace of V , denoted Ker(T) of all vectors v such that T(v) = 0. The remaining elements v ∈ V for which T(v) = 0 are mapped to a subspace of W , i.e., the image of T. The rank-nullity theorem states that dim V = dim Image(T) + dim Ker(T). In the Context of Homology Zp is the kernel of ∂p, while Bp−1 is its image. Hence, rank Cp = rank Zp + rank Bp−1.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 29 / 41

slide-111
SLIDE 111

Homology Page 10

Rank-Nullity

Algebra IV Let V and W be vector spaces and T : V → W a linear transformation. We define the kernel of T as the subspace of V , denoted Ker(T) of all vectors v such that T(v) = 0. The remaining elements v ∈ V for which T(v) = 0 are mapped to a subspace of W , i.e., the image of T. The rank-nullity theorem states that dim V = dim Image(T) + dim Ker(T). In the Context of Homology Zp is the kernel of ∂p, while Bp−1 is its image. Hence, rank Cp = rank Zp + rank Bp−1.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 29 / 41

slide-112
SLIDE 112

Homology Page 10

Rank-Nullity

Algebra IV Let V and W be vector spaces and T : V → W a linear transformation. We define the kernel of T as the subspace of V , denoted Ker(T) of all vectors v such that T(v) = 0. The remaining elements v ∈ V for which T(v) = 0 are mapped to a subspace of W , i.e., the image of T. The rank-nullity theorem states that dim V = dim Image(T) + dim Ker(T). In the Context of Homology Zp is the kernel of ∂p, while Bp−1 is its image. Hence, rank Cp = rank Zp + rank Bp−1.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 29 / 41

slide-113
SLIDE 113

Homology Page 10

Rank-Nullity

Algebra IV Let V and W be vector spaces and T : V → W a linear transformation. We define the kernel of T as the subspace of V , denoted Ker(T) of all vectors v such that T(v) = 0. The remaining elements v ∈ V for which T(v) = 0 are mapped to a subspace of W , i.e., the image of T. The rank-nullity theorem states that dim V = dim Image(T) + dim Ker(T). In the Context of Homology Zp is the kernel of ∂p, while Bp−1 is its image. Hence, rank Cp = rank Zp + rank Bp−1.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 29 / 41

slide-114
SLIDE 114

Homology Page 10

Rank-Nullity

Bp+1 Zp+1 Cp+1 Bp Zp Cp Bp−1 Zp−1 Cp−1 ∂p+2 ∂p+1 ∂p ∂p−1

In the Context of Homology Zp is the kernel of ∂p, while Bp−1 is its image. Hence, rank Cp = rank Zp + rank Bp−1.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 30 / 41

slide-115
SLIDE 115

Homology Page 10

The Euler Characteristic Revisited

A Generalized Formula Recalling the alternating sum in Euler’s polyhedron formula, we may write χ =

  • p≥0

(−1)p rank Cp =

  • p≥0

(−1)p(rank Zp + rank Bp−1) =

  • p≥0

(−1)p(rank Zp − rank Bp) =

  • p≥0

(−1)pβp. (we skip some technicalities underlying the substitution highlighted in red) Note that the homology groups and the Betti numbers do not depend on the specific triangulation of the underlying space, i.e., they are indeed topological invariants.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 31 / 41

slide-116
SLIDE 116

Homology Page 10

The Euler Characteristic Revisited

A Generalized Formula Recalling the alternating sum in Euler’s polyhedron formula, we may write χ =

  • p≥0

(−1)p rank Cp =

  • p≥0

(−1)p(rank Zp + rank Bp−1) =

  • p≥0

(−1)p(rank Zp − rank Bp) =

  • p≥0

(−1)pβp. (we skip some technicalities underlying the substitution highlighted in red) Note that the homology groups and the Betti numbers do not depend on the specific triangulation of the underlying space, i.e., they are indeed topological invariants.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 31 / 41

slide-117
SLIDE 117

Homology Page 10

Matrix Reduction

Rank Computations To compute βp as the difference between rank Zp and rank Bp we work with the matrix representation of the boundary map ∂p. Using a sequence of row/column operations, the matrix is reduced without changing its rank into a simple form easily providing the ranks. A variant of Gaussian elimination is used to get the Smith normal form.

rank Bp−1 rank Cp−1 rank Cp rank Zp

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 32 / 41

slide-118
SLIDE 118

Homology Page 10

Matrix Reduction

Rank Computations To compute βp as the difference between rank Zp and rank Bp we work with the matrix representation of the boundary map ∂p. Using a sequence of row/column operations, the matrix is reduced without changing its rank into a simple form easily providing the ranks. A variant of Gaussian elimination is used to get the Smith normal form.

rank Bp−1 rank Cp−1 rank Cp rank Zp

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 32 / 41

slide-119
SLIDE 119

Homology Page 10

Matrix Reduction

Rank Computations To compute βp as the difference between rank Zp and rank Bp we work with the matrix representation of the boundary map ∂p. Using a sequence of row/column operations, the matrix is reduced without changing its rank into a simple form easily providing the ranks. A variant of Gaussian elimination is used to get the Smith normal form.

rank Bp−1 rank Cp−1 rank Cp rank Zp

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 32 / 41

slide-120
SLIDE 120

Functoriality Pages 10.5–12

Induced Maps on Homology

. . . Cp+1( ˆ X) Cp( ˆ X) Cp−1( ˆ X) . . . . . . Cp+1( ˆ Y ) Cp( ˆ Y ) Cp−1( ˆ Y ) . . .

∂ ˆ

X

∂ ˆ

X

ˆ f# ∂ ˆ

X

ˆ f# ∂ ˆ

X

ˆ f# ∂ ˆ

Y

∂ ˆ

Y

∂ ˆ

Y

∂ ˆ

Y

Functoriality A simplicial map ˆ f∆ : ˆ X → ˆ Y maps simplices in ˆ X to simplices in ˆ Y . A simplicial map extends to a map from the chains of ˆ X to the chains of ˆ Y , which we denote by ˆ f# : Cp( ˆ X) → Cp( ˆ Y ), as shown in the diagram. As ˆ f# commutes with boundary maps, it also maps the cycles and boundaries of ˆ X to the cycles and boundaries of ˆ Y , respectively. Hence, ˆ f# maps the homology groups of ˆ X to the homology groups of ˆ Y , i.e., it induces a map on homology denoted by H(ˆ f ) : Hp( ˆ X) → Hp( ˆ Y ).

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 33 / 41

slide-121
SLIDE 121

Functoriality Pages 10.5–12

Induced Maps on Homology

. . . Cp+1( ˆ X) Cp( ˆ X) Cp−1( ˆ X) . . . . . . Cp+1( ˆ Y ) Cp( ˆ Y ) Cp−1( ˆ Y ) . . .

∂ ˆ

X

∂ ˆ

X

ˆ f# ∂ ˆ

X

ˆ f# ∂ ˆ

X

ˆ f# ∂ ˆ

Y

∂ ˆ

Y

∂ ˆ

Y

∂ ˆ

Y

Functoriality A simplicial map ˆ f∆ : ˆ X → ˆ Y maps simplices in ˆ X to simplices in ˆ Y . A simplicial map extends to a map from the chains of ˆ X to the chains of ˆ Y , which we denote by ˆ f# : Cp( ˆ X) → Cp( ˆ Y ), as shown in the diagram. As ˆ f# commutes with boundary maps, it also maps the cycles and boundaries of ˆ X to the cycles and boundaries of ˆ Y , respectively. Hence, ˆ f# maps the homology groups of ˆ X to the homology groups of ˆ Y , i.e., it induces a map on homology denoted by H(ˆ f ) : Hp( ˆ X) → Hp( ˆ Y ).

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 33 / 41

slide-122
SLIDE 122

Functoriality Pages 10.5–12

Induced Maps on Homology

. . . Cp+1( ˆ X) Cp( ˆ X) Cp−1( ˆ X) . . . . . . Cp+1( ˆ Y ) Cp( ˆ Y ) Cp−1( ˆ Y ) . . .

∂ ˆ

X

∂ ˆ

X

ˆ f# ∂ ˆ

X

ˆ f# ∂ ˆ

X

ˆ f# ∂ ˆ

Y

∂ ˆ

Y

∂ ˆ

Y

∂ ˆ

Y

Functoriality A simplicial map ˆ f∆ : ˆ X → ˆ Y maps simplices in ˆ X to simplices in ˆ Y . A simplicial map extends to a map from the chains of ˆ X to the chains of ˆ Y , which we denote by ˆ f# : Cp( ˆ X) → Cp( ˆ Y ), as shown in the diagram. As ˆ f# commutes with boundary maps, it also maps the cycles and boundaries of ˆ X to the cycles and boundaries of ˆ Y , respectively. Hence, ˆ f# maps the homology groups of ˆ X to the homology groups of ˆ Y , i.e., it induces a map on homology denoted by H(ˆ f ) : Hp( ˆ X) → Hp( ˆ Y ).

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 33 / 41

slide-123
SLIDE 123

Functoriality Pages 10.5–12

Induced Maps on Homology

. . . Cp+1( ˆ X) Cp( ˆ X) Cp−1( ˆ X) . . . . . . Cp+1( ˆ Y ) Cp( ˆ Y ) Cp−1( ˆ Y ) . . .

∂ ˆ

X

∂ ˆ

X

ˆ f# ∂ ˆ

X

ˆ f# ∂ ˆ

X

ˆ f# ∂ ˆ

Y

∂ ˆ

Y

∂ ˆ

Y

∂ ˆ

Y

Functoriality A simplicial map ˆ f∆ : ˆ X → ˆ Y maps simplices in ˆ X to simplices in ˆ Y . A simplicial map extends to a map from the chains of ˆ X to the chains of ˆ Y , which we denote by ˆ f# : Cp( ˆ X) → Cp( ˆ Y ), as shown in the diagram. As ˆ f# commutes with boundary maps, it also maps the cycles and boundaries of ˆ X to the cycles and boundaries of ˆ Y , respectively. Hence, ˆ f# maps the homology groups of ˆ X to the homology groups of ˆ Y , i.e., it induces a map on homology denoted by H(ˆ f ) : Hp( ˆ X) → Hp( ˆ Y ).

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 33 / 41

slide-124
SLIDE 124

Functoriality Pages 10.5–12

Applications of H(ˆ f ) : Hp( ˆ X) → Hp( ˆ Y )

Y1 Y2 X

f f1 f2

Indirect Inference If a map f : Y1 → Y2 factors through f1 : Y1 → X and f2 : X → Y2 such that f = f2 ◦ f1, then we can infer the homology groups of X using knowledge of the homology groups of Y1 and Y2.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 34 / 41

slide-125
SLIDE 125

Functoriality Pages 10.5–12

Brouwer’s Fixed Point Theorem

x f(x) r(x)

∂D D ∂D

ι Id r

F2 F2

H(ι) Id H(r)

Every continuous map from the disc to itself has a fixed point Assume that f : D → D is continuous and has no fixed point. Define r : D → ∂D as the intersection of the ray form x to f (x) with ∂D. As f is continuous, so is r. Hence, the diagram in the middle commutes. Passing through homology, as shown to the right, we get that

H1(∂D) ∼ = F2 while H1(D) = 0. But then, H(r) ◦ H(ι) = Id. A contradiction!

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 35 / 41

slide-126
SLIDE 126

Functoriality Pages 10.5–12

Brouwer’s Fixed Point Theorem

x f(x) r(x)

∂D D ∂D

ι Id r

F2 F2

H(ι) Id H(r)

Every continuous map from the disc to itself has a fixed point Assume that f : D → D is continuous and has no fixed point. Define r : D → ∂D as the intersection of the ray form x to f (x) with ∂D. As f is continuous, so is r. Hence, the diagram in the middle commutes. Passing through homology, as shown to the right, we get that

H1(∂D) ∼ = F2 while H1(D) = 0. But then, H(r) ◦ H(ι) = Id. A contradiction!

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 35 / 41

slide-127
SLIDE 127

Functoriality Pages 10.5–12

Brouwer’s Fixed Point Theorem

x f(x) r(x)

∂D D ∂D

ι Id r

F2 F2

H(ι) Id H(r)

Every continuous map from the disc to itself has a fixed point Assume that f : D → D is continuous and has no fixed point. Define r : D → ∂D as the intersection of the ray form x to f (x) with ∂D. As f is continuous, so is r. Hence, the diagram in the middle commutes. Passing through homology, as shown to the right, we get that

H1(∂D) ∼ = F2 while H1(D) = 0. But then, H(r) ◦ H(ι) = Id. A contradiction!

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 35 / 41

slide-128
SLIDE 128

Functoriality Pages 10.5–12

Brouwer’s Fixed Point Theorem

x f(x) r(x)

∂D D ∂D

ι Id r

F2 F2

H(ι) Id H(r)

Every continuous map from the disc to itself has a fixed point Assume that f : D → D is continuous and has no fixed point. Define r : D → ∂D as the intersection of the ray form x to f (x) with ∂D. As f is continuous, so is r. Hence, the diagram in the middle commutes. Passing through homology, as shown to the right, we get that

H1(∂D) ∼ = F2 while H1(D) = 0. But then, H(r) ◦ H(ι) = Id. A contradiction!

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 35 / 41

slide-129
SLIDE 129

Functoriality Pages 10.5–12

Brouwer’s Fixed Point Theorem

x f(x) r(x)

∂D D ∂D

ι Id r

F2 F2

H(ι) Id H(r)

Every continuous map from the disc to itself has a fixed point Assume that f : D → D is continuous and has no fixed point. Define r : D → ∂D as the intersection of the ray form x to f (x) with ∂D. As f is continuous, so is r. Hence, the diagram in the middle commutes. Passing through homology, as shown to the right, we get that

H1(∂D) ∼ = F2 while H1(D) = 0. But then, H(r) ◦ H(ι) = Id. A contradiction!

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 35 / 41

slide-130
SLIDE 130

Functoriality Pages 10.5–12

Brouwer’s Fixed Point Theorem

x f(x) r(x)

∂D D ∂D

ι Id r

F2 F2

H(ι) Id H(r)

Every continuous map from the disc to itself has a fixed point Assume that f : D → D is continuous and has no fixed point. Define r : D → ∂D as the intersection of the ray form x to f (x) with ∂D. As f is continuous, so is r. Hence, the diagram in the middle commutes. Passing through homology, as shown to the right, we get that

H1(∂D) ∼ = F2 while H1(D) = 0. But then, H(r) ◦ H(ι) = Id. A contradiction!

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 35 / 41

slide-131
SLIDE 131

Topological Data Analysis Pages 13–14

But, how do we get triangulations in the first place?

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 36 / 41

slide-132
SLIDE 132

Topological Data Analysis Pages 13–14

Sampled Data and Noise

The Cˆ ech Complex We are given a collection of sample points from an unknown underlying manifold or surface in Rd. We would like to infer some of the properties of the manifold. To do so, we grow a ball at each sample and take the union. Then, we derive an abstract simplicial complex from the union of balls.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 37 / 41

slide-133
SLIDE 133

Topological Data Analysis Pages 13–14

Sampled Data and Noise

The Cˆ ech Complex We are given a collection of sample points from an unknown underlying manifold or surface in Rd. We would like to infer some of the properties of the manifold. To do so, we grow a ball at each sample and take the union. Then, we derive an abstract simplicial complex from the union of balls.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 37 / 41

slide-134
SLIDE 134

Topological Data Analysis Pages 13–14

Sampled Data and Noise

The Cˆ ech Complex We are given a collection of sample points from an unknown underlying manifold or surface in Rd. We would like to infer some of the properties of the manifold. To do so, we grow a ball at each sample and take the union. Then, we derive an abstract simplicial complex from the union of balls.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 37 / 41

slide-135
SLIDE 135

Topological Data Analysis Pages 13–14

Sampled Data and Noise

The Cˆ ech Complex We are given a collection of sample points from an unknown underlying manifold or surface in Rd. We would like to infer some of the properties of the manifold. To do so, we grow a ball at each sample and take the union. Then, we derive an abstract simplicial complex from the union of balls.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 37 / 41

slide-136
SLIDE 136

Topological Data Analysis Pages 13–14

Sampled Data and Noise

The Cˆ ech Complex We are given a collection of sample points from an unknown underlying manifold or surface in Rd. We would like to infer some of the properties of the manifold. To do so, we grow a ball at each sample and take the union. Then, we derive an abstract simplicial complex from the union of balls.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 37 / 41

slide-137
SLIDE 137

Topological Data Analysis Pages 13–14

Sampled Data and Noise

The Cˆ ech Complex We are given a collection of sample points from an unknown underlying manifold or surface in Rd. We would like to infer some of the properties of the manifold. To do so, we grow a ball at each sample and take the union. Then, we derive an abstract simplicial complex from the union of balls.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 37 / 41

slide-138
SLIDE 138

Topological Data Analysis Pages 13–14

Sampled Data and Noise

The Cˆ ech Complex We are given a collection of sample points from an unknown underlying manifold or surface in Rd. We would like to infer some of the properties of the manifold. To do so, we grow a ball at each sample and take the union. Then, we derive an abstract simplicial complex from the union of balls.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 37 / 41

slide-139
SLIDE 139

Topological Data Analysis Pages 13–14

But, how do we choose the radii of the balls?

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 38 / 41

slide-140
SLIDE 140

Topological Data Analysis Pages 13–14

Scale and Persistence

Examining All Scales at Once As shown above, different radii may result in very different results. Imagine a continuous process growing the radii from r = 0 to r = ∞. Each topological feature will be present over an interval [a, b).

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 39 / 41

slide-141
SLIDE 141

Topological Data Analysis Pages 13–14

Scale and Persistence

Examining All Scales at Once As shown above, different radii may result in very different results. Imagine a continuous process growing the radii from r = 0 to r = ∞. Each topological feature will be present over an interval [a, b).

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 39 / 41

slide-142
SLIDE 142

Topological Data Analysis Pages 13–14

Scale and Persistence

Examining All Scales at Once As shown above, different radii may result in very different results. Imagine a continuous process growing the radii from r = 0 to r = ∞. Each topological feature will be present over an interval [a, b).

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 39 / 41

slide-143
SLIDE 143

Topological Data Analysis Pages 13–14

Scale and Persistence

Examining All Scales at Once Each topological feature will be present over an interval [a, b). Define the persistence of the feature as b − a. Features of high persistence are salient, while noise has low persistence.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 39 / 41

slide-144
SLIDE 144

Topological Data Analysis Pages 13–14

Scale and Persistence

Examining All Scales at Once Each topological feature will be present over an interval [a, b). Define the persistence of the feature as b − a. Features of high persistence are salient, while noise has low persistence.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 39 / 41

slide-145
SLIDE 145

Topological Data Analysis Pages 13–14

Scale and Persistence

Examining All Scales at Once Each topological feature will be present over an interval [a, b). Define the persistence of the feature as b − a. Features of high persistence are salient, while noise has low persistence.

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 39 / 41

slide-146
SLIDE 146

Conclusion

Summary

∂p =       ∂1,1

p

∂1,2

p

· · · ∂1,np

p

∂2,1

p

∂2,2

p

· · · ∂2,np

p

. . . . . . ... . . . ∂np−1,0

p

∂np−1,2

p

· · · ∂np−1,np

p

     

Hp = Zp/Bp Main Concepts Introduced Continuous deformations Simplicial approximations Chain algebra and homology Functoriality

Figure from Wikipedia [15] Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 40 / 41

slide-147
SLIDE 147

Conclusion

Summary

Key Concepts Missing Persistent homology Persistence diagrams and barcodes Simplicial collapses Sparse filtrations and interleaving

Ahmed Abdelkader (CS@UMD) Introduction to Computational Topology May 7th, 2020 41 / 41