若交换允许的方向,让 Bob 先发送 ,Alice 只需回传 。索引编码使用 bit,再加一 bit 回答;这已经不再是 Alice-to-Bob 的单向协议,而是另一方向加回复的两轮协议。这个对照没有证明朴素的 bit 一定最优,却准确展示了反馈能把“摘要全部可能问题”改成“回答一个已经公开的问题”。
任何声称 Alice 只发少量信息的方案,都应接受同样的视图检查:如果 与 产生相同消息,却在某个位置 不同,那么 Bob 取该 时面对相同消息而需要输出两个值。确定性下界由此成为编码碰撞的不可避免性,而不是“输出看起来很难”的直觉判断。
考虑一个使用 bit 状态的一趟数据流算法公理库数据流算法模型Data-stream model · Streaming algorithm输入顺序到达且不能保存全文,以扫描趟数、工作空间、处理时间和输出保证评价算法。。把流切成前缀 与后缀 :Alice 在前缀上运行算法,将当前状态 发给 Bob;Bob 从该状态继续处理后缀并输出。若随机种子也属于协议双方的既知资源,这就得到一条至多 bit 的单向消息。
若一般两方模型公理库两方通信模型Two-party communication model · Two-party communication complexity model两位参与者各自持有私有输入,只以交换消息协同计算函数或关系,并把通信位数作为核心资源。也只要求 Bob 输出,每个 Alice-to-Bob 单向协议都是其特例,所以交互复杂度不大于同口径的单向复杂度。若一般模型要求输出成为公开叶标签,则 Bob 还需回传输出编码,至多多出 bit。反过来仍不成立:单向下界只排除没有反馈的消息结构,不能自动排除双方交替询问的协议。
消息长度按 bit 而非“对象个数”计。发送一个取值于 种可能的符号,至少要有区分这 种值的编码;把任意长向量叫作“一条消息”并不会使通信成为 。同理,公共随机串若模型允许免费共享,它不是消息,但由随机串选出的哈希值仍须实际发送。
单向模型不限制 Alice 生成 的时间,也不限制 Bob 解码的时间。一个存在性编码可能要枚举全部输入才能求出;它给出通信上界,却未必给出高效 sketch 或数据结构。将通信结果迁回算法时,计算可实现性需要单独验证。
参考资料
Eyal Kushilevitz and Noam Nisan, Communication Complexity, Cambridge University Press, 1997, Sections 1.3 and 3.2.
Tim Roughgarden, Communication Complexity (for Algorithm Designers), 2015, Lectures 2–4.
Anup Rao and Amir Yehudayoff, Communication Complexity and Applications, Cambridge University Press, 2020, Chapters 2 and 4.