diff --git a/snark-verifier/src/pcs/ipa/decider.rs b/snark-verifier/src/pcs/ipa/decider.rs index 933480f3..5235a857 100644 --- a/snark-verifier/src/pcs/ipa/decider.rs +++ b/snark-verifier/src/pcs/ipa/decider.rs @@ -58,6 +58,7 @@ mod native { dk: &Self::DecidingKey, accumulators: Vec>, ) -> Result<(), Error> { + assert!(!accumulators.is_empty()); accumulators .into_iter() .map(|accumulator| Self::decide(dk, accumulator)) diff --git a/snark-verifier/src/pcs/kzg/decider.rs b/snark-verifier/src/pcs/kzg/decider.rs index 417a39dc..59f1afbf 100644 --- a/snark-verifier/src/pcs/kzg/decider.rs +++ b/snark-verifier/src/pcs/kzg/decider.rs @@ -19,12 +19,7 @@ impl KzgDecidingKey { g2: M::G2Affine, s_g2: M::G2Affine, ) -> Self { - Self { - svk: svk.into(), - g2, - s_g2, - _marker: PhantomData, - } + Self { svk: svk.into(), g2, s_g2, _marker: PhantomData } } } @@ -67,19 +62,16 @@ mod native { KzgAccumulator { lhs, rhs }: KzgAccumulator, ) -> Result<(), Error> { let terms = [(&lhs, &dk.g2.into()), (&rhs, &(-dk.s_g2).into())]; - bool::from( - M::multi_miller_loop(&terms) - .final_exponentiation() - .is_identity(), - ) - .then_some(()) - .ok_or_else(|| Error::AssertionFailure("e(lhs, g2)·e(rhs, -s_g2) == O".to_string())) + bool::from(M::multi_miller_loop(&terms).final_exponentiation().is_identity()) + .then_some(()) + .ok_or_else(|| Error::AssertionFailure("e(lhs, g2)·e(rhs, -s_g2) == O".to_string())) } fn decide_all( dk: &Self::DecidingKey, accumulators: Vec>, ) -> Result<(), Error> { + assert!(!accumulators.is_empty()); accumulators .into_iter() .map(|accumulator| Self::decide(dk, accumulator))