WeakPCPTheorem

ClassS04CS141 | recent changes | Preferences

Showing revision 3
Difference (from revision 3 to revision 3) (minor diff, author diff)
(The revisions are identical or unavailable.)

Recall the following definitions and lemma from SelfTestingCorrecting:

DEFN: F is linear if, for every pair U,W ∈ A,

F(U)+F(W) = F(U + W).

DEFN: F is approximately linear if, for a random pair U,W ∈ A,

Pr[F(U)+F(W) = F(U + W)] ≥ 91/100 .

LEMMA: If F is linear, the SELF-CHECK algorithm for linear functions outputs "pass". If F is not approximately linear, the SELF-CHECK algorithm outputs "fail" with probability at least 50%.

Note that the SELF-CHECK algorithm checks F at only 24 places.

DEFN: F encodes a function G if, for all W∈ A, a random R∈ A satisfies

Pr[G(W) = F(W+R)-F(R)] ≥ 9/10 .

LEMMA:If F encodes a function G, then G is linear.
PROOF: Fix any U,W ∈ A. We will show that G(U+W) = G(U)+G(W). It suffices if, for some R,

G(U+W) = F(U+W+R)-F(R)
= G(U)+F(W+R)-F(R)
= G(U)+G(W)+F(R)-F(R)
For a random R, each of these three equalities holds individually with probability at least 9/10. By the naive union bound, the probability that any of the three fails to hold is at most 3/10. Thus, the probability that all succeed is at least 7/10. Thus, there exists an R for which they all hold.
QED

LEMMA: If F is approximately linear, then F encodes exactly one function G.
PROOF SKETCH: Fix any W∈ A. Let R and S be random elements in A. Then

Pr[ F(W+R)+F(S) = F(R+W+S) AND F(R)+F(W+S) = F(R+W+S)] ≥ 1-2*(1-91/100) = 82/100.
Thus,
Pr[ F(W+R)-F(R) = F(W+S)-F(S)] ≥ 82/100.
This implies that there exists a single value G(W) such that, for a random R,
Pr[ F(W+R)-F(R) = G(W)] ≥ 9/10.
(For example, suppose F(W+R)-F(R) takes on the value X with probability 9/10, and Y with probability 1/10. Then the probability that F(W+R)-F(R) = F(W+S)-F(S) is (9/10)2 + (1/10)2 = 82/100.
QED

SELF-CORRECT ALGORITHM(F,U):

input: an approximately linear function F:A→ B, and any U∈ A.
output: G(U), with probability at least 9/10, where G is the linear function encoded by F.
  1. Choose a random R∈ A and output F(U+R)-F(U).

LEMMA: If F is approximately linear, then, for any W∈ A, with probability at least 9/10, SELF-CORRECT(F,W) outputs G(W), where G is the linear function encoded by F.
PROOF: That there is a unique linear function encoded by F follows from the lemmas above. That F(U+R)-F(R) = G(W) with probability at least 9/10 follows also from the lemmas above.
QED

Self Testing and Correcting of "Diagonal" Linear Functions

Let F:Z2n× n→ Z2. Here Z2 denotes the finite field {0,1} with arithmetic mod 2.

We think of X∈ Z2n× n as a doubly subscripted vector (ie. a matrix), and we denote its elements as Xij for 1≤ i, j≤ n.

If F is a linear function, then it can be written as

F(X) = ij Xij Bij
for some B ∈ Z2n× n.

DEFN: F is a diagonal linear function if F can be written as

F(X) = ij Xij bi bj
for some b ∈ Z2n.

Note that any diagonal linear function is a linear function.

DEFN: F is an approximately diagonal linear function if F is approximately linear and the linear function that F encodes is a diagonal linear function.

SELF-CHECK ALGORITHM(F):

input: a subroutine for computing a function F:Z2n× n→ B.
output: if F is a diagonal linear function, then "pass". If F is not approximately diagonal linear, then "fail" with probability at least 50%.
  1. Check that F is approximately linear using the SELF-CHECK algorithm for approximately linear functions.
  2. If that test fails, return "fail".
  3. Repeat the following test 3 times:
  4. Choose random vectors r,s ∈ Z2n and check G(rsT) = G(diag(r))G(diag(s)), using the SELF-CORRECT(F,W) algorithm for linear functions to evaluate G (with probability at least 9/10). Here G is the linear function encoded by F. diag(r) is the diagonal matrix where diag(r)ii = ri.
  5. If all 3 tests pass, return "pass", else return "fail".

LEMMA: If F is a diagonal linear function, then SELF-CHECK(F) (above) passes. If F is not an approximately diagonal linear function, then SELF-CHECK(F) fails with probability at least 50%.
PROOF: If F is diagonal linear, then SELF-CHECK clearly passes.

Suppose F is not approximately diagonal linear. If F is not approximately linear, then the SELF-CHECK for linear functions fails with probability at least 50%. So assume F is approximately linear, and let G be the linear function encoded by F.

Since G is linear, G(X) = ij Xij Cij for some C ∈ Z2n× n. By definition, G is diagonal iff C = bbT for some b∈ Z2n.

The condition rT C s = rT b bT r for some b is equivalent to G(rsT) = G(diag(r))G(diag(s)). (check) Note: here rsT denotes the matrix whose ij entry is ri sj.

This condition clearly holds if G is diagonal linear. On the other hand, If C ≠ bbT, then Pr[rT C s = rT b bT s] ≤ 1/4 for two random vectors r,s ∈ Z2n× n. (This is FreivaldsTrick, applied twice.) Thus, if G is not diagonal linear, then each of the last three checks made by the SELF-CHECK algorithm will fail with probability at least 7/40 = (1-3/10)(1/4). (The (1-3/10) part is because, in evaluating G using the SELF-CORRECT subroutine, there is 1/10 chance that each evaluation fails to return the actual value of G(W).

Thus, if G is not diagonal linear, then the SELF-CHECK will fail with probability at least 1-(1-7/40)3 > 1/2.

QED

Finally, note that SELF-CORRECTing an approximately diagonal linear function reduces trivially to SELF-CORRECTing a linear function.


References:
References:

Notes on the weak PCP theorem are available either in [html] or [pdf].


ClassS04CS141 | recent changes | Preferences
This page is read-only | View other revisions | View current revision
Edited February 10, 2004 5:29 pm by Neal (diff)
Search: