Bidirectional edges problem: Part I—A simple algorithm

The “bidirectional edges problem” is to find an edge-labeling of an undirected network,G=(V, E), with a source and a sink, such that an edge [u, v] ∈E is labeled (u, v) or (v, u) (or both) depending on the existence of a (simple) path from the source to sink that visits the verticesu andv, in the orderu, v orv, u, respectively. We provide several algorithms for this problem in the current paper and the sequel. In this paper we show the relation between this problem and the classical two-vertex-disjoint-paths problem and then devise a simple algorithm with a time complexity ofO(|E|·|V|2). In the sequel we improve the time complexity toO(|E|·|V|). The main technique exploits aclever partition of the graph into a set of paths and bridges which are then analyzed recursively.The bidirectional edges problem arises naturally in the context of the simulation of an MOS transistor network, in which a transistor may operate as a unilateral or a bilateral device, depending on the voltages at its source and drain nodes. For efficient simulation, it is required to detect the set of transistors that may operate as bilateral devices. Also, sometimes it is intended to propagate information in one direction only, and propagation in the wrong direction (resulting in asneak path) can cause functional error. Our algorithms can be used to detect all the sneak paths.

[1]  W. T. Tutte Connectivity in graphs , 1966 .

[2]  Bud Mishra An Efficient Algorithm to Find all 'Bidirectional' Edges of an Undirected Graph , 1984, FOCS.

[3]  W. T. Tutte,et al.  Bridges and Hamiltonian circuits in planar graphs , 1977 .

[4]  John A. Newkirk,et al.  An Algorithm to Generate Tests for MOS Circuits at the Switch Level , 1985, ITC.

[5]  Leendert M. Huisman,et al.  SLS-a fast switch-level simulator [for MOS] , 1988, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[6]  Norman P. Jouppi Derivation of Signal Flow Direction in MOS VLSI , 1987, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[7]  O. Ore The Four-Color Problem , 1967 .

[8]  Yossi Shiloach,et al.  A Polynomial Solution to the Undirected Two Paths Problem , 1980, JACM.

[9]  Tatsuo Ohtsuki,et al.  The two disjoint path problem and wire routing design , 1980, Graph Theory and Algorithms.

[10]  Paul D. Seymour Disjoint paths in graphs , 2006, Discret. Math..

[11]  W. T. Tutte Graph Theory , 1984 .

[12]  Daniel Brand Detecting Sneak Paths in Transistor Networks , 1986, IEEE Transactions on Computers.

[13]  Robert E. Tarjan,et al.  A linear-time algorithm for finding an ambitus , 2011, Algorithmica.

[14]  Melvin A. Breuer,et al.  A new method for assigning signal flow directions to MOS transistors , 1990, 1990 IEEE International Conference on Computer-Aided Design. Digest of Technical Papers.

[15]  Shimon Even,et al.  Graph Algorithms , 1979 .

[16]  Mehmet A. Cirit Switch level random pattern testability analysis , 1988, 25th ACM/IEEE, Design Automation Conference.Proceedings 1988..

[17]  Robert E. Tarjan,et al.  Efficient Planarity Testing , 1974, JACM.

[18]  Edward Harrison Frank A data-driven multiprocessor for switch-level simulation of vlsi circuits , 1985 .