pub fn batch_open_multi_points(
        &self,
        polynomials: &[&Vec<E::Fr>],
        eval_points: &[E::Fr],
        eval_chal: &E::Fr,
    ) -> EvaluationProof<E> {
        assert!(eval_points.len() < self.powers_of_g2.len());
        let etas = powers(*eval_chal, polynomials.len());
        let batched_polynomial =
            linear_combination(polynomials, &etas).unwrap_or_else(|| vec![E::Fr::zero()]);
        self.open_multi_points(&batched_polynomial, eval_points)
    }
/// Evaluate a set of polynomials at a set of points `eval_points`, and provide a single batched evaluation proof.
/// `eval_chal` is the random challenge for batching evaluation proofs across different polynomials.
Evaluate a set of polynomials at a set of points `eval_points`, and provide a single batched evaluation proof.
`eval_chal` is the random challenge for batching evaluation proofs across different polynomials.
Evaluate a set of polynomials at a set of points ` eval_points ` and provide a single batched evaluation proof . ` eval_chal ` is the random challenge for batching evaluation proofs across different polynomials .
pub fn batch_open_multi_points(
        &self,
        polynomials: &[&Vec<E::Fr>],
        eval_points: &[E::Fr],
        eval_chal: &E::Fr,
    ) -> EvaluationProof<E> {
        assert!(eval_points.len() < self.powers_of_g2.len());
        let etas = powers(*eval_chal, polynomials.len());
        let batched_polynomial =
            linear_combination(polynomials, &etas).unwrap_or_else(|| vec![E::Fr::zero()]);
        self.open_multi_points(&batched_polynomial, eval_points)
    }
pub fn batch_open_multi_points ( & self , polynomials : & [ & Vec < E :: Fr > ] , eval_points : & [ E :: Fr ] , eval_chal : & E :: Fr , ) -> EvaluationProof < E > { assert ! ( eval_points len ( ) self powers_of_g2 len ( ) ) ; let etas = powers ( * eval_chal , polynomials . len ( ) ) ; let batched_polynomial = linear_combination ( polynomials , & etas ) . unwrap_or_else ( | | vec ! [ E Fr zero ( ) ] ) ; self . open_multi_points ( & batched_polynomial , eval_points ) }
Evaluate a set of polynomials at a set of points `eval_points`, and provide a single batched evaluation proof.
Evaluate a set of polynomials at a set of points ` eval_points ` and provide a single batched evaluation proof .
&self
polynomials
&[&Vec<E::Fr>]
eval_points
&[E::Fr]
eval_chal
&E::Fr