什么是NC的大版本?


21

O log c n O n kc k n c 2 n kNC抓住了高效并行化的想法,对此的一种解释是使用并行处理器对某些常量,可以在时间中解决的问题。我的问题是是否存在一个类似的复杂度类,其中时间为,处理器数量为。作为一个空白的问题:O(logcn)O(nk)cknc2nk

NC是因为_ _是PEXP

特别是,我对一个模型感兴趣,在该模型中,我们以指数级有界数的形式在网络中布置了成倍数量的计​​算机(可以说该网络独立于输入/问题,或者至少以某种方式易于构建,或者具有任何其他合理的均匀性假设)。在每个时间步骤:

  1. 每台计算机都读取它在上一个时间步中收到的多项式大小的消息的多项式数。
  2. 每台计算机都会运行一些依赖于这些消息的多时计算。
  3. 每台计算机都会向其每个邻居传递一条(多长)消息。

与这类模型相对应的复杂性类的名称是什么?在哪里可以找到有关此类复杂性类的好地方?这样的班级有什么完整的问题吗?



我们有 Ñ Ç = 小号p 一个Ç ë Ť 中号È ø 登录Ñ log n O 1 NCk=ASpaceTime(O(logn),(logn)k)NC=ASpaceTime(O(logn),(logn)O(1)) ê X P = Ť 中号ë 2 Ñ ø 1 。因此,对应于 N C k的类可能类似于 A S p a c e T i m e n O 1 2 O log nP=Time(nO(1))EXP=Time(2nO(1))NCk,然后得到相应类ÑÇ小号p一个ÇëŤ中号ÈÑ Ö 1 2登录Ñ Ô 1 。这只是一些代数运算,我没有检查它是否满足您的要求,但是我认为它可以满足这三个条件,但计算机数量却不会成倍增加。我认为您应该以其他方式放弃该要求(更多)ASpaceTime(nO(1),2O(logn)k)NCASpaceTime(nO(1),2(logn)O(1))
Kaveh

所得到的类将包含和类比不会保持为ñ Ç PEXPNCP
卡夫

我不明白的地方,你有的空间复杂度。据我所知,N C允许多项式的多个门。如果我们想沿用您的模拟的思路,那么我们应该将N C看作P T / W K l o g c n n k/ p o l y,那么我正在寻找的复杂度等级就是像P T / W K n c2lognNCNCPT/WK(logcn,nk)/poly。但是,我希望对此有更好的描述。PT/WK(nc,2nk)/poly
Artem Kaznatcheev

这是标准的(尽管不是在Complexity Zoo中),请检查Ruzzo,“关于统一电路复杂性”,1981年。我还认为您应该使用统一类,每个函数都有指数大小交替/逻辑深度为2的电路(并且如果我们使用有限扇入和深度这将满足三个条件。就像我说的,如果节点数量成倍增加,那么这个比喻就不成立了。并行计算的主要特性还在于节省时间,例如,在N C的情况下,它是多对数时间。我认为准多项式时间将对应于对数时间。lognNC
卡夫

Answers:


27

我相信你正在寻找的类是。假设您有满足要求的e x p n k= 2 O n k)个处理器:PSPACEexp(nk)=2O(nk)

  1. 每台计算机都读取它在上一个时间步中收到的多项式大小的消息的多项式数。
  2. 每台计算机都会运行一些依赖于这些消息的多时计算。
  3. 每台计算机都会向其每个邻居传递一条(多长)消息。

这可以通过使电路具有层来建模,其中每个层具有e x p n k)个 “门”,并且每个“门”使用多项式进行多项式时间计算(满足第2部分)扇入(满足第1部分),并具有多项式扇出(满足第3部分)。 poly(n)exp(nk)

由于每个门都计算一个多项式时间函数,因此可以用通常的方式用一个多项式大小电路(具有AND / OR / NOT)代替它们。注意,仅通过将深度增加因子,就可以将多项式扇入和扇出设为2 。剩下的是一个带有e x p n k AND / OR / NOT门的p o l y n 深度均匀电路。这恰恰交替多项式时间,而这恰恰P 小号P Ç ëO(logn)poly(n)exp(nk)PSPACE


瑞安,我不知道您如何将指数级的计算机放在多项式多层结构中,在我看来,深度可以是指数级的,您能再解释一下为什么这是可能的吗?在我看来,具有给定功能的任意功能的CNF电路作为扇入2电路的微不足道的构造也可以满足要求,我是否有所遗漏?
卡夫

1
@Kaveh:我不明白你的第一个问题。关于第二个,尽管对于任何功能都有一个指数大小的depth-2电路,但是NC(poly)要求您能够统一生成电路,因此您不能为每种输入大小生成任意电路。
罗宾·科塔里

@罗宾,谢谢。可能是我感到困惑。(我觉得对应于PSpace的电路深度应该是指数级的,我也认为PSpace就像L对P一样是EXP,因此当用NC代替L时说同一件事对我来说很奇怪,我觉得我们属于照顾应该在PSpace和EXP之间。)我必须多花一点时间来了解这里发生的情况。
卡夫

@Kaveh,我将层数(即深度)分配为指数,因此根据定义,深度不能为指数。处理器数量成倍增加,因此您的CNF需要指数扇入,这违反了其中一种条件。对应于PSPACE的指数大小电路的深度是多项式。这是正确的原因,以及两个类比在某种意义上都是“有效”的原因(“ PSPACE对EXP就像L对P一样,PSPACE对EXP就像NC对P一样”)是因为PSPACE =交替多项式时间。我们不知道L =对数时间(这是NC1)。
瑞安·威廉姆斯

阅读您和罗宾的评论后,我想我对情况有了更好的了解,谢谢。
卡夫

21

正如Ryan所说,此类是PSPACE。此类在文献中通常称为NC(poly)。这是QIP = PSPACE论文的直接引文:

我们考虑NC的一个按比例放大的变体,它是复杂度类NC(poly),它由具有多项式深度的布尔电路的多项式空间统一系列可计算的所有函数组成。(符号NC(2 poly)以前也曾用于此类[11]。)对于决策问题,已知NC(poly)= PSPACE [10]。

[10] A. Borodin。关于时间和空间与大小和深度的关系。SIAM Journal on Computing,6:733-744,1977年。

[11] A. Borodin,S。Cook和N. Pippenger。赋能环和空间受限的概率机器的并行计算。信息与控制,58:113–136,1983年。

一种查看方式是直接证明两个包含。要看到NC(poly)在PSPACE中,请注意,我们可以递归计算最终门的输出,并且我们只需要一个堆栈,其大小等于电路的深度,即多项式。为了表明PSPACE位于NC(poly)中,请注意,完成PSPACE的QBF可以用通常的方式写成一个具有成倍数量的门的多项式深度电路-存在的量词是OR门,即全部量词是一个AND门。由于仅存在多项式数量词,因此这是一个多项式深度电路。

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.