JGA 2013
Multi-Field Persistent Homology
Jean-Daniel Boissonnat & Cl´ ement Maria
1 Introduction
Motivation
Homology features:
components, holes, voids, etc.
but... that guy on the right is
“twisting”!
Conformation Space of the Cyclo-octane Molecule Image: [Martin, Thompson,
Coutsias, Watson]
Cl´ement Maria - Multi-Field Persistent Homology December 17, 2013- 3
Motivation
Homology features:
components, holes, voids, etc.
but... that guy on the right is
“twisting”!
Conformation Space of the Cyclo-octane Molecule Image: [Martin, Thompson,
Coutsias, Watson]
Homology with Z -coefficients
K p : set of p-simplices of K C p : Abelian group of formal sums of p-simplices with Z -coefficients
{ , , , , , , · · · }
{ e 1 , e 2 , e 3 , e 4 , e 5 , e 6 , · · · } e 1 + e 2 + e 3 + e 4 + e 5 + e 6
e
1e
2e
3e
4e
5e
6∂ p : C p → C p − 1 : Boundary operator ∂ 2 = − + [a, b, c]
C 1 = ( { P
i k i e i } , +)
[ab]
∂ 2 = − [bc] + [ca]
H p = ker ∂ p / im ∂ p+1
Cl´ement Maria - Multi-Field Persistent Homology December 17, 2013- 5
Homology and Torsion
Fundamental theorem of finitely generated abelian groups:
H p ( Z ) ∼ = Z β
p( Z ) M
q prime
Z q
k1⊕ · · · ⊕ Z q
kt(p,q)vs H p ( F ) = F β
p( F )
I β p ( Z ) and β p ( F ) are Betti numbers: β p ( Z ) 6 = β p ( F ) in general
I k i > 0 and t(p , q) ≥ 0 over all prime numbers q
I if t(p, q) 6 = 0, q k
1· · · q k
t(p,q)are torsion coefficients
Klein bottle:
Homology and Torsion
H p ( Z ) ∼ = Z β
p( Z ) M
q prime
Z q
k1⊕ · · · ⊕ Z q
kt(p,q)vs H p ( F ) = F β
p( F )
H 0 ( Z ) = Z β 0 ( Z ) = 1 H 1 ( Z ) = Z ⊕ Z 2 β 1 ( Z ) = 1 H 2 ( Z ) = 0 β 2 ( Z ) = 0 H 0 ( Z 2 ) = Z 2 β 0 ( Z 2 ) = 1 H 1 ( Z 2 ) = ( Z 2 ) 2 β 1 ( Z 2 ) = 2 H 2 ( Z 2 ) = Z 2 β 2 ( Z 2 ) = 1 H 0 ( Z 3 ) = Z 3 β 0 ( Z 3 ) = 1 H 1 ( Z 3 ) = Z 3 β 1 ( Z 3 ) = 1 H 2 ( Z 3 ) = 0 β 2 ( Z 3 ) = 0
Klein bottle:
Cl´ement Maria - Multi-Field Persistent Homology December 17, 2013- 7
Homology and Torsion
H p ( Z ) ∼ = Z β
p( Z ) M
q prime
Z q
k1⊕ · · · ⊕ Z q
kt(p,q)vs H p ( F ) = F β
p( F )
H 0 ( Z ) = Z β 0 ( Z ) = 1 H 1 ( Z ) = Z ⊕ Z 2 β 1 ( Z ) = 1 H 2 ( Z ) = 0 β 2 ( Z ) = 0 H 0 ( Z 2 ) = Z 2 β 0 ( Z 2 ) = 1 H 1 ( Z 2 ) = ( Z 2 ) 2 β 1 ( Z 2 ) = 2 H 2 ( Z 2 ) = Z 2 β 2 ( Z 2 ) = 1 H 0 ( Z 3 ) = Z 3 β 0 ( Z 3 ) = 1 H 1 ( Z 3 ) = Z 3 β 1 ( Z 3 ) = 1 H 2 ( Z 3 ) = 0 β 2 ( Z 3 ) = 0
Klein bottle???
o O ???
Homology and Torsion
H p ( Z ) ∼ = Z β
p( Z ) M
q prime
Z q
k1⊕ · · · ⊕ Z q
kt(p,q)vs H p ( F ) = F β
p( F )
H 0 ( Z ) = Z β 0 ( Z ) = 1 H 1 ( Z ) = Z ⊕ Z 2 β 1 ( Z ) = 1 H 2 ( Z ) = 0 β 2 ( Z ) = 0 H 0 ( Z 2 ) = Z 2 β 0 ( Z 2 ) = 1 H 1 ( Z 2 ) = ( Z 2 ) 2 β 1 ( Z 2 ) = 2 H 2 ( Z 2 ) = Z 2 β 2 ( Z 2 ) = 1 H 0 ( Z 3 ) = Z 3 β 0 ( Z 3 ) = 1 H 1 ( Z 3 ) = Z 3 β 1 ( Z 3 ) = 1 H 2 ( Z 3 ) = 0 β 2 ( Z 3 ) = 0
Klein bottle:
Cl´ement Maria - Multi-Field Persistent Homology December 17, 2013- 9
Remember Persistence?
A
A B
A
B A
B A
Death
Birth
Very useful!
General
Stable w.r.t noise Efficient Algorithm BUT
Strictly restricted to FIELD coefficients!
(algebraic reason)
Remember Persistence?
A
A B
A
B A
B A
Death
Birth
Cl´ement Maria - Multi-Field Persistent Homology December 17, 2013- 11
Remember Persistence?
A
A B
A
B A
B A
Death
Birth
B B B
x
y
Remember Persistence?
A
A B
A
B A
B A
Death
Birth
B B B
1 cycle alive ”during”
[x : y]
y
x
Cl´ement Maria - Multi-Field Persistent Homology December 17, 2013- 13
Remember Persistence?
A
A B
A
B A
B A
Death
Birth
B B B
x y
2 cycles alive ”during”
[x : y]
Cl´ement Maria - Multi-Field Persistent Homology
2 Multi-Field Persistence Diagram
Multi-Field Persistence Diagram
Z 2
Z 3
only in Z 2 only in Z 3
in Z 2 and Z 3
Multi-Field Persistence Diagram
Z 2
Z 3
only in Z 2 only in Z 3
in Z 2 and Z 3
Cl´ement Maria - Multi-Field Persistent Homology December 17, 2013- 17
Multi-Field Persistence Diagram
Z ⊕ Z 2
∗Z 3 ⊕ Z 2
∗Z 2
Z 2
Z 3
only in Z 2 only in Z 3
in Z 2 and Z 3
Homology Group Reconstruction
We compute the Multi-Field Persistence Diagram for the fields:
{Z q
1, · · · , Z q
r} for the family of first r distinct primes q 1 , · · · , q r
Suppose we know β p ( Z q
s), ∀ 1 ≤ s ≤ r (with H p ( Z q
s) ∼ = Z β q
sp( Z
qs) ).
H p ( Z ) ∼ = Z β
p( Z ) L
q prime
Z q
k1⊕ · · · ⊕ Z q
kt(p,q)H p−1 ( Z ) ∼ = Z β
p−1( Z ) L
q prime
Z q
k10⊕ · · · ⊕ Z
q
k0 t(p−1,q)
The Universal Coefficient Theorem of Homology allows to compute H p (K, F ) from H p (K, Z ) and H p−1 (K, Z ).
With q r “big enough”, we partially reverse the computation:
t(p, q s ) = β p ( Z q
s) − β p ( Z q
r) − t(p − 1, q s )
Cl´ement Maria - Multi-Field Persistent Homology December 17, 2013- 19
Homology Group Reconstruction
We compute the Multi-Field Persistence Diagram for the fields:
{Z q
1, · · · , Z q
r} for the family of first r distinct primes q 1 , · · · , q r
Suppose we know β p ( Z q
s), ∀ 1 ≤ s ≤ r (with H p ( Z q
s) ∼ = Z β q
sp( Z
qs) ).
H p ( Z ) ∼ = Z β
p( Z ) L
q prime
Z q
k1⊕ · · · ⊕ Z q
kt(p,q)H p−1 ( Z ) ∼ = Z β
p−1( Z ) L
q prime
Z q
k10⊕ · · · ⊕ Z
q
k0 t(p−1,q)
The Universal Coefficient Theorem of Homology allows to compute H p (K, F ) from H p (K, Z ) and H p−1 (K, Z ).
With q r “big enough”, we partially reverse the computation:
t(p, q s ) = β p ( Z q
s) − β p ( Z q
r) − t(p − 1, q s )
Homology Group Reconstruction
We compute the Multi-Field Persistence Diagram for the fields:
{Z q
1, · · · , Z q
r} for the family of first r distinct primes q 1 , · · · , q r
Suppose we know β p ( Z q
s), ∀ 1 ≤ s ≤ r (with H p ( Z q
s) ∼ = Z β q
sp( Z
qs) ).
H p ( Z ) ∼ = Z β
p( Z ) L
q prime
Z q
k1⊕ · · · ⊕ Z q
kt(p,q)H p−1 ( Z ) ∼ = Z β
p−1( Z ) L
q prime
Z q
k10⊕ · · · ⊕ Z
q
k0 t(p−1,q)
The Universal Coefficient Theorem of Homology allows to compute H p (K, F ) from H p (K, Z ) and H p−1 (K, Z ).
With q r “big enough”, we partially reverse the computation:
t(p, q s ) = β p ( Z q
s) − β p ( Z q
r) − t(p − 1, q s )
Cl´ement Maria - Multi-Field Persistent Homology December 17, 2013- 21
Homology Group Reconstruction
We compute the Multi-Field Persistence Diagram for the fields:
{Z q
1, · · · , Z q
r} for the family of first r distinct primes q 1 , · · · , q r
Suppose we know β p ( Z q
s), ∀ 1 ≤ s ≤ r (with H p ( Z q
s) ∼ = Z β q
sp( Z
qs) ).
H p ( Z ) ∼ = Z β
p( Z ) L
q prime
Z q
k1⊕ · · · ⊕ Z q
kt(p,q)H p−1 ( Z ) ∼ = Z β
p−1( Z ) L
q prime
Z q
k10⊕ · · · ⊕ Z
q
k0 t(p−1,q)
The Universal Coefficient Theorem of Homology allows to compute H p (K, F ) from H p (K, Z ) and H p−1 (K, Z ).
With q r “big enough”, we partially reverse the computation:
t(p, q s ) = β p ( Z q
s) − β p ( Z q
r) − t(p − 1, q s )
Homology Group Reconstruction
H 0 ( Z ) = Z H 1 ( Z ) = Z ⊕ Z 2 H 2 ( Z ) = 0
Z ⊕ Z 2 ∗ Z 3 ⊕ Z 2 ∗
Z 2
only in Z
2only in Z
3in Z
2and Z
3 DeathBirth
Cl´ement Maria - Multi-Field Persistent Homology December 17, 2013- 23
Multi-Field Persistence Diagram
We compute the Multi-Field Persistence Diagram for the fields:
{Z q
1, · · · Z q
r} for a family of distinct primes q 1 , · · · , q r , with q r strict upper bound on the primary divisors of torsion coefficients.
H p ( Z ) ∼ = Z β
p( Z ) M
q prime
Z q
k1⊕ · · · ⊕ Z q
kt(p,q)Let:
I K be a filtered simplicial complex with m simplices
I | D(K, F ) | = Θ(m) be the number of points in the persistence diagram for any F (field) coefficients
I | D(K, Z q
1· · · Z q
r) | be the number of distinct points in the
superimposition of diagrams D(K, Z q
1), · · · D(K, Z q
r)
Multi-Field Persistence Diagram
Usually:
I q 1 , · · · , q r are the first r prime numbers, and r ≤ 100
I m is huge!
I m ' | D(K, F ) | '
| D(K, Z q
1· · · Z q
r) | r × m
Z ⊕ Z 2
∗Z 3 ⊕ Z 2
∗Z 2
only inZ2
only inZ3
inZ2andZ3 Death
Birth
We design algorithms such that:
O(f ( | D(K, F ) | )) becomes O(f ( | D(K, Z q
1· · · Z q
r) | ) × A) for some small A.
Cl´ement Maria - Multi-Field Persistent Homology December 17, 2013- 25
3 Modular Reconstruction
for Gaussian Elimination
Remember the Persistent Cohomology Algorithm?
t 0 t 1 t 2 t 3 t 4 t 5 t 6 t 7
K 0 ⊆ K 1 ⊆ K 2 ⊆ K 3 ⊆ K 4 ⊆ K 5 ⊆ K 6 ⊆ K 7
I Insert the simplices in the order of the filtration
I Update the cohomology groups accordingly
Cl´ement Maria - Multi-Field Persistent Homology December 17, 2013- 27
Multi-Field Persistent Cohomology
φ
gpφ
1τ
1τ
n∂σ
i+1a
∂σi+1=
Xτ∈∂σi+1
1 ( ) a
τφ
gpφ
1τ
1τ
nφ
k0 0 0 0 0 0 0 τ
j6
= 0
= 0
ψ
1ψ
gp+1σ
1σ
i+10
0
0 0 1
σ
∗i+1∈ Z q
∀ j
φ j ← φ j − a ∂σ
i+1[j]c
−k 1
× φ k
c k
Inverse in Z q
a ∂σ i+1
0 6 =
0 0
Algo overview in Z q
Multi-Field Persistent Cohomology
φ
gpφ
1τ
1τ
n∂σ
i+1a
∂σi+1=
Xτ∈∂σi+1
1 ( ) a
τφ
gpφ
1τ
1τ
nφ
k0 0 0 0 0 0 0 τ
j6= 0
= 0
ψ
1ψ
gp+1σ
1σ
i+10
0
0 0 1
σ
i+1∗∈ Z q
∀ j
φ j ← φ j − a ∂σ
i+1[j]c
−k 1
× φ k
c k
Inverse in Z q
a ∂σ i+1
0 6 =
0 0
Algo overview in Z q
Gaussian Elimination in a field
Cl´ement Maria - Multi-Field Persistent Homology December 17, 2013- 29
Multi-Field Persistent Cohomology
φ
gpφ
1τ
1τ
n∂σ
i+1a
∂σi+1=
Xτ∈∂σi+1
1 ( ) a
τφ
gpφ
1τ
1τ
nφ
k0 0 0 0 0 0 0 τ
j6
= 0
= 0
ψ
1ψ
gp+1σ
1σ
i+10
0
0 0 1
σ
∗i+1∀ j
φ j ← φ j − a ∂σ
i+1[j]c
−k 1
× φ k
c k
a ∂σ i+1
0 0
Multi-Field? ← Algo in Z q 1 × · · · × Z q r
∈ Z q 1 × · · · × Z q r
(u 1 , · · · , u r ) × (v 1 , · · · , v r ) + (w 1 , · · · , w r ) (u 1 × v 1 + w 1 , · · · , u r × v r + w r )
=
Multi-Field Persistent Cohomology
φ
gpφ
1τ
1τ
n∂σ
i+1a
∂σi+1=
Xτ∈∂σi+1
1 ( ) a
τφ
gpφ
1τ
1τ
nφ
k0 0 0 0 0 0 0 τ
j6
= 0
= 0
ψ
1ψ
gp+1σ
1σ
i+10
0
0 0 1
σ
∗i+1∀ j
φ j ← φ j − a ∂σ
i+1[j]c
−k 1
× φ k
c k
a ∂σ i+1
0 0
Multi-Field? ← Algo in Z q 1 × · · · × Z q r
∈ Z q 1 × · · · × Z q r
(u 1 , · · · , u r ) × (v 1 , · · · , v r ) + (w 1 , · · · , w r ) (u 1 × v 1 + w 1 , · · · , u r × v r + w r )
=
Cl´ement Maria - Multi-Field Persistent Homology December 17, 2013- 31
Multi-Field Persistent Cohomology
φ
gpφ
1τ
1τ
n∂σ
i+1a
∂σi+1=
Xτ∈∂σi+1
1 ( ) a
τφ
gpφ
1τ
1τ
nφ
k0 0 0 0 0 0 0 τ
j6
= 0
= 0
ψ
1ψ
gp+1σ
1σ
i+10
0
0 0 1
σ
∗i+1∀ j
φ j ← φ j − a ∂σ
i+1[j]c
−k 1
× φ k
c k
a ∂σ i+1
0 0
Multi-Field? ← Algo in Z q 1 × · · · × Z q r
∈ Z q 1 × · · · × Z q r
(u 1 , · · · , u r ) × (v 1 , · · · , v r ) + (w 1 , · · · , w r ) (u 1 × v 1 + w 1 , · · · , u r × v r + w r )
=
Multi-Field Persistent Cohomology
φ
gpφ
1τ
1τ
n∂σ
i+1a
∂σi+1=
Xτ∈∂σi+1
1 ( ) a
τφ
gpφ
1τ
1τ
nφ
k0 0 0 0 0 0 0 τ
j6
= 0
∀ j
φ j ← φ j − a ∂σ
i+1[j]c
−k 1
× φ k
c k
a ∂σ i+1
0 0
Multi-Field? ← Algo in Z q 1 × · · · × Z q r
(u 1 , · · · , u r ) × (v 1 , · · · , v r ) + (w 1 , · · · , w r ) (u 1 × v 1 + w 1 , · · · , u r × v r + w r )
=
Cl´ement Maria - Multi-Field Persistent Homology December 17, 2013- 33
Multi-Field Persistent Cohomology
φ
gpφ
1τ
1τ
n∂σ
i+1a
∂σi+1=
Xτ∈∂σi+1
1 ( ) a
τφ
gpφ
1τ
1τ
nφ
k0 0 0 0 0 0 0 τ
j6
= 0
∀ j
φ j ← φ j − a ∂σ
i+1[j]c
−k 1
× φ k
c k
a ∂σ i+1
0 0
Multi-Field? ← Algo in Z q 1 × · · · × Z q r
c k = (u 1 , · · · , u r ) with u s lowest 6 = 0
in Z q s for s ∈ S ⊆ [r] of a ∂σ (u 1 S , · · · , u r S ) = c − k 1
u s −1 if s ∈ S
0 o.w.
partial inverse
w.r.t. S
Multi-Field Persistent Cohomology
φ
gpφ
1τ
1τ
n∂σ
i+1a
∂σi+1=
Xτ∈∂σi+1
1 ( ) a
τφ
gpφ
1τ
1τ
nφ
k0 0 0 0 0 0 0 τ
j6
= 0
∀ j
φ j ← φ j − a ∂σ
i+1[j]c
−k 1
× φ k
c k
a ∂σ i+1
0 0
Multi-Field? ← Algo in Z q 1 × · · · × Z q r
c k = (u 1 , · · · , u r ) with u s lowest 6 = 0
in Z q s for s ∈ S ⊆ [r] of a ∂σ
(u 1 S , · · · , u r S ) = c − k 1 u s S =
u −1 s if s ∈ S
0 o.w.
partial inverse w.r.t. S
Cl´ement Maria - Multi-Field Persistent Homology December 17, 2013- 35
Z q
1× · · · × Z q
r∼ = Z q
1×···× q
rTheorem (Chinese Remainder Theorem)
For a family q 1 , · · · , q r of r distinct prime numbers, there is a ring isomorphism
ψ : Z q
1× · · · × Z q
r→ Z q
1×···×q
rs.t. the restriction ψ × : Z × q
1× · · · × Z × q
r→ Z × q
1×···×q
ris a group isomorphism.
for
I Z q
1×···×q
rwith pointwise addition/multiplication
I R × the multiplicative group of invertible elements of ring R
Moreover, ψ is easily constructible.
Multi-Field Persistent Cohomology
φ
gpφ
1τ
1τ
n∂σ
i+1a
∂σi+1=
Xτ∈∂σi+1
1 ( ) a
τφ
gpφ
1τ
1τ
nφ
k0 0 0 0 0 0 0 τ
j6
= 0
= 0
ψ
1ψ
gp+1σ
1σ
i+10
0
0 0 1
σ
∗i+1∀ j
φ j ← φ j − a ∂σ
i+1[j]c
−k 1
× φ k
c k
a ∂σ i+1
0 0
=
Multi-Field? ← Algo in Z q 1 ×···× q r
ψ(u 1 , · · · , u r ) × ψ(v 1 , · · · , v r ) + ψ(w 1 , · · · , w r ) ψ (u 1 × v 1 + w 1 , · · · , u r × v r + w r )
ψ ψ
∈ Z q 1 ×···× q r
Cl´ement Maria - Multi-Field Persistent Homology December 17, 2013- 37
Multi-Field Persistent Cohomology
φ
gpφ
1τ
1τ
n∂σ
i+1a
∂σi+1=
Xτ∈∂σi+1
1 ( ) a
τφ
gpφ
1τ
1τ
nφ
k0 0 0 0 0 0 0 τ
j6
= 0
= 0
ψ
1ψ
gp+1σ
1σ
i+10
0
0 0 1
σ
∗i+1∀ j
φ j ← φ j − a ∂σ
i+1[j]c
−k 1
× φ k
c k
a ∂σ i+1
0 0
=
Multi-Field? ← Algo in Z q 1 ×···× q r
ψ(u 1 , · · · , u r ) × ψ(v 1 , · · · , v r ) + ψ(w 1 , · · · , w r ) ψ (u 1 × v 1 + w 1 , · · · , u r × v r + w r )
ψ ψ
∈ Z q 1 ×···× q r
Multi-Field Persistent Cohomology
φ
gpφ
1τ
1τ
n∂σ
i+1a
∂σi+1=
Xτ∈∂σi+1
1 ( ) a
τφ
gpφ
1τ
1τ
nφ
k0 0 0 0 0 0 0 τ
j6
= 0
= 0
ψ
1ψ
gp+1σ
1σ
i+10
0
0 0 1
σ
∗i+1∀ j
φ j ← φ j − a ∂σ
i+1[j]c
−k 1
× φ k
c k
a ∂σ i+1
0 0
=
Multi-Field? ← Algo in Z q 1 ×···× q r
ψ(u 1 , · · · , u r ) × ψ(v 1 , · · · , v r ) + ψ(w 1 , · · · , w r ) ψ (u 1 × v 1 + w 1 , · · · , u r × v r + w r )
ψ ψ
∈ Z q 1 ×···× q r
Cl´ement Maria - Multi-Field Persistent Homology December 17, 2013- 39
Multi-Field Persistent Cohomology
φ
gpφ
1τ
1τ
n∂σ
i+1a
∂σi+1=
Xτ∈∂σi+1
1 ( ) a
τφ
gpφ
1τ
1τ
nφ
k0 0 0 0 0 0 0 τ
j6
= 0
∀ j
φ j ← φ j − a ∂σ
i+1[j]c
−k 1
× φ k
c k
a ∂σ i+1
0 0
with u s lowest 6 = 0
in Z q s for s ∈ S ⊆ [r] of a ∂σ
(u 1 S , · · · , u r S ) = c − k 1 u s S =
u −1 s if s ∈ S
0 o.w.
partial inverse w.r.t. S
Multi-Field? → Algo in Z q 1 ×···× q r
c k = ψ(u 1 , · · · , u r )
ψ
ψ
ψ
Multi-Field Persistent Cohomology
φ
gpφ
1τ
1τ
n∂σ
i+1a
∂σi+1=
Xτ∈∂σi+1
1 ( ) a
τφ
gpφ
1τ
1τ
nφ
k0 0 0 0 0 0 0 τ
j6
= 0
∀ j
φ j ← φ j − a ∂σ
i+1[j]c
−k 1
× φ k
c k
a ∂σ i+1
0 0
with u s lowest 6 = 0
in Z q s for s ∈ S ⊆ [r] of a ∂σ
(u 1 S , · · · , u r S ) = c − k 1 u s S =
u −1 s if s ∈ S
0 o.w.
partial inverse w.r.t. S
Multi-Field? → Algo in Z q 1 ×···× q r
c k = ψ(u 1 , · · · , u r )
ψ ψ ψ
Cl´ement Maria - Multi-Field Persistent Homology December 17, 2013- 41
Partial Inverse Construction
Define Q S = P
s∈S q s for S ⊆ [r ]. We prove that:
Data: x, Q S
Q R ← gcd(x, Q S ); via the euclidean algorithm: O(A
÷(Q));
Q
T← Q
S/Q
R;
v ← Extended-Euclidean-Algorithm (x, Q
T); such that;
vx + wQ
T= 1;
v ← v mod Q
T;
L
T← D(Q
T); some preprocessed constant;
x
S← (v × L
T) mod Q;
return x
S;
computes the partial inverse of x w.r.t. S. Cost: O(A) in Z q
1···q
rPartial Inverse Construction
Define Q S = P
s∈S q s for S ⊆ [r ]. We prove that:
Data: x, Q S
Q R ← gcd(x, Q S ); via the euclidean algorithm: O(A
÷(Q));
Q
T← Q
S/Q
R;
v ← Extended-Euclidean-Algorithm (x, Q
T); such that;
vx + wQ
T= 1;
v ← v mod Q
T;
L
T← D(Q
T); some preprocessed constant;
x
S← (v × L
T) mod Q;
return x
S;
computes the partial inverse of x w.r.t. S. Cost: O(A) in Z q
1···q
rCl´ement Maria - Multi-Field Persistent Homology December 17, 2013- 43
3 Complexity Analysis
and Experiments
Arithmetic Complexity
I For an integer z, let λ(z) = b log 2 z /w c + 1 the number of w-bits memory words to store z.
I Let Q = q 1 × · · · × q r be the product of the first r primes
I For B = λ(z), we have:
• Addition A + (z ) = O(B)
• Multiplication A × (z) = O(M(B))
• Division A ÷ (z ) = O(M (B) log B) with M (B) = O(B log B 2 O(log
∗B) ) Moreover:
λ(Q) <
1.46613r ln(r ln r) w
+ 1
Cl´ement Maria - Multi-Field Persistent Homology December 17, 2013- 45
Complexity Analysis
φ
gpφ
1τ
1τ
n∂σ
i+1a
∂σi+1=
Xτ∈∂σi+1
1 ( ) a
τφ
gpφ
1τ
1τ
nφ
k0 0 0 0 0 0 0 τ
j6
= 0
= 0
ψ
1ψ
gp+1σ
1σ
i+10
0
0 0 1
σ
∗i+1∈ Z q
∀ j
φ j ← φ j − a ∂σ
i+1[j]c
−k 1
× φ k
c k
Inverse in Z q
a ∂σ i+1
0 6 =
0 0
Algo overview in Z q
C a
∂C G
Complexity: O( | D(K, Z q ) | × [ C a ∂ + C G ])
Complexity Analysis
φ
gpφ
1τ
1τ
n∂σ
i+1a
∂σi+1=
Xτ∈∂σi+1
1 ( ) a
τφ
gpφ
1τ
1τ
nφ
k0 0 0 0 0 0 0 τ
j6
= 0
= 0
ψ
1ψ
gp+1σ
1σ
i+10
0
0 0 1
σ
∗i+1∀ j
φ j ← φ j − a ∂σ
i+1[j]c
−k 1
× φ k
c k
a ∂σ i+1
0 0
C a
∂C G
Algo overview in Z q 1 ×···× q r
O( | D(K, Z q 1 · · · Z q r ) | × [ C a ∂ + C G ] × A)
∈ Z q 1 ×···×q r
Partial inverse
Cl´ement Maria - Multi-Field Persistent Homology December 17, 2013- 47
Experiments
0 2 4 6 8 10 12 14 16 18 20
0 1,000 2,000 3,000 4,000 5,000
number of primes r
time (s.)
modular reconstruction naive
0 6 12 18 24 30
ratio
ratio x = y
Figure: Timings for the modular reconstruction algo vs naive.
O( | D(K, Z q
1· · · Z q
r) |× [ C a
∂+ C G ] × A) vs O(r ×| D(K, Z q ) |× [ C a
∂+ C G ])
Cl´ement Maria - Multi-Field Persistent Homology
Conclusion
Why Multi-Field Persistence?
Not for today but: we also have
I Multi-Field Bottleneck Distance between diagrams
I Generalized algorithm for maximal point set matching
I Efficient algorithm in O(m 03/2 log m 0 √
tA) (instead of O(m 3/2 log m))
1 4
{1, 2, 3}
{1,2}
{ 1, 3, 4 } { 4 } {2}
{ 1,3 } {4}
1 3 2
{1}
G G
fWhy Multi-Field Persistence?
The Multi-Field Persistence Diagram
I is more accurate:
characterizes torsion
I admits a fast construction algorithm
I admits a generalized bottleneck distance with a fast algorithm
Z ⊕ Z 2
∗Z 3 ⊕ Z 2
∗Z 2
only inZ2
only inZ3
inZ2andZ3 Death
Birth
Code available soon.
Cl´ement Maria - Multi-Field Persistent Homology December 17, 2013- 51