“设确定性协议 $\Pi$ 最坏发送 $c$ bit。把消息展开成逐 bit 的协议树后,深度至多 $c$ 的二叉树最多有 $2^c$ 个可达叶。”
树表示的是完整策略 ​
把一个确定性协议的消息拆成逐 bit 发送,可得到一棵有根二叉树。每个内部结点标记当前发言者;若由 Alice 发言,离开该结点的边由她根据
树本身收纳了协议对所有输入的响应规则。一次具体执行只走其中一条根叶路径,沿途的 bit 串
称为该执行的 transcript。它记录实际发生的公开对话,却不包含没有走到的分支,也不等于协议的完整程序。树的最大根叶深度就是逐 bit 口径下的最坏通信量,因此与确定性通信复杂度直接对应。
若原协议一次发送长消息,可以把这条消息展开成若干连续的同一发言者结点。反过来,把同一阶段的连续 bit 收拢为一个字符串不会改变总 bit 数,但会改变“轮”的计数。协议树首先编码信息量;若定理还限制轮数,就要在树上额外记录发言者切换。
树中还可能画出对任何合法输入都走不到的分支。它们不产生 transcript,也不覆盖输入;删去不可达子树不会损害正确性,通常还能缩短或保持最坏成本。叶数下界应统计可达叶,而不是把任意装饰结点也当作协议的信息能力。
若一条边标记的不是 bit 而是
协议树也不要求严格轮流发言。Alice 可以连续发送多个 bit,Bob 也可在自己的阶段连续发言;发言者标签只要求下一边能由该方当前 view 决定。把连续 bit 视为一条长消息只是展示层选择。
一棵三叶协议树 ​
设双方本地计算谓词
令
取 1 后按自己的 10。这一轨迹显示路径不是事后给输入贴的标签,而是双方在每一步仅凭各自视图共同生成的。
三个叶串还是 prefix-free 的:没有一个完整 transcript 是另一个的真前缀。否则协议在短串处已经终止,却又要让相同公开对话继续发送,接收方无法知道“沉默”究竟表示结束还是等待。把终止时刻免费编码进时间,会偷偷引入协议树之外的信道。
每一时刻还可以区分双方的本地 view。Alice 的 view 包含
协议规则必须保证轮到某一方发言时,她的下一步在自己的 view 中已经确定。若树的一条边实际上按对方未发送的输入选择,这棵图即使能为每个完整输入标出正确叶,也不是可执行的通信协议。
transcript 输入集为何是矩形 ​
对任意树结点
由树深归纳,每个结点、特别是每个叶 transcript 的一致输入集,都是组合矩形。若协议正确计算函数
注意,证明只使用“发送者不知道对方私有输入”。如果某一步可以查询共享数据库、观察对方内存或让第三方按
不能混合的对象 ​
同一输出标签可能出现在许多叶。各叶输入集分别是矩形,但它们的并通常不是矩形:若两个叶分别含
一棵随机协议不是单棵确定性协议树。固定所有公共与私有随机币后,才得到一棵树;随机协议整体是这些树的分布。某棵固定树可能在某些输入上出错,只要对每个固定输入,抽到错误树的概率受限即可。把每个输入各自最有利的随机币固定下来,无法得到一棵对所有输入同时正确的树。
密码协议中 transcript 常指承诺、挑战、响应等消息组成的会话记录,分布式系统也会把事件日志叫 transcript。这些用法都强调“一次运行留下的公开序列”,但未必对应本页的逐 bit 二叉树,也未必具有组合矩形性质。术语相同不等于下界工具可以跨模型直接搬用。
树高给出最坏 bit 数,叶深分布则可分析平均通信。若输入服从分布
参考资料
- Eyal Kushilevitz and Noam Nisan, Communication Complexity, Cambridge University Press, 1997, Sections 1.1–1.2.
- Tim Roughgarden, Communication Complexity (for Algorithm Designers), 2015, Lecture 1.
- Anup Rao and Amir Yehudayoff, Communication Complexity and Applications, Cambridge University Press, 2020, Chapter 1.