List-Decodable Codes, Expanders, and Extractors: A Unified Framework, Study notes of Number Theory

A lecture note from cs225: pseudorandomness course, focusing on list-decodable codes, expanders, and extractors. The lecture explains how these objects are related and presents them in a single list-decoding-like framework. The document also discusses the list-decoding properties of extractors and expanders, and their relationship with parvaresh–vardy codes.

Typology: Study notes

2010/2011

Uploaded on 10/26/2011

thecoral
thecoral 🇺🇸

4.5

(30)

395 documents

1 / 5

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
CS225: Pseudorandomness Prof. Salil Vadhan
Lecture 16: List-Decodable Codes vs. Extractors & Expanders
April 12, 2007
Based on scribe notes by xxxx.
Previously, we have seen close connections between expanders and extractors (and related objects,
such as condensers). In this lecture, we will see how these ob jects are also closely related to
list-decodable codes, by presenting all of them in a single, list-decoding-like framework.
1 List-decoding views of expanders and extractors
We consider a code Enc : [N][M]Das corresponding syntactically to an extractor Ext : [N]×
[D][D]×[M] and an expander with neighbor function Γ : [N]×[D][D]×[M] , via the
correspondence:
Ext(x, y) = Γ(x, y ) = (y, C(x)y).
Note that this yields extractors and expanders with output/right-hand-side [D]×[M] and where
the first component equals the seed/edge-label. (Recall that for such an extractor Ext, the second
component is called a strong extractor.) Conversely, any such extractor or expander yields a code
Enc.
For a subset T[D]×[M] and ε[0,1], we define
LIST(T, ε)def
={x: Pr
y[(y, Enc(x)y)T]ε}
={x: Pr
y[Ext(x, y)T]ε}
={x: Pr
y[Γ(x, y)T]ε}
We can formulate the standard list-decoding property of codes in this language as follows:
Lemma 1 Enc : [N][M]Dis (1 1/M ε, K)list-decodable iff for every r[M]D, we have
|LIST(Tr,1/M +ε)| K,
where Tr={(y, ry) : y[D]}.
Now let’s look at extractors.
Lemma 2 If Ext : [N]×[D][M]is a (k, ε)extractor then for every T[D]×[M], we have
|LIST(T, µ(T) + ε)|< K, (1)
where K= 2k.
Conversely, if (1) holds for every T[D]×[M], then Ext is a (k+ log(1),2ε)extractor.
1
pf3
pf4
pf5

Partial preview of the text

Download List-Decodable Codes, Expanders, and Extractors: A Unified Framework and more Study notes Number Theory in PDF only on Docsity!

CS225: Pseudorandomness Prof. Salil Vadhan

Lecture 16: List-Decodable Codes vs. Extractors & Expanders

April 12, 2007

Based on scribe notes by xxxx.

Previously, we have seen close connections between expanders and extractors (and related objects, such as condensers). In this lecture, we will see how these objects are also closely related to list-decodable codes, by presenting all of them in a single, list-decoding-like framework.

1 List-decoding views of expanders and extractors

We consider a code Enc : [N ] → [M ]D^ as corresponding syntactically to an extractor Ext : [N ] × [D] → [D] × [M ] and an expander with neighbor function Γ : [N ] × [D] → [D] × [M ] , via the correspondence: Ext(x, y) = Γ(x, y) = (y, C(x)y ).

Note that this yields extractors and expanders with output/right-hand-side [D] × [M ] and where the first component equals the seed/edge-label. (Recall that for such an extractor Ext, the second component is called a strong extractor.) Conversely, any such extractor or expander yields a code Enc.

For a subset T ⊆ [D] × [M ] and ε ∈ [0, 1], we define

LIST(T, ε) def = {x : Pr y [(y, Enc(x)y ) ∈ T ] ≥ ε} = {x : Pr y [Ext(x, y) ∈ T ] ≥ ε}

= {x : Pr y [Γ(x, y) ∈ T ] ≥ ε}

We can formulate the standard list-decoding property of codes in this language as follows:

Lemma 1 Enc : [N ] → [M ]D^ is (1 − 1 /M − ε, K) list-decodable iff for every r ∈ [M ]D^ , we have

|LIST(Tr, 1 /M + ε)| ≤ K,

where Tr = {(y, ry ) : y ∈ [D]}.

Now let’s look at extractors.

Lemma 2 If Ext : [N ] × [D] → [M ] is a (k, ε) extractor then for every T ⊆ [D] × [M ], we have

|LIST(T, μ(T ) + ε)| < K, (1)

where K = 2k.

Conversely, if (1) holds for every T ⊆ [D] × [M ], then Ext is a (k + log(1/ε), 2 ε) extractor.

This lemma says that the extractor property is equivalent to a “list-decoding-like property,” up to a factor of 2 in the error ε and an extra additive entropy loss of log(1/ε) (both of which are usually considered insignificant).

Let’s compare this to the standard list-decoding property of codes as formulated in Lemma 1. Note that the only difference between the condition in Lemma 1 and the one in Lemma 2 is that in the former, we restrict to sets T of the form Tr. That is, we restrict to sets T ⊆ [D] × [M ] that contain exactly one element of the form (y, ·) for each y.

Corollary 3 If Ext : [N ]×[D] → [D]×[M ] is a (k, ε) extractor (satisfying Ext(x, y) = (y, Ext′(x, y))), then the corresponding code Enc is (1 − 1 /M − ε, K) list-decodable.

A converse holds when the alphabet size is small.

Proposition 4 If Enc : [N ] → [M ]D^ is (1 − 1 /M − ε, K) list-decodable, then the corresponding function Ext : [N ] × [D] → [D] × [M ] given by Ext(x, y) = (y, Enc(x)y ) is a (k + log(1/ε), M · ε) extractor. extractor.

Proof: Let X be a k-source. Then the statistical difference between Ext(X, U[D]) and U[D] × U[M ] equals

∆(Ext(X, U[D]), U[D] × U[M ]) = (^) E y ←RY

[

∆(Enc(X)y , U[M ])

]

M

E

y ←RY

[

max z Pr[Enc(X)y = z] − 1 /M

]

where the last inequality follows from the ` 1 formulation of statistical difference.

So if we define r ∈ [M ]D^ by setting ry to be the value z maximizing Pr[Enc(X)y = z] − 1 /M , we have:

∆(Ext(X, U[D]), U[D] × U[M ]) ≤

M

· (Pr[(Y, Enc(X)Y ) ∈ Tr] − 1 /M ) ,

M

· (Pr[X ∈ LIST(Tr, 1 /M + ε)] + ε)

M

2 −(k+log(1/ε)^ · K + ε

≤ M · ε.

Thus, the quantitative relationship between extractors and list-decodable codes deteriorates ex- tremely fast as the output length/alphabet size increases. Nevertheless, the list-decoding view of extractors as given in Lemma ?? turns out to be quite useful (as we will see later in the course).

For expanders, the list-decoding view is quite simple to state and prove.

Lemma 5 Γ : [N ] × [D] → [D] × [M ] is an (= K, A) expander iff for every set T ⊆ [D] × [M ] such that |T | < KA, we have: |LIST(T, 1)| < K.

(In the list-decoding algorithm, the left-hand side of this inequality was εq, since we were bounding |LIST(Tr, ε)|.)

Once we have this, we can reduce both sides modulo E(Y ) and deduce

0 = Q(Y, f 0 (Y ), f 2 (Y ),... , fm− 1 (Y )) mod E(Y ) = Q(Y, f (Y ), f (Y )^2 ,... , f (Y )m−^1 ) mod E(Y )

Thus, if we define the univariate polynomial

Q∗(Z) = Q(Y, Z, Zh,... , Zh m− 1 ) mod E(Y ),

then f (Y ) is a root of Q∗^ over the field Fq[Y ]/E(Y ).

Observe that Q∗^ is nonzero because Q is not divisible by E(Y ) and has degree at most h − 1 in each Zi. Thus,

|LIST(T, 1)| ≤ deg(Q∗) ≤ h − 1 + (h − 1) · h + (h − 1) · h^2 + · · · + (h − 1) · hm−^1 = K − 1.

(Compare this to the list-decoding algorithm, where our primary goal was to efficiently enumerate the elements of LIST(T, ε), as opposed to bound its size.)

Handling smaller values of K. We further restrict Q(Y, Z 1 ,... , Zm) to only have nonzero coefficients on form Y iMonj (Z 1 ,... , Zm) for 0 ≤ i ≤ A − 1 and 0 ≤ j ≤ K − 1 ≤ hm^ − 1, where Monj (Z 1 ,... , Zm) = Z 1 j^0 · · · Z mjm −^1 and j = j 0 + j 1 h + · · · + jm− 1 hm−^1 is the base-h rep- resentation of j. Note that this gives us AK > |T | monomials, so Step 1 is possible. Moreover Mj (Z, Zh, Zh 2 ,... , Zh m− 1 ) = Zj^ , so the degree of Q∗^ is at most K − 1, and we get the desired list-size bound in Step 3.

We now set parameters to deduce the expander we used in Lecture 13 (to get a condenser).

Theorem 7 For every constant α > 0 , every N ∈ N, K ≤ N , and ε > 0 , there is an explicit (K, (1−ε)D) expander with N left-vertices, M right-vertices, left-degree D = O((log N )(log K)/)1+1/α and M ≤ D^2 · K1+α. Moreover, D is a power of 2.

Proof: Let n = log N and k = log Kmax. Let h = d(nk/ε)^1 /α^ e and let q be the power of 2 in the interval (h1+α, 2 h1+α].

Set m = d(log Kmax)/(log h)e, so that hm−^1 ≤ Kmax ≤ hm. Then, by Theorem 6, the graph Γ : Fnq × Fq → Fm q +1defined in (2) is an (hm, A) expander for A = q − nhm. Since Kmax ≤ hm, it is also a (Kmax , A) expander.

Note that the number of left-vertices in Γ is qn^ ≥ N , and the number of right-vertices is

M = qm+1^ ≤ q^2 · h(1+α)·(m−1)^ ≤ q^2 · K max1+α.

The degree is

D = q ≤ 2 h1+α^ = O(nk/)1+1/α^ = O((log N )(log Kmax)/)1+1/α.

To see that the expansion factor A = q − nhm ≥ q − nhk is at least (1 − ε)D = (1 − ε)q, note that

nhk ≤ ε · h1+α^ ≤ εq,

where the first inequality holds because hα^ ≥ nk/ε.

Finally, the construction is explicit because a representation of Fq for q a power of 2 (i.e. an irreducible polynomial of degree log q over F 2 ) as well as an irreducible polynomial E(Y ) of degree n over Fq can be found in time poly(n, log q) = poly(log N, log D).