[][src]Trait maths_traits::algebra::ring_like::Divisibility

pub trait Divisibility: Sized {
    fn divides(self, rhs: Self) -> bool;
fn divide(self, rhs: Self) -> Option<Self>;
fn unit(&self) -> bool;
fn inverse(self) -> Option<Self>; }

Common methods regarding multiplicative inverses in a ring or semiring

Do note that while for some rings these methods are relatively quick (like the integers), for others, such as polynomials, this test might actually be relatively expensive

Required methods

fn divides(self, rhs: Self) -> bool

Determines if there exists an element x such that self*x = rhs

fn divide(self, rhs: Self) -> Option<Self>

Finds an element x such that self*x = rhs if such an element exists

fn unit(&self) -> bool

Determines if this element has a multiplicative inverse

fn inverse(self) -> Option<Self>

Finds this element's multiplicative inverse if it exists

Loading content...

Implementations on Foreign Types

impl Divisibility for f32[src]

impl Divisibility for f64[src]

impl Divisibility for u8[src]

impl Divisibility for i8[src]

impl Divisibility for u16[src]

impl Divisibility for i16[src]

impl Divisibility for u32[src]

impl Divisibility for i32[src]

impl Divisibility for u64[src]

impl Divisibility for i64[src]

impl Divisibility for u128[src]

impl Divisibility for i128[src]

impl Divisibility for usize[src]

impl Divisibility for isize[src]

Loading content...

Implementors

Loading content...