将电路转换为带有门扇出1的(任何深度)电路的最有效方法


18

编辑(2011年8月22日):

我正在进一步简化问题,并悬赏该问题。也许这个更简单的问题将得到一个简单的答案。我还将删除所有不再相关的原始问题。(感谢Stasys Jukna和Ryan O'Donnell部分回答了原始问题!)


背景:

给定的AC 0电路随深度k和大小S,存在另一个AC 0电路计算与深度k和大小相同功能,使得新电路具有扇出= 1对于所有的栅极。换句话说,该电路看起来像一棵树(除了输入端,因为输入端可能扇出至多个门)。一种方法是复制所有扇出> 1的门,直到所有门扇出= 1。O(Sk)

但这是将AC 0电路转换为具有扇出1的AC 0电路的最有效方法吗?我在Ryan O'Donnell的课程笔记的第14课中阅读了以下内容:

假设C是计算奇偶校验的大小为S的任何深度k电路。此练习表明C可以转换为水平的k深度电路,其中的电平交替使用AND和OR门,输入线为2n文字,每个门具有扇出1(即,它是一棵树) )—大小最多增加到。(2kS)2O(S4)

脚注:实际上,这是一个比较棘手的练习。如果只需要获得大小,容易,如果您将k视为“常数”,则对于我们的目的而言这几乎是相同的。O(Sk)

这是否意味着有办法采用大小为S的任何深度k AC 0电路并将其转换为扇出为1,深度k和大小为的AC 0电路?如果是这样,这是怎么做的,这是最著名的方法吗? (2kS)2

原始问题:

给定的AC 0电路随深度k和大小S,什么是最好的已知方法(在最小化所得到的电路的电路规模方面)这转换为交流的0电路深度k的和栅极扇出1?有没有下限?


更新,更简单的问题:

这个问题是对原始问题的放松,在原始问题中,我不坚持要求所得电路的深度恒定。如上所述,有一种方法将深度为k,尺寸为S 的AC 0电路转换为尺寸为的电路,以使新电路的所有门扇出= 1。有更好的构造吗?O(Sk)

给定深度为k且尺寸为S 的AC 0电路,最有名的方法(就最小化所得电路的电路尺寸而言)将其转换为门扇出为1的任何深度的电路是什么?


5
在结合是确定但如果结合将保持任意的电路(不仅是那些计算奇偶校验功能),那么可以模拟大小的扇入-2电路通过fanin- 2个大小为公式: fanin-2门足以模拟一个无边界fanin的门。然后可以将公式转换为深度(众所周知的结果,错误地归因于Spira)。因此,我们可以得出电路深度最大为。但这真是令人难以置信:电路深度最著名的上限仅为2 k S 2 S O S 5S O log S O log S O S / log S O(Sk)(2kS)2SO(S5)SO(logS)O(logS)O(S/logS)
Stasys

2
Btw实际上也适用于任意电路,但前提是我们允许fanin -2的门(例如,参见Wegener书中的Thm。4.1);电路仍然可以记住中间结果。fanin-1的情况非常不同:这里的电路根本没有内存。但是罗宾的问题非常有趣。甚至有趣的是,可以通过尺寸小于深度3公式来模拟尺寸为深度3电路。S S 2O(kS)2)SS2
Stasys

4
我相信斯塔斯上面所说的一切;我在那些笔记上不是很小心(抱歉)。另一方面,我记得在编写它们时,我很沮丧地发现这一事实-许多论文中都提到了这一点,但几乎从来没有引用过-人们可以将任意电路转换为分层电路而不会消耗太多的空间。 。我希望看到一个指向该主题最著名结果的指针。AC0
瑞安·奥唐奈

2
@Ryan O'Donnell的:实际上,人们可以很容易地使一个电路层叠带的吹胀。我们使用关联性来实现每个“与”门只有“或”门作为输入,反之亦然;深度保持不变。然后按门的深度排列门,并在必要时添加琐碎的fanin-1 OR和AND门以获得分层电路;深度保持不变,大小仅增加k倍。但我知道Robin希望将电路转换为公式(类似于树的电路,除了输入文字可能具有较大的扇出)。O(kS)
Stasys

2
@Ryan O'Donnell:感谢您的答复和在线发表您的演讲笔记!特别是,关于布尔函数分析的讲义非常有用。
罗宾·科塔里

Answers:


11

我将尝试总结我以前的评论。

首先让我们忽略一个事实,即原始电路的深度为(恒定);只是假设它的大小为。让是最小的数量,使得每个无界扇入电路尺寸可以转化成无界扇入式大小的。我声称到目前为止,我们能做的最好的事情就是达到。说,甚至还不知道是否可以通过小于的公式来模拟任何大小为(fanin-2)电路。S A S F O S AA = O S / log 2 S S = O n exp n / log n kSASFO(SA)A=O(S/log2S)S=O(n)exp(n/logn)

为了显示该要求,我们将公式转换为大小为的fanin-2公式。众所周知,每个公式的深度可以使其大小为对数,即。[这是Khrapchenko于1968年首次证明的,然后由几位作者将big-O下的常数提高到。]另一方面,对于fanin-2电路,最著名的结果是[Paterson和Valiant, TCS 2(3),397-400]说。因此,进行的模拟比小得多FFM=O(S2A)DFD=O(logM)=O(AlogS)D1.73log2MDepth=O(Size/logSize)AS/log2S 会改善最广为人知的电路尺寸深度仿真。

然而,这仅仅是一个“谨慎的词” -因为你认为你原来的电路有没有回答你的问题不断深入,这意味着在这种情况下,我们可以只取(或如果我们有一个输出门)。Paterson-Valiant仿真的强大之处在于它适用于深度几乎是整个尺寸的任意,甚至非常不平衡的电路!但在您的有界深度设置中,即使的情况也不清楚:是否可以将每个大小为深度3电路转换为深度小于的深度3公式A = k A = k 1 k = 3 S S 2kA=kA=k1k=3SS2?我猜答案应该是“否”(对学生来说可能是一个有趣的练习)。深度为3的公式只是CNF的较大OR。问题是找到共享许多子句的CNF的OR,否则它们“大不相同”以强制使用大的depth-3公式。

问题是我们想要获得一个公式(扇出1电路)。如上所述,允许扇出2的门使仿真更简单:Hoover,Klawe和Pippenger [JACM 31(1),1980]表明,任何大小为,深度为扇入2电路都具有等效的扇入2和扇出大小为且深度为 -2电路。因此,如果fanin是无界的,那么生成的电路将具有大小和深度。D 3 S 2 n 2 D O S 2O D log S SD3S2n2DO(S2)O(DlogS)

还有另一种结果与您的问题有关。Lozhkin(1981)证明,如果可以通过深度和大小的公式计算布尔函数,则可以通过深度 -2公式计算(根据我书中的定理6.2)。请注意,平凡的上限仅是(如果我们将通过深度的树来模拟每个单个门)。Ç 0 ķ 小号˚F d ķ - 1 + 登录2小号d ķ 登录小号日志小号fAC0 kSfDk1+log2SDklogSlogS

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.