## Workshop plan
- Day 1 (Pre requisite Knowledge)
- Introduction to key concepts
- Introduction to polynomials
- Polynomials for error amplification
- Schwartz zippel lemma
- Polynomial identity problem
- Randomness and its role in succinctness
- Types of polynomials
- Polynomial methods
- The Sumcheck protocol
- Applications / Aim of Sumcheck
- Interactive Sumcheck
- Prover logic
- Verifier logic
- Fiat Shamir
- Non Interactive Sumcheck
- Coding workshop Setup
- Installation of the neccesary tools and libraries
- Cloning of the boilerplate repo
- Day 2 (Practical)
- Implementation of the Sumcheck prover
- Writing of the Non interactive sumcheck protocol
- Testing the protocol
## Pratical Feasibility
### What are we including as prebuilt components?
- Multilinear / Univariate polynomial library with the following methods:
- evaluate: evaluates the polynomial at a random input
- partial_evaluate: evaluates the polynomial at some partial input, returns another polynomial
- skip_one_sum_over_boolean_hypercube: utility function to make the sumcheck prover implementation really easy
- Transcript implementation: allows us make sumcheck non-interactive
- Verifier: we'd provide a verifier so participants can verify their prover generates a valid proof.
### The sumcheck prover algorithm using the components above
- construct the polynomial you want to run sumcheck on
- for every variable in the polynomial do the following:
- skip the first variable and sum over the boolean hypercube
- send round polynomial to the verifier (uses the transcript)
- get the verifier challenge (uses the transcript)
- partially evaluate the polynomial at the challenge point
- repeat
### Participants workflow
- clone our `boilerplate` repository
- this will contain all the prebuilt components above, and directions on how to modify it
- implement the sumcheck prover algorithm
- verify valid proof generation using the `verifier`
### How do we ensure feasibility?
- I and Francis will do the end to end `participant workflow` process ourselves in less than 15 minutes, only then will we be satisfied.