A Working Example for Multivariate Polynomials (with four variables)
Let's say we have an execution trace that is represented as a vector. To demonstrate how it works, we will use a vector of length 16 composed of the evaluations of a polynomial {ππ }π=0,..,15 where ππ is an element of a finite field π½. We can interpolate these values using a multivariate polynomial π(π4,π3, π2,π1).
π0 | πΉ(0,0,0,0) |
---|---|
π1 | πΉ(0,0,0,1) |
π2 | πΉ(0,0,1,0) |
π3 | πΉ(0,0,1,1) |
π4 | πΉ(0,1,0,0) |
π5 | πΉ(0,1,0,1) |
π6 | πΉ(0,1,1,0) |
π7 | πΉ(0,1,1,1) |
π8 | πΉ(1,0,0,0) |
π9 | πΉ(1,0,0,1) |
π10 | πΉ(1,0,1,0) |
π11 | πΉ(1,0,1,1) |
π12 | πΉ(1,1,0,0) |
π13 | πΉ(1,1,0,1) |
π14 | πΉ(1,1,0,1) |
π15 | πΉ(1,1,1,1) |
We can think of the first column of the table as the finite field elements, and the second column as the interpolation process where we use the Lagrange interpolation to interpolate the values.
where the Lagrange base polynomials defined in a binary field are represented by π and 1 β π. The Multi-Linear Extension of a vector is a special polynomial denoted as πΉ(π4πβ, πβ, πβ), which is constructed using these polynomials. In this scenario, the Sumcheck problem is defined as follows:
where πΆ β π½ and the protocol advances through the subsequent stages. In every round, the prover generates and commits to a univariate polynomial (Linear), and then obtains a challenge from the verifier.
The calculation which is made at round 1 shows that the prover computes:
The verifier checks:
Let the verifier send the challenge π1 β π½. Then the polynomial at round 2 would be described as follows.
Let the verifier send the challenge π2 β π½. Then the polynomial at round 3 would be described as follows.
Let the verifier send the challenge π3 β π½. Then the polynomial at round 4 would be described as:
Last updated