On Dynamic Algorithms for Algebraic Problems - Reif, John H.; Tate, Stephen R. (Journal of algorithms, 1997)
In this paper, we examine the problem of incrementally evaluating algebraic functions. In particular, iff(x1,x2,…,xn)=(y1,y2,…,ym) is an algebraic problem, we consider answering on-line requests of the form “change inputxito valuev” or “what is the value of outputyj?” We first present lower bounds for some simply stated algebraic problems such as multipoint polynomial evaluation, polynomial reciprocal, and extended polynomial GCD, proving an Ω(n) lower bound for the incremental evaluation of these functions. In addition, we prove two time-space trade-off theorems that apply to incremental algorithms for almost all algebraic functions. We then derive several general-purpose algorithm design techniques and apply them to several fundamental algebraic problems. For example, we give anO(n)time per request algorithm for incremental DFT. We also present a design technique for serving incremental requests using a parallel machine, giving a choice of either optimal work with respect to the sequential incremental algorithm or superfast algorithms withO(loglogn) time per request with a sublinear number of processors.