pub fn differentiate(&self) -> Self {
        let degree = self.degree();
        if degree == 0 {
            return Polynomial::zero();
        }
        let mut derivative = Vec::with_capacity(degree);
        for (i, coeff) in self.coefficients().iter().enumerate().skip(1) {
            derivative.push(FieldElement::<F>::from(i as u64) * coeff);
        }
        Polynomial::new(&derivative)
    }
Returns the derivative of the polynomial with respect to x.
crates/math/src/polynomial/mod.rs