Alice wants to prove: Intuitive approach: Show all computations of each cases in every β†’Not succinct

1. Lagrange Interpolation

Lagrange Interpolation : For with and , there is a unique polynomial of degree less than such that

β†’ In general case, takes via Divide & Conqure + FFT

Let’s make Interpolated polynomials of each variables:

In , we can use the case of . (β†’ via FFT)

We can make each polynomials :

Now, what we gotta prove is :

2. Schwartz-Zippel Lemma

is a non-zero polynomial with total degree over finite field . If are i.i.d. randomly selected from , then

Therefore, it suffices to select random and check : By the way, we don’t want interactions between the prover and verifier. So, the prover gotta give the value with polynomials at once, but the prover may modify the equation which can hold the value even if it is not the identical equation.

The verifier can convince when the prover make the value with the hash of the polynomials. β†’ The probability of cheating with hash value is negligible : Fiat-Shamir heuristic

3. Polynomial Commitment Schemes (PCS)

  • Commit: (binding and hiding, so that the verifier cannot know the exact and prover cannot change the )
  • Prove: Generate proof such that
  • Verify: Verify given .

4. Adding ZK

Adding random points to interpolate on, or adding random multiples of works in PLONKish. It depends on which SNARK system to use.