Conditions for incremental iteration: Examples and counterexamples

Iterative algorithms for fixed points of systems of equations are of importance in graph algorithms, data flow analysis and other areas of computer science. One commonly-sought extension is an incremental update procedure, which responds to small changes in problem parameters by obtaining the new fixed point from perturbation of the previous solution. One approach which has been suggested is to iterate for the new fixed point beginning at that previous solution, possibly after some small modifications. Our results show that this procedure is not in general correct. We give sufficient conditions for correctness, and give counterexamples in Boolean algebra and data flow analysis showing that difficulties with the proposed algorithms can occur in practice.

[1]  Gary A. Kildall,et al.  A unified approach to global program optimization , 1973, POPL.

[2]  Dana S. Scott,et al.  Data Types as Lattices , 1976, SIAM J. Comput..

[3]  Alfred V. Aho,et al.  Compilers: Principles, Techniques, and Tools , 1986, Addison-Wesley series in computer science / World student series edition.

[4]  Barbara G. Ryder,et al.  An incremental algorithm for software analysis , 1987, SDE 2.

[5]  Lori Pollock An approach to incremental compilation of optimized code , 1986 .

[6]  Alfred V. Aho,et al.  The Design and Analysis of Computer Algorithms , 1974 .

[7]  Ken Kennedy,et al.  Efficient computation of flow insensitive interprocedural summary information , 1984, SIGPLAN '84.

[8]  Barbara G. Ryder Incremental data flow analysis , 1983, POPL '83.

[9]  Matthew S. Hecht,et al.  Flow Analysis of Computer Programs , 1977 .

[10]  Michael G. Burke An interval-based approach to exhaustive and incremental interprocedural data-flow analysis , 1990, TOPL.

[11]  Barbara G. Ryder,et al.  Incremental data flow analysis via dominator and attribute update , 1988, POPL '88.

[12]  F. Kenneth Zadeck,et al.  Incremental data flow analysis in a structured program editor , 1984, SIGPLAN '84.

[13]  Barbara G. Ryder,et al.  Incremental data-flow analysis algorithms , 1988, TOPL.

[14]  Vida Ghodssi Incremental analysis of programs , 1983 .

[15]  P. Cousot,et al.  Constructive versions of tarski's fixed point theorems , 1979 .

[16]  Barbara G. Ryder,et al.  A Critical Analysis of Incremental Iterative Data Flow Analysis Algorithms , 1990, IEEE Trans. Software Eng..