Appearance
Recap and First Protocol โ
We now have the tools to define a preliminary validation protocol for computing the squared 4th Fibonacci number. Here's an outline of each party's steps:
1. Setup โ
- (Both) Fix a working field
and note that we will interpolate polynomials of degree . - (Both) Compute selector polynomials
corresponding to this circuit.
2. Prover Computation โ
(Prover
) Computes the 4th Fibonacci number squared by forming a table of intermediate values, then interpolates them as 3rd-degree polynomials: as well as selectors
. (Prover
) Computes as well as the quotient polynomial
satisfying (Prover
) Similarly constructs along with their quotient polynomials
using
for the domain .
3. Prover โ Verifier Communication โ
- (Prover
) Sends the polynomials to the Validator .
4. Verifier Checks โ
(Verifier
) Checks the base conditions: (Verifier
) Computes and verifies That is,
is indeed divisible by . (Verifier
) Checks the recursive constraints: (Verifier
) Checks the square gate constraints: (Verifier
) If all checks pass, the Verifier concludes
This protocol is correct but seems quite inefficient: instead of doing only 3 additions and one multiplication, we end up performing polynomial multiplications of polynomials of degree 3 over a very large prime field