|
@ -12,7 +12,7 @@ use sonobe::{ |
|
|
|
|
|
|
|
|
pub type NovaFolding =
|
|
|
pub type NovaFolding =
|
|
|
Nova<G1, GVar, G2, GVar2, CircomFCircuit<Fr>, KZG<'static, Bn254>, Pedersen<G2>, false>;
|
|
|
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,
|
|
|
G1,
|
|
|
GVar,
|
|
|
GVar,
|
|
|
G2,
|
|
|
G2,
|
|
@ -20,8 +20,8 @@ pub type HyperNovaFolding = HyperNova< |
|
|
CircomFCircuit<Fr>,
|
|
|
CircomFCircuit<Fr>,
|
|
|
KZG<'static, Bn254>,
|
|
|
KZG<'static, Bn254>,
|
|
|
Pedersen<G2>,
|
|
|
Pedersen<G2>,
|
|
|
N,
|
|
|
|
|
|
M,
|
|
|
M,
|
|
|
|
|
|
N,
|
|
|
false,
|
|
|
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 {
|
|
|
fn num_steps(num_inputs: usize) -> usize {
|
|
|
let per_step = M + N - 1;
|
|
|
let per_step = M + N - 1;
|
|
|
assert_eq!(num_inputs % per_step, 0);
|
|
|
assert_eq!(num_inputs % per_step, 0);
|
|
|