HepLean Documentation

Mathlib.Algebra.Order.Group.Basic

Lemmas about the interaction of power operations with order #

theorem zpow_right_strictMono {α : Type u_1} [OrderedCommGroup α] {a : α} (ha : 1 < a) :
StrictMono fun (n : ) => a ^ n
theorem zsmul_left_strictMono {α : Type u_1} [OrderedAddCommGroup α] {a : α} (ha : 0 < a) :
StrictMono fun (n : ) => n a
@[deprecated zsmul_left_strictMono]
theorem zsmul_strictMono_left {α : Type u_1} [OrderedAddCommGroup α] {a : α} (ha : 0 < a) :
StrictMono fun (n : ) => n a

Alias of zsmul_left_strictMono.

theorem one_lt_zpow {α : Type u_1} [OrderedCommGroup α] {n : } {a : α} (ha : 1 < a) (hn : 0 < n) :
1 < a ^ n
theorem zsmul_pos {α : Type u_1} [OrderedAddCommGroup α] {n : } {a : α} (ha : 0 < a) (hn : 0 < n) :
0 < n a
@[deprecated one_lt_zpow]
theorem one_lt_zpow' {α : Type u_1} [OrderedCommGroup α] {n : } {a : α} (ha : 1 < a) (hn : 0 < n) :
1 < a ^ n

Alias of one_lt_zpow.

theorem zpow_right_strictAnti {α : Type u_1} [OrderedCommGroup α] {a : α} (ha : a < 1) :
StrictAnti fun (n : ) => a ^ n
theorem zsmul_left_strictAnti {α : Type u_1} [OrderedAddCommGroup α] {a : α} (ha : a < 0) :
StrictAnti fun (n : ) => n a
theorem zpow_right_inj {α : Type u_1} [OrderedCommGroup α] {a : α} (ha : 1 < a) {m n : } :
a ^ m = a ^ n m = n
theorem zsmul_left_inj {α : Type u_1} [OrderedAddCommGroup α] {a : α} (ha : 0 < a) {m n : } :
m a = n a m = n
theorem zpow_right_mono {α : Type u_1} [OrderedCommGroup α] {a : α} (ha : 1 a) :
Monotone fun (n : ) => a ^ n
theorem zsmul_left_mono {α : Type u_1} [OrderedAddCommGroup α] {a : α} (ha : 0 a) :
Monotone fun (n : ) => n a
@[deprecated zpow_right_mono]
theorem zpow_mono_right {α : Type u_1} [OrderedCommGroup α] {a : α} (ha : 1 a) :
Monotone fun (n : ) => a ^ n

Alias of zpow_right_mono.

theorem zpow_le_zpow_right {α : Type u_1} [OrderedCommGroup α] {m n : } {a : α} (ha : 1 a) (h : m n) :
a ^ m a ^ n
theorem zsmul_le_zsmul_left {α : Type u_1} [OrderedAddCommGroup α] {m n : } {a : α} (ha : 0 a) (h : m n) :
m a n a
@[deprecated zpow_le_zpow_right]
theorem zpow_le_zpow {α : Type u_1} [OrderedCommGroup α] {m n : } {a : α} (ha : 1 a) (h : m n) :
a ^ m a ^ n

Alias of zpow_le_zpow_right.

theorem zpow_lt_zpow_right {α : Type u_1} [OrderedCommGroup α] {m n : } {a : α} (ha : 1 < a) (h : m < n) :
a ^ m < a ^ n
theorem zsmul_lt_zsmul_left {α : Type u_1} [OrderedAddCommGroup α] {m n : } {a : α} (ha : 0 < a) (h : m < n) :
m a < n a
@[deprecated zpow_lt_zpow_right]
theorem zpow_lt_zpow {α : Type u_1} [OrderedCommGroup α] {m n : } {a : α} (ha : 1 < a) (h : m < n) :
a ^ m < a ^ n

Alias of zpow_lt_zpow_right.

theorem zpow_le_zpow_iff_right {α : Type u_1} [OrderedCommGroup α] {m n : } {a : α} (ha : 1 < a) :
a ^ m a ^ n m n
theorem zsmul_le_zsmul_iff_left {α : Type u_1} [OrderedAddCommGroup α] {m n : } {a : α} (ha : 0 < a) :
m a n a m n
@[deprecated zpow_le_zpow_iff_right]
theorem zpow_le_zpow_iff {α : Type u_1} [OrderedCommGroup α] {m n : } {a : α} (ha : 1 < a) :
a ^ m a ^ n m n

Alias of zpow_le_zpow_iff_right.

theorem zpow_lt_zpow_iff_right {α : Type u_1} [OrderedCommGroup α] {m n : } {a : α} (ha : 1 < a) :
a ^ m < a ^ n m < n
theorem zsmul_lt_zsmul_iff_left {α : Type u_1} [OrderedAddCommGroup α] {m n : } {a : α} (ha : 0 < a) :
m a < n a m < n
@[deprecated zpow_lt_zpow_iff_right]
theorem zpow_lt_zpow_iff {α : Type u_1} [OrderedCommGroup α] {m n : } {a : α} (ha : 1 < a) :
a ^ m < a ^ n m < n

Alias of zpow_lt_zpow_iff_right.

theorem zpow_left_strictMono (α : Type u_1) [OrderedCommGroup α] {n : } (hn : 0 < n) :
StrictMono fun (x : α) => x ^ n
theorem zsmul_strictMono_right (α : Type u_1) [OrderedAddCommGroup α] {n : } (hn : 0 < n) :
StrictMono fun (x : α) => n x
@[deprecated zpow_left_strictMono]
theorem zpow_strictMono_left (α : Type u_1) [OrderedCommGroup α] {n : } (hn : 0 < n) :
StrictMono fun (x : α) => x ^ n

Alias of zpow_left_strictMono.

theorem zpow_left_mono (α : Type u_1) [OrderedCommGroup α] {n : } (hn : 0 n) :
Monotone fun (x : α) => x ^ n
theorem zsmul_mono_right (α : Type u_1) [OrderedAddCommGroup α] {n : } (hn : 0 n) :
Monotone fun (x : α) => n x
@[deprecated zpow_left_mono]
theorem zpow_mono_left (α : Type u_1) [OrderedCommGroup α] {n : } (hn : 0 n) :
Monotone fun (x : α) => x ^ n

Alias of zpow_left_mono.

theorem zpow_le_zpow_left {α : Type u_1} [OrderedCommGroup α] {n : } {a b : α} (hn : 0 n) (h : a b) :
a ^ n b ^ n
theorem zsmul_le_zsmul_right {α : Type u_1} [OrderedAddCommGroup α] {n : } {a b : α} (hn : 0 n) (h : a b) :
n a n b
@[deprecated zpow_le_zpow_left]
theorem zpow_le_zpow' {α : Type u_1} [OrderedCommGroup α] {n : } {a b : α} (hn : 0 n) (h : a b) :
a ^ n b ^ n

Alias of zpow_le_zpow_left.

theorem zpow_lt_zpow_left {α : Type u_1} [OrderedCommGroup α] {n : } {a b : α} (hn : 0 < n) (h : a < b) :
a ^ n < b ^ n
theorem zsmul_lt_zsmul_right {α : Type u_1} [OrderedAddCommGroup α] {n : } {a b : α} (hn : 0 < n) (h : a < b) :
n a < n b
@[deprecated zpow_lt_zpow_left]
theorem zpow_lt_zpow' {α : Type u_1} [OrderedCommGroup α] {n : } {a b : α} (hn : 0 < n) (h : a < b) :
a ^ n < b ^ n

Alias of zpow_lt_zpow_left.

theorem zpow_le_zpow_iff_left {α : Type u_1} [LinearOrderedCommGroup α] {n : } {a b : α} (hn : 0 < n) :
a ^ n b ^ n a b
theorem zsmul_le_zsmul_iff_right {α : Type u_1} [LinearOrderedAddCommGroup α] {n : } {a b : α} (hn : 0 < n) :
n a n b a b
@[deprecated zpow_le_zpow_iff_left]
theorem zpow_le_zpow_iff' {α : Type u_1} [LinearOrderedCommGroup α] {n : } {a b : α} (hn : 0 < n) :
a ^ n b ^ n a b

Alias of zpow_le_zpow_iff_left.

theorem zpow_lt_zpow_iff_left {α : Type u_1} [LinearOrderedCommGroup α] {n : } {a b : α} (hn : 0 < n) :
a ^ n < b ^ n a < b
theorem zsmul_lt_zsmul_iff_right {α : Type u_1} [LinearOrderedAddCommGroup α] {n : } {a b : α} (hn : 0 < n) :
n a < n b a < b
@[deprecated zpow_lt_zpow_iff_left]
theorem zpow_lt_zpow_iff' {α : Type u_1} [LinearOrderedCommGroup α] {n : } {a b : α} (hn : 0 < n) :
a ^ n < b ^ n a < b

Alias of zpow_lt_zpow_iff_left.

theorem zpow_left_injective {α : Type u_1} [LinearOrderedCommGroup α] {n : } (hn : n 0) :
Function.Injective fun (x : α) => x ^ n
theorem zsmul_right_injective {α : Type u_1} [LinearOrderedAddCommGroup α] {n : } (hn : n 0) :
Function.Injective fun (x : α) => n x

See also smul_right_injective. TODO: provide a NoZeroSMulDivisors instance. We can't do that here because importing that definition would create import cycles.

theorem zpow_left_inj {α : Type u_1} [LinearOrderedCommGroup α] {n : } {a b : α} (hn : n 0) :
a ^ n = b ^ n a = b
theorem zsmul_right_inj {α : Type u_1} [LinearOrderedAddCommGroup α] {n : } {a b : α} (hn : n 0) :
n a = n b a = b
theorem zpow_eq_zpow_iff' {α : Type u_1} [LinearOrderedCommGroup α] {n : } {a b : α} (hn : n 0) :
a ^ n = b ^ n a = b

Alias of zpow_left_inj, for ease of discovery alongside zsmul_le_zsmul_iff' and zsmul_lt_zsmul_iff'.

theorem zsmul_eq_zsmul_iff' {α : Type u_1} [LinearOrderedAddCommGroup α] {n : } {a b : α} (hn : n 0) :
n a = n b a = b

Alias of zsmul_right_inj, for ease of discovery alongside zsmul_le_zsmul_iff' and zsmul_lt_zsmul_iff'.

A nontrivial densely linear ordered commutative group can't be a cyclic group.

A nontrivial densely linear ordered additive commutative group can't be a cyclic group.