In the field of topological data analysis, persistence modules are used to express geometrical features of data sets. The matching distance $d_\mathcal{M}$ measures the difference between $2$-parameter persistence modules by taking the maximum bottleneck distance between $1$-parameter slices of the modules. The previous fastest algorithm to compute $d_\mathcal{M}$ exactly runs in $O(n^{8+\omega})$, where $\omega$ is the matrix multiplication constant. We improve significantly on this by describing an algorithm with expected running time $O(n^5 \log^3 n)$. We first solve the decision problem $d_\mathcal{M}\leq \lambda$ for a constant $\lambda$ in $O(n^5\log n)$ by traversing a line arrangement in the dual plane, where each point represents a slice. Then we lift the line arrangement to a plane arrangement in $\mathbb{R}^3$ whose vertices represent possible values for $d_\mathcal{M}$, and use a randomized incremental method to search through the vertices and find $d_\mathcal{M}$. The expected running time of this algorithm is $O((n^4+T(n))\log^2 n)$, where $T(n)$ is an upper bound for the complexity of deciding if $d_\mathcal{M}\leq \lambda$.
翻译:在表层数据分析领域, 使用持久性模块来表达数据集的几何特征。 匹配的距离 $_ mathcal{ m} 来测量 $2 参数持久性模块之间的差值。 我们首先用一个常数$$\ mathcal{ M\leq\ llambda$的最大瓶颈距离来测量决定问题 $\ mathcal{ m} 。 之前的计算 $ mathcal{ m} 的最快算法以$O( n ⁇ 8\ omga} 来计算 $( omga$) 矩阵乘积常数常数。 然后我们用 $\ m\ m\ 3 来描述一个具有预期时间值的算法 $( $_ macal2\ 3 n) 。 我们首先解决一个常数$$\\ macal{ m} libda 的决定问题 $\ $( macal_ macal_ macal} lax a roization a rofical roal roal rotical rotical rod ro rocal rod rod rocal rocal rocal rocal rocal rocal = $ * $_ $_ = a_ = a_ =_ ==================================================================xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx