TODO
Compute wire polynomials
Output
Compute permutation polynomial
Output
Compute quotient polynomial
Output
Compute linearisation polynomial
Output
Compute opening proof polynomial
Output
When we want to access adjacent gate, for example
For Dusk Network's implementation as example, they access next gate's
Submit proof
TODO
Why is
liangcc
Why we use
Cited Ariel Gabizon from <a href="https://www.plonk.cafe/t/noob-questions-plonk-paper/73">plonk.cafe #73</a> The rule is that if the poly is opened at
points you need blinding factors; to hide both the commitment (which is an evaluation at a secret point in the exponent, but still to prove zk holds you’ll need this to be totally random, this proof that zk holds is quite similar to existing proofs - e.g. in Marlin, but is a missing hole in the paper right now) and the evaluation points.
Sois opened at points and hence needs blinding factors.
Why bother including
han Guessing it's the reason that verification complexity is polylogarithmic
, because evaluation is linear time.
Why
han Guessing it's because we need to ensure prover is using the
, and as we expected, so we let verifier compute these part.
How to constraint prover to use right
han Guessing it's constrainted by the lack part of
. If prover uses different and , then reconstructed by verifier will not equal to prover's .
Take Dusk Network implementation as an example
They split wire value into base-4, which makes
TODO
TODO
TODO
AND
and XOR
at the same time)TODO