Trait mathru::algebra::abstr::AbelianGroup

source ·
pub trait AbelianGroup<O: Operator>: Group<O> { }
Expand description

An Abelian group is a commutative group.

A Group is a triple $(\mathbb{A}, \circ, e)$, composed by a set $\mathbb{A}$ and a binary inner operation $\circ$ and the element $e \in \mathbb{A}$

§Definition

\circ: \mathbb{A} \times \mathbb{A} \rightarrow \mathbb{A} , (x, y) \mapsto x \circ y
  1. Closure $\forall x, y \in \mathbb{A},: x \circ y \in \mathbb{A}$
  2. associativity
    $\forall x, y, z \in \mathbb{A}$: $x \circ (y \circ z) = (x \circ y) \circ z$ 3. $e$ neutral element(identity)
    $\forall x \in \mathbb{A}$: $x \circ e = e \circ x = x$
  3. Inverse element $x^{-1} \in \mathbb{A}: x^{-1} \circ x = x \circ x^{-1} = e$
  4. Commutativity $\forall x, y, \in \mathbb{A}: x \circ y = y \circ x$

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl AbelianGroup<Addition> for f32

source§

impl AbelianGroup<Addition> for f64

source§

impl AbelianGroup<Addition> for i8

source§

impl AbelianGroup<Addition> for i16

source§

impl AbelianGroup<Addition> for i32

source§

impl AbelianGroup<Addition> for i64

source§

impl AbelianGroup<Addition> for i128

source§

impl AbelianGroup<Multiplication> for f32

source§

impl AbelianGroup<Multiplication> for f64

Implementors§

source§

impl<T> AbelianGroup<Addition> for Complex<T>
where T: Real,

source§

impl<T> AbelianGroup<Multiplication> for Complex<T>
where T: Real,