pub trait Ring: Semiring + Neg<Output = Self> { fn abs(&self) -> Self; }
Ring
https://en.wikipedia.org/wiki/Ring_(mathematics)
Absolute value