Static caching for incremental computation
ACM Transactions on Programming Languages and Systems (TOPLAS)
Proceedings of the 1999 ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
Efficiency by Incrementalization: An Introduction
Higher-Order and Symbolic Computation
Dynamic Programming via Static Incrementalization
Higher-Order and Symbolic Computation
Dynamic Programming via Static Incrementalization
ESOP '99 Proceedings of the 8th European Symposium on Programming Languages and Systems
Improving the Representation of Infinite Trees to Deal with Sets of Trees
ESOP '00 Proceedings of the 9th European Symposium on Programming Languages and Systems
Eliminating Dead Code on Recursive Data
SAS '99 Proceedings of the 6th International Symposium on Static Analysis
An incremental unique representation for regular trees
Nordic Journal of Computing
Eliminating dead code on recursive data
Science of Computer Programming - Special issue on static analysis (SAS'99)
Hi-index | 0.00 |
This paper describes a general and powerful method for dependence analysis in the presence of recursive data constructions. The particular analysis presented is for identifying partially dead recursive data, but the general framework for representing and manipulating recursive substructures applies to all dependence analyses. The method uses projections based on general regular tree grammars extended with notions of live and dead, and defines the analysis as mutually recursive grammar transformers. To guarantee that the analysis terminates, we use %appropriate finite grammar abstract domains or carefully designed approximations. We describe how to approximate argument projections with grammars that can be computed without iterating and how to approximate resulting projections with a widening operation. We design an approximation operation that combines two grammars to give the most precise deterministic result possible. All grammar operations used in the analysis have efficient algorithms. The overall analysis yields significantly more precise results than other known methods.