时间可构造性的等效定义


13

我们说函数是时间可构造的,如果存在确定性多带Turing机,该机在长度为n的所有输入上最多执行f(n)步对于每个n,存在一些长度为n的输入,M精确地在该输入上进行f(n)步。f:NNn f n n n M f Mnf(n)nnMf(n)

我们说函数是完全时间可构造的,如果存在确定性多带图灵机,在长度为所有输入上,它们精确地执行步。f:NNn f n Mnf(n)

问题1:是否存在时间可构造且时间不完全构造的功能?

如果,答案是肯定的(请参阅此答案)。是否可以将“是”的条件增强为?可以证明“是”吗?P N PEXPTIMENEXPTIMEPNP

问题2:如果我们在定义中仅允许使用2磁带图灵机,那么(完全)时间可构造函数的类是否会发生变化?

问题3:认为所有好的功能都是完全可构造时间的,“可证明的”原因是什么?

论文
小林晃次郎:关于函数的证明时间可构造性。理论。计算 科学 35:215-225(1985)
部分回答了Q3。此答案的部分摘要和升级。我以第三季度为答案。

历史上,使用实时可数函数的概念来代替(完全)时间可构造的。有关更多信息,请参见此问题


很好奇-您能为我指出这些定义的参考吗?我不熟悉constructible功能,我不能在网上找到这些定义(这也并不明显,我是否是相当于例如维基百科的)。
usul 2013年

@usul参考是:JE Hopcroft,JD Ullman。介绍自动机理论,语言和计算。1979年计算机科学的Addison-Wesley系列在此处可以找到相同的定义:cse.ohio-state.edu/~gurari/theory-bk/theory-bk-fivese2.html
David G

Answers:


5

在过去的几天中,我对(完全)时间可构造函数进行了很多思考,并将介绍我通过回答问题Q1和问题3得出的结论。第二季度似乎太难了。

第三季度:

Kobayashi在他的文章中(有疑问的是引用)证明了函数,对于它存在ϵ > 0 st f n 1 + ϵ n,如果它是完全可构造的可在O f n 时间内计算。(请注意,输入或输出为一元/二进制无关紧要,因为我们可以在线性时间中在这两种表示之间进行转换)。这使得以下功能完全具有时间可构造性:2 nf:NNϵ>0f(n)(1+ϵ)nO(f(n))2n n Ñ 登录Ñ ,所有多项式 p超过 Ñ ST p Ñ 1 + ε ñ ...小林也证明了充分的时间可构造为生长速度慢于某些功能1 + ε ñ,像 Ñ + 登录ň q q q + ...22nn!nlognpNp(n)(1+ϵ)n(1+ϵ)nn+lognqqQ+

继续以完全时间可构造的函数为例,可以证明如果f 2是完全时间可构造的,则,,和也是完全时间可构造的(后面的内容直接来自小林的定理3.1)。这完全使我相信,许多不错的功能的确是完全可构造时间的。f1f2˚F 1 ˚F 2 ˚F ˚F 2 1 ˚F 1f1+f2f1f2f1f2f1f2

令人惊讶的是,小林没有找到一种方法来证明(nice)函数完全时间可构造性(我也没有)。nlogn

让我们还评论一下Wikipedia文章中的定义:如果存在图灵机,给定字符串,则时间内输出,则函数是时间可构造的。M 1 n f n O f n fM1nf(n)O(f(n)) 我们看到此定义与函数的完全时间可构造性的定义等效。f(n)(1+ϵ)n

Q1:

这个问题有一个非常有趣的答案。我声称如果所有时间可构造函数都是完全时间可构造的,则。为了证明,让我们以一个任意问题,。然后存在一个,st可以由NDTM在求解大号Ñ ë X P - Ť 中号Ë 大号{ 0 1 } * ķ Ñ大号中号2 Ñ ķ - 1EXPTIME=NEXPTIMELNEXPTIMEL{0,1}kNLM2nk1的步骤。为了简单起见,我们可以假设在每个步骤最多进入两个不同的状态。现在定义函数 ˚F Ñ = { 8 Ñ + 2 如果  第一 M

f(n)={8n+2if (first logn+1k bits of bin(n))L8n+1else

我声称是时间可解的。考虑以下确定性图灵机TfT

  • 上输入长度的Ñ它计算第一 ķ wnÔÑ时间(first logn+1k bits of bin(n))O(n)
  • 然后在这些位上模拟,其中w的位确定要采取的选择(以前是非确定性的)。Mw
  • 接受iff (M accepts using choices given by w)

注意的长度= Ñ)是不够,它确定所有的非确定性的选择,因为中号输入第一 ķ w=nM使得至多Ñ步骤。(first logn+1k bits of bin(n))n

我们可以 在大多数运行8 ñ + 1步。现在,以下图灵机证明f是时间可构造的:T8n+1f

  • 在长度为n的输入上运行T并并行计算步数,从而完成大约8 n步。wnT8n
  • 如果在下一步中被拒绝或将被拒绝,则在下一步中进入停止状态。否则,再走一步,然后进入停止状态。T

现在假设是完全时间可构造的。我们将证明,这导致è X P - 牛逼中号é = ñ ë X P - 牛逼中号ËfEXPTIME=NEXPTIME

以下算法解决了L

  • 在输入,令n为具有二进制表示形式的数字x 00 0| x | k 1零)。由此可见,X = 第一 ķ xnx000|x|k1x=(first logn+1k bits of bin(n))
  • 在时间f n )中计算并检查它是否可被2整除。f(n)f(n)

LLNEXPTIMEEXPTIME=NEXPTIME


4
非常好![填充以使评论框开心]
EmilJeřábek3.0

1
这里也使用与问题Q1答案中提出的想法非常相似的想法。
David G
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.