mina icon indicating copy to clipboard operation
mina copied to clipboard

fix all-zero public input

Open o1-david opened this issue 2 years ago • 2 comments

o1-david avatar Aug 29 '22 16:08 o1-david

@mrmr1993 can we close this one?

joseandro avatar Sep 12 '22 19:09 joseandro

https://github.com/o1-labs/proof-systems/pull/724

shimkiv avatar Sep 20 '22 19:09 shimkiv

This is still in progress. The current approach is to hard-code the blinding in kimchi and pickles, which has reduced the number of changes needed.

  • The kimchi side -- 'blinding' the public input commitment using h, the vanishing polynomial -- is tested and working as intended.
  • The pickles side is nearly done. The main blocker is that the representation of constants in the code generated by proof-systems master is broken; I am digging into this so that I can resume testing.

I was working on a more general approach, which allowed all commitments to be blinded, by propagating the blinding constants via the expression framework. For example, the polynomial term

blinded_column(x) * (witness[0](x) * witness[1](x) - witness[2](x))

equivalent to

(unblinded_column(x) + h(x)) * (witness[0](x) * witness[1](x) - witness[2](x))

gives an additional blinding factor of

h(x) * (witness[0](x) * witness[1](x) - witness[2](x))

that is currently not accounted for, and which we need to integrate into the opening proof.

I believe that we should still do this -- or switch all rows to be evaluated, as we've discussed recently -- but the reduced version should be ready very soon.

mrmr1993 avatar Oct 11 '22 13:10 mrmr1993