fn single_bit<F: FftField, T: ExprOps<F, BerkeleyChallengeTerm>>( cache: &mut Cache, b: &T, base: Point<T>, s1: &T, input: &Point<T>, output: &Point<T>, ) -> Vec<T>