参考:Juho Hirvonen and Jukka Suomela, Juho Hirvonen and Jukka Suomela
看起来很舒服的一本书。
我们考虑一类特殊的图:biregular trees。即一个(d,δ)-biregular tree 是一个树,其中结点可以分成两个不相交的集合,其中一部分称为 active nodes(或 black node),另一部分称为 passive nodes(或 white node)。
每个 active node 都和且仅和d 或 1 个 passive node 相连,而每个 passive node 都和且仅和δ 或 1 个 active node 相连。
例子如下,(a) 图是(3,3)-biregular tree,(b) 图是(3,2)-biregular tree:
![1]()
接下来我们考虑这样 graph 表示的 network 上的分布式算法。
特别地,我们考虑一类问题 bipartite locally verifiable problem:形式化地,每个这样的问题都有三个参数(Σ,A,P),其中
- Σ 是一个 finite alphabet;
- A,P 都是 set of multisets of elements from Σ。其中,A 中的 multiset 大小都是d,P 中的 multiset 大小都是δ。
要解决这样的一个 problem,我们需要让所有的 active node 给自己相邻的边进行标记,标记为Σ 中的元素,使得:对于每个 active node v,如果它有d 个相邻的边,假设它相邻的边被标记为s1,s2,...,sd,那么[s1,s2,...,sd]∈A,并且对于每个 passive node u,如果它有δ 个相邻的边,假设它相邻的边被标记为t1,t2,...,tδ,那么[t1,t2,...,tδ]∈P。
换句话说,A,P 分别表示了 active node 和 passive node 的相邻边合法标记的真值表。
我们看三个例子:譬如对于(3,3)-biregular tree,我们要用 5 种颜色对边进行染色,使得每个 node 相邻的边的颜色都不一样。那么Σ={1,2,3,4,5} 表示五种颜色,
A=P={[x,y,z]:x,y,z∈Σ且x,y,z两两不同},
其中我们用[x,y,z] 表示一个 multiset。
再看另一个例子:maximal matching。这个问题比较 tricky,我们需要Σ={M,U,P},其中
- M 表示一个边在 matching 中;
- U 表示一个边不在 matching 中,且该边的 active node 有相邻边在 matching 中;
- P 表示一个边不在 matching 中,且该边的 active node 没有相邻边在 matching 中。
那么 active node 的约束就是
A={[M,U,U],[P,P,P]},
意思是:每个 active node 要么有一条边在 matching 中,要么三条边都不在 matching 中。而 passive node 的约束是
P={[M,U,U],[M,P,U],[M,P,P],[U,U,U]}.
这里就比较 tricky 了。对于一个 passive node,它有几种情况:
- 有一条边在 matching 中。此时另外两条边的另一个端点(active node)可以有一条相邻的边在 matching 中,也可以没有;所以有三种情况[M,U,U],[M,U,P],[M,P,P]。
- 没有边在 matching 中。此时这三条边的另一个端点(active node)都必须有一条相邻的边在 matching 中;所以只能是[U,U,U]。
最后一个例子是 3-weak labeling,对于一个(3,2)-biregular tree,我们要用 3 种颜色对边进行染色,使得每个 active node 相邻的边的颜色只有 2 种,每个 passive node 相邻的边的颜色只有 1 种。即
Σ={1,2,3},A={[1,1,2],[1,1,3],[2,2,1],[2,2,3],[3,3,1],[3,3,2]},P={[1,1],[2,2],[3,3]}.
接下来我们考虑 round elimination 要干什么。
它是用于证明 lower bound 的工具,基本想法是:对于一个 bipartite locally verifiable problem Π0=(Σ0,A0,P0),如果我们可以构造出一个新的 bipartite locally verifiable problem Π1=(Σ1,A1,P1),使得:如果Π0 可以在t 轮内解决,那么Π1 可以在t−1 轮内解决。
那么这样的话,如果有问题Π0,Π1,...,Πt,那么Πt 应该是一个 trivial 的问题,它只需要 0 轮就可以解决,换句话说,解决Πt 不需要任何通讯。
如果我们发现Πt 不是一个 trivial 的问题,那么就说明Π0 至少需要t+1 轮才能解决,这就证明了Π0 的 lower bound。
形式化地,令Π0=(Σ0,A0,P0) 是(d,δ)-biregular tree 上的一个 bipartite locally verifiable problem,我们如此构造Π1=(Σ1,A1,P1):
- active node 和 passive node 交换角色。换句话说,Π1 是(δ,d)-biregular tree 上的一个 bipartite locally verifiable problem;
- Σ1 是Σ0 的所有非空子集;
- active configurations A1 为
A1={[X1,...,Xδ]:X1,...,Xδ∈Σ1 s.t. ∀xi∈Xi, [x1,...,xδ]∈P0}.
- passive configurations P1 为
P1={[Y1,...,Yd]:Y1,...,Yd∈Σ1 s.t. ∃yi∈Yi, [y1,...,yd]∈A0}.
譬如回看之前的 3-weak labeling 问题,我们有
- Σ1={{1},{2},{3},{1,2},{1,3},{2,3},{1,2,3}};
- A1={[{1},{1}],[{2},{2}],[{3},{3}]};
-
P1={[{1},{1},{2}],[{1},{1},{3}],[{2},{2},{1}],[{2},{2},{3}],[{3},{3},{1}],[{3},{3},{2}]}
注意,按照定义P1 应该含有更多的情况,譬如[{1,2,3},{1,2,3},{1,2,3}],因为根据定义只需要存在性。但是因为 active configurations 中只有单点集合,意味着合法的对边标记都是Σ1 中的那些单点集,因此在 passive configuration 时我们也只考虑了单点集的约束(其余情况必定不满足 active 约束)。
接下来我们进入最核心的部分:假设Π0 可以在T 轮内解决,我们证明Π1 可以在T−1 轮内解决。