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

# Safety

- The negation formula preserves the curve equation.
- `unwrap()` is safe because negation **does not** create invalid points.
crates/math/src/elliptic_curve/montgomery/point.rs