{"title":"Fast Algorithms for Minimum Homology Basis","authors":"Amritendu Dhar, Vijay Natarajan, Abhishek Rathod","doi":"10.1007/s00454-024-00680-8","DOIUrl":null,"url":null,"abstract":"<p>We study the problem of finding a minimum homology basis, that is, a lightest set of cycles that generates the 1-dimensional homology classes with <span>\\(\\mathbb {Z}_2\\)</span> coefficients in a given simplicial complex <i>K</i>. This problem has been extensively studied in the last few years. For general complexes, the current best deterministic algorithm, by Dey et al. (LATIN 2018: Theoretical Informatics, Springer International Publishing, Cham, 2018), runs in <span>\\(O(N m^{\\omega -1} + n m g)\\)</span> time, where <i>N</i> denotes the total number of simplices in <i>K</i>, <i>m</i> denotes the number of edges in <i>K</i>, <i>n</i> denotes the number of vertices in <i>K</i>, <i>g</i> denotes the rank of the 1-homology group of <i>K</i>, and <span>\\(\\omega \\)</span> denotes the exponent of matrix multiplication. In this paper, we present three conceptually simple randomized algorithms that compute a minimum homology basis of a general simplicial complex <i>K</i>. The first algorithm runs in <span>\\(\\tilde{O}(m^\\omega )\\)</span> time, the second algorithm runs in <span>\\(O(N m^{\\omega -1})\\)</span> time and the third algorithm runs in <span>\\(\\tilde{O}(N^2\\,g + N m g{^2} + m g{^3})\\)</span> time which is nearly quadratic time when <span>\\(g=O(1)\\)</span>. We also study the problem of finding a minimum cycle basis in an undirected graph <i>G</i> with <i>n</i> vertices and <i>m</i> edges. The best known algorithm for this problem runs in <span>\\(O(m^\\omega )\\)</span> time. Our algorithm, which has a simpler high-level description, but is slightly more expensive, runs in <span>\\(\\tilde{O}(m^\\omega )\\)</span> time. We also provide a practical implementation of computing the minimum homology basis for general weighted complexes. The implementation is broadly based on the algorithmic ideas described in this paper, differing in its use of practical subroutines. Of these subroutines, the more costly step makes use of a parallel implementation, thus potentially addressing the issue of scale. We compare results against the currently known state of the art implementation (ShortLoop).</p>","PeriodicalId":50574,"journal":{"name":"Discrete & Computational Geometry","volume":"70 1","pages":""},"PeriodicalIF":0.6000,"publicationDate":"2024-07-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Discrete & Computational Geometry","FirstCategoryId":"100","ListUrlMain":"https://doi.org/10.1007/s00454-024-00680-8","RegionNum":3,"RegionCategory":"数学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q4","JCRName":"COMPUTER SCIENCE, THEORY & METHODS","Score":null,"Total":0}
引用次数: 0
Abstract
We study the problem of finding a minimum homology basis, that is, a lightest set of cycles that generates the 1-dimensional homology classes with \(\mathbb {Z}_2\) coefficients in a given simplicial complex K. This problem has been extensively studied in the last few years. For general complexes, the current best deterministic algorithm, by Dey et al. (LATIN 2018: Theoretical Informatics, Springer International Publishing, Cham, 2018), runs in \(O(N m^{\omega -1} + n m g)\) time, where N denotes the total number of simplices in K, m denotes the number of edges in K, n denotes the number of vertices in K, g denotes the rank of the 1-homology group of K, and \(\omega \) denotes the exponent of matrix multiplication. In this paper, we present three conceptually simple randomized algorithms that compute a minimum homology basis of a general simplicial complex K. The first algorithm runs in \(\tilde{O}(m^\omega )\) time, the second algorithm runs in \(O(N m^{\omega -1})\) time and the third algorithm runs in \(\tilde{O}(N^2\,g + N m g{^2} + m g{^3})\) time which is nearly quadratic time when \(g=O(1)\). We also study the problem of finding a minimum cycle basis in an undirected graph G with n vertices and m edges. The best known algorithm for this problem runs in \(O(m^\omega )\) time. Our algorithm, which has a simpler high-level description, but is slightly more expensive, runs in \(\tilde{O}(m^\omega )\) time. We also provide a practical implementation of computing the minimum homology basis for general weighted complexes. The implementation is broadly based on the algorithmic ideas described in this paper, differing in its use of practical subroutines. Of these subroutines, the more costly step makes use of a parallel implementation, thus potentially addressing the issue of scale. We compare results against the currently known state of the art implementation (ShortLoop).
我们研究的问题是寻找最小同调基础,即在给定简单复数K中生成具有\(\mathbb {Z}_2\) 系数的一维同调类的最轻循环集。对于一般复数,目前最好的确定性算法是由 Dey 等人提出的(LATIN 2018:Theoretical Informatics, Springer International Publishing, Cham, 2018),运行时间为 \(O(N m^{\omega -1} + n m g)\) time,其中 N 表示 K 中简约的总数,m 表示 K 中边的数量,n 表示 K 中顶点的数量,g 表示 K 的 1-homology 群的秩,\(\omega \) 表示矩阵乘法的指数。在本文中,我们提出了三种概念简单的随机算法,可以计算一般单纯复数 K 的最小同调基。第一种算法的运行时间为(\tilde{O}(m^\omega )\),第二种算法的运行时间为(O(N m^{\omega -1})\) time,第三种算法的运行时间为(\tilde{O}(N^2\,g + N m g{^2} + m g{^3})\) time,当\(g=O(1)\)时,这种算法的运行时间接近二次方时间。我们还研究了在有 n 个顶点和 m 条边的无向图 G 中寻找最小循环基础的问题。这个问题的已知最佳算法运行时间为 \(O(m^\omega )\) time。我们的算法具有更简单的高层描述,但成本略高,运行时间为(\tilde{O}(m^\omega ))。我们还提供了计算一般加权复数最小同调基础的实际实现。该实现大致基于本文描述的算法思想,不同之处在于它使用了实用的子程序。在这些子程序中,成本较高的步骤使用了并行执行,从而有可能解决规模问题。我们将结果与目前已知的最先进实现方法(ShortLoop)进行了比较。
期刊介绍:
Discrete & Computational Geometry (DCG) is an international journal of mathematics and computer science, covering a broad range of topics in which geometry plays a fundamental role. It publishes papers on such topics as configurations and arrangements, spatial subdivision, packing, covering, and tiling, geometric complexity, polytopes, point location, geometric probability, geometric range searching, combinatorial and computational topology, probabilistic techniques in computational geometry, geometric graphs, geometry of numbers, and motion planning.