IP=PSPACE Nikhil Srivastava CPSC 468/568. Outline IP Warmup: coNP  IP by arithmetization PSPACE (wrong) attempt at PSPACE  IP (revised) PSPACE  IP.

Slides:



Advertisements
Similar presentations
Logical Abstract Interpretation Sumit Gulwani Microsoft Research, Redmond.
Advertisements

Lower Bounds for Non-Black-Box Zero Knowledge Boaz Barak (IAS*) Yehuda Lindell (IBM) Salil Vadhan (Harvard) *Work done while in Weizmann Institute. Short.
Sublinear Algorithms … Lecture 23: April 20.
Strict Polynomial-Time in Simulation and Extraction Boaz Barak & Yehuda Lindell.
COMPLEXITY THEORY CSci 5403 LECTURE VII: DIAGONALIZATION.
Complexity Theory Lecture 6
Resource-Bounded Computation
Complexity Theory Lecture 8
Quantum Information and the PCP Theorem Ran Raz Weizmann Institute.
Based on Powerpoint slides by Giorgi Japaridze, Villanova University Space Complexity and Interactive Proof Systems Sections 8.0, 8.1, 8.2, 8.3, 10.4.
Complexity Theory Lecture 9 Lecturer: Moni Naor. Recap Last week: –Toda’s Theorem: PH  P #P. –Program checking and hardness on the average of the permanent.
Complexity Theory Lecture 3 Lecturer: Moni Naor. Recap Last week: Non deterministic communication complexity Probabilistic communication complexity Their.
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
Gillat Kol joint work with Ran Raz Competing Provers Protocols for Circuit Evaluation.
1 Space Complexity. 2 Def: Let M be a deterministic Turing Machine that halts on all inputs. Space Complexity of M is the function f:N  N, where f(n)
CSCI 4325 / 6339 Theory of Computation Zhixiang Chen.
Dana Moshkovitz. Back to NP L  NP iff members have short, efficiently checkable, certificates of membership. Is  satisfiable?  x 1 = truex 11 = true.
Alternation Alternation: generalizes non-determinism, where each state is either “existential” or “universal”: Old: existential states New: universal states.
Randomized Algorithms Kyomin Jung KAIST Applied Algorithm Lab Jan 12, WSAC
1 Slides by Dana Moshkovitz. Adapted from Oded Goldreich’s course lecture notes.
Complexity 26-1 Complexity Andrei Bulatov Interactive Proofs.
Complexity 18-1 Complexity Andrei Bulatov Probabilistic Algorithms.
March 2, 2015CS21 Lecture 231 CS21 Decidability and Tractability Lecture 23 March 2, 2015.
CS151 Complexity Theory Lecture 7 April 20, 2004.
1 Adapted from Oded Goldreich’s course lecture notes.
CS151 Complexity Theory Lecture 12 May 6, CS151 Lecture 122 Outline The Polynomial-Time Hierarachy (PH) Complete problems for classes in PH, PSPACE.
CS151 Complexity Theory Lecture 7 April 20, 2015.
Zero-Knowledge Proof System Slides by Ouzy Hadad, Yair Gazelle & Gil Ben-Artzi Adapted from Ely Porat course lecture notes.
Complexity 19-1 Complexity Andrei Bulatov More Probabilistic Algorithms.
–Def: A language L is in BPP c,s ( 0  s(n)  c(n)  1,  n  N) if there exists a probabilistic poly-time TM M s.t. : 1.  w  L, Pr[M accepts w]  c(|w|),
CS151 Complexity Theory Lecture 13 May 11, CS151 Lecture 132 Outline Natural complete problems for PH and PSPACE proof systems interactive proofs.
Zero Knowledge Proofs. Interactive proof An Interactive Proof System for a language L is a two-party game between a verifier and a prover that interact.
CS151 Complexity Theory Lecture 15 May 18, CS151 Lecture 152 Outline IP = PSPACE Arthur-Merlin games –classes MA, AM Optimization, Approximation,
Complexity ©D. Moshkovitz 1 And Randomized Computations The Polynomial Hierarchy.
DANSS Colloquium By Prof. Danny Dolev Presented by Rica Gonen
PSPACE  IP Proshanto Mukherji CSC 486 April 23, 2001.
Sedgewick & Wayne (2004); Chazelle (2005) Sedgewick & Wayne (2004); Chazelle (2005)
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
PSPACE-Completeness Section 8.3 Giorgi Japaridze Theory of Computability.
Definition: Let M be a deterministic Turing Machine that halts on all inputs. Space Complexity of M is the function f:N  N, where f(n) is the maximum.
CS151 Complexity Theory Lecture 13 May 11, Outline proof systems interactive proofs and their power Arthur-Merlin games.
1 Interactive Proofs proof systems interactive proofs and their power Arthur-Merlin games.
Interactive proof systems Section 10.4 Giorgi Japaridze Theory of Computability.
Zero-knowledge proof protocols 1 CHAPTER 12: Zero-knowledge proof protocols One of the most important, and at the same time very counterintuitive, primitives.
Fall 2013 CMU CS Computational Complexity Lecture 7 Alternating Quantifiers, PH, PSPACE. These slides are mostly a resequencing of Chris Umans’
Fall 2013 CMU CS Computational Complexity Lectures 8-9 Randomness, communication, complexity of unique solutions These slides are mostly a resequencing.
Randomization Carmella Kroitoru Seminar on Communication Complexity.
A Problem That Is Complete for PSPACE (Polynomial Space) BY TEJA SUDHA GARIGANTI.
Probabilistic verification Mario Szegedy, Rutgers www/cs.rutgers.edu/~szegedy/07540 Lecture 1.
Honest-Verifier Statistical Zero-Knowledge Equals General Statistical Zero-Knowledge Oded Goldreich (Weizmann) Amit Sahai (MIT) Salil Vadhan (MIT)
Alternation Section 10.3 Giorgi Japaridze Theory of Computability.
Complexity 24-1 Complexity Andrei Bulatov Interactive Proofs.
Space Complexity. Reminder: P, NP classes P is the class of problems that can be solved with algorithms that runs in polynomial time NP is the class of.
Theory of Computational Complexity Yuji Ishikawa Avis lab. M1.
Complexity 27-1 Complexity Andrei Bulatov Interactive Proofs (continued)
Topic 36: Zero-Knowledge Proofs
Probabilistic Algorithms
Zero Knowledge Anupam Datta CMU Fall 2017
CS151 Complexity Theory Lecture 13 May 15, 2017.
CS21 Decidability and Tractability
Interactive Proofs Adapted from Oded Goldreich’s course lecture notes.
Interactive Proofs Adapted from Oded Goldreich’s course lecture notes.
Interactive Proofs Adapted from Oded Goldreich’s course lecture notes.
CS21 Decidability and Tractability
CS21 Decidability and Tractability
CS21 Decidability and Tractability
CS151 Complexity Theory Lecture 7 April 23, 2019.
Instructor: Aaron Roth
Intro to Theory of Computation
Interactive Proofs Adapted from Oded Goldreich’s course lecture notes.
Presentation transcript:

IP=PSPACE Nikhil Srivastava CPSC 468/568

Outline IP Warmup: coNP  IP by arithmetization PSPACE (wrong) attempt at PSPACE  IP (revised) PSPACE  IP IP  PSPACE

IP NP:x  L iff  y s.t. V(x,y)=1, V poly. TM IP: 2-player game between prover P (computationally unbounded) verifier V (probabilistic poly. time) If x  L,  P Pr[V accepts]≥ 2/3 ( completeness) If x  L,  P Pr[V accepts]≤1/3 (soundness) PV x

Warmup: coNP  IP UNSAT = {  :  x 1 x 2 …x n  (x 1,x 2,..,x n )} Arithmetization, Ar:{formulas}  F p [x 1..x n ]  x   (1-x) x  y  x  y x  y  x+y Ex: Ar[x 1  (  x 1  x 2 )] = x 1  ((1-x 1 )+x 2 )  (x 1 …x n )=0 iff Ar  (x 1 …x n )=0 for x 1 …x n  {0,1}

Arithmetization and Quantifiers Properties: Arithmetize  x 1  (x 1 ) as  x 1  {0,1} h(x 1 )  is unsatisfiable iff q=  x1  {0,1}  x2  {0,1} …  xn  {0,1} h(x 1 …x n )=0 deg(h)≤m

Protocol for UNSAT P V prime p check p prime, big enough

check q 1 (0)+q 1 (1)=0 pick r 1  F p check q 2 (0)+q 2 (1)=q 1 (r 1 ) pick r 2  F p check q n (0)+q n (1)=q n-1 (r n-1 ) check h(r 1 ….r n )=q n (r n ) Protocol for UNSAT q 1 (x) :=  x2,x3…xn  {0,1} h(x,x 2,…,x n ) q 2 (x) :=  x3…xn  {0,1} h(r 1,x,x 3,…,x n ) q 3 (x) :=  x4…xn  {0,1} h(r 1,r 2,x,…,x n ) q n (x):= h(r 1,r 2,…r n-1,x) P V q1q1 r1r1 q2q2 r2r2 In general, the prover tries to convince the verifier that: q i (r)=q i+1 (0)+q +1 (1) qnqn

check q 1 (0)+q 1 (1)=0 pick r 1  F p check q 2 (0)+q 2 (1)=q 1 (r 1 ) pick r 2  F p check q n (0)+q n (1)=q n-1 (r n-1 ) check h(r 1 ….r n )=q n (r n ) Completeness:  UNSAT,q=0 q 1 (x) :=  x2,x3…xn  {0,1} h(x,x 2,…,x n ) q 2 (x) :=  x3…xn  {0,1} h(r 1,x,x 3,…,x n ) q 3 (x) :=  x4…xn  {0,1} h(r 1,r 2,x,…,x n ) q n (x):= h(r 1,r 2,…r n-1,x) P V q1q1 r1r1 q2q2 r2r2 ACCEPT qnqn

check q’ 1 (0)+q’ 1 (1)=0 Soundness:  UNSAT,q>0 q 1 (x) :=  x2,x3…xn  {0,1} h(x,x 2,…,x n ) must send q’ 1  q 1 P V q’ 1

check q’ 1 (0)+q’ 1 (1)=0 pick r 1  F p check q’ 2 (0)+q’ 2 (1)=q’ 1 (r 1 ) Soundness:  UNSAT,q>0 q 1 (x) :=  x2,x3…xn  {0,1} h(x,x 2,…,x n ) send q’ 1  q 1 q 2 (x) :=  x3…xn  {0,1} h(r 1,x,x 3,…,x n ) Pr[q’ 1 (r 1 ) = q 1 (r 1 )]  ≤m/p -> Yay! Send true q 2 ’=q 2 Pr[q’ 1 (r 1 )  q 1 (r 1 )]  1-m/p -> Must lie again…, send q 2 ’  q 2 P V q’ 1 r1r1 q’ 2

check q’ 1 (0)+q’ 1 (1)=0 pick r 1  F p check q’ 2 (0)+q’ 2 (1)=q’ 1 (r 1 ) pick r 2  F p Soundness:  UNSAT,q>0 q 1 (x) :=  x2,x3…xn  {0,1} h(x,x 2,…,x n ) send q’ 1  q 1 q 2 (x) :=  x3…xn  {0,1} h(r 1,x,x 3,…,x n ) Pr[send q’ 2 =q 2 ]≤m/p, else send q’ 2  q 2 q 3 (x) :=  x4…xn  {0,1} h(r 1,r 2,x,…,x n ) Pr[q’ 2 (r 2 ) = q 2 (r 2 )]  ≤m/p -> Yay! Send true q 3 ’=q 3 Pr[q’ 2 (r 2 )  q 2 (r 2 )]  1-m/p -> Must lie again…, send q 3 ’  q 3 P V q’ 1 r1r1 q’ 2 r2r2

check q’ 1 (0)+q’ 1 (1)=0 pick r 1  F p check q’ 2 (0)+q’ 2 (1)=q’ 1 (r 1 ) pick r 2  F p check q’ n (0)+q’ n (1)=q’ n-1 (r n-1 ) check h(r 1 ….r n )=q’ n (r n ) Soundness:  UNSAT,q>0 q 1 (x) :=  x2,x3…xn  {0,1} h(x,x 2,…,x n ) send q’ 1  q 1 q 2 (x) :=  x3…xn  {0,1} h(r 1,x,x 3,…,x n ) Pr[send q’ 2 =q 2 ]≤m/p, else send q’ 2  q 2 q 3 (x) :=  x4…xn  {0,1} h(r 1,r 2,x,…,x n ) Pr[send q’ 3 =q 3 ]≤m/p, else send q’ 3  q 3 q n (x):= h(r 1,r 2,…r n-1,x) Pr[send q’ n =q n ]≤m/p, else send q’ n  q n P V q’ 1 r1r1 q’ 2 r2r2 q’ n

check q’ 1 (0)+q’ 1 (1)=0 pick r 1  F p check q’ 2 (0)+q’ 2 (1)=q’ 1 (r 1 ) pick r 2  F p check q’ n (0)+q’ n (1)=q’ n-1 (r n-1 ) check h(r 1 ….r n )=q’ n (r n ) Soundness:  UNSAT,q>0 q 1 (x) :=  x2,x3…xn  {0,1} h(x,x 2,…,x n ) send q’ 1  q 1 q 2 (x) :=  x3…xn  {0,1} h(r 1,x,x 3,…,x n ) Pr[send q’ 2 =q 2 ]≤m/p, else send q’ 2  q 2 q 3 (x) :=  x4…xn  {0,1} h(r 1,r 2,x,…,x n ) Pr[send q’ 3 =q 3 ]≤m/p, else send q’ 3  q 3 q n (x):= h(r 1,r 2,…r n-1,x) Pr[send q’ n =q n ]≤m/p, else send q’ n  q n P V q’ 1 r1r1 q’ 2 r2r2 q’ n Pr[h(r 1 ….r n )=q n (r n )=q’ n (r n )]≤m/p  Pr≤mn/p

check q’ 1 (0)+q’ 1 (1)=0 pick r 1  F p check q’ 2 (0)+q’ 2 (1)=q’ 1 (r 1 ) pick r 2  F p check q’ n (0)+q’ n (1)=q’ n-1 (r n-1 ) check h(r 1 ….r n )=q’ n (r n ) Soundness:  UNSAT,q>0 q 1 (x) :=  x2,x3…xn  {0,1} h(x,x 2,…,x n ) send q’ 1  q 1 q 2 (x) :=  x3…xn  {0,1} h(r 1,x,x 3,…,x n ) Pr[send q’ 2 =q 2 ]≤m/p, else send q’ 2  q 2 q 3 (x) :=  x4…xn  {0,1} h(r 1,r 2,x,…,x n ) Pr[send q’ 3 =q 3 ]≤m/p, else send q’ 3  q 3 q n (x):= h(r 1,r 2,…r n-1,x) Pr[send q’ n =q n ]≤m/p, else send q’ n  q n P V q’ 1 r1r1 q’ 2 r2r2 q’ n Pr[h(r 1 ….r n )=q n (r n )=q’ n (r n )]≤m/p

check q’ 1 (0)+q’ 1 (1)=0 pick r 1  F p check q’ 2 (0)+q’ 2 (1)=q’ 1 (r 1 ) pick r 2  F p check q’ n (0)+q’ n (1)=q’ n-1 (r n-1 ) check h(r 1 ….r n )=q’ n (r n ) Soundness:  UNSAT,q>0 q 1 (x) :=  x2,x3…xn  {0,1} h(x,x 2,…,x n ) send q’ 1  q 1 q 2 (x) :=  x3…xn  {0,1} h(r 1,x,x 3,…,x n ) Pr[send q’ 2 =q 2 ]≤m/p, else send q’ 2  q 2 q 3 (x) :=  x4…xn  {0,1} h(r 1,r 2,x,…,x n ) Pr[send q’ 3 =q 3 ]≤m/p, else send q’ 3  q 3 q n (x):= h(r 1,r 2,…r n-1,x) Pr[send q’ n =q n ]≤m/p, else send q’ n  q n P V q’ 1 r1r1 q’ 2 r2r2 q’ n Pr[h(r 1 ….r n )=q n (r n )=q’ n (r n )]≤m/p  Pr≤mn/p

PSPACE PSPACE = {L decidable by poly. space TM} Go, Chess  PSPACE, PH  PSPACE Quantified Boolean Formula:  =  x 1  x 2  x 3 …  x n  (x 1,x 2,…,x n ) TQBF = {true  }

PSPACE  IP, Naïve attempt Use similar arithmetization for QBFs  x   (1-x) x  y  x  y x  y  x+y  x  x  {0,1}  x  x  {0,1} Peel off one  or  at a time, checking q i (0)+q i (1)=q i+1 (r) and q i (0)q i (1)=q i+1 (r) in alternate rounds.

Problem:  doubles degree q=  x 1  {0,1}  x 2  {0,1} …  x n-2  {0,1}  x n-1  {0,1}  x n  {0,1} h(x 1,…,x n ) 2 n/2 (m) 2 n/2 (m) … 4(m) 2(m) 2(m) m

Degree Reduction Operator Rx i U(x 1,…x i,…,x n ) = U with all x i k  x i Formally, Rx i U(x 1,…x i,…,x n ) =x i ·U(x 1 …x i-1,1,x i+1,…x n )+ (1-x i )·U(x 1 …x i-1,0,x i+1,…x n ) Let q=Ex 1 Rx 1 Ax 2 Rx 1 Rx 2 Ex 3 Rx 1 Rx 2 Rx 3 …Ex n Rx 1 Rx 2 …Rx n h(x 1,…,x n ) Let old q (without R)=q o. Then q=0 iff q 0 =0.

PSPACE  IP, revised protocol To verify U(v 1,…v n )=k –Case U=ExS(x,v 1,…,v n-1 ): ask prover for g(x)=S(x,v 1,…v n ). check g(0)+g(1)=k pick random r  F p, send to prover recursively verify S(r,v 1,…v n-1 )=g(r) –Case U=AxS(x,v 1,…,v n-1 ): identical, but test g(0)g(1)=k

PSPACE  IP, revised protocol To verify U(v 1,…v n )=k –Case U=RxS(x,v 1,…,v n-1 ): let g 0 (x) be previous g, r 0 previous r ask prover for g(x)=S(x,v 1,…,v n ) check Rxg(x)[r 0 ]=s 0 [r 0 ] pick random r  F p, send to prover recursively verify S(r,v 1,…v n-1 )=g(r)

Soundness: q=0 In each round, an E|A|R is eliminated Pr[fooling verifier in a round]≤(degree)/p Pr[V accepts]≤(sum of degrees)/p q=Ex 1 Rx 1 Ax 2 Rx 1 Rx 2 Ex 3 Rx 1 Rx 2 Rx 3 …Ex n Rx 1 Rx 2 …Rx n h(x 1,…,x n ) Pr[V accepts]≤(nm+2n 2 )/p≤1/3 for large p ≤malternating 1 and 2

Soundness: q=0 In each round, an E|A|R is eliminated Pr[fooling verifier in a round]≤(degree)/p Pr[V accepts]≤(sum of degrees)/p q=Ex 1 Rx 1 Ax 2 Rx 1 Rx 2 Ex 3 Rx 1 Rx 2 Rx 3 …Ex n Rx 1 Rx 2 …Rx n h(x 1,…,x n ) Pr[V accepts]≤(nm+2n 2 )/p≤1/3 for large p ≤malternating 1 and 2

IP  PSPACE Suppose L  IP, fix protocol. Goal: find M=max P Pr P [V accepts x] If M≤1/3 reject, otherwise accept.

IP  PSPACE Compute P with `optimal strategy’ Assume V uses coin flips r Transcript := q 1,a 1,q 2,a 2 ….q n,a n

IP  PSPACE Define F(q 1,a 1 …q i )= max P Pr[V accepts|q 1,a 1 …q i ]

IP  PSPACE Define F(q 1,a 1 …q i )= max P Pr[V accepts|q 1,a 1 …q i ] Know that: F(q 1,…q n,a n )= 1 if V accepts, 0 otherwise Want: F(q 1 )=max Pr[V accepts]=M

IP  PSPACE F(q 1,a 1,…q i )=max ai F(q 1,a 1,…q i,a i ) F(q 1,…a i )=  qi+1 Pr[q i+1 |q 1 …a i ]F(q 1,…a i,q i+1 )

IP  PSPACE F(q 1,a 1,…q i )=max ai F(q 1,a 1,…q i,a i ) F(q 1,…a i )=  qi+1 Pr[q i+1 |q 1 …a i ]F(q 1,…a i,q i+1 ) Enumerate 2 |r| coin flip sequences, simulate V Compute recursively

IP  PSPACE F(q 1,a 1,…q i )=max ai F(q 1,a 1,…q i,a i ) F(q 1,…a i )=  qi+1 Pr[q i+1 |q 1 …a i ]F(q 1,…a i,q i+1 ) Enumerate 2 |r| coin flip sequences, simulate V Compute recursively