Map Window Cycle Window

Table 12.4. Miscellaneous data. k-simplices 1 2 3 total hopf 100 1,752 3,240 1,587 6,679 möbius 100 2,809 5,331 2,621 10,861 bearing 2,881 24,993 44,042 21,929 93,845 TAO 7,774 60,675 105,710 52,808 226,967 bone 42,311 346,664 608,445 304,091 1,301,511 • TAO is a molecular tile composed of crossover DNA strands, which we received from Thomas LaBean LaBean et al., 2000. It is used for DNA- based computation. • bone is a sampled iso-surface of a cube of microscopic human bone. The volume data were provided by Françoise Peyrin from CNRS CREATIS in Lyon, and were issued from Synchrotron Radiation Microtomography from the ID19 beamline at ESRF in Grenoble. Dominique Attali generated the iso-surface that we sampled. While bone is a surface data set, it does not have the characteristics of surfaces introduced in the last section, as it does not enclose large volumes. We show renderings of these data sets in Figure 12.4.

12.2 Algorithm for Z

2 Having described the three-dimensional data, we now begin examining the persistence algorithm over Z 2 coefficients. While the algorithm has O m 3 running time, we show that it is extremely fast in practice.

12.2.1 Timings

We only time and present the portion of the software that is directly related to computing persistence. In particular, we do not time the construction of the Delaunay complex or the α-shape filtration. All timings in this section were done on a Sun Ultra-10 with a 440 MHz UltraSPARC IIi processor and 256 megabyte RAM, running Solaris 8. Table 12.5 distinguishes four steps in the computation: marking simplices as positive or negative, and adding k-cycles for k = 0, 1, 2. Recall that the computation of persistence can be accelerated for k = 0, 2 by using a union-find data structure. As the times show, this im- provement subsumes adding 0- and 2-cycles in the marking process, shrinking Fig. 12.4. Miscellaneous data used. the time for these to steps to essentially nothing. Figure 12.5 graphs the total time for the persistence algorithm, with and without the union-find speedup, against the number of simplices in a filtration. The graph shows that the com- putation time is essentially linear in the number of simplices in the filtration. This is substantially faster than the cubic dependence proved in Section 7.2.3. Of course, we need to distinguish worst-case analysis from average running time. After accelerating with union-find, the slowest portion of the algorithm adds 1-cycles, which is still O m 3 in the worst case.

12.2.2 Statistics

The cubic upper bound in Section 7.2.3 followed from the observation that the k -cycle created by σ i goes through fewer than p i collisions, and the length of its list built up during these collisions is less than k +2p i . We may explain the linear running time in Figure 12.5 by showing that the average number of col-