中文

利用决策预言机随机枚举小见证

数据结构与算法 2018-01-08 v4 计算复杂性

摘要

许多组合问题涉及确定包含 nn 个元素的全集是否包含由 kk 个具有某些指定属性的元素组成的见证。在本文中,我们研究了此类问题的决策版本与枚举版本之间的关系:已知有高效方法可将决策算法转化为寻找单个见证的搜索过程,但一般而言即便寻找第二个见证也不那么简单。我们证明,若问题的决策版本可在时间 f(k)poly(n)f(k) \cdot poly(n) 内求解,则存在一种随机算法能在时间 ek+o(k)f(k)poly(n)Ne^{k + o(k)} \cdot f(k) \cdot poly(n) \cdot N 内枚举所有见证,其中 NN 为见证总数。若问题的决策版本由可能返回假阴性的随机算法求解,则同一方法允许我们输出一个见证列表,其中任一给定见证将以高概率被包含。该枚举算法还引出了一种在见证总数较小时计数见证总数的高效算法。

关键词

引用

@article{arxiv.1509.05572,
  title  = {Randomised enumeration of small witnesses using a decision oracle},
  author = {Kitty Meeks},
  journal= {arXiv preprint arXiv:1509.05572},
  year   = {2018}
}

备注

To appear in Algorithmica. Author final version, incorporating reviewer comments. An extended abstract of part of this work appeared in proc IPEC '16