本文主要介绍一些通信复杂度的基本概念(主要是因为最近对于KRW猜想比较感兴趣)。
参考书及一些文章:
Boaz Barak et al., 《Computational Complexity:A Modern Approach》
Tim Roughgarden, 《Communication Complexity (for Algorithm Designers)》
Ivan Mihajlin et al., 《Toward Better Depth Lower Bounds: The XOR-KRW Conjecture》
Or Meir et al., 《KRW Composition Theorems via Lifting》
James Cook et al., 《Tree Evaluation is in space》
本文研究了两个处理器协同计算布尔值函数式需要交换的信息。——姚期智,1979
至于为什么要引用Yao的话,主要是因为这玩意儿是他提出的。Yao的成就数不胜数,包含伪随机理论和密码学、算法和数据结构领域等等,我个人比较熟悉的是Yao的XOR定理和随机性与不可预测性定理,其余的,我看的Yao的论文不多,不太清楚。
一、“通信”
我们这里所称的“通信”与现实中所谓的通信虽然有相似之处,但是并不完全相同。我们现实中所称的“通信”,多指实际上的信息交换,例如网络、电话等等。这里,我们将“通信”视为一种交互(在交互式证明里,我们也看到过类似的模型),也就是如下的模型:
这是一个不太规范的定义,但是足够我们了解我们到底要干什么:例如存在一个很难的任务,我们想要将它分成几部分做,我们将它交给了不同的人员完成。但当我们要将它们组合到一起的时候,我们发现两者并不能简单地组合,而是要进行一定的调整。类似地,此类情况在分布式计算、编程,乃至电路下界的分析中都是非常有效的工具。甚至,目前一个非常著名的猜想——Karchmer-Raz-Wigderson猜想——就与此相关。
这个猜想表明,计算一个函数复合的电路下界,约等于将两个函数拆开以后分别的深度下界。若此定理成立,那么我们就可以清晰的区分可并行问题和多项式时间可解决的问题。
计算复杂度学家发现,通信复杂度和电路深度存在对应关系:
如此的一个神奇对应让我们能够通过通信复杂度的手段来冲击一个重磅猜想:
不过,话虽如此,此时我们的知识储备并不足以支撑我们冲击这个困扰学界40年的宏大问题。因此,为了求解这一猜想,我们必须要更深层次地认识通信复杂度这一概念。接下来,我们形式化地定义上面我们所陈述的“通信复杂度”:
从协议的形式上来看,协议就好像一棵二叉树——每一次,某一方需要作出选择,输出0或者是1;但是,这样的建模是相当简陋的,因为我们完全忽略了0和1所表示的意思,它可能是对于某一个问题的“是”或“否”回答。例如,我们知道一个很出名的游戏——网络天才——,它通过一系列问题,你只需回答“是”或者“否”,它就可以确定你所说的人。另外,还有一些很有意思的推理游戏,主持人只能回答“是”或者“否”,观众就可以推理出一些事实。这实际上就是我们现在所叙述的通信过程。
通信复杂度具有朴素的上界: ,这就是说,我们可以直接把自己的输入交出去,让对方计算就可以了。
接下来,来看一个例子:假设,函数f要求统计x,y所有位中1的数量的奇偶性。我们可以得到的是 一方面,我们知道 ,这是因为函数是非平凡的,双方至少要传送一个位。另一方面,我们只需要让参与方1计算出其奇偶性,并交给参与方2,然后参与方2将其输入奇偶性与参与方1发来的奇偶性作异或,发回结果即可得到答案。这表明 。这就证明了结论。
二、下界方法
接下来,我们将会使用以下函数作为示例,介绍一系列研究通信复杂度的经典方法:
我们可以证明,上面的函数有性质:
诈集(Fooling Set)
为了证明上面的结论,我们断言:设 是长度位n的不同位串,若通信协议在输入 上有相同的通信模式(也就是通信过程传递相同的位序列,位序列也就是通信协议序列),通信双方在四对输入 上将得到相同答案。我们通过数学归纳法证明这一结论:
铺砌方法
我们考虑一个 矩阵,每个坐标上的二进制位对应两个输入:
00
01
10
11
00
1
0
0
0
01
0
1
0
0
10
0
0
1
0
11
0
0
0
1
如上的矩阵表示函数 的(n=2)矩阵。我们可以将上述矩阵中具有相同通信过程的部分染为同色。
我们不妨设置如下的通信协议:参与者1发出自己的一位二进制位,参与者2检查,然后参与者1发出自己的第二位,参与者2检查,然后参与者2发出计算结果,通信结束。因此有
纵为参与者1,横向为参与者2
00
01
10
11
00
001
000
000
000
01
010
011
010
010
10
100
100
101
100
11
110
110
110
111
显然我们上面写出了10个矩形,接下来我们介绍同色矩形的定理:
由此我们可以通过上面的涂色估算通信复杂度: ,这是符合我们的证明的。
秩方法
接下来,为了更好研究铺砌法,我们引入代数方法来研究 的下界:
我们代入 发现, ,于是 ,这便是之前结论的另一个证明。
差异方法
这里,我们考虑将函数值0和1变为-1和+1方便研究,实际上是没有区别的。
如上,我们将之前的矩阵写为只包含-1和+1的矩阵,于是矩阵 (这里,矩阵就是我们之前定义的矩阵)的差异定义为:
差异就是+1或者-1的“占优密度”,也就是+1和-1相互抵消以后除以整个矩阵面积的指标。我们有以下引理:
这个下界相当宽松,我们通过特征值给出其上界:
我们注意到M显然是对称的:交换输入,通信协议不变,那么结果不会改变。注意到 ,则
前一步使用瑞利商的性质,最后一步使用矩阵的柯西不等式。这一定理给出了矩阵数的下界:
从而给出通信复杂度下界
下面我们介绍证明差异上界的另一种技术:
这里我们使用期望技术来估计差异:
证明留作读者练习。提示:你可以考虑把a和b分开来处理。另外,可以考虑 。
诸证明方法的比较
铺砌论证法是证明所有下界中最强的方法,因为秩的下界、差异的下界和诈集都蕴含 的下界;因此,同铺砌方法得到的下界相比,这些方法的下界不会优于铺砌方法得出的结果。秩方法和诈集方法不具有可比性,因为它们的性能在不同的函数上可能各有千秋。但如果忽略常数因子,则秩方法几乎和诈集方法一样强。我们后面将会看到一个猜想——对数秩猜想——它断言,在忽略多项式因子的前提下,秩方法给出的下界是最优的。
三、多方通信复杂度
组合柱体
额头写数
四、理论前沿(About KRW Conjecture)
KW Relation
KW关系指的是如下的通信问题:
Karchmer和Wigderson观察到如下的事实:
Lifting Theorem(提升定理)
解决KRW猜想非常困难,因此我们转而讨论一些比较“简单”的情况。这里,我们将会介绍通信复杂度中的一个关键定理:提升定理。
Or Meir et al. 在2020年十一月FOCS的论文中提到了提升定理:也就是将一个简单问题的下界提升到一个较难问题的下界的方法。本文中,作者研究了一个弱于KRW猜想的猜想:单调KRW猜想。也就是说,假设函数都是单调函数,然后再此情况下进行研究。
单调KRW猜想断言:
此处,我们记以下论文为[CFK 19]: Arkadev Chattopadhyay, Yuval Filmus, Sajin Koroth, Or Meir, and Toniann Pitassi. Query-to-communication lifting using low-discrepancy gadgets. Electronic Colloquium on Computational Complexity (ECCC), 26:103, 2019.
接下来,考察某一个查询问题的查询复杂度: ,其中S为某一个搜索问题。设一个“迷你”函数(gadget function): , 若干研究提升定理的论文指出,若这个函数满足一些条件,那么有 ,其中t是输入的长度。
作者在本文中提出了单调函数复杂度分解定理:
紧接着这一条定理,作者进一步提出了半单调分解定理,这一部分类似,可在论文中详细查看。后续的内容,我们仅仅介绍提升定理,而不去介绍其它更加晦涩和繁杂的证明细节。
其中,我们补充定义串的平均度:
提升定理在证明对于单调函数的领域已经取得了很好的结果,但是很难突破对于一般函数的证明。
多路复用器(MUX)相关研究
上面我们提到,若内函数为多路复用器的KRW猜想成立,那么
Dinur: XOR for inner function
姚氏最大最小原理(Yao’s Min-Max Principle)
或者,我们使用通信复杂度的语言来书写:
这个核心定理表明,我们只需要构造一个“困难的分布”,就能够估计通信复杂度的下界。这一点在研究“Universal Relation”的时候非常有效:我们可以只研究矩阵 ,从而可以使用信息复杂度达到一个非常好的下界,从而得到 这就证明了KRW猜想的一个初步情况。
信息复杂度
信息复杂度是到目前为止,在特定函数(非单调)上取得最好下界的一种方法。信息复杂度指的是
也就是协议和输入集的互信息。信息复杂度揭示的就是,当前的协议揭示了输入分布怎样的信息。尽管如此,这样说还是非常的抽象,但是如此定义的一个好处是,我们可以利用互信息的链式法则:
如此,我们就可以分别利用已知的通信复杂度下界先得到前一项,然后通过其它的分析方法分析后一项的下界,从而得到一些很好的结果。这让我们能够在一些限制下面更好的研究信息复杂度的性质。我们分析信息复杂度的理由是,它严格地小于通信复杂度:
对于任意的协议和分布,这表明,信息复杂度天然是通信复杂度的一个下界。我们只需要证明,充分紧的(误差不能太大),那么我们就可以通过信息复杂度的分析来得到通信复杂度的下界。
在这里,我们就可以使用大量概率论和信息论的工具来分析这个对象。我们可以通过对于输入的一些分析,尤其是对于输入分布的构造和分析来证明信息复杂度的下界。尤其是我们这里使用的是互信息,这也就是说,我们可以使用
来计算互信息,其中 表示信息熵。如果我们给定了分布,那么我们就可以对分布进行分析,从而得到信息复杂度的一个下界。所以说,一个输入分布的构造是至关重要的。信息复杂度的好处在于,我们无需对协议本身执行大量的分析,而是直接通过分析输入来证明一个下界,这无疑让我们的分析简单了很多。
About Composition (题外话): Tree Evaluation and Finite Field
五、Open Question
对数秩猜想
近期的一篇论文举出了对数秩猜想的一个进阶版本的反例,这使得学界开始审视对数秩猜想本身的正确性。
KRW猜想
这个猜想过于强,以至于不好证。因此我们考虑弱一些的猜想,但也足够暗示
以上的一切都是为了计算复杂度理论中的一座圣杯—— ——发起冲击,乃至于尝试冲击 这个庞然大物。(注, 即拥有高效并行算法且布尔电路深度为 的问题类,若证明 ,则表明任何多项式算法都有高效并行算法,这是极其颠覆性的结论)
六、随机通信协议
知乎上似乎没有相关领域的内容,许多内容需要依靠论文和课本进行学习,因此写一篇类似的综述似乎是一种很好的想法。
实际工程中,人与人的沟通成本也可以视为通信复杂度的一种实例,例如,我们在完成一个项目的时候,需要进行通信。如何才能够降低沟通成本(优化)?为了完成项目,我们的最低沟通成本是什么(通信复杂度)?我们是否可以不事无巨细地描述,但是我们完成项目的概率却很高(随机通信协议)?我们如何使用公共冗余来降低理解误差(纠错码)?这都可以成为我们研究的项目。
但是,更重要的是,通信复杂度给予了我们对于计算的一种新看法:若某一个计算步骤绝不可能在计算另一个东西的同时一起计算(即便我们通过非常巧妙的编码隐式计算了这一结果,我们将这个计算结果告诉主进程的代价也是高昂的,这表明我们的所谓的“巧妙思维”是徒劳的),那么我们无论如何都不可能用更大的空间来换取时间上的效率。通信复杂度正是突破计算复杂度理论的一个突破口:若计算过程不可并行,则问题绝不可能用非常“聪明和高效”的方式进行解决,那么这个计算过程必然是串行的。我们通过研究通信复杂度,尤其是KW Game,通过电路深度和通信复杂度的直接联系,我们能够实现对于复合函数电路的直和分解,从而进一步挑战若干重大的理论开放问题。
Comments