论文 Improved Decoding of Expander Codes. Xue Chen, Kuan Cheng, Xin Li, and Minghui Ouyang. 2023 阅读笔记。这篇文章通过猜测 Expansion 的 Idea 进一步改进了 Expander Code 线性解码算法的噪声容限。
记号规定
- 若无特殊说明,文中的 G 都默认是 D 左部正则的,左部点集大小为 N,右部点集大小为 M(M<N) 的 (αN,(1−ϵ)D)-bipartite expander。且我们用 DR 表示右部点集的平均度数。
- 我们用 1{A} 表示事件 A 的示性变量。
- 用 N(S) 表示 S 的邻集,而用 N1(S) 表示 S 的 unique neighbor 的集合,即 N1(S):={v∈V∣e(v,S)=1},而 N≥2(S):=N(S)\N1(S)。
New Size-Expansion Tradeoff
Thm (New Size-Expansion Tradeoff):设 G 是一个 (αN,(1−ϵ)D)-bipartite expander。则对于任何的常数 k>1 与左部点集一个大小为 kαN 的子集 S,我们有:
- ∣N(S)∣≥(1−kϵ)D⋅kαN−O(ϵD⋅k2);
- ∣N(S)∣≥(1−3−2/k2kϵ−1)2k⋅DαN−O(DRD)(当 k>1/2ϵ 时,第二条的效果比第一条的好。
第一条说的意思是:一个 (αN,(1−ϵ)D)-bipartite expander 大致上是一个 (kαN,(1−kϵ)D)-bipartite expander (k>1)。这告诉我们可以通过损失一定的 expansion 来得到更大子集的扩展性参数。这一定理用处颇多,说是这篇文章的关键定理也不为过。
Proof:
① 先来证明第一条,我们使用概率方法来证明这一不等式:
设 S 是左部点集一个大小为 kαN(k>1) 的子集。
考虑从 S 中均匀随机取出一个大小为 αN 的子集 T,并考虑 N(S) 中的一个点 u,其在 S 中有超过一个邻居。设这些个邻居为 v1,…,vdS(u)(dS(u)>1),则用一下 Union Bound 就有:
1{u∈N(T)}≤i=1∑dS(u)1{vi∈T}−i=2∑dS(u)1{v1∈T}1{vi∈T}
上式在随机变量 T 上求个期望则有:
TE[1{u∈N(T)}]≤dS(u)⋅∣S∣∣T∣−(dS(u)−1)⋅∣S∣(∣S∣−1)∣T∣(∣T∣−1)
又注意到:
u∈N(S)∑dS(u)=D∣S∣,u∈N(S)∑(dS(u)−1)=D∣S∣−∣N(S)∣
所以再对所有 u∈N(S) 求个和既有:
TE[∣N(T)∣]≤D∣T∣−(D∣S∣−∣N(S)∣)⋅∣S∣(∣S∣−1)∣T∣(∣T∣−1)=D∣T∣(1−(1−D∣S∣∣N(S)∣)⋅∣S∣−1∣T∣−1)
再由 expander 的性质,有 ∣N(T)∣≥(1−ϵ)D∣T∣,所以有:
1−ϵ≤1−(1−D∣S∣∣N(S)∣)⋅∣S∣−1∣T∣−1
再整理一下就有:
∣N(S)∣≥(1−kϵ)D∣S∣−αN−1ϵ(k−1)⋅D∣S∣≥(1−kϵ)D∣S∣−2ϵDk2
得证。
② 再来证明第二条,我们使用另一种方法——线性规划的原始对偶方法——计算 TE[∣N(T)∣],依此来证明这一不等式:
设 S 是一个大小为 kαN 的左部点集的子集。再设有 βj⋅DαN 个在 N(S) 里的点,满足其恰有 j 个邻居在 S 里。则:
∣N(S)∣=(β1+⋯+βk)⋅DαN
double counting e(S,N(S)) 可得:
β1+2β2+⋯+kβk=k
考虑 TE[∣N(T)∣] 的另一种计算方式:
TE[∣N(T)∣]=i∈N(S)∑T∼(αNS)Pr[T∩N(i)=∅]≥(1−ϵ)DαN
其中最有一个不等号是由 vertex expansion 的性质。
对于每个满足 e(i,S)=j 的点 i∈N(S),有:
TPr[T∩N(i)=∅]=1−TPr[T∩N(i)=∅]=1−∣S∣(∣S∣−1)⋯(∣S∣−j+1)(∣S∣−∣T∣)(∣S∣−∣T∣−1)⋯(∣S∣−∣T∣−j+1)=1−(1−k1)j+O(kαNDR)
省略大 O 那项,在把上式对所有的 i∈N(S) 加起来,得到:
j=1∑k(1−(1−k1)j)⋅βj≥1−ϵ
综合以上条件,我们把这些个条件与目标函数写成一个线性规划问题:
min kαN∣N(S)∣=β1+⋯+βks.t. β1+2β2+⋯+kβk=kj=1∑k(1−(1−k1)j)⋅βj≥1−ϵβj≥0,∀j∈[k]
设这一线性规划问题在 β∗ 处取到最优值。
注意到这一线性规划问题约束较少(只有两个),其对偶问题变量会比较少,方便分析:
max kx1+(1−ϵ)x2s.t. jx1+(1−(1−1/k)j)x2≤1,∀j∈[k]x2≥0
我们有如下 Claim:β∗ 最多有两个下标是非 0 的,且如果 β∗ 恰有两个下标非 0,则这两个下标必须是相邻的。
证明这一 Claim 的关键是注意到函数 f(j)=1−(1−1/k)j 是严格凹的。
如果有三处下标 l1<l2<l3 都是非 0 的,则有线性规划的松弛互补,我么有:jx1+(1−(1−1/k)j)x2=1 对 j=l1,l2,l3 都成立。但是由 j=l1,l3 时的等式成立再配合上 f(j) 的凹性,可以推出:l2x1+(1−(1−1/k)l2)x2>1,矛盾了。如果有两个非零下标不相邻,证明是类似的。
那么我们假设 j=2,3 处非零,则:
2x1+(2/k−1/k2)x2=13x1+(3/k−3/k2+1/k3)x2=1
解得:
x1=3−2/k2−1/k−k,x2=3−2/kk2
可以验证这对 (x1,x2) 是满足约束条件的。将其代入到目标函数可得对应值为 2k(1−3−2/k2kϵ−1)(省略了误差项 k⋅O(kαNDR)),由弱对偶原理可得:
∣N(S)∣≥(1−3−2/k2kϵ−1)2k⋅DαN−O(DRD)
故得证。□
一个有趣的事实是:实际上第一条的下界是在 j=1,2 处非零时取到的。
Expander Code 距离的改进
利用 New Size-Expansion Tradeoff,我们可得对 Expander Code 距离的估计进行一些个改进。在 SS96 中,M. Sipser 和 D. A. Spielman 证明 expander code 的距离至少为 αN。在 Vid13a 中,Michael Viderman 证明这一下界可以被改进为 1−2ϵ2(1−3ϵ)α。在这篇文章中,这一下界被改进到 2ϵ1αN。具体来说:
Thm (Distance of Expander Code):设 G 是一个 (αN,(1−ϵ)D)-bipartite expander,且 ϵ<1/2。则由 G 定义的 expander code C 的距离 d 至少为 2ϵ1αN−O(1/ϵ)。
我们先证明如下引理:
Lemma:设 G 是一个 (αN,(1−ϵ)D)-bipartite expander,且左部 d 正则,右部平均度数为 DR,则:
- ϵ>1/D;
- 4ϵα≤1/DR+O(Dα1⋅M/N2)。
Proof: □
接下来我们可以来证明上面的 Thm 了。
Proof of Thm:是用反证法,假设有一个 codeword z,其与 0 的汉明距离为 2ϵ1αN−C/ϵ,其中 C 是一个充分大的数。注意由 Lemma 的第二条,有 α/2ϵ≤2/DR<1,所以 2ϵ1αN 可能取到。
设 S 为 z 中为 1 的比特位的下标集合。由 New Size-Expansion Tradeoff 中的第一条,我们有:
∣N(S)∣≥(1−αN∣S∣)D∣S∣−O(ϵD⋅(αN∣S∣))
对于充分大的 C,不等式右边至少为:
(21+αNC)D∣S∣−O(ϵD⋅(αN∣S∣))>21D∣S∣
则由抽屉原理,上式表明 ∣N1(S)∣>0。那么 z 不是一个合法的 codeword(z 不满足在 N1(S) 中的 parity check),故矛盾。□