Efficient Sink-Reachability Analysis via Graph Reduction
- 18 January 2021
- journal article
- research article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Transactions on Knowledge and Data Engineering
- Vol. 34 (11) , 5321-5335
Abstract
The reachability problem on directed graphs, asking whether two vertices are connected via a directed path, is an elementary problem that has been well-studied. In this paper, we study a variation of the elementary reachability problem, called the sink-reachability problem, which can be found in many applications such as static program analysis, social network analysis, large scale web graph analysis, XML document link path analysis, and the study of gene regulation relationships. To scale sink-reachablity analysis to large graphs, we develop a highly scalable sink-reachability preserving graph reduction strategy for input sink graphs, by using a composition framework. That is, individual sink-reachability preserving condensation operators, each running in linear time, are pipelined together to produce graph reduction algorithms that result in close to maximum reduction, while keeping the computation efficient. Experiments on large real-world sink graphs demonstrate the efficiency and effectiveness of our compositional approach to sink-reachability preserving graph reduction with a reduction rate of up to 99.74 percent for vertices and a rate of up to 99.46 percent for edges.Keywords
Funding Information
- Australian Government
- ARC Discovery Project (DP210101984)
- ARC Future Fellowship funding scheme (FT180100256)
- Oracle Inc.
This publication has 31 references indexed in Scilit:
- Linear-Time Algorithms for Dominators and Other Path-Evaluation ProblemsSIAM Journal on Computing, 2008
- The DaCapo benchmarksACM SIGPLAN Notices, 2006
- Demand-driven points-to analysis for JavaACM SIGPLAN Notices, 2005
- Linear-time modular decomposition of directed graphsDiscrete Applied Mathematics, 2005
- Reachability and Distance Queries via 2-Hop LabelsSIAM Journal on Computing, 2003
- Efficient instrumentation for code coverage testingACM SIGSOFT Software Engineering Notes, 2002
- Program analysis via graph reachabilityInformation and Software Technology, 1998
- A fast algorithm for finding dominators in a flowgraphACM Transactions on Programming Languages and Systems, 1979
- Depth-First Search and Linear Graph AlgorithmsSIAM Journal on Computing, 1972
- Transitiv orientierbare GraphenActa Mathematica Hungarica, 1967