动态程序的策略:重新开始并摸索前行

摘要:动态编程中,每当底层数据发生变化时,动态程序会更新查询的存储结果。这个更新是用一阶逻辑表达的。我们介绍了一种构建动态程序的策略,该策略利用周期性计算辅助数据,并且能够在有限数量的变化步骤中维护查询。我们证明了如果某个程序在AC^1可计算的初始化后能够在log n个变化步骤中维护查询,那么它也可以由一阶动态程序来维护,即在DynFO中。作为应用,我们证明了只允许产生有界树宽图的变化序列的情况下,由单调二阶(MSO)公式定义的决策和优化问题也属于DynFO。为了确立这个结果,我们还建立了一个适用于MSO的Feferman-Vaught型组合定理,它本身可能也有用。

作者:Samir Datta, Anish Mukherjee, Thomas Schwentick, Nils Vortmeier, Thomas Zeume

论文ID:1704.07998

分类:Logic in Computer Science

分类简称:cs.LO

提交时间:2023-06-22

PDF 下载: 英文版 中文版pdf翻译中