Struct ark_marlin::IndexVerifierKey [−][src]
pub struct IndexVerifierKey<F: PrimeField, PC: PolynomialCommitment<F, DensePolynomial<F>>> { pub index_info: IndexInfo<F>, pub index_comms: Vec<PC::Commitment>, pub verifier_key: PC::VerifierKey, }
Expand description
Verification key for a specific index (i.e., R1CS matrices).
Fields
index_info: IndexInfo<F>
Stores information about the size of the index, as well as its field of definition.
index_comms: Vec<PC::Commitment>
Commitments to the indexed polynomials.
verifier_key: PC::VerifierKey
The verifier key for this index, trimmed from the universal SRS.
Implementations
Iterate over the commitments to indexed polynomials in self
.
Trait Implementations
impl<F: PrimeField, PC: PolynomialCommitment<F, DensePolynomial<F>>> CanonicalDeserialize for IndexVerifierKey<F, PC>
[src]
impl<F: PrimeField, PC: PolynomialCommitment<F, DensePolynomial<F>>> CanonicalDeserialize for IndexVerifierKey<F, PC>
[src]Reads Self
from reader
.
Reads Self
from reader
without compression.
Reads self
from reader
without compression, and without performing
validity checks. Should be used only when the input is trusted. Read more
impl<F: PrimeField, PC: PolynomialCommitment<F, DensePolynomial<F>>> CanonicalSerialize for IndexVerifierKey<F, PC>
[src]
impl<F: PrimeField, PC: PolynomialCommitment<F, DensePolynomial<F>>> CanonicalSerialize for IndexVerifierKey<F, PC>
[src]Serializes self
into writer
.
It is left up to a particular type for how it strikes the
serialization efficiency vs compression tradeoff.
For standard types (e.g. bool
, lengths, etc.) typically an uncompressed
form is used, whereas for algebraic types compressed forms are used. Read more
Serializes self
into writer
without compression.
Serializes self
into writer
without compression, and without
performing validity checks. Should be used only when there is no
danger of adversarial manipulation of the output. Read more
impl<F: PrimeField, PC: PolynomialCommitment<F, DensePolynomial<F>>> Clone for IndexVerifierKey<F, PC>
[src]
impl<F: PrimeField, PC: PolynomialCommitment<F, DensePolynomial<F>>> Clone for IndexVerifierKey<F, PC>
[src]impl<F: PrimeField, PC: PolynomialCommitment<F, DensePolynomial<F>>> ToBytes for IndexVerifierKey<F, PC>
[src]
impl<F: PrimeField, PC: PolynomialCommitment<F, DensePolynomial<F>>> ToBytes for IndexVerifierKey<F, PC>
[src]Auto Trait Implementations
impl<F, PC> RefUnwindSafe for IndexVerifierKey<F, PC> where
F: RefUnwindSafe,
<PC as PolynomialCommitment<F, DensePolynomial<F>>>::Commitment: RefUnwindSafe,
<PC as PolynomialCommitment<F, DensePolynomial<F>>>::VerifierKey: RefUnwindSafe,
impl<F, PC> Send for IndexVerifierKey<F, PC> where
<PC as PolynomialCommitment<F, DensePolynomial<F>>>::Commitment: Send,
<PC as PolynomialCommitment<F, DensePolynomial<F>>>::VerifierKey: Send,
impl<F, PC> Sync for IndexVerifierKey<F, PC> where
<PC as PolynomialCommitment<F, DensePolynomial<F>>>::Commitment: Sync,
<PC as PolynomialCommitment<F, DensePolynomial<F>>>::VerifierKey: Sync,
impl<F, PC> Unpin for IndexVerifierKey<F, PC> where
F: Unpin,
<PC as PolynomialCommitment<F, DensePolynomial<F>>>::Commitment: Unpin,
<PC as PolynomialCommitment<F, DensePolynomial<F>>>::VerifierKey: Unpin,
impl<F, PC> UnwindSafe for IndexVerifierKey<F, PC> where
F: UnwindSafe,
<PC as PolynomialCommitment<F, DensePolynomial<F>>>::Commitment: UnwindSafe,
<PC as PolynomialCommitment<F, DensePolynomial<F>>>::VerifierKey: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more
fn hash_uncompressed<H>(&self) -> GenericArray<u8, <H as Digest>::OutputSize> where
H: Digest,
[src]Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
type Output = T
type Output = T
Should always be Self
pub fn vzip(self) -> V