Interactive Proofs Lecture 17 IP = PSPACE 1 So far 2 So far IP - - PowerPoint PPT Presentation

interactive proofs
SMART_READER_LITE
LIVE PREVIEW

Interactive Proofs Lecture 17 IP = PSPACE 1 So far 2 So far IP - - PowerPoint PPT Presentation

Interactive Proofs Lecture 17 IP = PSPACE 1 So far 2 So far IP 2 So far IP AM, MA 2 So far IP AM, MA GNI IP 2 So far IP AM, MA GNI IP GNI AM 2 So far IP AM, MA GNI IP GNI AM Using AM protocol for set


slide-1
SLIDE 1

Interactive Proofs

Lecture 17 IP = PSPACE

1

slide-2
SLIDE 2

So far

2

slide-3
SLIDE 3

So far

IP

2

slide-4
SLIDE 4

So far

IP AM, MA

2

slide-5
SLIDE 5

So far

IP AM, MA GNI ∈ IP

2

slide-6
SLIDE 6

So far

IP AM, MA GNI ∈ IP GNI ∈ AM

2

slide-7
SLIDE 7

So far

IP AM, MA GNI ∈ IP GNI ∈ AM Using AM protocol for set lower-bound

2

slide-8
SLIDE 8

So far

IP AM, MA GNI ∈ IP GNI ∈ AM Using AM protocol for set lower-bound In fact, IP[k] in AM[k+2]

2

slide-9
SLIDE 9

IP = PSPACE

3

slide-10
SLIDE 10

IP = PSPACE

Recall, IP means IP[poly]

3

slide-11
SLIDE 11

IP = PSPACE

Recall, IP means IP[poly] IP ⊆ PSPACE

3

slide-12
SLIDE 12

IP = PSPACE

Recall, IP means IP[poly] IP ⊆ PSPACE Even though prover unbounded, cannot convince poly time verifier of everything

3

slide-13
SLIDE 13

IP = PSPACE

Recall, IP means IP[poly] IP ⊆ PSPACE Even though prover unbounded, cannot convince poly time verifier of everything PSPACE ⊆ IP

3

slide-14
SLIDE 14

IP = PSPACE

Recall, IP means IP[poly] IP ⊆ PSPACE Even though prover unbounded, cannot convince poly time verifier of everything PSPACE ⊆ IP Prover can convince verifier of high complexity statements

3

slide-15
SLIDE 15

IP ⊆ PSPACE

4

slide-16
SLIDE 16

IP ⊆ PSPACE

Easier direction!

4

slide-17
SLIDE 17

IP ⊆ PSPACE

Easier direction! Plan: For given input calculate Pr[yes] of honest verifier, maximum over all “prover strategies”

4

slide-18
SLIDE 18

IP ⊆ PSPACE

Easier direction! Plan: For given input calculate Pr[yes] of honest verifier, maximum over all “prover strategies” Warm-up: public-coins (i.e., AM[poly])

4

slide-19
SLIDE 19

IP ⊆ PSPACE

Easier direction! Plan: For given input calculate Pr[yes] of honest verifier, maximum over all “prover strategies” Warm-up: public-coins (i.e., AM[poly]) Could then use the “fact” that IP[poly]=AM[poly]

4

slide-20
SLIDE 20

IP ⊆ PSPACE

Easier direction! Plan: For given input calculate Pr[yes] of honest verifier, maximum over all “prover strategies” Warm-up: public-coins (i.e., AM[poly]) Could then use the “fact” that IP[poly]=AM[poly] Or modify the proof (as we’ll do)

4

slide-21
SLIDE 21

AM[poly] ⊆ PSPACE

5

slide-22
SLIDE 22

AM[poly] ⊆ PSPACE

Plan: For given input calculate max Pr[yes] over all “prover strategies”

5

slide-23
SLIDE 23

AM[poly] ⊆ PSPACE

Plan: For given input calculate max Pr[yes] over all “prover strategies” Assume for convenience (w.l.o.g) each message is a single bit and P, V alternate

5

slide-24
SLIDE 24

AM[poly] ⊆ PSPACE

Plan: For given input calculate max Pr[yes] over all “prover strategies” Assume for convenience (w.l.o.g) each message is a single bit and P, V alternate Protocol’ s configuration tree: path to a node corresponds to the transcript so far

5

slide-25
SLIDE 25

AM[poly] ⊆ PSPACE

Plan: For given input calculate max Pr[yes] over all “prover strategies” Assume for convenience (w.l.o.g) each message is a single bit and P, V alternate Protocol’ s configuration tree: path to a node corresponds to the transcript so far

P V V P V V

5

slide-26
SLIDE 26

AM[poly] ⊆ PSPACE

P V V P V V

6

slide-27
SLIDE 27

AM[poly] ⊆ PSPACE

Plan: For given input calculate maximum value, over all “prover strategies,” of Pr[yes]

P V V P V V

6

slide-28
SLIDE 28

AM[poly] ⊆ PSPACE

Plan: For given input calculate maximum value, over all “prover strategies,” of Pr[yes] Note that finding the honest prover strategy may require super-PSPACE computation

P V V P V V

6

slide-29
SLIDE 29

AM[poly] ⊆ PSPACE

Plan: For given input calculate maximum value, over all “prover strategies,” of Pr[yes] Note that finding the honest prover strategy may require super-PSPACE computation Recursively for each node, calculate maximum Pr[yes]

P V V P V V

6

slide-30
SLIDE 30

AM[poly] ⊆ PSPACE

Plan: For given input calculate maximum value, over all “prover strategies,” of Pr[yes] Note that finding the honest prover strategy may require super-PSPACE computation Recursively for each node, calculate maximum Pr[yes] Leaves: Pr[yes] = 0 or 1, determined by running verifier’ s program

P V V P V V

6

slide-31
SLIDE 31

AM[poly] ⊆ PSPACE

Plan: For given input calculate maximum value, over all “prover strategies,” of Pr[yes] Note that finding the honest prover strategy may require super-PSPACE computation Recursively for each node, calculate maximum Pr[yes] Leaves: Pr[yes] = 0 or 1, determined by running verifier’ s program P nodes: max of children

P V V P V V

6

slide-32
SLIDE 32

AM[poly] ⊆ PSPACE

Plan: For given input calculate maximum value, over all “prover strategies,” of Pr[yes] Note that finding the honest prover strategy may require super-PSPACE computation Recursively for each node, calculate maximum Pr[yes] Leaves: Pr[yes] = 0 or 1, determined by running verifier’ s program P nodes: max of children V nodes: average of children

P V V P V V

6

slide-33
SLIDE 33

AM[poly] ⊆ PSPACE

Plan: For given input calculate maximum value, over all “prover strategies,” of Pr[yes] Note that finding the honest prover strategy may require super-PSPACE computation Recursively for each node, calculate maximum Pr[yes] Leaves: Pr[yes] = 0 or 1, determined by running verifier’ s program P nodes: max of children V nodes: average of children In PSPACE: depth polynomial

P V V P V V

6

slide-34
SLIDE 34

IP ⊆ PSPACE

P V V P V V

7

slide-35
SLIDE 35

IP ⊆ PSPACE

Calculate max Pr[yes] when prover’ s strategy can depend only on messages and not private coins

P V V P V V

7

slide-36
SLIDE 36

IP ⊆ PSPACE

Calculate max Pr[yes] when prover’ s strategy can depend only on messages and not private coins Maintain the set of consistent random-tapes at each V node

P V V P V V

7

slide-37
SLIDE 37

IP ⊆ PSPACE

Calculate max Pr[yes] when prover’ s strategy can depend only on messages and not private coins Maintain the set of consistent random-tapes at each V node Children of V node not always chosen with 1/2-1/2 probability. Instead weighted by fraction

  • f consistent random-tapes

P V V P V V

7

slide-38
SLIDE 38

IP ⊆ PSPACE

Calculate max Pr[yes] when prover’ s strategy can depend only on messages and not private coins Maintain the set of consistent random-tapes at each V node Children of V node not always chosen with 1/2-1/2 probability. Instead weighted by fraction

  • f consistent random-tapes

Leaves: Pr[yes] determined by running verifier’ s program on all consistent random-tapes of verifier

P V V P V V

7

slide-39
SLIDE 39

IP ⊆ PSPACE

Calculate max Pr[yes] when prover’ s strategy can depend only on messages and not private coins Maintain the set of consistent random-tapes at each V node Children of V node not always chosen with 1/2-1/2 probability. Instead weighted by fraction

  • f consistent random-tapes

Leaves: Pr[yes] determined by running verifier’ s program on all consistent random-tapes of verifier P nodes: max of children

P V V P V V

7

slide-40
SLIDE 40

IP ⊆ PSPACE

Calculate max Pr[yes] when prover’ s strategy can depend only on messages and not private coins Maintain the set of consistent random-tapes at each V node Children of V node not always chosen with 1/2-1/2 probability. Instead weighted by fraction

  • f consistent random-tapes

Leaves: Pr[yes] determined by running verifier’ s program on all consistent random-tapes of verifier P nodes: max of children V nodes: (weighted) average of children

P V V P V V

7

slide-41
SLIDE 41

PSPACE ⊆ IP

8

slide-42
SLIDE 42

PSPACE ⊆ IP

Enough to show an IP protocol for TQBF

8

slide-43
SLIDE 43

PSPACE ⊆ IP

Enough to show an IP protocol for TQBF For any L in PSPACE, both prover and verifier can first reduce input to a TQBF instance, and then prover proves its membership

8

slide-44
SLIDE 44

PSPACE ⊆ IP

Enough to show an IP protocol for TQBF For any L in PSPACE, both prover and verifier can first reduce input to a TQBF instance, and then prover proves its membership Recall TQBF

8

slide-45
SLIDE 45

PSPACE ⊆ IP

Enough to show an IP protocol for TQBF For any L in PSPACE, both prover and verifier can first reduce input to a TQBF instance, and then prover proves its membership Recall TQBF Decide whether a QBF is true or not

8

slide-46
SLIDE 46

PSPACE ⊆ IP

Enough to show an IP protocol for TQBF For any L in PSPACE, both prover and verifier can first reduce input to a TQBF instance, and then prover proves its membership Recall TQBF Decide whether a QBF is true or not QBF: Q1x1 Q2x2 ... Qnxn F(x1,...,xn) for quantifiers Qi and a formula F on boolean variables

8

slide-47
SLIDE 47

Arithmetization

9

slide-48
SLIDE 48

Arithmetization

A Boolean formula as a polynomial

9

slide-49
SLIDE 49

Arithmetization

A Boolean formula as a polynomial Arithmetic over a (finite, exponentially large) field

9

slide-50
SLIDE 50

Arithmetization

A Boolean formula as a polynomial Arithmetic over a (finite, exponentially large) field 0 and 1 (identities of addition and multiplication) instead of True and False

9

slide-51
SLIDE 51

Arithmetization

A Boolean formula as a polynomial Arithmetic over a (finite, exponentially large) field 0 and 1 (identities of addition and multiplication) instead of True and False For formula F , polynomial P such that for boolean vector b and corresponding 0-1 vector x we have F(b) = P(x)

9

slide-52
SLIDE 52

Arithmetization

A Boolean formula as a polynomial Arithmetic over a (finite, exponentially large) field 0 and 1 (identities of addition and multiplication) instead of True and False For formula F , polynomial P such that for boolean vector b and corresponding 0-1 vector x we have F(b) = P(x) NOT: (1-x); AND: x.y

9

slide-53
SLIDE 53

Arithmetization

A Boolean formula as a polynomial Arithmetic over a (finite, exponentially large) field 0 and 1 (identities of addition and multiplication) instead of True and False For formula F , polynomial P such that for boolean vector b and corresponding 0-1 vector x we have F(b) = P(x) NOT: (1-x); AND: x.y OR (as NOT of AND of NOT): 1 - (1-x).(1-y)

9

slide-54
SLIDE 54

Arithmetization

A Boolean formula as a polynomial Arithmetic over a (finite, exponentially large) field 0 and 1 (identities of addition and multiplication) instead of True and False For formula F , polynomial P such that for boolean vector b and corresponding 0-1 vector x we have F(b) = P(x) NOT: (1-x); AND: x.y OR (as NOT of AND of NOT): 1 - (1-x).(1-y) Exercise: Arithmetize x=y (now!). Degree? Size?

9

slide-55
SLIDE 55

Arithmetization

A Boolean formula as a polynomial Arithmetic over a (finite, exponentially large) field 0 and 1 (identities of addition and multiplication) instead of True and False For formula F , polynomial P such that for boolean vector b and corresponding 0-1 vector x we have F(b) = P(x) NOT: (1-x); AND: x.y OR (as NOT of AND of NOT): 1 - (1-x).(1-y) Exercise: Arithmetize x=y (now!). Degree? Size? Can always use a polynomial linear in each variable since xn=x for x=0 and x=1

9

slide-56
SLIDE 56

Arithmetization

10

slide-57
SLIDE 57

Arithmetization

A QBF as a polynomial

10

slide-58
SLIDE 58

Arithmetization

A QBF as a polynomial TRUE will correspond to > 0, and FALSE, = 0

10

slide-59
SLIDE 59

Arithmetization

A QBF as a polynomial TRUE will correspond to > 0, and FALSE, = 0 Suppose for Boolean formula F , polynomial P

10

slide-60
SLIDE 60

Arithmetization

A QBF as a polynomial TRUE will correspond to > 0, and FALSE, = 0 Suppose for Boolean formula F , polynomial P ∃x F(x) → P(0) + P(1) > 0 (i.e., Σx=0,1 P(x) > 0)

10

slide-61
SLIDE 61

Arithmetization

A QBF as a polynomial TRUE will correspond to > 0, and FALSE, = 0 Suppose for Boolean formula F , polynomial P ∃x F(x) → P(0) + P(1) > 0 (i.e., Σx=0,1 P(x) > 0) ∀x F(x) → P(0).P(1) > 0 (i.e., Πx=0,1 P(x) > 0)

10

slide-62
SLIDE 62

Arithmetization

A QBF as a polynomial TRUE will correspond to > 0, and FALSE, = 0 Suppose for Boolean formula F , polynomial P ∃x F(x) → P(0) + P(1) > 0 (i.e., Σx=0,1 P(x) > 0) ∀x F(x) → P(0).P(1) > 0 (i.e., Πx=0,1 P(x) > 0) Extends to more quantifiers: i.e., if F(x) is a QBF above

10

slide-63
SLIDE 63

Arithmetization

A QBF as a polynomial TRUE will correspond to > 0, and FALSE, = 0 Suppose for Boolean formula F , polynomial P ∃x F(x) → P(0) + P(1) > 0 (i.e., Σx=0,1 P(x) > 0) ∀x F(x) → P(0).P(1) > 0 (i.e., Πx=0,1 P(x) > 0) Extends to more quantifiers: i.e., if F(x) is a QBF above So, how do you arithmetize ∃x∀y G(x,y) and ∀y∃x G(x,y)?

10

slide-64
SLIDE 64

Arithmetization

A QBF as a polynomial TRUE will correspond to > 0, and FALSE, = 0 Suppose for Boolean formula F , polynomial P ∃x F(x) → P(0) + P(1) > 0 (i.e., Σx=0,1 P(x) > 0) ∀x F(x) → P(0).P(1) > 0 (i.e., Πx=0,1 P(x) > 0) Extends to more quantifiers: i.e., if F(x) is a QBF above So, how do you arithmetize ∃x∀y G(x,y) and ∀y∃x G(x,y)? Σx=0,1 Πy=0,1 P(x,y) > 0 and Πy=0,1 Σx=0,1 P(x,y) > 0

10

slide-65
SLIDE 65

Arithmetization

11

slide-66
SLIDE 66

Arithmetization

For a protocol for TQBF: Give a protocol for proving that Q1(x1=0,1) Q2(x2=0,1) ... Qn(xn=0,1) P(x1,...,xn) > 0, where Qi are Σ or Π, and P is a (multi-linear) polynomial

11

slide-67
SLIDE 67

Arithmetization

For a protocol for TQBF: Give a protocol for proving that Q1(x1=0,1) Q2(x2=0,1) ... Qn(xn=0,1) P(x1,...,xn) > 0, where Qi are Σ or Π, and P is a (multi-linear) polynomial Instead suppose all Qi are Σ

11

slide-68
SLIDE 68

Arithmetization

For a protocol for TQBF: Give a protocol for proving that Q1(x1=0,1) Q2(x2=0,1) ... Qn(xn=0,1) P(x1,...,xn) > 0, where Qi are Σ or Π, and P is a (multi-linear) polynomial Instead suppose all Qi are Σ Counts number of satisfying assignments to an (unquantified) boolean formula F

11

slide-69
SLIDE 69

Arithmetization

For a protocol for TQBF: Give a protocol for proving that Q1(x1=0,1) Q2(x2=0,1) ... Qn(xn=0,1) P(x1,...,xn) > 0, where Qi are Σ or Π, and P is a (multi-linear) polynomial Instead suppose all Qi are Σ Counts number of satisfying assignments to an (unquantified) boolean formula F Proving > 0 is trivial

11

slide-70
SLIDE 70

Arithmetization

For a protocol for TQBF: Give a protocol for proving that Q1(x1=0,1) Q2(x2=0,1) ... Qn(xn=0,1) P(x1,...,xn) > 0, where Qi are Σ or Π, and P is a (multi-linear) polynomial Instead suppose all Qi are Σ Counts number of satisfying assignments to an (unquantified) boolean formula F Proving > 0 is trivial Consider proving = K (will be useful in the general case)

11

slide-71
SLIDE 71

Sum-check protocol

12

slide-72
SLIDE 72

Sum-check protocol

To prove: Σx1...Σxn P(x1,...,xn) = K for some degree d polynomial P

12

slide-73
SLIDE 73

Sum-check protocol

To prove: Σx1...Σxn P(x1,...,xn) = K for some degree d polynomial P

Verifier has

  • nly oracle

access to P

12

slide-74
SLIDE 74

Sum-check protocol

To prove: Σx1...Σxn P(x1,...,xn) = K for some degree d polynomial P Note: to evaluate need to add up 2n values

Verifier has

  • nly oracle

access to P

12

slide-75
SLIDE 75

Sum-check protocol

To prove: Σx1...Σxn P(x1,...,xn) = K for some degree d polynomial P Note: to evaluate need to add up 2n values Base case: n=0. Verifier will simply use oracle access to P.

Verifier has

  • nly oracle

access to P

12

slide-76
SLIDE 76

Sum-check protocol

To prove: Σx1...Σxn P(x1,...,xn) = K for some degree d polynomial P Note: to evaluate need to add up 2n values Base case: n=0. Verifier will simply use oracle access to P. For n>0: Let R(X) := Σx2...Σxn P(X,x2,...,xn)

Verifier has

  • nly oracle

access to P

12

slide-77
SLIDE 77

Sum-check protocol

To prove: Σx1...Σxn P(x1,...,xn) = K for some degree d polynomial P Note: to evaluate need to add up 2n values Base case: n=0. Verifier will simply use oracle access to P. For n>0: Let R(X) := Σx2...Σxn P(X,x2,...,xn) Σx1...Σxn P(x1,...,xn) = R(0) + R(1)

Verifier has

  • nly oracle

access to P

12

slide-78
SLIDE 78

Sum-check protocol

To prove: Σx1...Σxn P(x1,...,xn) = K for some degree d polynomial P Note: to evaluate need to add up 2n values Base case: n=0. Verifier will simply use oracle access to P. For n>0: Let R(X) := Σx2...Σxn P(X,x2,...,xn) Σx1...Σxn P(x1,...,xn) = R(0) + R(1) R has only one variable and degree at most d

Verifier has

  • nly oracle

access to P

12

slide-79
SLIDE 79

Sum-check protocol

To prove: Σx1...Σxn P(x1,...,xn) = K for some degree d polynomial P Note: to evaluate need to add up 2n values Base case: n=0. Verifier will simply use oracle access to P. For n>0: Let R(X) := Σx2...Σxn P(X,x2,...,xn) Σx1...Σxn P(x1,...,xn) = R(0) + R(1) R has only one variable and degree at most d

Only Σ, no Π Verifier has

  • nly oracle

access to P

12

slide-80
SLIDE 80

Sum-check protocol

To prove: Σx1...Σxn P(x1,...,xn) = K for some degree d polynomial P Note: to evaluate need to add up 2n values Base case: n=0. Verifier will simply use oracle access to P. For n>0: Let R(X) := Σx2...Σxn P(X,x2,...,xn) Σx1...Σxn P(x1,...,xn) = R(0) + R(1) R has only one variable and degree at most d Prover sends T=R (as d+1 coefficients) to verifier

Only Σ, no Π Verifier has

  • nly oracle

access to P

12

slide-81
SLIDE 81

Sum-check protocol

To prove: Σx1...Σxn P(x1,...,xn) = K for some degree d polynomial P Note: to evaluate need to add up 2n values Base case: n=0. Verifier will simply use oracle access to P. For n>0: Let R(X) := Σx2...Σxn P(X,x2,...,xn) Σx1...Σxn P(x1,...,xn) = R(0) + R(1) R has only one variable and degree at most d Prover sends T=R (as d+1 coefficients) to verifier

Needs degree to be small Only Σ, no Π Verifier has

  • nly oracle

access to P

12

slide-82
SLIDE 82

Sum-check protocol

To prove: Σx1...Σxn P(x1,...,xn) = K for some degree d polynomial P Note: to evaluate need to add up 2n values Base case: n=0. Verifier will simply use oracle access to P. For n>0: Let R(X) := Σx2...Σxn P(X,x2,...,xn) Σx1...Σxn P(x1,...,xn) = R(0) + R(1) R has only one variable and degree at most d Prover sends T=R (as d+1 coefficients) to verifier Verifier checks K = T(0) + T(1). Still needs to check T=R

Needs degree to be small Only Σ, no Π Verifier has

  • nly oracle

access to P

12

slide-83
SLIDE 83

Sum-check protocol

13

slide-84
SLIDE 84

Sum-check protocol

To prove: Σx1...Σxn P(x1,...,xn) = K for some degree d polynomial P

13

slide-85
SLIDE 85

Sum-check protocol

To prove: Σx1...Σxn P(x1,...,xn) = K for some degree d polynomial P Verifier wants to check T(X) = R(X) := Σx2...Σxn P(X,x2,...,xn)

13

slide-86
SLIDE 86

Sum-check protocol

To prove: Σx1...Σxn P(x1,...,xn) = K for some degree d polynomial P Verifier wants to check T(X) = R(X) := Σx2...Σxn P(X,x2,...,xn) Picks random field element a (large enough field)

13

slide-87
SLIDE 87

Sum-check protocol

To prove: Σx1...Σxn P(x1,...,xn) = K for some degree d polynomial P Verifier wants to check T(X) = R(X) := Σx2...Σxn P(X,x2,...,xn) Picks random field element a (large enough field) Asks prover to prove that T(a) = R(a) = Σx2...Σxn P(a,x2,...,xn)

13

slide-88
SLIDE 88

Sum-check protocol

To prove: Σx1...Σxn P(x1,...,xn) = K for some degree d polynomial P Verifier wants to check T(X) = R(X) := Σx2...Σxn P(X,x2,...,xn) Picks random field element a (large enough field) Asks prover to prove that T(a) = R(a) = Σx2...Σxn P(a,x2,...,xn) Recurse on P1(x2,...,xn) = P(a,x2,...,xn) of one variable less

13

slide-89
SLIDE 89

Sum-check protocol

To prove: Σx1...Σxn P(x1,...,xn) = K for some degree d polynomial P Verifier wants to check T(X) = R(X) := Σx2...Σxn P(X,x2,...,xn) Picks random field element a (large enough field) Asks prover to prove that T(a) = R(a) = Σx2...Σxn P(a,x2,...,xn) Recurse on P1(x2,...,xn) = P(a,x2,...,xn) of one variable less i.e., Recurse to prove Σx2...Σxn P1(x2,...,xn) = T(a)

13

slide-90
SLIDE 90

Sum-check protocol

To prove: Σx1...Σxn P(x1,...,xn) = K for some degree d polynomial P Verifier wants to check T(X) = R(X) := Σx2...Σxn P(X,x2,...,xn) Picks random field element a (large enough field) Asks prover to prove that T(a) = R(a) = Σx2...Σxn P(a,x2,...,xn) Recurse on P1(x2,...,xn) = P(a,x2,...,xn) of one variable less i.e., Recurse to prove Σx2...Σxn P1(x2,...,xn) = T(a) Note: P1 has degree at most d; verifier has oracle access to P1 (as it knows a, and has oracle access to P)

13

slide-91
SLIDE 91

Sum-check protocol

14

slide-92
SLIDE 92

Sum-check protocol

Why does sum-check protocol work?

14

slide-93
SLIDE 93

Sum-check protocol

Why does sum-check protocol work? Instead of checking T(X) = R(X), simply checks (recursively) if T(a)=R(a) for a single random a in the field

14

slide-94
SLIDE 94

Sum-check protocol

Why does sum-check protocol work? Instead of checking T(X) = R(X), simply checks (recursively) if T(a)=R(a) for a single random a in the field

Can’t afford more than

  • ne check

14

slide-95
SLIDE 95

Sum-check protocol

Why does sum-check protocol work? Instead of checking T(X) = R(X), simply checks (recursively) if T(a)=R(a) for a single random a in the field Completeness is obvious

Can’t afford more than

  • ne check

14

slide-96
SLIDE 96

Sum-check protocol

Why does sum-check protocol work? Instead of checking T(X) = R(X), simply checks (recursively) if T(a)=R(a) for a single random a in the field Completeness is obvious Soundness: Since T(X) and R(X) are of degree d, if T≠R, at most d points where they agree

Can’t afford more than

  • ne check

14

slide-97
SLIDE 97

Sum-check protocol

Why does sum-check protocol work? Instead of checking T(X) = R(X), simply checks (recursively) if T(a)=R(a) for a single random a in the field Completeness is obvious Soundness: Since T(X) and R(X) are of degree d, if T≠R, at most d points where they agree Error (picking a bad a), with probability ≤ d/p, where field is of size p

Can’t afford more than

  • ne check

14

slide-98
SLIDE 98

Sum-check protocol

Why does sum-check protocol work? Instead of checking T(X) = R(X), simply checks (recursively) if T(a)=R(a) for a single random a in the field Completeness is obvious Soundness: Since T(X) and R(X) are of degree d, if T≠R, at most d points where they agree Error (picking a bad a), with probability ≤ d/p, where field is of size p Also possible error in recursive step (despite good a)

Can’t afford more than

  • ne check

14

slide-99
SLIDE 99

Sum-check protocol

Why does sum-check protocol work? Instead of checking T(X) = R(X), simply checks (recursively) if T(a)=R(a) for a single random a in the field Completeness is obvious Soundness: Since T(X) and R(X) are of degree d, if T≠R, at most d points where they agree Error (picking a bad a), with probability ≤ d/p, where field is of size p Also possible error in recursive step (despite good a) At most nd/p if n variables. Can take p exponential.

Can’t afford more than

  • ne check

14

slide-100
SLIDE 100

IP Protocol for TQBF

15

slide-101
SLIDE 101

IP Protocol for TQBF

For a protocol for TQBF: Give a protocol for proving that Q1(x1=0,1) Q2(x2=0,1) ... Qn(xn=0,1) P(x1,...,xn) > 0, where Qi are Σ or Π and P is a multi-linear polynomial

15

slide-102
SLIDE 102

IP Protocol for TQBF

For a protocol for TQBF: Give a protocol for proving that Q1(x1=0,1) Q2(x2=0,1) ... Qn(xn=0,1) P(x1,...,xn) > 0, where Qi are Σ or Π and P is a multi-linear polynomial In fact a protocol to prove: Q1 x1... Qn xn P(x1,...,xn) = K

15

slide-103
SLIDE 103

IP Protocol for TQBF

For a protocol for TQBF: Give a protocol for proving that Q1(x1=0,1) Q2(x2=0,1) ... Qn(xn=0,1) P(x1,...,xn) > 0, where Qi are Σ or Π and P is a multi-linear polynomial In fact a protocol to prove: Q1 x1... Qn xn P(x1,...,xn) = K Problem with generalizing sum-check protocol: the univariate poly R(X) := Q2 x2... Qn xn P(X,x2,...,xn) has exponential degree. Verifier can’t read T(X)=R(X)

15

slide-104
SLIDE 104

IP Protocol for TQBF

For a protocol for TQBF: Give a protocol for proving that Q1(x1=0,1) Q2(x2=0,1) ... Qn(xn=0,1) P(x1,...,xn) > 0, where Qi are Σ or Π and P is a multi-linear polynomial In fact a protocol to prove: Q1 x1... Qn xn P(x1,...,xn) = K Problem with generalizing sum-check protocol: the univariate poly R(X) := Q2 x2... Qn xn P(X,x2,...,xn) has exponential degree. Verifier can’t read T(X)=R(X) Instead of T, can work with “linearization” of T

15

slide-105
SLIDE 105

IP Protocol for TQBF

For a protocol for TQBF: Give a protocol for proving that Q1(x1=0,1) Q2(x2=0,1) ... Qn(xn=0,1) P(x1,...,xn) > 0, where Qi are Σ or Π and P is a multi-linear polynomial In fact a protocol to prove: Q1 x1... Qn xn P(x1,...,xn) = K Problem with generalizing sum-check protocol: the univariate poly R(X) := Q2 x2... Qn xn P(X,x2,...,xn) has exponential degree. Verifier can’t read T(X)=R(X) Instead of T, can work with “linearization” of T Prover sends L(X) = ( T(1)-T(0) ) X + T(0)

15

slide-106
SLIDE 106

IP Protocol for TQBF

For a protocol for TQBF: Give a protocol for proving that Q1(x1=0,1) Q2(x2=0,1) ... Qn(xn=0,1) P(x1,...,xn) > 0, where Qi are Σ or Π and P is a multi-linear polynomial In fact a protocol to prove: Q1 x1... Qn xn P(x1,...,xn) = K Problem with generalizing sum-check protocol: the univariate poly R(X) := Q2 x2... Qn xn P(X,x2,...,xn) has exponential degree. Verifier can’t read T(X)=R(X) Instead of T, can work with “linearization” of T Prover sends L(X) = ( T(1)-T(0) ) X + T(0) Verifier picks random a, and asks prover to show R’(a) = L(a)

15

slide-107
SLIDE 107

IP Protocol for TQBF

For a protocol for TQBF: Give a protocol for proving that Q1(x1=0,1) Q2(x2=0,1) ... Qn(xn=0,1) P(x1,...,xn) > 0, where Qi are Σ or Π and P is a multi-linear polynomial In fact a protocol to prove: Q1 x1... Qn xn P(x1,...,xn) = K Problem with generalizing sum-check protocol: the univariate poly R(X) := Q2 x2... Qn xn P(X,x2,...,xn) has exponential degree. Verifier can’t read T(X)=R(X) Instead of T, can work with “linearization” of T Prover sends L(X) = ( T(1)-T(0) ) X + T(0) Verifier picks random a, and asks prover to show R’(a) = L(a)

linearization

  • f R(X)

15

slide-108
SLIDE 108

IP Protocol for TQBF

For a protocol for TQBF: Give a protocol for proving that Q1(x1=0,1) Q2(x2=0,1) ... Qn(xn=0,1) P(x1,...,xn) > 0, where Qi are Σ or Π and P is a multi-linear polynomial In fact a protocol to prove: Q1 x1... Qn xn P(x1,...,xn) = K Problem with generalizing sum-check protocol: the univariate poly R(X) := Q2 x2... Qn xn P(X,x2,...,xn) has exponential degree. Verifier can’t read T(X)=R(X) Instead of T, can work with “linearization” of T Prover sends L(X) = ( T(1)-T(0) ) X + T(0) Verifier picks random a, and asks prover to show R’(a) = L(a) Verifier checks (as appropriate) L(1).L(0) = K or L(1)+L(0) = K

linearization

  • f R(X)

15

slide-109
SLIDE 109

IP Protocol for TQBF

16

slide-110
SLIDE 110

IP Protocol for TQBF

IP = PSPACE

16

slide-111
SLIDE 111

IP Protocol for TQBF

IP = PSPACE Protocol is public-coin

16

slide-112
SLIDE 112

IP Protocol for TQBF

IP = PSPACE Protocol is public-coin IP = AM[poly] = PSPACE

16

slide-113
SLIDE 113

IP Protocol for TQBF

IP = PSPACE Protocol is public-coin IP = AM[poly] = PSPACE Protocol has perfect completeness

16