Processing math: 64%

Sunday, May 28, 2017

Čech (co)homology

In this post we briefly recall the construction of Čech cohomology as well as compute a few examples. Let X be a topological space with a cover U={Ui}, F a C-valued sheaf on X, and ˆF a C-valued cosheaf on X, for some category C (usually abelian groups).

Definition: The nerve N of U is the simplicial complex that has an r-simplex ρ for every non-empty intersection of r+1 opens of U. The support Uρ of ρ is this non-empty intersection. The r-skeleton Nr of N is the collection of all r-simplices.

Remark: The sheaf F and cosheaf ˆF may be viewed as being defined either on the opens of U over X, or on the nerve N of U. Indeed, the inclusion map VU on opens is given by the forgetful map . That is, i:NrNr1 forgets the ith open defining ρNr, so if Uρ=U0Ur, then U0ρ=U1Ur.

The Čech (co)homology will be defined as the (co)homology of a particular complex, whose boundary maps will be induced by, equivalently, the inclusion map on opens or i on simplices.

Definition: In the context above:
  • a p-chain is a finite formal sum of elements aσiˆF(Uσi), for every σi a p-simplex,
  • a q-cochain is a finite formal sum of elements bτjF(Uτj), for every τj a q-simplex,
  • the p-differential is the map dp:ˇCp(U,F)ˇCp1(U,F) given by
dp(aσ)=pi=0(1)iˆF(i)(aσ),
  • the q-codifferential is the map δq:ˇCq(U,F)ˇCq+1(U,F) given by
δq(bτ)=q+1j=0(1)jF(j)(bτ).The collection of p-chains form a group ˇCp(U,F) and the collection of q-cochains also form a group ˇCq(U,F), both under the respective group operation in each coordinate. The Čech homology H(U,F) is the homology of the chain complex of ˇCp groups, and the Čech cohomology H(U,F) is the cohomology of the cochain complex of ˇCq groups.

Example: Let X=S1 with a cover U={U,V,W} and associated nerve NU as below.
The cover is chosen so that all intersections are contractible. Let k be a field. Let ˆF be a cosheaf over N and F a sheaf over N, with ˆF(0-cell)=F(1-cell)=(1,1)k2 and ˆF(1-cell)=F(0-cell)=1k, so that the natural extension and restriction maps work. Then all the degree 0 and 1 chain and cochain groups are k3. Giving a counter-clockwise orientation to X, we easily see that
d1σUV=σVσU,δ0σU=σUVσWU,d1σVW=σWσV,δ0σV=σVWσUV,d1σWU=σUσW,δ0σW=σWUσVW.If we give an ordered basis of (σUV,σVW,σWU) to ˇC1(U,ˆF) and ˇC1(U,F), and (σU,σV,σW) to ˇC0(U,ˆF) and ˇC0(U,F), we find that
d1=[101110011][101011000],δ0=[110011101][101011000].
The Čech chain and cochain complexes are then
0ˇC1(U,ˆF)d1ˇC0(U,ˆF)0,0ˇC0(U,F)δ0ˇC1(U,F)0,for which
H1(U,ˆF)=ker(d1)=k,H0(U,F)=ker(δ0)=k,H0(U,ˆF)=k3/Im(d1)=k3/k2=k,H1(U,F)=k3/Im(δ0)=k3/k2=k.By the Čech-de Rham theorem, we know that the (co)homology groups should agree with the usual groups for S1, as U was a good cover, which they do. Next we compute another example with a view towards persistent homology.

Definition: Let X be a topological space and f:XY a map with U covering f(X). The Leray sheaf Li of degree i over NU is defined by Li(σ)=Hi(f1(Uσ)) and Li(στ)=Hi(f1(Uτ)f1(Uσ)), whenever σ is a face of τ.

Theorem (Curry, Theorem 8.2.21): In the context above, if NU is at most 1-dimensional, then for any tR,
Hi(f1(,t])H0((,t],Li)H1((,t],Li1).
The idea is to apply this theorem in a filtration, for different values of t, but in the example below we will have t large enough so that Xf1(,t].

Example: Let f:S1R be a projection map, and let X=f(S1) with a cover U={U,V} as below.
Note that although f1(U)f1(V) is not contractible, UV is, and the Čech cohomology will be over UR, so we are fine in applying the Čech-de Rham theorem. It is immediate that the only non-zero Leray sheaves are L0, for which
L0(σU)=k,L0(σV)=k,L0(σUV)=k2,hence ˇC0(U,L0)=ˇC1(U,L0)=k2. Giving ˇC0(U,L0) the ordered basis (σU,σV) and noting the homology maps H0(f1(U)f1(UV)) and H0(f1(V)f1(UV)) are simply 1(1,1), the \v Cech complex is
0ˇC0(U,L0)[1111]ˇC1(U,L0)0.
Hence H0(U,L0)=ker(δ0)=k and H1(U,L0)=k2/Im(δ0)=k2/k=k, allowing us to conclude, using Curry's and the Čech--de Rham theorems, that
H0(S1)H0(U,L0)H1(U,L1)=k0=k,H1(S1)H0(U,L1)H1(U,L0)=0k=k,H2(S1)H0(U,L2)H1(U,L1)=00=0,as expected.

References: Bott and Tu (Differential forms in algebraic topology, Section 10), Bredon (Sheaf theory, Section VI.4), Curry (Sheaves, cosheaves, and applications, Section 8)

Sunday, May 21, 2017

Categories and the TDA pipeline

 Conference topic

This post contains topics and ideas from ACAT at HIM, April 2017, as presented by Professor Ulrich Bauer (see slide 11 of his presentation, online at ulrich-bauer.org/persistence-bonn-talk.pdf). The central theme is to assign categories and functors to analyze the process
filtration  (co)homology  barcode.(pipe) Remark: The categories we will use are below. For filtrations, we have the ordered reals (though any poset P would work) and topological spaces:
R : Obj(R)=R,Top : Obj(Top)={topological spaces},Hom(r,s)={{rs}, if r
For (co)homology groups, we have the category of (framed) vector spaces. We write V^n for V^{\oplus n} = V\oplus V\oplus \cdots \oplus V, and e_n for a frame of V^n (see below).
\begin{align*} \Vect\ :\ & \Obj(\Vect) = \{V^{\oplus n}\ :\ 0\leqslant n< \infty\},\\ & \Hom(V^n,V^m) = \{\text{homomorphisms }f:V^n\to V^m\}, \\[5pt] \Vect^{fr}\ :\ & \Obj(\Vect^{fr}) = \{V^n\times e^n\ :\ 0\leqslant n<\infty\}, \\ & \Hom(V^n\times e^n,V^m\times e^m) = \{\text{hom. }f:V^n\to V^m,\ g:e^n\to e^m,\ g\in \Mat(n,m)\}. \end{align*}
Finally for barcodes, we have \Delta, the category of finite ordered sets, and its variants. A partial injective function, or matching f:A\nrightarrow B is a bijection A'\to B' for some A'\subseteq A, B'\subseteq B.
\begin{align*} \Delta\ :\ & \Obj(\Delta) = \{[n]=(0,1,\dots,n)\ :\ 0\leqslant n<\infty\},\\ & \Hom([n],[m]) = \{ \text{order-preserving functions }f:[n]\to [m]\}, \\[5pt] \Delta'\ :\ & \Obj(\Delta')= \{a=(a_0<a_1<\cdots<a_n)\ :\ a_i\in \Z_{\geqslant 0}, 0\leqslant n<\infty\},\\ & \Hom(a,b) = \{\text{order-preserving functions }f:a\to b\}, \\[5pt] \Delta''\ :\ & \Obj(\Delta'')= \{a=(a_0<a_1<\cdots<a_n)\ :\ a_i\in \Z_{\geqslant 0}, 0\leqslant n<\infty\},\\ & \Hom(a,b) = \{\text{order-preserving partial injective functions }f:a\nrightarrow b\}. \end{align*}

Definition: A frame e of a vector space V^n is equivalently:
  • an ordered basis of V^n,
  • a linear isomorphism V^n\to V^n, or
  • an element in the fiber of the principal rank n frame bundle over a point.
Frames (of possibly different sizes) are related by full rank elements of \Mat(n,m), which contains all n\times m matrices over a given field.

Definition: Let (P,\leqslant) be a poset. A (indexed topological) filtration is a functor F:P\to \Top, with
\Hom(F(r),F(s)) = \begin{cases} \{\iota:F(r) \hookrightarrow F(s)\}, & \text{ if }r\leqslant s, \\ \emptyset, & \text{ else,} \end{cases}
where \iota is the inclusion map. That is, we require F(r)\subseteq F(s) whenever r\leqslant s.

Definition: A persistence module is the composition of functors M_i:P \tov{F} \Top \tov{H_i} \Vect.

Homology will be taken over some field k. A framed persistence module is the same composition as above, but mapping into \Vect^{fr} instead. The framing is chosen to describe how many different vector spaces have already been encountered in the filtration.

Definition: A barcode is a collection of intervals of \R. It may also be viewed as the composition of functors B_i:P\tov{F}\Top\tov{H_i}\Vect \tov{\dim}\Delta.

Similarly as above, we may talk about a framed barcode by instead mapping into \Vect^{fr} and then to \Delta'', keeping track of which vector spaces we have already encountered. This allows us to interpret the process (\text{pipe}) in two different ways. First we have the unframed approach
\begin{array}{r c c c l} \Top & \to & \Vect & \to & \Delta, \\ X_t & \mapsto & H_i(X_t;k) & \mapsto & [\dim(H_i(X_t;k))]. \end{array}
The problem here is interpreting the inclusion X_t\hookrightarrow X_{t'} as a map in \Delta, for instance, in the case when H_i(X_t;k)\cong H_i(X_{t'};k), but H_i(X_t\hookrightarrow X_{t'}) \neq \id. To fix this, we have the framed interpretation of (\text{pipe})
\begin{array}{r c c c l} \Top & \to & \Vect^{fr} & \to & \Delta'', \\ X_t & \mapsto & H_i(X_t;k)\times e & \mapsto & [e]. \end{array}
The first map produces a frame e of size n, where n is the total number of different vector spaces encountered over all t'\leqslant t, by setting the first \dim(H_i(X_t;k)) coordinates to be the appropriate ones, and then the rest. This is done with the second map to \Delta'' in mind, as the size of [e] is \dim(H_i(X_t;k)), with only the first \dim(H_i(X_t;k)) basis vectors taken from e. As usual, these maps are best understood by example.

Example: Given the closed curve X in \R^2 below, let \varphi:X\to \R be the height map from the line 0, with X_i=\varphi^{-1}(-\infty,i], for i=r,s,t,u,v. Let e_i be the standard ith basis vector in \R^N.


Remark: This seems to make (\text{pipe}) functorial, as the maps X_t\hookrightarrow X_{t'} may be naturally viewed as partial injective functions in \Delta'', to account for the problem mentioned with the unframed interpretation. However, we have traded locality for functoriality, as the image of X_t in \Delta'' can not be calculated without having calculated X_{t'} for all t'<t.

References: Bauer (Algebraic perspectives of persistence), Bauer and Lesnick (Induced matchings and the algebraic stability of persistence barcodes)