pub struct CommitterUnionKey<'a, E: PairingEngine> {
pub powers_of_beta_g: Option<&'a Vec<E::G1Affine>>,
pub lagrange_bases_at_beta_g: BTreeMap<usize, &'a Vec<E::G1Affine>>,
pub powers_of_beta_times_gamma_g: Option<&'a Vec<E::G1Affine>>,
pub shifted_powers_of_beta_g: Option<&'a Vec<E::G1Affine>>,
pub shifted_powers_of_beta_times_gamma_g: Option<BTreeMap<usize, &'a Vec<E::G1Affine>>>,
pub enforced_degree_bounds: Option<Vec<usize>>,
}
Expand description
CommitterUnionKey
is a union of CommitterKey
s, useful for multi-circuit batch proofs.
Fields§
§powers_of_beta_g: Option<&'a Vec<E::G1Affine>>
The key used to commit to polynomials.
lagrange_bases_at_beta_g: BTreeMap<usize, &'a Vec<E::G1Affine>>
The key used to commit to polynomials in Lagrange basis.
powers_of_beta_times_gamma_g: Option<&'a Vec<E::G1Affine>>
The key used to commit to hiding polynomials.
shifted_powers_of_beta_g: Option<&'a Vec<E::G1Affine>>
The powers used to commit to shifted polynomials.
This is None
if self
does not support enforcing any degree bounds.
shifted_powers_of_beta_times_gamma_g: Option<BTreeMap<usize, &'a Vec<E::G1Affine>>>
The powers used to commit to shifted hiding polynomials.
This is None
if self
does not support enforcing any degree bounds.
enforced_degree_bounds: Option<Vec<usize>>
The degree bounds that are supported by self
.
Sorted in ascending order from smallest bound to largest bound.
This is None
if self
does not support enforcing any degree bounds.
Implementations§
Source§impl<'a, E: PairingEngine> CommitterUnionKey<'a, E>
impl<'a, E: PairingEngine> CommitterUnionKey<'a, E>
Sourcepub fn shifted_powers_of_beta_g(
&self,
degree_bound: impl Into<Option<usize>>,
) -> Option<Powers<'_, E>>
pub fn shifted_powers_of_beta_g( &self, degree_bound: impl Into<Option<usize>>, ) -> Option<Powers<'_, E>>
Obtain powers for committing to shifted polynomials.
Sourcepub fn lagrange_basis(
&self,
domain: EvaluationDomain<E::Fr>,
) -> Option<LagrangeBasis<'_, E>>
pub fn lagrange_basis( &self, domain: EvaluationDomain<E::Fr>, ) -> Option<LagrangeBasis<'_, E>>
Obtain elements of the SRS in the lagrange basis powers, for use with the underlying KZG10 construction.
pub fn union<T: IntoIterator<Item = &'a CommitterKey<E>>>( committer_keys: T, ) -> Self
Trait Implementations§
Auto Trait Implementations§
impl<'a, E> Freeze for CommitterUnionKey<'a, E>
impl<'a, E> RefUnwindSafe for CommitterUnionKey<'a, E>
impl<'a, E> Send for CommitterUnionKey<'a, E>
impl<'a, E> Sync for CommitterUnionKey<'a, E>
impl<'a, E> Unpin for CommitterUnionKey<'a, E>
impl<'a, E> UnwindSafe for CommitterUnionKey<'a, E>
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
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>
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>
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