Interprocedural may-alias analysis for pointers: beyond k-limiting
PLDI '94 Proceedings of the ACM SIGPLAN 1994 conference on Programming language design and implementation
Precise interprocedural dataflow analysis via graph reachability
POPL '95 Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Precise interprocedural dataflow analysis with applications to constant propagation
TAPSOFT '95 Selected papers from the 6th international joint conference on Theory and practice of software development
Semirings and formal power series: their relevance to formal languages and automata
Handbook of formal languages, vol. 1
Derivatives of Regular Expressions
Journal of the ACM (JACM)
A unified approach to global program optimization
POPL '73 Proceedings of the 1st annual ACM SIGACT-SIGPLAN symposium on Principles of programming languages
POPL '77 Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Principles of Program Analysis
Principles of Program Analysis
POPL '82 Proceedings of the 9th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
The Interprocedural Coincidence Theorem
CC '92 Proceedings of the 4th International Conference on Compiler Construction
Parikh's Theorem in Commutative Kleene Algebra
LICS '99 Proceedings of the 14th Annual IEEE Symposium on Logic in Computer Science
Model Checking Probabilistic Pushdown Automata
LICS '04 Proceedings of the 19th Annual IEEE Symposium on Logic in Computer Science
Quantitative Analysis of Probabilistic Pushdown Automata: Expectations and Variances
LICS '05 Proceedings of the 20th Annual IEEE Symposium on Logic in Computer Science
FOCS '05 Proceedings of the 46th Annual IEEE Symposium on Foundations of Computer Science
Weighted pushdown systems and their application to interprocedural dataflow analysis
Science of Computer Programming - Special issue: Static analysis symposium (SAS 2003)
On the convergence of Newton's method for monotone systems of polynomial equations
Proceedings of the thirty-ninth annual ACM symposium on Theory of computing
Recursive Markov chains, stochastic grammars, and monotone systems of nonlinear equations
Journal of the ACM (JACM)
On fixed point equations over commutative semirings
STACS'07 Proceedings of the 24th annual conference on Theoretical aspects of computer science
An extension of Newton's method to ω-continuous semirings
DLT'07 Proceedings of the 11th international conference on Developments in language theory
Computing the Least Fixed Point of Positive Polynomial Systems
SIAM Journal on Computing
Parikh's theorem: A simple and direct automaton construction
Information Processing Letters
Solving fixed-point equations by derivation tree analysis
CALCO'11 Proceedings of the 4th international conference on Algebra and coalgebra in computer science
Algorithmic verification of asynchronous programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Formal Methods in System Design
Underapproximation of procedure summaries for integer programs
TACAS'13 Proceedings of the 19th international conference on Tools and Algorithms for the Construction and Analysis of Systems
Hi-index | 0.01 |
This article presents a novel generic technique for solving dataflow equations in interprocedural dataflow analysis. The technique is obtained by generalizing Newton's method for computing a zero of a differentiable function to ω-continuous semirings. Complete semilattices, the common program analysis framework, are a special class of ω-continuous semirings. We show that our generalized method always converges to the solution, and requires at most as many iterations as current methods based on Kleene's fixed-point theorem. We also show that, contrary to Kleene's method, Newton's method always terminates for arbitrary idempotent and commutative semirings. More precisely, in the latter setting the number of iterations required to solve a system of n equations is at most n.