fn neg(&self) -> Self {
        let [px, py, pz] = self.coordinates();
        // SAFETY:
        // - Negating `y` maintains the curve structure.
        // - `unwraps()` is safe because negation **is always valid**.
        Self::new([px.clone(), -py, pz.clone()]).unwrap()
    }
Returns the additive inverse of the projective point `p`
crates/math/src/elliptic_curve/short_weierstrass/point.rs