streaming verification of graph properties
play

Streaming Verification of Graph Properties Amirali Abdullah 1 Samira - PowerPoint PPT Presentation

Streaming Verification of Graph Properties Amirali Abdullah 1 Samira Daruki 2 Chitradeep Dutta Roy 2 Suresh Venkatasubramanian 2 December 11, 2016 1 Qualtrics 2 University of Utah 1 Streaming Verification of Graph Properties Amirali Abdullah 1


  1. Streaming Verification of Graph Properties Amirali Abdullah 1 Samira Daruki 2 Chitradeep Dutta Roy 2 Suresh Venkatasubramanian 2 December 11, 2016 1 Qualtrics 2 University of Utah 1

  2. Streaming Verification of Graph Properties Amirali Abdullah 1 Samira Daruki 2 Chitradeep Dutta Roy 2 Suresh Venkatasubramanian 2 December 11, 2016 1 Qualtrics 2 University of Utah 1

  3. Introduction ◮ Too much data to store ◮ Cheap, powerful cloud. Computation is commodity ◮ Cloud can not be trusted, need guarantees on answers 2

  4. Outsourced Computation Service Q A Why Client 3

  5. Prior Work IPs for Muggles [GKR,KRR,others] - weaker verifiers and provers - cryptographic assumptions - verifier TIME key bottleneck 4

  6. Prior Work IPs for Muggles [GKR,KRR,others] Rational IPs [AM,CMS,others] - weaker verifiers and provers - Prover is rational, not adversarial - cryptographic assumptions - design a "payment" scheme to - verifier TIME key bottleneck convince prover that honesty is optimal 4

  7. Prior Work IPs for Muggles [GKR,KRR,others] Rational IPs [AM,CMS,others] - weaker verifiers and provers - Prover is rational, not adversarial - cryptographic assumptions - design a "payment" scheme to - verifier TIME key bottleneck convince prover that honesty is optimal Proofs of proximity [RVW,GR] - sublinear TIME verifier - sublinear communication 4

  8. Prior Work IPs for Muggles [GKR,KRR,others] Rational IPs [AM,CMS,others] - weaker verifiers and provers - Prover is rational, not adversarial - cryptographic assumptions - design a "payment" scheme to - verifier TIME key bottleneck convince prover that honesty is optimal Proofs of proximity [RVW,GR] Streaming IPs [CTY,others] - sublinear TIME verifier - STREAMING verifier - sublinear communication - sublinear communication 4

  9. Streaming Interactive Proof: Our model Prover(P) and Verifier(V) both read the stream 5

  10. Streaming Interactive Proof: Our model V can store small amount of information, P has unbounded computational resources and access to the data 5

  11. Streaming Interactive Proof: Our model P and V interact by exchanging messages 5

  12. Cost Structure of SIP A k − round ( s , t ) SIP means ◮ V has O ( s ) local space and is randomized ◮ P and V can exchange k messages in each direction ◮ The total communication cost O ( t ) ◮ Perfect completeness : If the answer is correct Pr [V accepts] = 1 ◮ Statistical soundness : If the answer is wrong Pr [V accepts] ≤ ǫ 6

  13. Previous works in SIP ◮ Annotated streams(essentially one-message SIP) [CCM09, CCTM13] : prover helps verifier as the input stream is seen by both ◮ SIP [CTY11]: first introduced, protocols for index, range-query, dictionary, frequency moments etc. ◮ Constant-round SIP [CCMTV15]: near neighbors, classification, median finding and complexity charaterization ◮ Constant and log n -round SIPs [DTV15]: clustering, shape fitting, eigenvector verification 7

  14. Summary of our results All the protocols need log n rounds, but can be modified to constant rounds with small increase in communication Problem Verifier Space Communication log 2 n Matching (all flavor) ( certificate + log n ) log n log 2 n Connectivity n log n log 2 n n log 2 n (1 + ǫ ) MST ǫ log 2 n ( 3 n log 2 n 2 + ǫ ) metric TSP ǫ Table 1: We consider the graph G has | V | = n and w e ∈ [ n c ] for some constant c 8

  15. Description of the stream ◮ τ = ( i , δ i , j ) where i ∈ [ u ], δ ∈ { +1 , − 1 } ◮ τ conceptually represents a = ( a 1 , . . . , a u ) where j δ i , j ∈ [ u c ] for some constant c . a i = � ◮ For unweighted graph G = ( V , E ), τ = { e , δ } where e = ( x , y ) s.t. x < y , x , y ∈ V , e ∈ E 9

  16. Description of the stream ◮ τ = ( i , δ i , j ) where i ∈ [ u ], δ ∈ { +1 , − 1 } ◮ τ conceptually represents a = ( a 1 , . . . , a u ) where j δ i , j ∈ [ u c ] for some constant c . a i = � ◮ For unweighted graph G = ( V , E ), τ = { e , δ } where e = ( x , y ) s.t. x < y , x , y ∈ V , e ∈ E 9

  17. Description of the stream ◮ τ = ( i , δ i , j ) where i ∈ [ u ], δ ∈ { +1 , − 1 } ◮ τ conceptually represents a = ( a 1 , . . . , a u ) where j δ i , j ∈ [ u c ] for some constant c . a i = � ◮ For unweighted graph G = ( V , E ), τ = { e , δ } where e = ( x , y ) s.t. x < y , x , y ∈ V , e ∈ E 9

  18. Description of the stream ◮ τ = ( i , δ i , j ) where i ∈ [ u ], δ ∈ { +1 , − 1 } ◮ τ conceptually represents a = ( a 1 , . . . , a u ) where j δ i , j ∈ [ u c ] for some constant c . a i = � ◮ For unweighted graph G = ( V , E ), τ = { e , δ } where e = ( x , y ) s.t. x < y , x , y ∈ V , e ∈ E 9

  19. Description of the stream ◮ τ = ( i , δ i , j ) where i ∈ [ u ], δ ∈ { +1 , − 1 } ◮ τ conceptually represents a = ( a 1 , . . . , a u ) where j δ i , j ∈ [ u c ] for some constant c . a i = � ◮ For unweighted graph G = ( V , E ), τ = { e , δ } where e = ( x , y ) s.t. x < y , x , y ∈ V , e ∈ E 9

  20. Description of the stream ◮ τ = ( i , δ i , j ) where i ∈ [ u ], δ ∈ { +1 , − 1 } ◮ τ conceptually represents a = ( a 1 , . . . , a u ) where j δ i , j ∈ [ u c ] for some constant c . a i = � ◮ For unweighted graph G = ( V , E ), τ = { e , δ } where e = ( x , y ) s.t. x < y , x , y ∈ V , e ∈ E 9

  21. Tools

  22. Low Degree Extension of a function ◮ Low degree extension : The vector a of length u = [ l ] d is conceptually represented by a d -variate polynomial f a : [ p ] d → Z p over prime field Z p , where p ≥ u 10

  23. Low Degree Extension of a function ◮ Low degree extension : The vector a of length u = [ l ] d is conceptually represented by a d -variate polynomial f a : [ p ] d → Z p over prime field Z p , where p ≥ u ◮ f a ( x ) = a x for x ∈ [ l ] d 10

  24. Low Degree Extension of a function ◮ Low degree extension : The vector a of length u = [ l ] d is conceptually represented by a d -variate polynomial f a : [ p ] d → Z p over prime field Z p , where p ≥ u ◮ f a ( x ) = a x for x ∈ [ l ] d ◮ f a is linear in terms of elements of a and therefore easy to evaluate at a random point in stream 10

  25. Low Degree Extension of a function ◮ Low degree extension : The vector a of length u = [ l ] d is conceptually represented by a d -variate polynomial f a : [ p ] d → Z p over prime field Z p , where p ≥ u ◮ f a ( x ) = a x for x ∈ [ l ] d ◮ f a is linear in terms of elements of a and therefore easy to evaluate at a random point in stream Lemma (Schwartz Zippel) Let f , g be two polynomials of degree d over field F , then for a d random input r, Pr [ f ( r ) = g ( r )] ≤ | F | 10

  26. Connection between Results 11

  27. Connection between Results 11

  28. Connection between Results 11

  29. Connection between Results 11

  30. Connection between Results 11

  31. Connection between Results 11

  32. Connection between Results 11

  33. Protocols

  34. Subset Protocol Given S , E ⊂ [ u ], E being input and S being owned by P, ? S ⊆ E Protocol 12

  35. Subset Protocol Given S , E ⊂ [ u ], E being input and S being owned by P, ? S ⊆ E Protocol ◮ V updates a vector a for each element in E by +1 12

  36. Subset Protocol Given S , E ⊂ [ u ], E being input and S being owned by P, ? S ⊆ E Protocol ◮ V updates a vector a for each element in E by +1 ◮ V updates a again for each element in S by -1 12

  37. Subset Protocol Given S , E ⊂ [ u ], E being input and S being owned by P, ? S ⊆ E Protocol ◮ V updates a vector a for each element in E by +1 ◮ V updates a again for each element in S by -1 ◮ V verifies F − 1 − 1 ( a ) = 0 12

  38. Subset Protocol Given S , E ⊂ [ u ], E being input and S being owned by P, ? S ⊆ E Protocol ◮ V updates a vector a for each element in E by +1 ◮ V updates a again for each element in S by -1 ◮ V verifies F − 1 − 1 ( a ) = 0 Costs log u rounds (log 2 u , ( | S | + log u ) log u ) 12

  39. Triangle Counting Given a graph of n nodes as a stream of edges consisting tuples ( i , j , δ ) where i < j , find the number of cliques of size 3. 13

  40. Triangle Counting Given a graph of n nodes as a stream of edges consisting tuples ( i , j , δ ) where i < j , find the number of cliques of size 3. Protocol ◮ V updates a vector a ∈ Z n 3 at locations ( i , ∗ , j ), ( ∗ , i , j ), ( i , j , ∗ ) by δ for every tuple ( i , j , δ ) in stream. 13

  41. Triangle Counting Given a graph of n nodes as a stream of edges consisting tuples ( i , j , δ ) where i < j , find the number of cliques of size 3. Protocol ◮ V updates a vector a ∈ Z n 3 at locations ( i , ∗ , j ), ( ∗ , i , j ), ( i , j , ∗ ) by δ for every tuple ( i , j , δ ) in stream. ◮ P sends a claimed answer c ∗ 13

  42. Triangle Counting Given a graph of n nodes as a stream of edges consisting tuples ( i , j , δ ) where i < j , find the number of cliques of size 3. Protocol ◮ V updates a vector a ∈ Z n 3 at locations ( i , ∗ , j ), ( ∗ , i , j ), ( i , j , ∗ ) by δ for every tuple ( i , j , δ ) in stream. ◮ P sends a claimed answer c ∗ 3 ( a ) = c ∗ . Only a [( i , j , k )] will be 3 for ◮ V checks to verify F − 1 a triangle with vertices i , j , k where i < j < k . 13

Recommend


More recommend