mirror of
https://github.com/arnaucube/sonobe-playground.git
synced 2026-01-13 17:41:28 +01:00
Fix NM asymetry
This commit is contained in:
@@ -12,7 +12,7 @@ use sonobe::{
|
||||
|
||||
pub type NovaFolding =
|
||||
Nova<G1, GVar, G2, GVar2, CircomFCircuit<Fr>, KZG<'static, Bn254>, Pedersen<G2>, false>;
|
||||
pub type HyperNovaFolding<const N: usize, const M: usize> = HyperNova<
|
||||
pub type HyperNovaFolding<const M: usize, const N: usize> = HyperNova<
|
||||
G1,
|
||||
GVar,
|
||||
G2,
|
||||
@@ -20,8 +20,8 @@ pub type HyperNovaFolding<const N: usize, const M: usize> = HyperNova<
|
||||
CircomFCircuit<Fr>,
|
||||
KZG<'static, Bn254>,
|
||||
Pedersen<G2>,
|
||||
N,
|
||||
M,
|
||||
N,
|
||||
false,
|
||||
>;
|
||||
|
||||
@@ -75,7 +75,7 @@ impl FoldingSchemeExt for NovaFolding {
|
||||
}
|
||||
}
|
||||
|
||||
impl<const N: usize, const M: usize> FoldingSchemeExt for HyperNovaFolding<N, M> {
|
||||
impl<const M: usize, const N: usize> FoldingSchemeExt for HyperNovaFolding<M, N> {
|
||||
fn num_steps(num_inputs: usize) -> usize {
|
||||
let per_step = M + N - 1;
|
||||
assert_eq!(num_inputs % per_step, 0);
|
||||
|
||||
@@ -63,4 +63,6 @@ fn main() {
|
||||
scenario::<NovaFolding>(config.clone(), &mut rng, "Nova");
|
||||
scenario::<HyperNovaFolding<1, 1>>(config.clone(), &mut rng, "HyperNova<1,1>");
|
||||
scenario::<HyperNovaFolding<2, 2>>(config.clone(), &mut rng, "HyperNova<2,2>");
|
||||
scenario::<HyperNovaFolding<6, 1>>(config.clone(), &mut rng, "HyperNova<6,1>");
|
||||
scenario::<HyperNovaFolding<1, 6>>(config.clone(), &mut rng, "HyperNova<1,6>");
|
||||
}
|
||||
|
||||
@@ -16,7 +16,7 @@ pub struct ScenarioConfig {
|
||||
impl ScenarioConfig {
|
||||
pub fn new() -> Self {
|
||||
Self {
|
||||
num_inputs: 6,
|
||||
num_inputs: 30,
|
||||
start_ivc_state: vec![Fr::zero(); 2],
|
||||
circuit: info_span!("Prepare circuit").in_scope(create_circuit),
|
||||
input: info_span!("Prepare input").in_scope(prepare_input),
|
||||
|
||||
Reference in New Issue
Block a user