skip to main content
Solving path problems on directed graphs.October 1975
1975 Technical Report
Publisher:
  • Stanford University
  • 408 Panama Mall, Suite 217
  • Stanford
  • CA
  • United States
Published:01 October 1975
Bibliometrics
Skip Abstract Section
Abstract

This paper considers path problems on directed graphs which are solvable by a method similar to Gaussian elimination. The paper gives an axiom system for such problems which is a weakening of Salomaa''s axioms for a regular algebra. The paper presents a general solution method which requires O($n^3$) time for dense graphs with n vertices and considerably less time for sparse graphs. The paper also presents a decomposition method which solves a path problem by breaking it into subproblems, solving each subproblem by elimination, and combining the solutions. This method is a generalization of the "reducibility" notion of data flow analysis, and is a kind of single-element "tearing". Efficiently implemented, the method requires O(m $\alpha$(m,n)) time plus time to solve the subproblems, for problem graphs with n vertices and m edges. Here $\alpha$(m,n) is a very slowly growing function which is a functional inverse of Ackermann''s function. The paper considers variants of the axiom system for which the solution methods still work, and presents several applications including solving simultaneous linear equations and analyzing control flow in computer programs.

Cited By

  1. ACM
    Dolan S (2013). Fun with semirings, ACM SIGPLAN Notices, 48:9, (101-110), Online publication date: 12-Nov-2013.
  2. ACM
    Dolan S Fun with semirings Proceedings of the 18th ACM SIGPLAN international conference on Functional programming, (101-110)
  3. ACM
    Holley L and Rosen B Qualified data flow problems Proceedings of the 7th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, (68-82)
  4. ACM
    Banning J An efficient way to find the side effects of procedure calls and the aliases of variables Proceedings of the 6th ACM SIGACT-SIGPLAN symposium on Principles of programming languages, (29-41)
  5. ACM
    Schonberg E, Schwartz J and Sharir M Automatic data structure selection in SETL Proceedings of the 6th ACM SIGACT-SIGPLAN symposium on Principles of programming languages, (197-210)
  6. ACM
    Barth J (1978). A practical interprocedural data flow analysis algorithm, Communications of the ACM, 21:9, (724-736), Online publication date: 1-Sep-1978.
  7. ACM
    Rosen B Monoids for rapid data flow analysis Proceedings of the 5th ACM SIGACT-SIGPLAN symposium on Principles of programming languages, (47-59)
  8. ACM
    Reif J Symbolic program analysis in almost linear time Proceedings of the 5th ACM SIGACT-SIGPLAN symposium on Principles of programming languages, (76-83)
  9. ACM
    Reif J and Lewis H Symbolic evaluation and the global value graph Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages, (104-118)
  10. ACM
    Barth J An interprocedural data flow analysis algorithm Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages, (119-131)
  11. ACM
    Cousot P and Cousot R Abstract interpretation Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages, (238-252)
  12. ACM
    Tarjan R Reference machines require non-linear time to maintain disjoint sets Proceedings of the ninth annual ACM symposium on Theory of computing, (18-29)
Contributors
  • Princeton University

Recommendations