pub trait AbelianGroup: Group + CommutativeMonoid { }Expand description
An abelian group (commutative group): a group where combine is commutative.
Laws (not enforced by type system):
- Associative:
a.combine(b).combine(c) == a.combine(b.combine(c)) - Commutative:
a.combine(b) == b.combine(a) - Identity:
a.combine(empty()) == a == empty().combine(a) - Inverse:
a.combine(a.inverse()) == empty() == a.inverse().combine(a)
Named after mathematician Niels Henrik Abel.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.