Simpler and faster biconnectivity augmentation

This paper presents a new and simple technique to solve the problem of adding a minimum number of edges to an undirected graph in order to obtain a biconnected, i.e., 2-vertex-connected, resulting graph. Our technique results in a simpler algorithm, which runs in sequential linear time, that is also faster in parallel than the previous result.Previous approaches for the problem require the usage of sorting, and advanced data structures to dynamically maintain either (1) a rooted tree when vertices are collapsing, or (2) the largest two sets among a collection of sets when an element from each of the largest two sets is being deleted.Our algorithm only needs to find a maximum integer among a set of O(n) non-negative integers that are less than n and to compute various simple tree functions, e.g., the number of vertices and a consecutive numbering of the degree-1 vertices in a rooted subtree, on a rooted tree. No sorting routine and dynamic data structure is used in the algorithm. Our simple algorithm implies a linear-time sequential implementation. For parallel implementation, all but the step for finding connected components in our algorithm can be done optimally in O (log n) time on an EREW PRAM, where n is the number of vertices in the input graph. Hence our parallel implementation runs in either O (log n) time using O((n + m) . α(m, n)/log n) processors on a CRCW PRAM, or O(log n) time using O(n + m) processors on an EREW PRAM, where m is the number of edges in the input graph and α is the inverse Ackerman function. The previous best parallel algorithm for solving this problem runs in O(log2n) time using O(n + m) processors on an EREW PRAM.

[1]  Hiroshi Nagamochi Recent development of graph connectivity augmentation algorithms , 2000 .

[2]  Tsan-sheng Hsu Simpler and Faster Vertex-Connectivity Augmentation Algorithms , 2000, ESA.

[3]  Robert E. Tarjan,et al.  An Efficient Parallel Biconnectivity Algorithm , 2011, SIAM J. Comput..

[4]  Yijie Han,et al.  Concurrent threads and optimal parallel minimum spanning trees algorithm , 2001, JACM.

[5]  Richard Cole,et al.  Approximate Parallel Scheduling. II. Applications to Logarithmic-Time Optimal Parallel Graph Algorithms , 1991, Inf. Comput..

[6]  Tsan-sheng Hsu,et al.  A linear time algorithm for triconnectivity augmentation , 1991, [1991] Proceedings 32nd Annual Symposium of Foundations of Computer Science.

[7]  Robert E. Tarjan,et al.  Depth-First Search and Linear Graph Algorithms , 1972, SIAM J. Comput..

[8]  Tsan-sheng Hsu Undirected Vertex-Connectivity Structure and Smallest Four-Vertex-Connectivity Augmentation , 1995, ISAAC.

[9]  Ján Pleseník,et al.  Minimum block containing a given graph , 1976 .

[10]  Akira Nakamura,et al.  A Minimum 3-Connectivity Augmentation of a Graph , 1993, J. Comput. Syst. Sci..

[11]  Tsan-Sheng Hsu,et al.  Graph augmentation and related problems: theory and practice , 1993 .

[12]  Arnie Rosenthal,et al.  Smallest Augmentations to Biconnect a Graph , 1977, SIAM J. Comput..

[13]  Katta G. Murty,et al.  Mathematical programming: State of the art 1994 , 1994 .

[14]  Tsan-sheng Hsu On Four-Connecting a Triconnected Graph , 2000, J. Algorithms.

[15]  John H. Reif,et al.  Synthesis of Parallel Algorithms , 1993 .

[16]  Tsan-sheng Hsu,et al.  Finding a Smallest Augmentation to Biconnect a Graph , 1993, SIAM J. Comput..

[17]  Frank Harary,et al.  Graph Theory , 2016 .

[18]  Tibor Jordán,et al.  On the Optimal Vertex-Connectivity Augmentation , 1995, J. Comb. Theory B.

[19]  Leslie G. Valiant,et al.  Parallelism in Comparison Problems , 1975, SIAM J. Comput..

[20]  Tsan-sheng Hsu,et al.  On Finding a Smallest Augmentation to Biconnect a Graph , 1991, ISA.

[21]  Ming-Yang Kao,et al.  A Unifying Augmentation Algorithm for Two-Edge Connectivity and Biconnectivity , 1998, J. Comb. Optim..