Summary
A general method that permits simple proofs of relative lower bounds for incremental update algorithms is presented. This method is applied to classify functions by relative lower bounds. We demonstrate our technique by bounding a number of incremental algorithms drawn from various domains. The method described expands upon work by Paull, Berman, and Cheng [PCB] and generalizes a result of Even and Gazit [EG]. Our results have interesting implications with respect to the optimality of an incremental algorithm previously developed by Ryder in [R, RP2]. Perhaps most importantly, the proof method and function classification suggest which types of problems are likely to yield good incremental algorithms (i.e., of lower complexity) and which cannot be improved by an incremental approach.
Similar content being viewed by others
References
Aho, A., Hopcroft, J., Ullman, J.: The design and analysis of algorithms. Reading: Addison-Wesley 1974
Aho, A.V., Sethi, R., Ullman, J.D.: Compilers: Principles, techniques, and tools. Reading: Addison-Wesley 1986
Berman, A.M., Paull, M.C., Ryder, B.G.: Proving relative lower bounds for incremental algorithms. Technical Report DCS-TR-154. Rutgers University Department of Computer Science 1986
Burke, M.: An interval-based approach to exhaustive and incremental interprocedural data flow analysis. To appear in ACM Transactions on Programming Languages and Systems, 1990
Carroll, M.D., Ryder, B.G.: Incremental data flow analysis via dominator and attribute updates. In: Conference Record of the Fifteenth Annual ACM Symposium on Principles of Programming Languages 274–284, January 1988
Even, S., Gazit, H.: Updating distances in dynamic graphs. Methods Oper. Res. 49, 371–387 (1985)
Fredman, M.L.: A lower bound on the complexity of orthogonal range queries. J. ACM 28, 696–705 (1981)
Fredman, M.L.: Lower bounds on the complexity of some optimal data structures. SIAM J. Comput. 10, 1–10 (1981)
Fredman, M.L.: The spanning bound as a measure of range query complexity. J. Algorithms 2, 77–87 (1981)
Fredman, M.L.: The complexity of maintaining an array and computing its partial sums. J. ACM 29, 250–260 (1982)
Frederickson, G.N.: Data structures for on-line updating of minimum spanning trees, with applications. SIAM J. Comput. 14, 781–798 (1985)
Gabow, H., Galil, Z., Spencer, T., Tarjan, R.: Efficient algorithms for finding minimum spanning trees in undirected and directed graphs. Combinatorica 6, 109–122 (1986)
Hecht, M.S.: Flow analysis of computer programs. Amsterdam: Elsevier North-Holland 1977
Paull, M.C., Cheng, C.C., Berman, A.M.: Exploring the structure of incremental algorithms. Technical Report DCS-TR-139, Rutgers University Department of Computer Science, May 1984 (Preliminary version)
Paull, M.C.: Introduction to algorithm design principles. New York: Wiley-Interscience 1988
Ryder, B.G., Paull, M.C.: Elimination algorithms for data flow analysis. ACM Comput. Surv. 18, 277–316 (1986)
Ryder, B.G., Paull, M.C.: Incremental data flow analysis algorithms. ACM Trans. Program. Lang. Syst. 10, 1–50 (1988)
Ryder, B.G.: Incremental data flow analysis. ACM Symposium on Principles of Programming Languages, pp. 167–176 (1983) ACM-SIGPLAN
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Berman, A.M., Paull, M.C. & Ryder, B.G. Proving relative lower bounds for incremental algorithms. Acta Informatica 27, 665–683 (1990). https://doi.org/10.1007/BF00259471
Received:
Issue Date:
DOI: https://doi.org/10.1007/BF00259471