pub struct MultilinearUniversalParams<E: Pairing> {
pub prover_param: MultilinearProverParam<E>,
pub h_mask: Vec<E::G2Affine>,
}
Expand description
Universal Parameter
Fields§
§prover_param: MultilinearProverParam<E>
prover parameters
h_mask: Vec<E::G2Affine>
h^randomness: h^t1, h^t2, …, h^{t_nv}
Trait Implementations§
Source§impl<E: Pairing> CanonicalDeserialize for MultilinearUniversalParams<E>
impl<E: Pairing> CanonicalDeserialize for MultilinearUniversalParams<E>
Source§fn deserialize_with_mode<R: Read>(
reader: R,
compress: Compress,
validate: Validate,
) -> Result<Self, SerializationError>
fn deserialize_with_mode<R: Read>( reader: R, compress: Compress, validate: Validate, ) -> Result<Self, SerializationError>
The general deserialize method that takes in customization flags.
fn deserialize_compressed<R>(reader: R) -> Result<Self, SerializationError>where
R: Read,
fn deserialize_compressed_unchecked<R>(
reader: R,
) -> Result<Self, SerializationError>where
R: Read,
fn deserialize_uncompressed<R>(reader: R) -> Result<Self, SerializationError>where
R: Read,
fn deserialize_uncompressed_unchecked<R>(
reader: R,
) -> Result<Self, SerializationError>where
R: Read,
Source§impl<E: Pairing> CanonicalSerialize for MultilinearUniversalParams<E>
impl<E: Pairing> CanonicalSerialize for MultilinearUniversalParams<E>
Source§fn serialize_with_mode<W: Write>(
&self,
writer: W,
compress: Compress,
) -> Result<(), SerializationError>
fn serialize_with_mode<W: Write>( &self, writer: W, compress: Compress, ) -> Result<(), SerializationError>
The general serialize method that takes in customization flags.
fn serialized_size(&self, compress: Compress) -> usize
fn serialize_compressed<W>(&self, writer: W) -> Result<(), SerializationError>where
W: Write,
fn compressed_size(&self) -> usize
fn serialize_uncompressed<W>(&self, writer: W) -> Result<(), SerializationError>where
W: Write,
fn uncompressed_size(&self) -> usize
Source§impl<E: Clone + Pairing> Clone for MultilinearUniversalParams<E>where
E::G2Affine: Clone,
impl<E: Clone + Pairing> Clone for MultilinearUniversalParams<E>where
E::G2Affine: Clone,
Source§fn clone(&self) -> MultilinearUniversalParams<E>
fn clone(&self) -> MultilinearUniversalParams<E>
Returns a copy 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 moreSource§impl<E: Pairing> StructuredReferenceString for MultilinearUniversalParams<E>
impl<E: Pairing> StructuredReferenceString for MultilinearUniversalParams<E>
Source§fn extract_prover_param(&self, supported_num_vars: usize) -> Self::ProverParam
fn extract_prover_param(&self, supported_num_vars: usize) -> Self::ProverParam
Extract the prover parameters from the public parameters.
Source§fn extract_verifier_param(
&self,
supported_num_vars: usize,
) -> Self::VerifierParam
fn extract_verifier_param( &self, supported_num_vars: usize, ) -> Self::VerifierParam
Extract the verifier parameters from the public parameters.
Source§fn trim(
&self,
supported_num_vars: usize,
) -> Result<(Self::ProverParam, Self::VerifierParam), PCSError>
fn trim( &self, supported_num_vars: usize, ) -> Result<(Self::ProverParam, Self::VerifierParam), PCSError>
Trim the universal parameters to specialize the public parameters
for multilinear polynomials to the given supported_num_vars
, and
returns committer key and verifier key. supported_num_vars
should
be in range 1..=params.num_vars
Source§fn trim_with_verifier_degree(
&self,
prover_supported_num_vars: usize,
_verifier_supported_num_vars: usize,
) -> Result<(Self::ProverParam, Self::VerifierParam), PCSError>
fn trim_with_verifier_degree( &self, prover_supported_num_vars: usize, _verifier_supported_num_vars: usize, ) -> Result<(Self::ProverParam, Self::VerifierParam), PCSError>
Naive implementation
Source§type ProverParam = MultilinearProverParam<E>
type ProverParam = MultilinearProverParam<E>
Prover parameters
Source§type VerifierParam = MultilinearVerifierParam<E>
type VerifierParam = MultilinearVerifierParam<E>
Verifier parameters
Source§fn load_srs_from_file(
_supported_degree: usize,
_file: Option<&str>,
) -> Result<Self, PCSError>
fn load_srs_from_file( _supported_degree: usize, _file: Option<&str>, ) -> Result<Self, PCSError>
Load public parameter in production environment.
These parameters are loaded from files with serialized
pp
bytes, and
the actual setup is usually carried out via MPC and should be
implemented else where. We only load them into memory here. Read moreAuto Trait Implementations§
impl<E> Freeze for MultilinearUniversalParams<E>
impl<E> RefUnwindSafe for MultilinearUniversalParams<E>where
<E as Pairing>::G1Affine: RefUnwindSafe,
<E as Pairing>::G2Affine: RefUnwindSafe,
impl<E> Send for MultilinearUniversalParams<E>
impl<E> Sync for MultilinearUniversalParams<E>
impl<E> Unpin for MultilinearUniversalParams<E>
impl<E> UnwindSafe for MultilinearUniversalParams<E>where
<E as Pairing>::G1Affine: UnwindSafe,
<E as Pairing>::G2Affine: UnwindSafe,
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
§impl<T> CanonicalSerializeHashExt for Twhere
T: CanonicalSerialize,
impl<T> CanonicalSerializeHashExt for Twhere
T: CanonicalSerialize,
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