diff --git a/plonky2x/core/src/frontend/recursion/mod.rs b/plonky2x/core/src/frontend/recursion/mod.rs index 1f5811bf6..9dd1ed7ed 100644 --- a/plonky2x/core/src/frontend/recursion/mod.rs +++ b/plonky2x/core/src/frontend/recursion/mod.rs @@ -1,4 +1,5 @@ pub mod extension; pub mod fri; pub mod hash; +pub mod plonky2_proof; pub mod polynomial; diff --git a/plonky2x/core/src/frontend/recursion/plonky2_proof.rs b/plonky2x/core/src/frontend/recursion/plonky2_proof.rs new file mode 100644 index 000000000..bc0eced05 --- /dev/null +++ b/plonky2x/core/src/frontend/recursion/plonky2_proof.rs @@ -0,0 +1,26 @@ +use crate::frontend::recursion::extension::ExtensionVariable; +use crate::frontend::recursion::fri::proof::FriProofVariable; +use crate::frontend::recursion::hash::MerkleCapVariable; +use crate::prelude::Variable; +pub struct ProofWithPublicInputsVariable { + proof: ProofVariable, // Add missing generic argument + public_inputs: Vec, +} + +pub struct ProofVariable { + wires_cap: MerkleCapVariable, + plonk_zs_partial_products_cap: MerkleCapVariable, + quotient_polys_cap: MerkleCapVariable, + openings: OpeningSetVariable, + opening_proof: FriProofVariable, +} + +pub struct OpeningSetVariable { + pub constants: Vec>, + pub plonk_sigmas: Vec>, + pub wires: Vec>, + pub plonk_zs: Vec>, + pub plonk_zs_next: Vec>, + pub partial_products: Vec>, + pub quotient_polys: Vec>, +}