Skip to main content

Evaluation

Struct Evaluation 

Source
pub struct Evaluation<G>
where G: AffineRepr,
{ pub commitment: PolyComm<G>, pub evaluations: Vec<Vec<G::ScalarField>>, }
Expand description

Contains the evaluation of a polynomial commitment at a set of points.

Fields§

§commitment: PolyComm<G>

The commitment of the polynomial being evaluated.

Note that PolyComm contains a vector of commitments, which handles the case when chunking is used, i.e. when the polynomial degree is higher than the SRS size.

§evaluations: Vec<Vec<G::ScalarField>>

Contains an evaluation table.

For instance, for vanilla PlonK, it would be a vector of (chunked) evaluations at zeta and zetaomega. The outer vector would be the evaluations at the different points (e.g. zeta and zetaomega for vanilla PlonK) and the inner vector would be the chunks of the polynomial.

Auto Trait Implementations§

§

impl<G> Freeze for Evaluation<G>

§

impl<G> RefUnwindSafe for Evaluation<G>
where G: RefUnwindSafe, <G as AffineRepr>::ScalarField: RefUnwindSafe,

§

impl<G> Send for Evaluation<G>

§

impl<G> Sync for Evaluation<G>

§

impl<G> Unpin for Evaluation<G>
where G: Unpin, <G as AffineRepr>::ScalarField: Unpin,

§

impl<G> UnsafeUnpin for Evaluation<G>

§

impl<G> UnwindSafe for Evaluation<G>
where G: UnwindSafe, <G as AffineRepr>::ScalarField: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T> Pointable for T

§

const ALIGN: usize

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V