Categorification of Reeb Graphs
Elizabeth Munch
University of Minnesota :: Institute for Mathematics and Its Applications
February 5, 2014
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 1 / 46 What’s the plan?
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 2 / 46 What’s the plan?
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 2 / 46 What’s the plan?
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 2 / 46 Original Reeb Graph construction
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 3 / 46 Original Reeb Graph construction
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 3 / 46 Original Reeb Graph Definition
Definition Given topological space X with a function f : X → R, say x ∼ y if x and y are in the same connected component of f −1(a). The Reeb graph of the function f is the space X/ ∼ with the quotient topology.
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 4 / 46 Morse Function Setting
Let f be Morse with distinct critical values. critical values ⇔ Nodes Index of critical values ⇔ Type of node
I Min/max ⇔ Deg 1 vertex I Saddle ⇔ Deg 3 vertex
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 5 / 46 Applications
Handle removal, from Wood 3D shape matching, from et al, 2002 Hilaga et.al, 2001
Basis for homology groups, Shape skeletonization, from Dey et. al, 2013 from Biasotti et.al, 2008
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 6 / 46 Smoothing
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 7 / 46 Smoothing
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 7 / 46 Other work Functional distortion distance [Bauer Ge Wang 2013] Topological simplification [Doraiswamy Natarajan 2012], [Ge et at 2011], [Pascucci et al 2007]
Smoothing
Goals Give a metric to compare Reeb graphs. Find a natural way to “smooth out” the Reeb graph to get rid of small holes arising from noise.
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 7 / 46 Smoothing
Goals Give a metric to compare Reeb graphs. Find a natural way to “smooth out” the Reeb graph to get rid of small holes arising from noise.
Other work Functional distortion distance [Bauer Ge Wang 2013] Topological simplification [Doraiswamy Natarajan 2012], [Ge et at 2011], [Pascucci et al 2007]
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 7 / 46 Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 8 / 46 Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 8 / 46 Goal: Define a Reeb graph as a topological space.
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 9 / 46 Generalized Reeb Graph
Definition Let Γ be a 1D simplicial complex. Let f :Γ → R. We call the pair (Γ, f ) a Reeb graph.
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 10 / 46 Generalized Reeb Graph - S constructible
Definition Let S ⊂ R be finite set of points. A Reeb graph (Γ, f ) is S-constructible if f takes vertices to points of S and edges to 1-cells homeomorphically.
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 11 / 46 Generalized Reeb Graph - S constructible
Definition Let S ⊂ R be finite set of points. A Reeb graph (Γ, f ) is S-constructible if f takes vertices to points of S and edges to 1-cells homeomorphically.
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 11 / 46 Generalized Reeb Graphs - Comparing S-constructible
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 12 / 46 Note: For S ⊆ T , we can think of an S-constructible Reeb graph as a T -constructible Reeb graph. So, we can compare S and U-constructible Reeb graphs by thinking of them as S ∪ U-constructible.
Generalized Reeb Graphs - Comparing S-constructible
Definition A Reeb graph morphism between two S-constructible Reeb graphs (Γ, f ) and (Λ, g) is a continuous map α : |Γ| → |Λ| such that ϕ |Γ| / |Λ| @@ ~ @@ ~~ f @@ ~~g @ ~~ R commutes.
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 12 / 46 Generalized Reeb Graphs - Comparing S-constructible
Definition A Reeb graph morphism between two S-constructible Reeb graphs (Γ, f ) and (Λ, g) is a continuous map α : |Γ| → |Λ| such that ϕ |Γ| / |Λ| @@ ~ @@ ~~ f @@ ~~g @ ~~ R commutes.
Note: For S ⊆ T , we can think of an S-constructible Reeb graph as a T -constructible Reeb graph. So, we can compare S and U-constructible Reeb graphs by thinking of them as S ∪ U-constructible.
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 12 / 46 Generalized Reeb Graphs
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 13 / 46 Generalized Reeb Graphs
Definition The set of Objects: Constructible Reeb graphs (Γ, f ) Morphisms: Reeb graph morphisms α : |Γ| → |Λ| such that
α |Γ| / |Λ| @@ ~ @@ ~~ f @@ ~~g @ ~~ R commutes. is a category which we will call ReebGraph.
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 13 / 46 New Goal: Define a Reeb graph as a functor.
Want: A method for comparing Reeb graphs.
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 14 / 46 Want: A method for comparing Reeb graphs.
New Goal: Define a Reeb graph as a functor.
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 14 / 46 Category Theory 101
Category A category C consists of objects (X , Y , Z, etc) with morphisms (→) between them satisfying some “niceness” properties (associativity, identity).
Objects Morphisms Set Sets Functions Open(R) U ⊂ R open ⊆ Int Open intervals (a, b) ⊂ R ⊆ Vect Vector spaces Linear Transformations Strat Reeb Graph (Γ, f ) Commutative triangle
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 15 / 46 Category Theory 102
Functors Functors are maps between categories which take objects to objects and morphisms to morphisms. X 7→ F (X ) (f : X → Y ) 7→ (F [f ]: F [X ] → F [Y ]) with some “niceness” properties (moving identity, associativity).
Examples
Hp : Top → Vect π0 : Top → Set
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 16 / 46 Definition A functor F : Open(R) → Set is a cosheaf if for all open U ⊂ R and covering {Ui } of U, F (U) is the colimit of the diagram
p1 ` F (U ∩ U ) / ` F (U ) F (U) i j / i / p2
Definition
A stalk of F at x, denoted Fx , is
Fx = lim F (U) x∈U
Cosheaves
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 17 / 46 Definition
A stalk of F at x, denoted Fx , is
Fx = lim F (U) x∈U
Cosheaves
Definition A functor F : Open(R) → Set is a cosheaf if for all open U ⊂ R and covering {Ui } of U, F (U) is the colimit of the diagram
p1 ` F (U ∩ U ) / ` F (U ) F (U) i j / i / p2
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 17 / 46 Cosheaves
Definition A functor F : Open(R) → Set is a cosheaf if for all open U ⊂ R and covering {Ui } of U, F (U) is the colimit of the diagram
p1 ` F (U ∩ U ) / ` F (U ) F (U) i j / i / p2
Definition
A stalk of F at x, denoted Fx , is
Fx = lim F (U) x∈U
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 17 / 46 Constructible Cosheaves
Definition A cosheaf F is compactly supported if the set of x which have nonempty stalks Fx is compact. A cosheaf is S-constructible if it is compactly supported and I ∩ S = J ∩ S implies F [I ⊂ J]: F (I ) → F (J) is an isomorphism.
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 18 / 46 How do you compare functors?
Definition A natural transformation ϕ : F ⇒ G between functors F , G : C → D is a set of maps ϕX for each X ∈ C such that
F [f ] F (X ) / F (Y )
ϕX ϕY G[f ] G(X ) / G(Y )
commutes for any morphism f : X → Y
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 19 / 46 Categorical Reeb Graph
Definition Cosh(R) consists of Objects: Constructible cosheaves F : Open(R) → Set Morphisms: Natural transformations
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 20 / 46 Review
Topological - ReebGraph Constructible 1D Functorial - Cosh(R) simplicial complexes Constructible Cosheaves (Γ, f ), f :Γ → R Maps between them Maps between them play given by natural nice with the original transformations function
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 21 / 46 Given Reeb graph (Γ, f ), f : X → R, construct the functor
f −1 π0 Open( ) / Open( ) / Top / Set R X 7
F
The Reeb functor and construction
Reeb ReebGraph / Cosh(R)
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 22 / 46 The Reeb functor and construction
Reeb ReebGraph / Cosh(R)
Given Reeb graph (Γ, f ), f : X → R, construct the functor
f −1 π0 Open( ) / Open( ) / Top / Set R X 7
F
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 22 / 46 Given constructible cosheaf F : Open(R) → Set, construct the topological space
Points: (t, p) for p ∈ Germt (F ).
Open sets: BU,c = {(t, p) | t ∈ U, πU (p) = c}
[Display locale of a cosheaf - Funk 1995]
The other functor and construction
Reeb / ReebGraph Cosh(R)
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 23 / 46 Given constructible cosheaf F : Open(R) → Set, construct the topological space
Points: (t, p) for p ∈ Germt (F ).
Open sets: BU,c = {(t, p) | t ∈ U, πU (p) = c}
[Display locale of a cosheaf - Funk 1995]
The other functor and construction
Reeb ReebGraph / Cosh( ) o R Beer
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 23 / 46 The other functor and construction
Reeb ReebGraph / Cosh( ) o R Beer
Given constructible cosheaf F : Open(R) → Set, construct the topological space
Points: (t, p) for p ∈ Germt (F ).
Open sets: BU,c = {(t, p) | t ∈ U, πU (p) = c}
[Display locale of a cosheaf - Funk 1995]
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 23 / 46 Equivalence of Categories
Theorem (de Silva, M., Patel) The Reeb functor
Reeb : ReebGraph → Cosh(R)
with the display functor
Beer : Cosh(R) → ReebGraph
is an equivalence of categories.
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 24 / 46 Why do we need 1 dimensional simplicial complexes?? Can apply Reeb functor to any topological space with function f : X → R. Why do we need R? Define analogues for functions f : X → Y ⇒ F : Open(Y) → Set. Why do we need Set? Define version for V ∗, the category of totally disconnected spaces.
Aside
Intense restrictions are used for equivalency theorem. No reason we need to be this stringent in general.
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 25 / 46 Can apply Reeb functor to any topological space with function f : X → R. Why do we need R? Define analogues for functions f : X → Y ⇒ F : Open(Y) → Set. Why do we need Set? Define version for V ∗, the category of totally disconnected spaces.
Aside
Intense restrictions are used for equivalency theorem. No reason we need to be this stringent in general. Why do we need 1 dimensional simplicial complexes??
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 25 / 46 Why do we need R? Define analogues for functions f : X → Y ⇒ F : Open(Y) → Set. Why do we need Set? Define version for V ∗, the category of totally disconnected spaces.
Aside
Intense restrictions are used for equivalency theorem. No reason we need to be this stringent in general. Why do we need 1 dimensional simplicial complexes?? Can apply Reeb functor to any topological space with function f : X → R.
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 25 / 46 Define analogues for functions f : X → Y ⇒ F : Open(Y) → Set. Why do we need Set? Define version for V ∗, the category of totally disconnected spaces.
Aside
Intense restrictions are used for equivalency theorem. No reason we need to be this stringent in general. Why do we need 1 dimensional simplicial complexes?? Can apply Reeb functor to any topological space with function f : X → R. Why do we need R?
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 25 / 46 Why do we need Set? Define version for V ∗, the category of totally disconnected spaces.
Aside
Intense restrictions are used for equivalency theorem. No reason we need to be this stringent in general. Why do we need 1 dimensional simplicial complexes?? Can apply Reeb functor to any topological space with function f : X → R. Why do we need R? Define analogues for functions f : X → Y ⇒ F : Open(Y) → Set.
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 25 / 46 Define version for V ∗, the category of totally disconnected spaces.
Aside
Intense restrictions are used for equivalency theorem. No reason we need to be this stringent in general. Why do we need 1 dimensional simplicial complexes?? Can apply Reeb functor to any topological space with function f : X → R. Why do we need R? Define analogues for functions f : X → Y ⇒ F : Open(Y) → Set. Why do we need Set?
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 25 / 46 Aside
Intense restrictions are used for equivalency theorem. No reason we need to be this stringent in general. Why do we need 1 dimensional simplicial complexes?? Can apply Reeb functor to any topological space with function f : X → R. Why do we need R? Define analogues for functions f : X → Y ⇒ F : Open(Y) → Set. Why do we need Set? Define version for V ∗, the category of totally disconnected spaces.
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 25 / 46 Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 26 / 46 Now where are we?
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 27 / 46 Background
Chazal – Cohen-Steiner – Glisse – Guibas – Oudot 2008
I Persistent Homology ⇒ Persistence Modules I ε-interleaving introduced to compare persistence modules Bubenik – Scott 2013
I Persistence Modules ⇒ Functors I ε-interleaving redefined to compare functors
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 28 / 46 F vs FTε Natural transformation ηε : F ⇒ FTε given by functor.
Squinting
Let Tε : Open(R) → Open(R) be the functor
ε Tε(U) = U = {x ∈ R | |x − U| < ε}.
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 29 / 46 Squinting
Let Tε : Open(R) → Open(R) be the functor
ε Tε(U) = U = {x ∈ R | |x − U| < ε}.
F vs FTε Natural transformation ηε : F ⇒ FTε given by functor.
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 29 / 46 ε-interleaving
Definition (ε-interleaving) Two categorical Reeb graphs F , G : Open(R) → Set are ε-interleaved if there are natural transformations ϕ : F ⇒ GTε and ψ : G ⇒ FTε such that the diagrams
ψ ϕ F GT G FT E +3 ε F +3 ε EEEE FFFF EEEE FFFF EEE ϕ·Tε FFF ψ·Tε η2ε EEE η2ε FFF E & F & FTεTε GTεTε commute.
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 30 / 46 Beer(FTε)?
Question Given a Reeb Graph (Γ, f ), f :Γ → R. Is there a Reeb graph fε :?Y? → Set such that Reeb(fε) = FTε?
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 31 / 46 Construction of FTε
Given a Reeb graph (Γ, f ), f :Γ → R, consider
fε :Γ × [−ε, ε] −→ R (x, t) 7−→ f (x) + t
Theorem (de Silva, M., Patel)
The classical Reeb graph Γ × [−ε, ε]/ ∼ is isomorphic to Beer(FTε) in the category of ReebGraph. Equivalently, Beer(Γ × [−ε, ε]/ ∼) is equal to FTε in the category of constructible cosheaves.
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 32 / 46 Example - Edge
fε :Γ × [−ε, ε] −→ R (x, t) 7−→ f (x) + t
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 33 / 46 Example - Edge
fε :Γ × [−ε, ε] −→ R (x, t) 7−→ f (x) + t
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 33 / 46 Example - Edge
fε :Γ × [−ε, ε] −→ R (x, t) 7−→ f (x) + t
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 33 / 46 Example - Edge
fε :Γ × [−ε, ε] −→ R (x, t) 7−→ f (x) + t
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 33 / 46 Example - Y
fε :Γ × [−ε, ε] −→ R (x, t) 7−→ f (x) + t
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 34 / 46 Example - Y
fε :Γ × [−ε, ε] −→ R (x, t) 7−→ f (x) + t
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 34 / 46 Example - Y
fε :Γ × [−ε, ε] −→ R (x, t) 7−→ f (x) + t
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 34 / 46 Example - Y
fε :Γ × [−ε, ε] −→ R (x, t) 7−→ f (x) + t
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 34 / 46 fε :Γ × [−ε, ε] −→ R (x, t) 7−→ f (x) + t
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 35 / 46 fε :Γ × [−ε, ε] −→ R (x, t) 7−→ f (x) + t
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 35 / 46 fε :Γ × [−ε, ε] −→ R (x, t) 7−→ f (x) + t
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 35 / 46 fε :Γ × [−ε, ε] −→ R (x, t) 7−→ f (x) + t
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 35 / 46 Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 35 / 46 Properties of the Construction
Lemma
Reeb(f ) and Reeb(fε) are ε-interleaved.
Homotopy equivalence −1 −1 ε fε (I ) ' f (I )
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 36 / 46 Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 37 / 46 Lucy, I’m home!
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 38 / 46 Goal
Given Reeb graph f :Γ → R Construct Reeb graph of fε :Γ × [−ε, ε] → R.
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 39 / 46 Dumb Algorithm
Construct Γ × [−ε, ε] Use standard out of the box algorithms
I Randomized O(m log m) [Harvey, Wang, Wenger, 2010] I Deterministic O(m log m) [Parsa, 2012]
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 40 / 46 ∼ −1 ε = −1 ε+δ −1 ε π0(f ([t] )) o π0(f ([t] )) / π0(f ([t + δ] )
Less Dumb Algorithm −1 −1 ε Utilize power of homotopy equivalence fε (I ) ' f (I ). Slide interval I = [t − ε, t + ε] up R, stopping whenever the top or bottom hits a vertex. Keep track of f −1(I ).
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 41 / 46 Less Dumb Algorithm −1 −1 ε Utilize power of homotopy equivalence fε (I ) ' f (I ). Slide interval I = [t − ε, t + ε] up R, stopping whenever the top or bottom hits a vertex. Keep track of f −1(I ).
∼ −1 ε = −1 ε+δ −1 ε π0(f ([t] )) o π0(f ([t] )) / π0(f ([t + δ] )
Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 41 / 46 Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 42 / 46 Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 42 / 46 Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 42 / 46 Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 42 / 46 Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 42 / 46 Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 42 / 46 Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 42 / 46 Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 42 / 46 Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 42 / 46 Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 42 / 46 Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 42 / 46 Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 42 / 46 Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 42 / 46 Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 42 / 46 Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 42 / 46 Liz Munch (IMA) Reeb Graphs - SAMSI February 5, 2014 42 / 46 I Non-injectivity ⇒ Merge two edges I Non-surjectivity ⇒ New component
I Non-injectivity ⇒ Split two edges I Non-surjectivity ⇒ End component