Skip to content

指针追逐通信问题

Pointer chasing communication problem · Pointer jumping problem

双方交替持有二部图两侧的指针函数,追踪固定起点的第 k 个顶点以显露起始方与轮数的价值。

条目类型
模型

形式陈述

二方通信模型中,令 VA,VB 为不交的 n 元集合。Alice 持有 fA:VAVB,Bob 持有 fB:VBVA;合并为 f:VAVBVAVB。固定 v0VA,定义

gk(fA,fB)=f(k)(v0).

输出可为顶点名的 log2n bit,也可取顶点编号 parity 得 Boolean 版本;下述上下界对该 Boolean 版本仍成立。round 采用“一条消息算一轮”,总成本取所有消息长度之和,public-coin 错误为逐输入至多 1/3

若 Alice 先说,k 条消息逐个发送 v1,,vk,成本 O(klogn)。Nisan–Wigderson 对 Bob 先说的同样 k 条消息模型证明

CB,k(gk)=Ω(nklogn)

以及

C1/3B,k(gk)=Ω(nk2klogn).

他们还给出 randomized 上界 C1/3B,k(gk)=O((n/k)logn)。因此固定小 k 时,首发者错误会造成从 O(klogn) 到近线性的跳跃。

直觉

在第 t 步,只有持有当前顶点所在侧函数的一方知道下一指针。Alice 从 v0VA 开始恰好知道第一步;若 Bob 被迫首发,他尚不知道 v1=fA(v0),第一条消息很难针对真正路径。随机协议可预先发送某个抽样顶点集的指针,以概率命中后“赶回进度”,但抽样集太小就很可能错过整条路径。

下界跟踪协议树矩形中尚未暴露的随机函数值:短消息只能稍微偏斜大量独立指针的条件分布,沿路径累积的偏斜受信息论估计控制。轮消除把同一种“未知目标导致首消息低信息”现象抽象成可迭代模板;上面的精确 n/k2klogn 则来自 Nisan–Wigderson 针对本问题的原始分析。

例子与边界

VA={a0,a1,a2,a3}VB={b0,b1,b2,b3}v0=a0,并设

fA(a0)=b2,fB(b2)=a1,fA(a1)=b3.

则三步轨迹为

a0fAb2fBa1fAb3,

所以 g3=b3。Alice 先说时依次发送 b2,a1,b3 即完成;Bob 先说时,他的首消息在不知道 b2 的情况下必须同时为四个潜在 fA(a0) 服务。这是 wrong-starter 障碍的最小可追踪实例。

参数边界不能省略负项:当 k 接近 n1/3 以上时,n/k2klogn 可不再给正的有用界。输出完整顶点与只输出 parity 的上界差一个输出长度 convention,但原论文说明下界可保留到 Boolean 版本。把双方函数都给同一方、允许每轮双向同时发消息或改成 private coins,都会改变模型。

推论与应用

指针追逐是 round hierarchy 的规范分离:相同函数、相同总输入长度,仅改变消息数或首发者就产生指数级差距。它还能经 streaming、distributed computation 和 cell-probe 归约,把“每次只能沿一条依赖链获得下一地址”的限制转为 pass、round 或 probe 下界。

该问题不是单靠总通信矩形参数就能完整描述;协议的时间顺序决定某条消息发出时谁已知道当前顶点。因而它为轮数—通信量权衡提供具体基准,也展示 round-insensitive LP 即使给出总量下界,也可能看不见首发方向的巨大差异。

参考资料
  • Christos H. Papadimitriou and Michael Sipser, “Communication Complexity,” Journal of Computer and System Sciences 28(2), 1984, pp. 260–269.
  • Noam Nisan and Avi Wigderson, “Rounds in Communication Complexity Revisited,” SIAM Journal on Computing 22(1), 1993, pp. 211–219.
  • Peter Bro Miltersen, Noam Nisan, Shmuel Safra, and Avi Wigderson, “On Data Structures and Asymmetric Communication Complexity,” Journal of Computer and System Sciences 57(1), 1998, pp. 37–49.
关系图谱4 个相邻概念 · 1 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组