Struct ark_gm17::GM17 [−][src]
pub struct GM17<E: PairingEngine> { /* fields omitted */ }
Expand description
The SNARK of [GrothMaller17].
Trait Implementations
The setup algorithm for circuit-specific SNARKs. By default, this
just invokes <Self as SNARK<F>>::circuit_specific_setup(...)
. Read more
type ProvingKey = ProvingKey<E>
type ProvingKey = ProvingKey<E>
The information required by the prover to produce a proof for a specific circuit C. Read more
type VerifyingKey = VerifyingKey<E>
type VerifyingKey = VerifyingKey<E>
The information required by the verifier to check a proof for a specific circuit C. Read more
type ProcessedVerifyingKey = PreparedVerifyingKey<E>
type ProcessedVerifyingKey = PreparedVerifyingKey<E>
This contains the verification key, but preprocessed to enable faster verification. Read more
type Error = SynthesisError
type Error = SynthesisError
Errors encountered during setup, proving, or verification.
fn circuit_specific_setup<C: ConstraintSynthesizer<E::Fr>, R: RngCore>(
circuit: C,
rng: &mut R
) -> Result<(Self::ProvingKey, Self::VerifyingKey), Self::Error>
[src]
fn circuit_specific_setup<C: ConstraintSynthesizer<E::Fr>, R: RngCore>(
circuit: C,
rng: &mut R
) -> Result<(Self::ProvingKey, Self::VerifyingKey), Self::Error>
[src]Takes in a description of a computation (specified in R1CS constraints), and samples proving and verification keys for that circuit. Read more
Generates a proof of satisfaction of the arithmetic circuit C (specified as R1CS constraints). Read more
fn process_vk(
circuit_vk: &Self::VerifyingKey
) -> Result<Self::ProcessedVerifyingKey, Self::Error>
[src]
fn process_vk(
circuit_vk: &Self::VerifyingKey
) -> Result<Self::ProcessedVerifyingKey, Self::Error>
[src]Preprocesses circuit_vk
to enable faster verification.
Checks that proof
is a valid proof of the satisfaction of circuit
encoded in circuit_pvk
, with respect to the public input public_input
,
specified as R1CS constraints. Read more
Auto Trait Implementations
impl<E> RefUnwindSafe for GM17<E> where
E: RefUnwindSafe,
impl<E> UnwindSafe for GM17<E> where
E: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more
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