by#JustinThaler A protocol for evaluating at any given point where for two matrices and . In contrast to Freivald’s algorithm, it does not need to send the result matrix , which requires communication.

Key insight:

  • If and is multilinear, so is
  • The multilinear extension of is unique Apply sum-check protocol to

Runtime Analysis

Verifier runtime: Prover runtime:

  • To specify each polynomial , can send , , and
  • 3 implementation with increased efficiency:
    • Method 1: By caching terms of the Lagrange basis polynomials, can be evaluated in time. It needs to be evaluated at points in round , which leads to an runtime
    • Method 2:
      • In each round , each term in the sum has the structure: with
      • Because the value are binary, each entry of the input matrices only contributes to 3 such terms
      • Can compute all terms with one pass over the matrices ()
      • Total runtime
    • Method 3: Shares work across rounds

Applications

  • Super-efficient IP for counting triangles:
    • Apply the sum-check protocol to
    • At the end of the protocol, the verifier needs to compute and Reducing Multiple Evaluations to One
    • can be computed unaided, for , it can invoke the matrix multiplication protocol
  • Super-efficient IP for matrix powers:
    • Goal compute , where is a power of
    • applications of the matrix multiplication IP, reducing multiple evaluations to 1 after each step
  • In General, can be used in Combination with GKR as a subroutine, e.g. do prove graph diameters