This document explains how to open multiple polynomials at multiple different points. Ultimately, we use one IPA proof, 1 commitment and 1 scalar. This is the batched setting.
Given
where
The prover starts off by committing to
The prover's job is to now convince the verifier that
We split the evaluation into two parts
- The verifier is able to compute the
. - The prover will compute
and send a proof of it's correctness.
We note that
Now we form two IPA proofs:
The prover now computes
The proof consists of
In this non-aggregated variation, the prover does not need to add
to the transcript.
The Verifier ultimately wants to verify that
The verifier computes
The verifier also computes
The verifier now needs to compute
Hence the verifier can compute
Note however, that they cannot be sure that
This is
Hence
The verifier is able to compute this themselves, and so is able to verify that
We can now call IPA_VERIFY using
Note now that since
We now call IPA_VERIFY using:
*In actuality, it's not
The communication complexity of this protocol is two IPA proofs, 1 scalar and 1 commitment. We can get a better protocol by aggregating things together!
We now present a protocol to aggregate the two IPA proofs together, only requiring one IPA proof.
The prover no longer computes an IPA proof for
Now we form an IPA Proof for
The prover still computes
The proof consists of
In the previous step, the verifier called
We now call IPA_VERIFY using:
With overwhelming probability over
this will only return true iff and opened at are and respectively, from the equation.
The communication complexity of the protocol is 1 IPA Proof, 1 commitment and 1 scalar.
In the KZG document, this is
If we were able to avoid this, then we could save a lot on prover time, as they could evaluate each
However, we do need to do this because the challenge
There may be an argument to say that since
Given two polynomials :
and I generate a completely random variable
. If I want to add together
and Is it enough to generate randomness based on
and alone?
The answer is no because the prover has free reign over
and can change it without affecting