Trait malachite_base::num::arithmetic::traits::Reciprocal
source · pub trait Reciprocal {
type Output;
// Required method
fn reciprocal(self) -> Self::Output;
}
Expand description
Finds the reciprocal (multiplicative inverse) of a number.
Required Associated Types§
Required Methods§
fn reciprocal(self) -> Self::Output
Implementations on Foreign Types§
source§impl Reciprocal for f32
impl Reciprocal for f32
source§fn reciprocal(self) -> f32
fn reciprocal(self) -> f32
Takes the reciprocal of a floating-point number.
$$
f(x) = 1/x+\varepsilon.
$$
Let $p$ be the precision of the input float (typically 24 for f32
s and 53 for
f64
s, unless the float is subnormal).
- If $1/x$ is infinite, zero, or
NaN
, $\varepsilon$ may be ignored or assumed to be 0. - If $1/x$ is finite and nonzero, and $m$ is not
Nearest
, then $|\varepsilon| < 2^{\lfloor\log_2 |1/x|\rfloor-p+1}$. - If $1/x$ is finite and nonzero, and $m$ is
Nearest
, then $|\varepsilon| < 2^{\lfloor\log_2 |1/x|\rfloor-p}$.
If the output has a precision, it is prec
.
Special cases:
- $f(\text{NaN})=\text{NaN}$
- $f(\infty)=0.0$
- $f(-\infty)=-0.0$
- $f(0.0)=\infty$
- $f(-0.0)=-\infty$
§Worst-case complexity
Constant time and additional memory.
§Examples
See here.
type Output = f32
source§impl Reciprocal for f64
impl Reciprocal for f64
source§fn reciprocal(self) -> f64
fn reciprocal(self) -> f64
Takes the reciprocal of a floating-point number.
$$
f(x) = 1/x+\varepsilon.
$$
Let $p$ be the precision of the input float (typically 24 for f32
s and 53 for
f64
s, unless the float is subnormal).
- If $1/x$ is infinite, zero, or
NaN
, $\varepsilon$ may be ignored or assumed to be 0. - If $1/x$ is finite and nonzero, and $m$ is not
Nearest
, then $|\varepsilon| < 2^{\lfloor\log_2 |1/x|\rfloor-p+1}$. - If $1/x$ is finite and nonzero, and $m$ is
Nearest
, then $|\varepsilon| < 2^{\lfloor\log_2 |1/x|\rfloor-p}$.
If the output has a precision, it is prec
.
Special cases:
- $f(\text{NaN})=\text{NaN}$
- $f(\infty)=0.0$
- $f(-\infty)=-0.0$
- $f(0.0)=\infty$
- $f(-0.0)=-\infty$
§Worst-case complexity
Constant time and additional memory.
§Examples
See here.