proof-systems icon indicating copy to clipboard operation
proof-systems copied to clipboard

JointLookup should not have SingleLookup inside

Open mimoo opened this issue 3 years ago • 4 comments

I think this struct is not correct, as in: there should not be a single lookup inside a jointlookup

pub struct JointLookup<F> {
    pub table_id: usize,
    pub entry: Vec<SingleLookup<F>>,
}

I think this can be written as:

pub struct JointLookup<F> {
    pub table_id: usize,
    /// linear combination of local positions
    pub entry: Vec<(F, LocalPosition)>,
}

mimoo avatar Mar 16 '22 09:03 mimoo

This would actually need to be entry: Vec<Vec<(F, LocalPosition)>>; it's probably clearer to keep the SingleLookup type to avoid the type complexity.

mrmr1993 avatar Mar 16 '22 11:03 mrmr1993

ah yeah, here it is:

pub struct SingleLookup<F> {
    /// Linear combination of local-positions
    pub value: Vec<(F, LocalPosition)>,
}

might be a good idea to do

/// scaling of a witness by a fixed field element.
pub type ScaledWitness = (F, LocalPosition);

/// A single lookup of a linear combination of registers / witness columns
pub struct SingleLookup<F>(Vec<ScaledWitness>);

mimoo avatar Mar 16 '22 19:03 mimoo

Stale issue message

github-actions[bot] avatar May 16 '22 07:05 github-actions[bot]

Stale issue message

github-actions[bot] avatar Jul 25 '22 07:07 github-actions[bot]

Stale issue message

github-actions[bot] avatar Sep 24 '22 07:09 github-actions[bot]