Computational Homology in Topological Dynamics ACAT School, Bologna, - - PowerPoint PPT Presentation

computational homology in topological dynamics
SMART_READER_LITE
LIVE PREVIEW

Computational Homology in Topological Dynamics ACAT School, Bologna, - - PowerPoint PPT Presentation

1 Computational Homology in Topological Dynamics ACAT School, Bologna, Italy MAY 26, 2012 Marian Mrozek Jagiellonian University, Krak ow Outline 2 Dynamical systems Rigorous numerics of dynamical systems Homological invariants of


slide-1
SLIDE 1

1

Computational Homology in Topological Dynamics

ACAT School, Bologna, Italy MAY 26, 2012 Marian Mrozek Jagiellonian University, Krak´

  • w
slide-2
SLIDE 2

Outline 2

  • Dynamical systems
  • Rigorous numerics of dynamical systems
  • Homological invariants of dynamical systems
  • Computing homological invariants
  • Homology algorithms for subsets of Rd
  • Homology algorithms for maps of subsets of Rd
  • Applications
slide-3
SLIDE 3

Goal 3

Input: representation of a subset X ⊂ Rd Output: Betti numbers, torsion coefficients, homology gener- ators

slide-4
SLIDE 4

Goal 3

Input: representation of a subset X ⊂ Rd Output: Betti numbers, torsion coefficients, homology gener- ators Input: representation of a continuous map f : X → Y of subsets of Rd Output: matrix of map induced in homology

slide-5
SLIDE 5

Prototype homology algorithm 4

In principle, the homology algorithm may look as follows:

slide-6
SLIDE 6

Prototype homology algorithm 4

In principle, the homology algorithm may look as follows: (1) Triangulate the space

slide-7
SLIDE 7

Prototype homology algorithm 4

In principle, the homology algorithm may look as follows: (1) Triangulate the space (2) Construct the matrices of boundary maps

slide-8
SLIDE 8

Prototype homology algorithm 4

In principle, the homology algorithm may look as follows: (1) Triangulate the space (2) Construct the matrices of boundary maps (3) Compute the kernel and the image

slide-9
SLIDE 9

Prototype homology algorithm 4

In principle, the homology algorithm may look as follows: (1) Triangulate the space (2) Construct the matrices of boundary maps (3) Compute the kernel and the image (4) Compute the quotient space

slide-10
SLIDE 10

Set representation 5 Simplicial complex

  • classical
slide-11
SLIDE 11

Set representation 6 Simplicial complex

  • classical

Cubical set

  • typical in imaging and rigorous

numerics

  • very efficient and fast represen-

tation (bitmaps)

slide-12
SLIDE 12

Set representation 7 Simplicial complex

  • classical

Cubical set

  • typical in imaging and rigorous

numerics

  • very efficient and fast represen-

tation (bitmaps)

General polyhedrons

  • most general
  • obtaining the chain complex is

not straightforward

slide-13
SLIDE 13

Cube triangulation 8

  • How many simplices do we need to triangulate a d-cube?
slide-14
SLIDE 14

Cube triangulation 8

  • How many simplices do we need to triangulate a d-cube?
  • Not more than d! but can we do better?
slide-15
SLIDE 15

Cube triangulation 8

  • How many simplices do we need to triangulate a d-cube?
  • Not more than d! but can we do better?
slide-16
SLIDE 16

Cube triangulation 9

Theorem. Hughes, Anderson (1995), Bliss, Su (2005) d 1 2 3 4 5 6 7 T v(d) 1 2 5 16 67 308 1493 T(d) 1 2 5 16 ? ? ? Theorem. Smith (2000) C(d) ≥ 6d/2d! 2(d + 1)(d+1)/2

slide-17
SLIDE 17

Input 10

Algebraists expect matrices of boundary maps as input of ho- mology computations.

slide-18
SLIDE 18

Input 10

Algebraists expect matrices of boundary maps as input of ho- mology computations.

  • On input: a set represented as a list of top dimensional

cells (cubes, simplices, ...)

  • Generation of faces, incidence coefficients and boundary

maps, whenever necessary, must be considered a part of the job!

slide-19
SLIDE 19

Elementary intervals and cubes 11

  • An elementary interval is an interval [k, l] ⊂ R such that l = k (degen-

erate) or l = k + 1 (nondegenerate).

slide-20
SLIDE 20

Elementary intervals and cubes 11

  • An elementary interval is an interval [k, l] ⊂ R such that l = k (degen-

erate) or l = k + 1 (nondegenerate).

  • An elementary cube Q in Rd is

I1 × I2 × · · · × Id ⊂ Rd.

slide-21
SLIDE 21

Elementary intervals and cubes 11

  • An elementary interval is an interval [k, l] ⊂ R such that l = k (degen-

erate) or l = k + 1 (nondegenerate).

  • An elementary cube Q in Rd is

I1 × I2 × · · · × Id ⊂ Rd.

  • The dimension of Q is the number of nondegenerate Ii.
slide-22
SLIDE 22

Elementary intervals and cubes 11

  • An elementary interval is an interval [k, l] ⊂ R such that l = k (degen-

erate) or l = k + 1 (nondegenerate).

  • An elementary cube Q in Rd is

I1 × I2 × · · · × Id ⊂ Rd.

  • The dimension of Q is the number of nondegenerate Ii.
  • K — the set of all elementary cubes in Rd
slide-23
SLIDE 23

Elementary intervals and cubes 11

  • An elementary interval is an interval [k, l] ⊂ R such that l = k (degen-

erate) or l = k + 1 (nondegenerate).

  • An elementary cube Q in Rd is

I1 × I2 × · · · × Id ⊂ Rd.

  • The dimension of Q is the number of nondegenerate Ii.
  • K — the set of all elementary cubes in Rd
  • Kk — the set of all elementary cubes in Rd of dimension k
slide-24
SLIDE 24

Elementary intervals and cubes 11

  • An elementary interval is an interval [k, l] ⊂ R such that l = k (degen-

erate) or l = k + 1 (nondegenerate).

  • An elementary cube Q in Rd is

I1 × I2 × · · · × Id ⊂ Rd.

  • The dimension of Q is the number of nondegenerate Ii.
  • K — the set of all elementary cubes in Rd
  • Kk — the set of all elementary cubes in Rd of dimension k
  • An elementary cube is full if its dimension is d.
slide-25
SLIDE 25

Elementary intervals and cubes 11

  • An elementary interval is an interval [k, l] ⊂ R such that l = k (degen-

erate) or l = k + 1 (nondegenerate).

  • An elementary cube Q in Rd is

I1 × I2 × · · · × Id ⊂ Rd.

  • The dimension of Q is the number of nondegenerate Ii.
  • K — the set of all elementary cubes in Rd
  • Kk — the set of all elementary cubes in Rd of dimension k
  • An elementary cube is full if its dimension is d.
  • For A ⊂ K we use notation |A| := A.
slide-26
SLIDE 26

Elementary intervals and cubes 11

  • An elementary interval is an interval [k, l] ⊂ R such that l = k (degen-

erate) or l = k + 1 (nondegenerate).

  • An elementary cube Q in Rd is

I1 × I2 × · · · × Id ⊂ Rd.

  • The dimension of Q is the number of nondegenerate Ii.
  • K — the set of all elementary cubes in Rd
  • Kk — the set of all elementary cubes in Rd of dimension k
  • An elementary cube is full if its dimension is d.
  • For A ⊂ K we use notation |A| := A.
  • For A ⊂ Rd we use notation K(A) := { Q ∈ K | Q ⊂ A }.
slide-27
SLIDE 27

Cubical Chains 12

  • Given an elementary cube Q we define the associated elementary chain

by

  • Q(P) =
  • 1

if P = Q

  • therwise.
slide-28
SLIDE 28

Cubical Chains 12

  • Given an elementary cube Q we define the associated elementary chain

by

  • Q(P) =
  • 1

if P = Q

  • therwise.
  • A cubical chain is a finite linear combination of elementary chains of the

same dimension, called the dimension of the chain.

slide-29
SLIDE 29

Cubical Chains 12

  • Given an elementary cube Q we define the associated elementary chain

by

  • Q(P) =
  • 1

if P = Q

  • therwise.
  • A cubical chain is a finite linear combination of elementary chains of the

same dimension, called the dimension of the chain.

  • All cubical chains of dimension q form an Abelian group, denoted Cq and

called the group of q-chains.

slide-30
SLIDE 30

Cubical Product 13

  • Given two elementary chains

P, Q, we define their cubical product by

  • P ⋄

Q := P × Q. and we extend this definition linearly to arbitrary chains.

slide-31
SLIDE 31

Cubical Product 14

slide-32
SLIDE 32

Boundary Operator 15

  • Boundary operator is a homomorphism ∂ : Cq → Cq−1 given on genera-

tors by ∂ Q :=      if Q = [l],

  • [l + 1] −

[l] if Q = [l, l + 1]. ∂ I ⋄ P + (−1)dim I I ⋄ ∂ P if Q = I × P.

slide-33
SLIDE 33

Boundary Operator 15

  • Boundary operator is a homomorphism ∂ : Cq → Cq−1 given on genera-

tors by ∂ Q :=      if Q = [l],

  • [l + 1] −

[l] if Q = [l, l + 1]. ∂ I ⋄ P + (−1)dim I I ⋄ ∂ P if Q = I × P. Theorem. ∂ ◦ ∂ = 0

slide-34
SLIDE 34

Chain groups of a cubical set 16

  • For an elementary chain c = n

i=1 αi

Qi we define its support by |c| :=

  • { Qi | αi = 0 }
slide-35
SLIDE 35

Chain groups of a cubical set 16

  • For an elementary chain c = n

i=1 αi

Qi we define its support by |c| :=

  • { Qi | αi = 0 }
  • Given a cubical set X we define the group of q-chains of X by

Cq(X) := { c ∈ Cq | |c| ⊂ X }.

slide-36
SLIDE 36

Chain groups of a cubical set 16

  • For an elementary chain c = n

i=1 αi

Qi we define its support by |c| :=

  • { Qi | αi = 0 }
  • Given a cubical set X we define the group of q-chains of X by

Cq(X) := { c ∈ Cq | |c| ⊂ X }.

  • Is is easy to verify that we have the induced boundary operator

∂X

q : Cq(X) → Cq−1(X).

slide-37
SLIDE 37

Cubical Homology 17

  • The kernel of ∂X

q is called the group of q-cycles of X and denoted by

Zq(X).

slide-38
SLIDE 38

Cubical Homology 17

  • The kernel of ∂X

q is called the group of q-cycles of X and denoted by

Zq(X).

  • The image of ∂X

q+1 is called the group of q-boundaries of X and denoted

by Bq(X).

slide-39
SLIDE 39

Cubical Homology 17

  • The kernel of ∂X

q is called the group of q-cycles of X and denoted by

Zq(X).

  • The image of ∂X

q+1 is called the group of q-boundaries of X and denoted

by Bq(X).

  • One can verify that Bq(X) ⊂ Zq(X), which allows us to define the qth

homology group of X by Hq(X) := Zq(X)/Bq(X)

slide-40
SLIDE 40

Cubical Homology 17

  • The kernel of ∂X

q is called the group of q-cycles of X and denoted by

Zq(X).

  • The image of ∂X

q+1 is called the group of q-boundaries of X and denoted

by Bq(X).

  • One can verify that Bq(X) ⊂ Zq(X), which allows us to define the qth

homology group of X by Hq(X) := Zq(X)/Bq(X)

  • By homology of X we mean the collection of all homology groups

H(X) := {Hq(X)}.

slide-41
SLIDE 41

Standard approach 18 Immediate algebraization:

slide-42
SLIDE 42

Standard approach 19 Immediate algebraization:

  • generate the faces
slide-43
SLIDE 43

Standard approach 20

Dk =       1 −1 ... 1 1 ... −1 1 ... 1 ... . . . . .      

Immediate algebraization:

  • generate the faces
  • construct the boundary maps
slide-44
SLIDE 44

Standard approach 21

Dk =       1 −1 ... 1 1 ... −1 1 ... 1 ... . . . . .       Bk = Q−1DkR Bk =       2 ... 1 ... 1 ... ... . . . . .      

Immediate algebraization:

  • generate the faces
  • construct the boundary maps
  • find Smith diagonalization and

read Betti numbers

slide-45
SLIDE 45

Standard approach 21

Dk =       1 −1 ... 1 1 ... −1 1 ... 1 ... . . . . .       Bk = Q−1DkR Bk =       2 ... 1 ... 1 ... ... . . . . .      

Immediate algebraization:

  • generate the faces
  • construct the boundary maps
  • find Smith diagonalization and

read Betti numbers

Advantages:

  • standard linear algebra
  • may be easily adapted to ho-

mology generators

slide-46
SLIDE 46

Standard approach 21

Dk =       1 −1 ... 1 1 ... −1 1 ... 1 ... . . . . .       Bk = Q−1DkR Bk =       2 ... 1 ... 1 ... ... . . . . .      

Immediate algebraization:

  • generate the faces
  • construct the boundary maps
  • find Smith diagonalization and

read Betti numbers

Advantages:

  • standard linear algebra
  • may be easily adapted to ho-

mology generators

Problems:

  • constructing faces immediately

may increase data size

  • complexity: Cn3
  • sparseness of matrices may not

help (fill-in process)

  • C large for sparse matrices

(dynamic storage allocation)

slide-47
SLIDE 47

Geometric reduction algorithms 22 Geometric Reductions

  • Reduce the set so that

– the representation used is preserved – the homology is not changed

  • build chain complex
  • compute homology
slide-48
SLIDE 48

Shaving 23

  • If X = X is cubical and

Q ∈ X is an elementary cube such that Q∩X is acyclic and X′ = (X \ {Q}) then H(X) ∼ = H(X′)

  • full

cubes representation is used!

  • acyclicity tests via lookup ta-

bles: – 23d−1 entries – extremely fast in dimension 2 and 3

slide-49
SLIDE 49

Shaving 23

  • If X = X is cubical and

Q ∈ X is an elementary cube such that Q∩X is acyclic and X′ = (X \ {Q}) then H(X) ∼ = H(X′)

  • full

cubes representation is used!

  • acyclicity tests via lookup ta-

bles: – 23d−1 entries – extremely fast in dimension 2 and 3 – not enough memory for di- mension above 3

  • partial acyclicity tests in higher

dimensions

slide-50
SLIDE 50

Acyclic subspace 24

  • If X is cubical and A ⊂ X is

acyclic then Hn(X) ∼ =

  • Hn(X, A),

for n ≥ 1 Z ⊕ Hn(X, A), for n = 0

  • breadth-first search construc-

tion

slide-51
SLIDE 51

Acyclic subspace 24

  • If X is cubical and A ⊂ X is

acyclic then Hn(X) ∼ =

  • Hn(X, A),

for n ≥ 1 Z ⊕ Hn(X, A), for n = 0

  • breadth-first search construc-

tion

slide-52
SLIDE 52

Free face reductions 25

foreach σ do if cbd(σ) = {τ} then remove(σ); remove(τ); endif; endfor;

  • free face - a generator with

exactly

  • ne

generator in coboundary

  • a combinatorial counterpart of

deformation retraction

  • on algebraic level:

                     1 1 1 1 1 ... 1 1 1 1 ... 1 ... 1 1 ... 1 1 ... 1 1 ... 1 1 ... 1 ... 1 ... 1 ... . . . . . . . . ... . . . . . . . . ... . . . . . . . . ...                     

slide-53
SLIDE 53

Dual reductions? 26

                     1 1 1 1 1 ... 1 1 1 1 ... 1 ... 1 1 ... 1 ... 1 1 ... 1 1 ... 1 ... 1 ... 1 ... . . . . . . . . ... . . . . . . . . ... . . . . . . . . ...                     

slide-54
SLIDE 54

Dual reductions? 26

                     1 1 1 1 1 ... 1 1 1 1 ... 1 ... 1 1 ... 1 ... 1 1 ... 1 1 ... 1 ... 1 ... 1 ... . . . . . . . . ... . . . . . . . . ... . . . . . . . . ...                     

  • free coface - a generator with exactly one generator in boundary
slide-55
SLIDE 55

Dual reductions? 26

                     1 1 1 1 1 ... 1 1 1 1 ... 1 ... 1 1 ... 1 ... 1 1 ... 1 1 ... 1 ... 1 ... 1 ... . . . . . . . . ... . . . . . . . . ... . . . . . . . . ...                     

  • free coface - a generator with exactly one generator in boundary
  • one space homology theory with compact supports for locally compact

sets (Steenrod 1940, Massey 1978)

slide-56
SLIDE 56

Dual reductions? 26

                     1 1 1 1 1 ... 1 1 1 1 ... 1 ... 1 1 ... 1 ... 1 1 ... 1 1 ... 1 ... 1 ... 1 ... . . . . . . . . ... . . . . . . . . ... . . . . . . . . ...                     

  • free coface - a generator with exactly one generator in boundary
  • one space homology theory with compact supports for locally compact

sets (Steenrod 1940, Massey 1978)

  • combinatorial version (MM, B. Batko, 2006)
slide-57
SLIDE 57

Coreduction algorithm 27

Q := empty queue; enqueue(Q,s); while Q = ∅ do s:=dequeue(Q); if bdS s = {t} then remove(s); remove(t); enqueue(Q, cbdK t); else if bdS s = ∅ then enqueue(Q, cbdK s); endif; endwhile ;

slide-58
SLIDE 58

Coreduction algorithm 27

Q := empty queue; enqueue(Q,s); while Q = ∅ do s:=dequeue(Q); if bdS s = {t} then remove(s); remove(t); enqueue(Q, cbdK t); else if bdS s = ∅ then enqueue(Q, cbdK s); endif; endwhile ;

slide-59
SLIDE 59

Coreduction algorithm 28

slide-60
SLIDE 60

Coreductions for S-complexes 29

  • S-complex - a free chain complex with a fixed basis S which allows

computation of incidence coefficients κ(s, t) directly from the coding of the basis

slide-61
SLIDE 61

Coreductions for S-complexes 29

  • S-complex - a free chain complex with a fixed basis S which allows

computation of incidence coefficients κ(s, t) directly from the coding of the basis

  • Examples: cubical complexes, simplicial complexes
slide-62
SLIDE 62

Coreductions for S-complexes 29

  • S-complex - a free chain complex with a fixed basis S which allows

computation of incidence coefficients κ(s, t) directly from the coding of the basis

  • Examples: cubical complexes, simplicial complexes
  • Rectangular CW-complexes (P. D

lotko, T. Kaczynski, MM, T. Wanner, 2010)

slide-63
SLIDE 63

Augmentible S-complexes 30

Definition. An S-complex is augmentible iff there exists ǫ : S0 → R (augmentation) such that

  • ǫ(t) = 0 for t ∈ S0

t κ(s, t)ǫ(t) = 0 for s ∈ S1

Coreductions may be applied to any augmentible S-complexes.

slide-64
SLIDE 64

Coreduction algorithm 31

Unlike torus, coreductions of Bing’s House result in a non-augmentible S- complex.

slide-65
SLIDE 65

CAPD::RedHom 32

  • http://redhom.ii.uj.edu.pl
slide-66
SLIDE 66

CAPD::RedHom 32

  • http://redhom.ii.uj.edu.pl
  • A subproject of CAPD (http://capd.ii.uj.edu.pl)
slide-67
SLIDE 67

CAPD::RedHom 32

  • http://redhom.ii.uj.edu.pl
  • A subproject of CAPD (http://capd.ii.uj.edu.pl)
  • A sister project of CHomP (http://chomp.rutgers.edu)
slide-68
SLIDE 68

CAPD::RedHom 32

  • http://redhom.ii.uj.edu.pl
  • A subproject of CAPD (http://capd.ii.uj.edu.pl)
  • A sister project of CHomP (http://chomp.rutgers.edu)

Generic homology software based on geometric reductions

slide-69
SLIDE 69

CAPD::RedHom 32

  • http://redhom.ii.uj.edu.pl
  • A subproject of CAPD (http://capd.ii.uj.edu.pl)
  • A sister project of CHomP (http://chomp.rutgers.edu)

Generic homology software based on geometric reductions

  • AS, CR, DMT algorithms
slide-70
SLIDE 70

CAPD::RedHom 32

  • http://redhom.ii.uj.edu.pl
  • A subproject of CAPD (http://capd.ii.uj.edu.pl)
  • A sister project of CHomP (http://chomp.rutgers.edu)

Generic homology software based on geometric reductions

  • AS, CR, DMT algorithms
  • Betti and torsion numbers, homology generators, homology maps, per-

sistence intervals

slide-71
SLIDE 71

CAPD::RedHom 32

  • http://redhom.ii.uj.edu.pl
  • A subproject of CAPD (http://capd.ii.uj.edu.pl)
  • A sister project of CHomP (http://chomp.rutgers.edu)

Generic homology software based on geometric reductions

  • AS, CR, DMT algorithms
  • Betti and torsion numbers, homology generators, homology maps, per-

sistence intervals

  • Z and Zp coefficients
slide-72
SLIDE 72

CAPD::RedHom 32

  • http://redhom.ii.uj.edu.pl
  • A subproject of CAPD (http://capd.ii.uj.edu.pl)
  • A sister project of CHomP (http://chomp.rutgers.edu)

Generic homology software based on geometric reductions

  • AS, CR, DMT algorithms
  • Betti and torsion numbers, homology generators, homology maps, per-

sistence intervals

  • Z and Zp coefficients
  • generic but efficient: for cubical sets, simplicial sets, cubical CW com-

plexes, ...

slide-73
SLIDE 73

CAPD::RedHom 32

  • http://redhom.ii.uj.edu.pl
  • A subproject of CAPD (http://capd.ii.uj.edu.pl)
  • A sister project of CHomP (http://chomp.rutgers.edu)

Generic homology software based on geometric reductions

  • AS, CR, DMT algorithms
  • Betti and torsion numbers, homology generators, homology maps, per-

sistence intervals

  • Z and Zp coefficients
  • generic but efficient: for cubical sets, simplicial sets, cubical CW com-

plexes, ...

  • written in C++, based on C++ templates and generic programming
  • Authors: P. D

lotko, M. Juda, A. Krajniak, MM, H. Wagner, ...

slide-74
SLIDE 74

Rectangular CW-complexes 33

slide-75
SLIDE 75

Rectangular CW-complexes 34

Theorem. (P. D lotko, T. Kaczynski, MM, T. Wanner, 2010) Consider a rectangular CW-complex given by a rectangu- lar structure Q. Let P and Q denote two arbitrary rectangles in Q with dim Q = 1 + dim P, and define the number αQP as

  • follows. For d = 1 and Q = [a, b] let

αQP :=    −1 if P = [a] , 1 if P = [b] ,

  • therwise ,

and for d > 1 set (1) αQP :=    (−1)

j−1

i=1 dim Qi αQjPj

if P < Q and Pj < Qj ,

  • therwise .

Then the numbers αQP are incidence numbers for the given rectangular CW-complex.

slide-76
SLIDE 76

Rectangular CW complex versus cubical approach 35

slide-77
SLIDE 77

Numerical examples - manifolds 36

T × S1 (S1)3 S1 × K T × T P × K dim 5 6 6 6 8 size in millions 0.07 0.10 0.40 2.36 32.05 H0 Z Z Z Z Z H1 Z3 0 Z2 + Z2 Z4 Z + Z2

2

H2 Z3 Z + Z2 Z6 Z2

2

H3 Z Z Z4 Z2 H4 Z

Linbox::Smith

130 350 > 600 > 600

  • CHomP::homcubes

1.3 1.7 10 56 17370

RedHom::CR

0.03 0.04 0.26 2.5 34

RedHom::CR+DMT

0.02 0.08 0.5 1.1

slide-78
SLIDE 78

Numerical examples - Cahn-Hillard 37

P0001 P0050 P0100 dim 3 3 3 size in millions 75.56 73.36 71.64 H0 Z7 Z2 Z H1 Z6554 Z2962 Z1057 H2 Z2

Linbox::Smith

> 600 > 600 > 600

CHomP::homcubes

400 360 310

RedHom::CR

18 16 15

RedHom::CR+DMT

8 7 6

RedHom::AS

10 5 3.5

slide-79
SLIDE 79

Numerical examples - random sets 38

d4s8f50 d4s12f50 d4s16f50 d4s20f50 dim 4 4 4 4 size in millions 0.07 0.34 1.04 2.48 H0 Z2 Z2 Z2 Z2 H1 Z2 Z17 Z30 Z51 H2 Z174 Z1389 Z5510 Z15401 H3 Z2 Z15 Z71 Z179

Linbox::Smith

120 > 600 > 600 > 600

CHomP::homcubes

1 8.3 41 170

RedHom::CR

0.08 1.4 15 140

RedHom::CR+DMT

0.03 0.16 0.58 2.9

slide-80
SLIDE 80

Numerical examples - simplicial sets 39

random set S2 S5 dim 4 2 5 size in millions 4.8 1.9 4.3 H0 Z Z Z H1 Z39 H2 Z84 Z H3 H4 Z

CHomP::homcubes

830 310 2100

RedHom::CR+DMT

65 11 100

slide-81
SLIDE 81

Reduction equivalences 40

Theorem. Assume S′ is an S-complex resulting from removing an coreduction pair (a, b) in an S-omplex S. Then the chain maps ψ(a,b) : R(S) → R(S′) and ι(a,b) : R(S′) → R(S) given by ψ(a,b)

k

(c) :=        c − c,a

∂b,a∂b

for k = dim b − 1 , c − c, bb for k = dim b , c

  • therwise ,

and ι(a,b)

k

(c) :=

  • c − ∂c,a

∂b,ab

for k = dim b , c

  • therwise ,

are mutually inverse chain equivalences.

slide-82
SLIDE 82

Reduction equivalences 40

Theorem. Assume S′ is an S-complex resulting from removing an coreduction pair (a, b) in an S-omplex S. Then the chain maps ψ(a,b) : R(S) → R(S′) and ι(a,b) : R(S′) → R(S) given by ψ(a,b)

k

(c) :=        c − c,a

∂b,a∂b

for k = dim b − 1 , c − c, bb for k = dim b , c

  • therwise ,

and ι(a,b)

k

(c) :=

  • c − ∂c,a

∂b,ab

for k = dim b , c

  • therwise ,

are mutually inverse chain equivalences.

slide-83
SLIDE 83

Homology model 41

  • the reduced S-complex Sf — the homology model of S as a conve-

nient model to solve the problems of decomposing homology classes on generators.

slide-84
SLIDE 84

Homology model 41

  • the reduced S-complex Sf — the homology model of S as a conve-

nient model to solve the problems of decomposing homology classes on generators.

  • πf : R(S) → R(Sf) and ιf : R(Sf) → R(S) mutually inverse chain

equivalences obtained by composing the maps π(a,b) and ι(a,b).

slide-85
SLIDE 85

Homology model 41

  • the reduced S-complex Sf — the homology model of S as a conve-

nient model to solve the problems of decomposing homology classes on generators.

  • πf : R(S) → R(Sf) and ιf : R(Sf) → R(S) mutually inverse chain

equivalences obtained by composing the maps π(a,b) and ι(a,b).

  • used to transport homology classes between H∗(S) and H∗(Sf)
slide-86
SLIDE 86

Homology model 41

  • the reduced S-complex Sf — the homology model of S as a conve-

nient model to solve the problems of decomposing homology classes on generators.

  • πf : R(S) → R(Sf) and ιf : R(Sf) → R(S) mutually inverse chain

equivalences obtained by composing the maps π(a,b) and ι(a,b).

  • used to transport homology classes between H∗(S) and H∗(Sf)

The cost of transporting one generator through πf or ιf in general may be quadratic.

slide-87
SLIDE 87

Homology model 41

  • the reduced S-complex Sf — the homology model of S as a conve-

nient model to solve the problems of decomposing homology classes on generators.

  • πf : R(S) → R(Sf) and ιf : R(Sf) → R(S) mutually inverse chain

equivalences obtained by composing the maps π(a,b) and ι(a,b).

  • used to transport homology classes between H∗(S) and H∗(Sf)

The cost of transporting one generator through πf or ιf in general may be quadratic. In the case of Free Face Reduction Algorithm and Free Coface Reduction Algorithm it is linear!

slide-88
SLIDE 88

Homology generators 42

  • Sq = { sq

1, sq 2, . . . sq rq }.

slide-89
SLIDE 89

Homology generators 42

  • Sq = { sq

1, sq 2, . . . sq rq }.

  • { [u1], [u2], . . . [un] } – generators of the homology group Hq(S).
slide-90
SLIDE 90

Homology generators 42

  • Sq = { sq

1, sq 2, . . . sq rq }.

  • { [u1], [u2], . . . [un] } – generators of the homology group Hq(S).
  • Task: decompose [z] ∈ Hq(X) on homology generators

[z] =

n

  • i=1

xi[ui]

slide-91
SLIDE 91

Homology generators 42

  • Sq = { sq

1, sq 2, . . . sq rq }.

  • { [u1], [u2], . . . [un] } – generators of the homology group Hq(S).
  • Task: decompose [z] ∈ Hq(X) on homology generators

[z] =

n

  • i=1

xi[ui]

  • Linear algebra problem

z =

n

  • i=1

xiui + ∂c with unknown variables x1, x2, . . . , xn ∈ Z and c ∈ Rq+1(S).

slide-92
SLIDE 92

Homology generators 43

z =

rq

  • j=1

zjsq

j, ui = rq

  • j=1

uijsq

j, c = rq+1

  • k=1

yksq+1

k

∂sq+1

k

=

rq

  • j=1

akjsq

j

∂c =

rq

  • j=1

rq+1

  • k=1

akjyk

  • sq

j

slide-93
SLIDE 93

Homology generators 43

z =

rq

  • j=1

zjsq

j, ui = rq

  • j=1

uijsq

j, c = rq+1

  • k=1

yksq+1

k

∂sq+1

k

=

rq

  • j=1

akjsq

j

∂c =

rq

  • j=1

rq+1

  • k=1

akjyk

  • sq

j

Thus, we get a system of rq linear equations with n + rq+1 unknowns zj =

n

  • i=1

uijxi +

rq+1

  • k=1

akjyk for j = 1, 2, . . . rq.

  • In case of large S the cost is huge!
  • Solution:

transport the problem via πf to homology model and solve it there

slide-94
SLIDE 94

Homology of cubical maps 44

  • X, Y – cubical complexes
slide-95
SLIDE 95

Homology of cubical maps 44

  • X, Y – cubical complexes
  • g : X → Y is cubical if maps elementary cubes to elementary cubes.
  • g induces chain map g# : R(X) → R(Y )
slide-96
SLIDE 96

Homology of cubical maps 44

  • X, Y – cubical complexes
  • g : X → Y is cubical if maps elementary cubes to elementary cubes.
  • g induces chain map g# : R(X) → R(Y )
  • examples of interest: inclusions and projections
slide-97
SLIDE 97

Homology of cubical maps 44

  • X, Y – cubical complexes
  • g : X → Y is cubical if maps elementary cubes to elementary cubes.
  • g induces chain map g# : R(X) → R(Y )
  • examples of interest: inclusions and projections
  • U := { [u1], [u2], . . . [um] } and W := { [w1], [w2], . . . [wn] } — bases of

Hq(X) and Hq(Y )

slide-98
SLIDE 98

Homology of cubical maps 44

  • X, Y – cubical complexes
  • g : X → Y is cubical if maps elementary cubes to elementary cubes.
  • g induces chain map g# : R(X) → R(Y )
  • examples of interest: inclusions and projections
  • U := { [u1], [u2], . . . [um] } and W := { [w1], [w2], . . . [wn] } — bases of

Hq(X) and Hq(Y )

  • To find the matrix of g∗ ecompose g#(ui) on generators in W
slide-99
SLIDE 99

Homology of cubical maps 44

  • X, Y – cubical complexes
  • g : X → Y is cubical if maps elementary cubes to elementary cubes.
  • g induces chain map g# : R(X) → R(Y )
  • examples of interest: inclusions and projections
  • U := { [u1], [u2], . . . [um] } and W := { [w1], [w2], . . . [wn] } — bases of

Hq(X) and Hq(Y )

  • To find the matrix of g∗ ecompose g#(ui) on generators in W
  • Using the diagram

R(X) R(Y ) R(Y f)

g#

πf

ιf

we can solve the problem in the homology model Y f, where it is much simpler.

slide-100
SLIDE 100

Computing Homology of Maps 45

In principle, computing homology of a map f : X → Y is a three step procedure: (1) Find a finite representation of f (2) Use it to build the chain map (3) Compute the map in homology from the chain map

slide-101
SLIDE 101

Computing Homology of Maps 45

In principle, computing homology of a map f : X → Y is a three step procedure: (1) Find a finite representation of f (2) Use it to build the chain map (3) Compute the map in homology from the chain map

slide-102
SLIDE 102

Combinatorial representations 46

Let X = |X| be a full cubical set with representation X and let f : X → X be a continuous map. We say that F : X − → → X is a representation of f if f(Q) ⊂ int |F(Q)|.

slide-103
SLIDE 103

Combinatorial representations 46

Let X = |X| be a full cubical set with representation X and let f : X → X be a continuous map. We say that F : X − → → X is a representation of f if f(Q) ⊂ int |F(Q)|. and for each x ∈ X the set ⌈F⌉(x) :=

  • {|F(Q)| | x ∈ Q ∈ X}

is acyclic.

slide-104
SLIDE 104

Combinatorial representations 46

Let X = |X| be a full cubical set with representation X and let f : X → X be a continuous map. We say that F : X − → → X is a representation of f if f(Q) ⊂ int |F(Q)|. and for each x ∈ X the set ⌈F⌉(x) :=

  • {|F(Q)| | x ∈ Q ∈ X}

is acyclic. A representation for a given X may not exist. However, under a sufficiently good subdivision, the represntation always exists.

slide-105
SLIDE 105

Combinatorial representations 46

Let X = |X| be a full cubical set with representation X and let f : X → X be a continuous map. We say that F : X − → → X is a representation of f if f(Q) ⊂ int |F(Q)|. and for each x ∈ X the set ⌈F⌉(x) :=

  • {|F(Q)| | x ∈ Q ∈ X}

is acyclic. A representation for a given X may not exist. However, under a sufficiently good subdivision, the represntation always exists. Theorem. (Allili, Kaczynski, 2000, Kaczynski, Mischaikow, MM 2004) If F is a representation of f, then there is an algo- rithm which transforms F into a chain map whose homology is the homology of f.

slide-106
SLIDE 106

Graph approach (Granas and L. G´

  • rniewicz, 1981)

47

slide-107
SLIDE 107

The homology map algorithm (Mischaikow, MM, Pilarczyk 2005) 48

(1) Construct a representation F of f : X → Y . (2) Construct the graph G of F := ⌈F⌉. (3) If the homologies of the values of F are not trivial, refine the grid and go to 1. (4) Apply shaving to X, Y and G in such a way that the shaved G′ is the graph of an acyclic mv map F ′ : X′ → Y ′ (5) Find the homologies of the projections p : G → X and q : G → Y . (6) Return H∗(q)H∗(p)−1

slide-108
SLIDE 108

The homology map algorithm (Mischaikow, MM, Pilarczyk 2005) 48

(1) Construct a representation F of f : X → Y . (2) Construct the graph G of F := ⌈F⌉. (3) If the homologies of the values of F are not trivial, refine the grid and go to 1. (4) Apply shaving to X, Y and G in such a way that the shaved G′ is the graph of an acyclic mv map F ′ : X′ → Y ′ (5) Find the homologies of the projections p : G → X and q : G → Y . (6) Return H∗(q)H∗(p)−1

  • Pilarczyk (2005) — implementation
  • satisfactorily fast for a class of practical problems
  • remains computationally most expensive part in applica-

tions in dynamics

  • preserving the acyclicity of values when applying reductions

is computationally expensive

slide-109
SLIDE 109

Coreduction model approach, MM 2010 49

  • Using coreductions construct homology models of X, Y , and G
  • Using homology models find the homology of the projections p : G → X

and q : G → Y

  • Compute the inverse of p∗ and return q∗p−1

  • No need to preserve the acyclicity under reductions
  • significantly faster than the previous graph approach
slide-110
SLIDE 110

Graph approach versus coreduction model approach 50

Set Emb Size

CHomP RedHom speedup

Dim ×106 homcubes CR z2torus8.map 6 3.65 10.3 1.5 7 z2torus12.map 6 7.75 25.6 3.2 8 z2torus16.map 6 14.13 54.5 6.8 8 z2torus19.map 6 23.29 121.0 11.7 10

slide-111
SLIDE 111

Alternative based on ˇ Cech structures (outline) 51

  • choose a ˇ

Cech structure X on X

  • for Q ∈ X take F(Q) as a convex enclosure of f(Q) obtained via rigorous

numerics

  • F : K(X) → K(X ∪ F(X)) acts as a simplicial map
  • the homology of f is computed when K(X) ⊂ K(X ∪ F(X)) induces

an isomorphism

  • this is guaranteed when the enclosure is good enough
slide-112
SLIDE 112

Alternative based on ˇ Cech structures (outline) 51

  • choose a ˇ

Cech structure X on X

  • for Q ∈ X take F(Q) as a convex enclosure of f(Q) obtained via rigorous

numerics

  • F : K(X) → K(X ∪ F(X)) acts as a simplicial map
  • the homology of f is computed when K(X) ⊂ K(X ∪ F(X)) induces

an isomorphism

  • this is guaranteed when the enclosure is good enough
slide-113
SLIDE 113

Alternative based on ˇ Cech structures 52

Example: consider f : C ∋ z → z2 ∈ C

slide-114
SLIDE 114

Alternative based on ˇ Cech structures 52

Example: consider f : C ∋ z → z2 ∈ C

slide-115
SLIDE 115

Cubical persistence via coreductions and inclusions 53

  • Assume field coefficients
  • Compute the maps induced in homology by inclusions
  • Find the compositions and ranks of the respective matrices

βi,j

q := rank ιi,j q ,

  • Compute the number of (i, j)-persistence intervals from formula

piq(i, j) =

  • βi,j−1

q

− βi−1,j−1

q

  • βi,j

q − βi−1,j q

  • .
slide-116
SLIDE 116

Direct coreduction approach to cubical persistence 54

  • levelwise coreductions
slide-117
SLIDE 117

Direct coreduction approach to cubical persistence 54

  • levelwise coreductions
  • seperate queue for BFS on each level
slide-118
SLIDE 118

Direct coreduction approach to cubical persistence 54

  • levelwise coreductions
  • seperate queue for BFS on each level
  • selection always from the lowest level non-empty queue
slide-119
SLIDE 119

Direct coreduction approach to cubical persistence 54

  • levelwise coreductions
  • seperate queue for BFS on each level
  • selection always from the lowest level non-empty queue
  • result: coreductions for all sublevel sets together in O(n log∗ n) time
slide-120
SLIDE 120

Direct coreduction approach to cubical persistence 54

  • levelwise coreductions
  • seperate queue for BFS on each level
  • selection always from the lowest level non-empty queue
  • result: coreductions for all sublevel sets together in O(n log∗ n) time
  • Complexity of finding persistence intervals on the plane is O(n log∗ n)
slide-121
SLIDE 121

Timings 55

Grid Levels classical RedHom RedHom approach (*) CR-incl. CR-direct 1024 × 1024 17 3299.0 470.0 3.4 2048 × 2048 18 36187.0 8012.0 13.0 100 × 100 × 100 25 60407.0 4025.0

  • (*) - implementation of Edelsbrunner-Letscher-Zomorodian algorithm for cu-

bical sets by V. Nanda

slide-122
SLIDE 122

References 56

  • MM, P. Pilarczyk, N. ˙

Zelazna, Homology algorithm based on acyclic subspace, Computers and Mathematics with Applications (2008).

  • MM, B. Batko, Coreduction homology algorithm, Discrete and Computational

Geometry (2009).

  • K. Mischaikow, MM, P. Pilarczyk,

Graph Approach to the Computation of the Homology of Continuous Maps, Foundations of Computational Mathematics (2005).

  • MM, ˇ

Cech Type Approach to Computing Homology of Maps, Discrete and Compu- tational Geometry (2010).

  • P. D

lotko, T. Kaczynski, MM, T. Wanner, Coreduction Homology Algorithm for Regular CW-Complexes, Discrete and Computational Geometry (2011).

  • MM, T. Wanner, Coreduction Homology Algorithm for Inclusions and Persistence,

Computers and Mathematics with Applications (2010).

  • S. Harker, K. Mischaikow, MM, V. Nanda, H. Wagner, M. Juda, P.

D lotko, The Efficiency of a Homology Algorithm based on Discrete Morse Theory and Coreductions, Proceedings CTIC 2010 (2010).

  • A. Krajniak, MM, T. Wanner, Direct coreduction approach to persistence, in

preparation.