David Wong
David Wong
This PR removes vectors from several proof structs (e.g. `ProofEvaluations`). The vectors were initially used because some of the evaluations were "chunked", but we don't do this anymore. Proof: ```...
the [SRS struct](https://github.com/o1-labs/proof-systems/blob/master/poly-commitment/src/srs.rs#L30) has two endo fields `endo_r` and `endo_q`: ```rust pub struct SRS { /// The vector of group elements for committing to polynomials in coefficient form #[serde_as(as =...
ATM I believe we rely on three different domains `d1, d4, d8` where the size of `d8` is 8 times the size of `d1`, and the size of `d4` is...
Looking at [how the lookup selectors are created](https://github.com/o1-labs/marlin/blob/master/kimchi/src/circuits/gate.rs#L246), I see this: ```rust // we go through the circuit for (row, gate) in gates.iter().enumerate().take(n) { use CurrOrNext::*; // we figure out...
The Prover index is split between a `ProverIndex` and a `ConstraintSystem` struct. These two structs should be merged into `ProverIndex` more cleanly.
We use honer all over the place when we compute a polynomial ``` f(x) = c0 + x c1 + x^2 c2 + x^3 c3 ``` as ``` x (...
Where are these values used? They are stored in both indexes as: * `let max_quot_size = PERMUTS * cs.domain.d1.size as usize;`. Seems unused. I believe we used to use this...
Copying this TODO (with a few formatting changes) from the code, which I believe @imeckler wrote Looking-up a tuple `(f_0, f_1, ..., f_{m-1})` in a tuple of tables `(T_0, ...,...
I think this struct is not correct, as in: there should not be a single lookup inside a jointlookup ```rust pub struct JointLookup { pub table_id: usize, pub entry: Vec,...
in the prover: ```rust let public = witness[0][0..index.cs.public].to_vec(); let public_poly = -Evaluations::::from_vec_and_domain( public.clone(), index.cs.domain.d1, ) .interpolate(); ``` From a quick glance I believe this should use the first alpha for...