INNER CODE UNIT · Rust
to_sponge_field_elements
arkworks-rs/groth16 · src/constraints.rs:97
fn to_sponge_field_elements(
&self,
) -> Result<Vec<FpVar<<E as Pairing>::BaseField>>, SynthesisError> {
let mut field_elements = self.alpha_g1.to_sponge_field_elements()?;
field_elements.extend(self.beta_g2.to_sponge_field_elements()?);
field_elements.extend(self.gamma_g2.to_sponge_field_elements()?);
field_elements.extend(self.delta_g2.to_sponge_field_elements()?);
self.gamma_abc_g1.iter().try_for_each(|g| {
field_elements.extend(g.to_sponge_field_elements()?);
Ok(())
})?;
Ok(field_elements)
}
}
/// Preprocessed verification key parameters variable for the Groth16
/// construction
#[derive(educe::Educe)]