Lemmas on the monotone multiplication typeclasses #
This file builds on Mathlib.Algebra.Order.GroupWithZero.Unbundled.Defs
by proving several lemmas
that do not immediately follow from the typeclass specifications.
Assumes left covariance.
Alias of Left.mul_pos
.
Assumes left covariance.
Assumes right covariance.
Assumes left covariance.
Alias of Left.mul_nonneg
.
Assumes left covariance.
Assumes right covariance.
Assumes left strict covariance.
Assumes right strict covariance.
Alias of Left.mul_lt_mul_of_nonneg
.
Assumes left strict covariance.
Alias of Left.mul_lt_mul_of_nonneg
.
Assumes left strict covariance.
Alias of Left.neg_of_mul_neg_right
.
Alias of Left.neg_of_mul_neg_left
.
Lemmas of the form a ≤ a * b ↔ 1 ≤ b
and a * b ≤ a ↔ b ≤ 1
, assuming left covariance.
Lemmas of the form a ≤ b * a ↔ 1 ≤ b
and a * b ≤ b ↔ a ≤ 1
, assuming right covariance.
Lemmas of the form 1 ≤ b → a ≤ a * b
.
Variants with < 0
and ≤ 0
instead of 0 <
and 0 ≤
appear in Mathlib/Algebra/Order/Ring/Defs
(which imports this file) as they need additional results which are not yet available here.
Alias of one_lt_mul_of_le_of_lt
.
bound
lemma for branching on 1 ≤ a ∨ a ≤ 1
when proving a ^ n ≤ a ^ m
The bound
tactic can't handle m ≠ 0
goals yet, so we express as 0 < m
See also pow_left_strictMono₀
and Nat.pow_left_strictMono
.
See also pow_right_strictMono'
.
See div_self
for the version with equality when a ≠ 0
.
For a group with zero, MulPosReflectLT G₀
implies MulPosStrictMono G₀
.
Alias of the reverse direction of inv_pos
.
Alias of the reverse direction of inv_nonneg
.
For a group with zero, PosMulReflectLT G₀
implies PosMulStrictMono G₀
.
See le_inv_mul_iff₀'
for a version with multiplication on the other side.
See inv_mul_le_iff₀'
for a version with multiplication on the other side.
See inv_le_iff_one_le_mul₀
for a version with multiplication on the other side.
Alias of the reverse direction of one_le_inv₀
.
One direction of le_inv_mul_iff₀
where c
is allowed to be 0
(but b
must be nonnegative).
One direction of inv_mul_le_iff₀
where b
is allowed to be 0
(but c
must be nonnegative).
See le_mul_inv_iff₀'
for a version with multiplication on the other side.
See mul_inv_le_iff₀'
for a version with multiplication on the other side.
See le_div_iff₀'
for a version with multiplication on the other side.
See div_le_iff₀'
for a version with multiplication on the other side.
See inv_le_iff_one_le_mul₀'
for a version with multiplication on the other side.
One direction of le_mul_inv_iff₀
where c
is allowed to be 0
(but b
must be nonnegative).
One direction of mul_inv_le_iff₀
where b
is allowed to be 0
(but c
must be nonnegative).
One direction of le_div_iff₀
where c
is allowed to be 0
(but b
must be nonnegative).
One direction of div_le_iff₀
where b
is allowed to be 0
(but c
must be nonnegative).
See inv_anti₀
for the implication from right-to-left with one fewer assumption.
See also inv_le_of_inv_le₀
for a one-sided implication with one fewer assumption.
See also le_inv_of_le_inv₀
for a one-sided implication with one fewer assumption.
See lt_inv_mul_iff₀'
for a version with multiplication on the other side.
See inv_mul_lt_iff₀'
for a version with multiplication on the other side.
See inv_lt_iff_one_lt_mul₀
for a version with multiplication on the other side.
See lt_mul_inv_iff₀'
for a version with multiplication on the other side.
See mul_inv_lt_iff₀'
for a version with multiplication on the other side.
See lt_div_iff₀'
for a version with multiplication on the other side.
See div_lt_iff₀'
for a version with multiplication on the other side.
See inv_lt_iff_one_lt_mul₀'
for a version with multiplication on the other side.
See inv_strictAnti₀
for the implication from right-to-left with one fewer assumption.
See also inv_lt_of_inv_lt₀
for a one-sided implication with one fewer assumption.
See also lt_inv_of_lt_inv₀
for a one-sided implication with one fewer assumption.
Alias of inv_neg''
.
See le_inv_mul_iff₀
for a version with multiplication on the other side.
See inv_mul_le_iff₀
for a version with multiplication on the other side.
See le_mul_inv_iff₀
for a version with multiplication on the other side.
See mul_inv_le_iff₀
for a version with multiplication on the other side.
See le_div_iff₀
for a version with multiplication on the other side.
See div_le_iff₀
for a version with multiplication on the other side.
See lt_inv_mul_iff₀
for a version with multiplication on the other side.
See inv_mul_lt_iff₀
for a version with multiplication on the other side.
See lt_mul_inv_iff₀
for a version with multiplication on the other side.
See mul_inv_lt_iff₀
for a version with multiplication on the other side.
See lt_div_iff₀
for a version with multiplication on the other side.
See div_lt_iff₀
for a version with multiplication on the other side.