Fast algorithms for finding nearest common ancestors
SIAM Journal on Computing
Data structures and network algorithms
Data structures and network algorithms
Efficiency of a Good But Not Linear Set Union Algorithm
Journal of the ACM (JACM)
Applications of Path Compression on Balanced Trees
Journal of the ACM (JACM)
A fast algorithm for finding dominators in a flowgraph
ACM Transactions on Programming Languages and Systems (TOPLAS)
Immediate predominators in a directed graph [H]
Communications of the ACM
Communications of the ACM
Flow Analysis of Computer Programs
Flow Analysis of Computer Programs
The Design and Analysis of Computer Algorithms
The Design and Analysis of Computer Algorithms
The Theory of Parsing, Translation, and Compiling
The Theory of Parsing, Translation, and Compiling
A linear-time algorithm for a special case of disjoint set union
STOC '83 Proceedings of the fifteenth annual ACM symposium on Theory of computing
Data structures for on-line updating of minimum spanning trees
STOC '83 Proceedings of the fifteenth annual ACM symposium on Theory of computing
Principles of Compiler Design (Addison-Wesley series in computer science and information processing)
Principles of Compiler Design (Addison-Wesley series in computer science and information processing)
An efficient method of computing static single assignment form
POPL '89 Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Compact representations for control dependence
PLDI '90 Proceedings of the ACM SIGPLAN 1990 conference on Programming language design and implementation
Efficiently computing static single assignment form and the control dependence graph
ACM Transactions on Programming Languages and Systems (TOPLAS)
An efficient delay test generation system for combinational logic circuits
DAC '90 Proceedings of the 27th ACM/IEEE Design Automation Conference
Generalized dominators and post-dominators
POPL '92 Proceedings of the 19th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Dominators, super blocks, and program coverage
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
ACM Letters on Programming Languages and Systems (LOPLAS)
An incremental algorithm for maintaining the dominator tree of a reducible flowgraph
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Value dependence graphs: representation without taxation
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
On slicing programs with jump statements
PLDI '94 Proceedings of the ACM SIGPLAN 1994 conference on Programming language design and implementation
Static slicing in the presence of goto statements
ACM Transactions on Programming Languages and Systems (TOPLAS)
A linear time algorithm for placing &phgr;-nodes
POPL '95 Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Incremental computation of dominator trees
IR '95 Papers from the 1995 ACM SIGPLAN workshop on Intermediate representations
APT: a data structure for optimal control dependence computation
PLDI '95 Proceedings of the ACM SIGPLAN 1995 conference on Programming language design and implementation
Efficient building and placing of gating functions
PLDI '95 Proceedings of the ACM SIGPLAN 1995 conference on Programming language design and implementation
A framework for generalized control dependence
PLDI '96 Proceedings of the ACM SIGPLAN 1996 conference on Programming language design and implementation
Incremental computation of dominator trees
ACM Transactions on Programming Languages and Systems (TOPLAS)
Optimal control dependence computation and the Roman chariots problem
ACM Transactions on Programming Languages and Systems (TOPLAS)
Linear-time pointer-machine algorithms for least common ancestors, MST verification, and dominators
STOC '98 Proceedings of the thirtieth annual ACM symposium on Theory of computing
A new, simpler linear-time dominators algorithm
ACM Transactions on Programming Languages and Systems (TOPLAS)
Efficient coverage testing using global dominator graphs
Proceedings of the 1999 ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
Data structures for weighted matching and nearest common ancestors with linking
SODA '90 Proceedings of the first annual ACM-SIAM symposium on Discrete algorithms
On loops, dominators, and dominance frontiers
ACM Transactions on Programming Languages and Systems (TOPLAS)
Region Analysis: A Parallel Elimination Method for Data Flow Analysis
IEEE Transactions on Software Engineering
Improved Algorithms for Finding Level Ancestors in Dynamic Trees
ICALP '00 Proceedings of the 27th International Colloquium on Automata, Languages and Programming
A static measure of a subset of intra-procedural data flow testing coverage based on node coverage
CASCON '99 Proceedings of the 1999 conference of the Centre for Advanced Studies on Collaborative research
Dominator Trees and Fast Verification of Proof Nets
LICS '00 Proceedings of the 15th Annual IEEE Symposium on Logic in Computer Science
Journal of Functional Programming
Finding dominators revisited: extended abstract
SODA '04 Proceedings of the fifteenth annual ACM-SIAM symposium on Discrete algorithms
An Efficient Algorithm for Finding Double-Vertex Dominators in Circuit Graphs
Proceedings of the conference on Design, Automation and Test in Europe - Volume 1
A fast algorithm for finding common multiple-vertex dominators in circuit graphs
Proceedings of the 2005 Asia and South Pacific Design Automation Conference
Distributed verification of minimum spanning trees
Proceedings of the twenty-fifth annual ACM symposium on Principles of distributed computing
Fast verification of MLL proof nets via IMLL
ACM Transactions on Computational Logic (TOCL)
May-happen-in-parallel analysis of X10 programs
Proceedings of the 12th ACM SIGPLAN symposium on Principles and practice of parallel programming
A practical interprocedural dominance algorithm
ACM Transactions on Programming Languages and Systems (TOPLAS)
Path minima queries in dynamic weighted trees
WADS'11 Proceedings of the 12th international conference on Algorithms and data structures
Transactions on Computational Systems Biology VI
An efficient algorithm for finding maximum cycle packings in reducible flow graphs
ISAAC'04 Proceedings of the 15th international conference on Algorithms and Computation
Linear time algorithms for two disjoint paths problems on directed acyclic graphs
Theoretical Computer Science
Hi-index | 0.00 |
In the first part of the paper we show how to extend recent methods for solving a special case of the union-find problem in linear time, to a special case of the eval-link-update problem for computing the minimum function defined on paths of trees. In the cases where our approach is applicable, we give a way to perform m eval, link, and update operations on n elements in O(m + n) time and O(n) space, improved from O(m &agr;(m + n, n) + n) time and O(n) space in the more general case, where &agr; is a functional inverse of Ackermans function. The technique gives similar improvements in the efficiency of algorithms for solving several network optimization problems in the case where all the keys involved are integers in some suitable range. In the second part of the paper we show how to use the new technique for speeding up the fastest known algorithm for finding dominators in flow graphs so that it runs in linear time. We introduce the notions of pseudo and external dominators which are both computable in linear time and make the technique introduced in the first part applicable for finding immediate dominators. We first give an algorithm for a limited class of graphs which include cycle free graphs, and thus can be used to find dominators in reducible flow graphs. We then show how to extend our technique for computing dominators on any flow graph. All the algorithms we describe run on a Random Access Machine.