Absolute values #
This file defines a bundled type of absolute values AbsoluteValue R S.
Main definitions #
AbsoluteValue R Sis the type of absolute values onRmapping toS.AbsoluteValue.absis the "standard" absolute value onS, mapping negativexto-x.AbsoluteValue.toMonoidWithZeroHom: absolute values mapping to a linear ordered field preserve0,*and1IsAbsoluteValue: a type class stating thatf : ฮฒ โ ฮฑsatisfies the axioms of an absolute value
AbsoluteValue R S is the type of absolute values on R mapping to S:
the maps that preserve *, are nonnegative, positive definite and satisfy
the triangle inequality.
- toFun : R โ S
The absolute value is nonnegative
- eq_zero' (x : R) : self.toFun x = 0 โ x = 0
The absolute value is positive definitive
The absolute value satisfies the triangle inequality
Instances For
See Note [custom simps projection].
Instances For
The triangle inequality for an AbsoluteValue applied to a list.
Alias of the reverse direction of AbsoluteValue.ne_zero_iff.
Alias of the reverse direction of AbsoluteValue.pos_iff.
Absolute values from a nontrivial R to a linear ordered ring preserve *, 0 and 1.
Instances For
Absolute values from a nontrivial R to a linear ordered ring preserve * and 1.
Instances For
An absolute value satisfies f (n : R) โค n for every n : โ.
Bound abv (a + b) from below
Bound abv (a - b) from above
Values of an absolute value coincide on the image of โ in R
if and only if they coincide on the image of โค in R.
AbsoluteValue.abs is abs as a bundled AbsoluteValue.
Instances For
The trivial absolute value takes the value 1 on all nonzero elements.
Instances For
An absolute value on a semiring R without zero divisors is nontrivial if it takes
a value โ 1 on a nonzero element.
This has the advantage over v โ .trivial that it does not require decidability
of ยท = 0 in R.
Instances For
A function f is an absolute value if it is nonnegative, zero only at 0, additive, and
multiplicative.
See also the type AbsoluteValue which represents a bundled version of absolute values.
The absolute value is nonnegative
- abv_eq_zero' {x : R} : f x = 0 โ x = 0
The absolute value is positive definitive
The absolute value satisfies the triangle inequality
- abv_mul' (x y : R) : f (x * y) = f x * f y
The absolute value is multiplicative
Instances
The positivity extension which identifies expressions of the form abv a.
For performance reasons, we only attempt to apply this when abv is a variable.
If it is an explicit function, e.g. |_| or โ_โ, another extension should apply.
Instances For
A bundled absolute value is an absolute value.
Convert an unbundled IsAbsoluteValue to a bundled AbsoluteValue.
Instances For
abv as a MonoidWithZeroHom.
Instances For
An absolute value as a monoid with zero homomorphism, assuming the target is a semifield.