1 2 3 4 5
pub trait Group { fn identity() -> Self; fn inverse(&self) -> Self; fn compose(&self, other: &Self) -> Self; }