pub struct UairSignature { /* private fields */ }Expand description
The signature of a UAIR.
Public columns precede witness columns within each type group.
The flattened trace ordering is:
[pub_bin, wit_bin, pub_arb, wit_arb, pub_int, wit_int].
Implementations§
Source§impl UairSignature
impl UairSignature
Sourcepub fn new(
total_cols: TotalColumnLayout,
public_cols: PublicColumnLayout,
shifts: Vec<ShiftSpec>,
lookup_specs: Vec<LookupColumnSpec>,
) -> Self
pub fn new( total_cols: TotalColumnLayout, public_cols: PublicColumnLayout, shifts: Vec<ShiftSpec>, lookup_specs: Vec<LookupColumnSpec>, ) -> Self
Create a new signature, sorting shifts by source_col.
pub fn lookup_specs(&self) -> &[LookupColumnSpec]
pub fn total_cols(&self) -> &TotalColumnLayout
pub fn public_cols(&self) -> &PublicColumnLayout
Sourcepub fn witness_cols(&self) -> &WitnessColumnLayout
pub fn witness_cols(&self) -> &WitnessColumnLayout
Witness column counts (total minus public) per type.
pub fn shifts(&self) -> &[ShiftSpec]
Sourcepub fn down_cols(&self) -> &VirtualColumnLayout
pub fn down_cols(&self) -> &VirtualColumnLayout
Column-type layout of the shifted (down) row.
Sourcepub fn dummy_rows<T: Clone>(&self, val: T) -> (Vec<T>, Vec<T>)
pub fn dummy_rows<T: Clone>(&self, val: T) -> (Vec<T>, Vec<T>)
Build correctly-sized dummy up and down TraceRows for static
analysis (constraint counting, degree counting, scalar/ideal
collection).
Trait Implementations§
Source§impl Clone for UairSignature
impl Clone for UairSignature
Source§fn clone(&self) -> UairSignature
fn clone(&self) -> UairSignature
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for UairSignature
impl RefUnwindSafe for UairSignature
impl Send for UairSignature
impl Sync for UairSignature
impl Unpin for UairSignature
impl UnsafeUnpin for UairSignature
impl UnwindSafe for UairSignature
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more