interactive proofs
play

Interactive Proofs Lecture 19 And Beyond 1 So far 2 So far IP - PowerPoint PPT Presentation

Interactive Proofs Lecture 19 And Beyond 1 So far 2 So far IP = PSPACE = AM[poly] 2 So far IP = PSPACE = AM[poly] PSPACE enough to calculate max Pr[yes] 2 So far IP = PSPACE = AM[poly] PSPACE enough to calculate max Pr[yes] AM[poly]


  1. Program Checking and IP PC for L from IP protocols (for L and L c ) L PC must be efficient. Provers may not be Prover Verifier If provers (for L and L c ) are efficient given L-oracle, can construct PC! x P User f(x) or P ! f 8

  2. Program Checking and IP PC for L from IP protocols (for L and L c ) L PC must be efficient. Provers may not be Prover Verifier If provers (for L and L c ) are efficient given L-oracle, can construct PC! x P User f(x) or P ! f 8

  3. Program Checking and IP PC for L from IP protocols (for L and L c ) L PC must be efficient. Provers may not be Prover Verifier If provers (for L and L c ) are efficient given L-oracle, can construct PC! x P User f(x) or P ! f 8

  4. Program Checking and IP PC for L from IP protocols (for L and L c ) L PC must be efficient. Provers may not be Prover Verifier If provers (for L and L c ) are efficient given L-oracle, can construct PC! x Retains completeness and P soundness User f(x) or P ! f 8

  5. Program Checking and IP PC for L from IP protocols (for L and L c ) L PC must be efficient. Provers may not be Prover Verifier If provers (for L and L c ) are efficient given L-oracle, can construct PC! x Retains completeness and P soundness User f(x) or P ! f e.g. For PSPACE-complete L (why?) 8

  6. Program Checking and IP PC for L from IP protocols (for L and L c ) L PC must be efficient. Provers may not be Prover Verifier If provers (for L and L c ) are efficient given L-oracle, can construct PC! x Retains completeness and P soundness User f(x) or P ! f e.g. For PSPACE-complete L (why?) How about Graph Isomorphism? 8

  7. Program Checking for GI 9

  8. Program Checking for GI If P(G 0 ,G 1 ) says G 0 ≡ G 1 , try to extract the isomorphism 9

  9. Program Checking for GI If P(G 0 ,G 1 ) says G 0 ≡ G 1 , try to extract the isomorphism Pick node v 1 in G 0 . For each node u in G 1 attach a marker (say a large clique) to u and v 1 and ask if the new graphs G 0 ’ and G 1 ’ are isomorphic. 9

  10. Program Checking for GI If P(G 0 ,G 1 ) says G 0 ≡ G 1 , try to extract the isomorphism Pick node v 1 in G 0 . For each node u in G 1 attach a marker (say a large clique) to u and v 1 and ask if the new graphs G 0 ’ and G 1 ’ are isomorphic. If P says no for all u in G 1 , report “P bad” 9

  11. Program Checking for GI If P(G 0 ,G 1 ) says G 0 ≡ G 1 , try to extract the isomorphism Pick node v 1 in G 0 . For each node u in G 1 attach a marker (say a large clique) to u and v 1 and ask if the new graphs G 0 ’ and G 1 ’ are isomorphic. If P says no for all u in G 1 , report “P bad” Else remember v 1 � u, and continue with v 2 ; keep old markers and use new larger markers to get G 0 ’’ and G 1 ’’ 9

  12. Program Checking for GI If P(G 0 ,G 1 ) says G 0 ≡ G 1 , try to extract the isomorphism Pick node v 1 in G 0 . For each node u in G 1 attach a marker (say a large clique) to u and v 1 and ask if the new graphs G 0 ’ and G 1 ’ are isomorphic. If P says no for all u in G 1 , report “P bad” Else remember v 1 � u, and continue with v 2 ; keep old markers and use new larger markers to get G 0 ’’ and G 1 ’’ On finding isomorphism, verify and output G 0 ≡ G 1 9

  13. Program Checking for GI If P(G 0 ,G 1 ) says G 0 ≡ G 1 , try to extract the isomorphism Pick node v 1 in G 0 . For each node u in G 1 attach a marker (say a large clique) to u and v 1 and ask if the new graphs G 0 ’ and G 1 ’ are isomorphic. If P says no for all u in G 1 , report “P bad” Else remember v 1 � u, and continue with v 2 ; keep old markers and use new larger markers to get G 0 ’’ and G 1 ’’ On finding isomorphism, verify and output G 0 ≡ G 1 Note: An IP protocol (i.e., NP proof) for GI, where prover is in P GI 9

  14. Program Checking for GI 10

  15. Program Checking for GI If P(G 0 ,G 1 ) says G 0 ≢ G 1 , test P similar to in IP protocol for GNI (coke from can/bottle) 10

  16. Program Checking for GI If P(G 0 ,G 1 ) says G 0 ≢ G 1 , test P similar to in IP protocol for GNI (coke from can/bottle) Let H = π (G b ) where π is a random permutation and b = 0 or 1 at random 10

  17. Program Checking for GI If P(G 0 ,G 1 ) says G 0 ≢ G 1 , test P similar to in IP protocol for GNI (coke from can/bottle) Let H = π (G b ) where π is a random permutation and b = 0 or 1 at random Run P(G 0 ,H) with many such H 10

  18. Program Checking for GI If P(G 0 ,G 1 ) says G 0 ≢ G 1 , test P similar to in IP protocol for GNI (coke from can/bottle) Let H = π (G b ) where π is a random permutation and b = 0 or 1 at random Run P(G 0 ,H) with many such H If P says G 0 ≡ H exactly whenever b=0, output G 0 ≢ G 1 10

  19. Program Checking for GI If P(G 0 ,G 1 ) says G 0 ≢ G 1 , test P similar to in IP protocol for GNI (coke from can/bottle) Let H = π (G b ) where π is a random permutation and b = 0 or 1 at random Run P(G 0 ,H) with many such H If P says G 0 ≡ H exactly whenever b=0, output G 0 ≢ G 1 Else output “Bad P” 10

  20. Program Checking for GI If P(G 0 ,G 1 ) says G 0 ≢ G 1 , test P similar to in IP protocol for GNI (coke from can/bottle) Let H = π (G b ) where π is a random permutation and b = 0 or 1 at random Run P(G 0 ,H) with many such H If P says G 0 ≡ H exactly whenever b=0, output G 0 ≢ G 1 Else output “Bad P” Note: Prover in the IP protocol for GNI is in P GI 10

  21. Multi-Prover Interactive Proofs 11

  22. Multi-Prover Interactive Proofs Interrogate multiple provers separately 11

  23. Multi-Prover Interactive Proofs Interrogate multiple provers separately Provers can’ t talk to each other during the interrogation (but can agree on a strategy a priori) 11

  24. Multi-Prover Interactive Proofs Interrogate multiple provers separately Provers can’ t talk to each other during the interrogation (but can agree on a strategy a priori) Verifier cross-checks answers from the provers 11

  25. Multi-Prover Interactive Proofs Interrogate multiple provers separately Provers can’ t talk to each other during the interrogation (but can agree on a strategy a priori) Verifier cross-checks answers from the provers 2 provers as good as k provers 11

  26. Multi-Prover Interactive Proofs Interrogate multiple provers separately Provers can’ t talk to each other during the interrogation (but can agree on a strategy a priori) Verifier cross-checks answers from the provers 2 provers as good as k provers MIP = NEXP 11

  27. Multi-Prover Interactive Proofs Interrogate multiple provers separately Provers can’ t talk to each other during the interrogation (but can agree on a strategy a priori) Verifier cross-checks answers from the provers 2 provers as good as k provers MIP = NEXP Parallel repetition theorem highly non-trivial! 11

  28. Probabilistically Checkable Proofs (PCPs) 12

  29. Probabilistically Checkable Proofs (PCPs) Prover submits a (very long) written proof 12

  30. Probabilistically Checkable Proofs (PCPs) Prover submits a (very long) written proof Verifier reads some positions (probabilistically chosen) from the proof and decides to accept or reject 12

  31. Probabilistically Checkable Proofs (PCPs) Prover submits a (very long) written proof Verifier reads some positions (probabilistically chosen) from the proof and decides to accept or reject PCP[r,q]: length of proof 2 r , number of queries q 12

  32. Probabilistically Checkable Proofs (PCPs) Prover submits a (very long) written proof Verifier reads some positions (probabilistically chosen) from the proof and decides to accept or reject PCP[r,q]: length of proof 2 r , number of queries q Intuitively, in MIP, the provers cannot change their strategy (because one does not know what the other sees), so must stick to a prior agreed up on strategy 12

  33. Probabilistically Checkable Proofs (PCPs) Prover submits a (very long) written proof Verifier reads some positions (probabilistically chosen) from the proof and decides to accept or reject PCP[r,q]: length of proof 2 r , number of queries q Intuitively, in MIP, the provers cannot change their strategy (because one does not know what the other sees), so must stick to a prior agreed up on strategy Which will be the written proof 12

  34. Probabilistically Checkable Proofs (PCPs) Prover submits a (very long) written proof Verifier reads some positions (probabilistically chosen) from the proof and decides to accept or reject PCP[r,q]: length of proof 2 r , number of queries q Intuitively, in MIP, the provers cannot change their strategy (because one does not know what the other sees), so must stick to a prior agreed up on strategy Which will be the written proof PCP[poly,poly] = MIP = NEXP 12

  35. PCP Theorem 13

  36. PCP Theorem NP = PCP[log,const] 13

  37. PCP Theorem NP = PCP[log,const] PCP is only poly long (just like usual NP certificate) 13

  38. PCP Theorem NP = PCP[log,const] PCP is only poly long (just like usual NP certificate) But verifier reads only constantly many bits! 13

  39. PCP Theorem NP = PCP[log,const] PCP is only poly long (just like usual NP certificate) But verifier reads only constantly many bits! Extensively useful in proving “hardness of approximation” results for optimization problems 13

  40. PCP Theorem NP = PCP[log,const] PCP is only poly long (just like usual NP certificate) But verifier reads only constantly many bits! Extensively useful in proving “hardness of approximation” results for optimization problems Also useful in certain cryptographic protocols 13

  41. Zero-Knowledge Proofs 14

  42. Zero-Knowledge Proofs Interactive Proof for membership in L 14

  43. Zero-Knowledge Proofs Interactive Proof for membership in L Complete and Sound 14

  44. Zero-Knowledge Proofs Interactive Proof for membership in L Complete and Sound ZK Property: Verifier “learns nothing” except that x is in L 14

  45. Zero-Knowledge Proofs Interactive Proof for membership in L Complete and Sound ZK Property: Verifier “learns nothing” except that x is in L 14

  46. Zero-Knowledge Proofs Interactive Proof for membership in L Complete and Sound ZK Property: Verifier “learns nothing” except that x is in L 14

  47. Zero-Knowledge Proofs Interactive Proof for membership in L Complete and Sound ZK Property: Verifier “learns nothing” except that x is in L 14

Recommend


More recommend