Fully-dynamic-to-incremental reductions with known deletion order (e.g. sliding window)
Dynamic algorithms come in three main flavors: 𝑖𝑛𝑐𝑟𝑒𝑚𝑒𝑛𝑡𝑎𝑙 (insertions-only), 𝑑𝑒𝑐𝑟𝑒𝑚𝑒𝑛𝑡𝑎𝑙 (deletions-only), or 𝑓𝑢𝑙𝑙𝑦 𝑑𝑦𝑛𝑎𝑚𝑖𝑐 (both insertions and deletions). Fully dynamic is the holy grail of dynamic algorithm design; it is obviously more general than the other two, but is it strictly harder? Several works managed to reduce fully dynamic to the incremental or decremental models by taking advantage of either specific structure of the incremental/decremental algorithms (e.g. [HK99, HLT01, BKS12, ADKKP16, BS80, OL81, OvL81]), or specific order of insertions/deletions (e.g. [AW14,HKNS15,KPP16]). Our goal in this work is to get a black-box fully-to-incremental reduction that is as general as possible. We find that the following conditions are necessary: ∙ The incremental algorithm must have a worst-case (rather than amortized) running time guarantee. ∙ The reduction must work in what we call the 𝑑𝑒𝑙𝑒𝑡𝑖𝑜𝑛𝑠-𝑙𝑜𝑜𝑘-𝑎ℎ𝑒𝑎𝑑 𝑚𝑜𝑑𝑒𝑙, where the order of deletions among current elements is known in advance. A notable practical example is the "sliding window" (FIFO) order of updates. Under those conditions, we design: ∙ A simple, practical, amortized-fully-dynamic to worst-case-incremental reduction with a log(T)-factor overhead on the running time, where T is the total number of updates. ∙ A theoretical worst-case-fully-dynamic to worst-case-incremental reduction with a 𝗉𝗈𝗅𝗒𝗅𝗈𝗀(T)-factor overhead on the running time.
READ FULL TEXT