pub fn prepare_verifying_key_saver<E: MultiMillerLoop>(
    vk: &VerifyingKey<E>,
) -> PreparedVerifyingKeySaver<E> {
    let gamma = -vk.gamma_g2;
    let delta = -vk.delta_g2;

    PreparedVerifyingKeySaver {
        alpha_g1_beta_g2: E::pairing(&vk.alpha_g1, &vk.beta_g2),
        neg_gamma_g2: gamma.into(),
        neg_delta_g2: delta.into(),
        ic: vk.ic.clone(),
    }
}
/// Prepare verifying key for SAVER purposes (copied from bellman crate groth16\verifier.rs)
Prepare verifying key for SAVER purposes (copied from bellman crate groth16\verifier.rs)
Prepare verifying key for SAVER purposes ( copied from bellman crate groth16 \ verifier . rs )
pub fn prepare_verifying_key_saver<E: MultiMillerLoop>(
    vk: &VerifyingKey<E>,
) -> PreparedVerifyingKeySaver<E> {
    let gamma = -vk.gamma_g2;
    let delta = -vk.delta_g2;
    PreparedVerifyingKeySaver {
        alpha_g1_beta_g2: E::pairing(&vk.alpha_g1, &vk.beta_g2),
        neg_gamma_g2: gamma.into(),
        neg_delta_g2: delta.into(),
        ic: vk.ic.clone(),
    }
}
pub fn prepare_verifying_key_saver < E : MultiMillerLoop > ( vk : & VerifyingKey < E > , ) -> PreparedVerifyingKeySaver < E > { let gamma = - vk . gamma_g2 ; let delta = - vk . delta_g2 ; PreparedVerifyingKeySaver { alpha_g1_beta_g2 : E :: pairing ( & vk . alpha_g1 , & vk . beta_g2 ) , neg_gamma_g2 : gamma . into ( ) , neg_delta_g2 : delta . into ( ) , ic : vk . ic . clone ( ) , } }
Prepare verifying key for SAVER purposes (copied from bellman crate groth16\verifier.rs)
Prepare verifying key for SAVER purposes ( copied from bellman crate groth16 \ verifier . rs )
vk
&VerifyingKey<E>
vk
&VerifyingKey<E>