Skip to content
This repository was archived by the owner on Jul 24, 2024. It is now read-only.

Commit 743a104

Browse files
committed
chore(algebra): trivial lemmas on powers (#4977)
1 parent 5f098cf commit 743a104

File tree

5 files changed

+16
-3
lines changed

5 files changed

+16
-3
lines changed

src/algebra/group_power/basic.lean

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -572,13 +572,15 @@ calc a ^ n = a ^ n * 1 : (mul_one _).symm
572572

573573
lemma pow_lt_pow {a : R} {n m : ℕ} (h : 1 < a) (h2 : n < m) : a ^ n < a ^ m :=
574574
begin
575-
nontriviality,
576575
have h' : 1 ≤ a := le_of_lt h,
577576
have h'' : 0 < a := lt_trans zero_lt_one h,
578577
cases m, cases h2, rw [pow_succ, ←one_mul (a ^ n)],
579578
exact mul_lt_mul h (pow_le_pow h' (nat.le_of_lt_succ h2)) (pow_pos h'' _) (le_of_lt h'')
580579
end
581580

581+
lemma pow_lt_pow_iff {a : R} {n m : ℕ} (h : 1 < a) : a ^ n < a ^ m ↔ n < m :=
582+
strict_mono.lt_iff_lt $ λ m n, pow_lt_pow h
583+
582584
lemma pow_le_pow_of_le_left {a b : R} (ha : 0 ≤ a) (hab : a ≤ b) : ∀ i : ℕ, a^i ≤ b^i
583585
| 0 := by simp
584586
| (k+1) := mul_le_mul hab (pow_le_pow_of_le_left _) (pow_nonneg ha _) (le_trans ha hab)

src/algebra/group_power/lemmas.lean

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -323,6 +323,13 @@ lemma pow_lt_pow_of_lt_one {a : R} (h : 0 < a) (ha : a < 1)
323323
let ⟨k, hk⟩ := nat.exists_eq_add_of_lt hij in
324324
by rw hk; exact pow_lt_pow_of_lt_one_aux h ha _ _
325325

326+
lemma pow_lt_pow_iff_of_lt_one {a : R} {n m : ℕ} (hpos : 0 < a) (h : a < 1) :
327+
a ^ m < a ^ n ↔ n < m :=
328+
begin
329+
have : strict_mono (λ (n : order_dual ℕ), a ^ (id n : ℕ)) := λ m n, pow_lt_pow_of_lt_one hpos h,
330+
exact this.lt_iff_lt
331+
end
332+
326333
lemma pow_le_pow_of_le_one {a : R} (h : 0 ≤ a) (ha : a ≤ 1)
327334
{i j : ℕ} (hij : i ≤ j) : a ^ j ≤ a ^ i :=
328335
let ⟨k, hk⟩ := nat.exists_eq_add_of_le hij in

src/algebra/group_with_zero_power.lean

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -239,6 +239,10 @@ theorem one_div_fpow {a : G₀} (n : ℤ) :
239239
(1 / a) ^ n = 1 / a ^ n :=
240240
by simp only [one_div, inv_fpow]
241241

242+
@[simp] lemma inv_fpow' {a : G₀} (n : ℤ) :
243+
(a ⁻¹) ^ n = a ^ (-n) :=
244+
by { rw [inv_fpow, ← fpow_neg_one, ← fpow_mul], simp }
245+
242246
end int_pow
243247

244248
section

src/analysis/calculus/darboux.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ begin
4646
simpa [-sub_nonneg, -continuous_linear_map.map_sub]
4747
using hc.localize.has_fderiv_within_at_nonneg (hg a (left_mem_Icc.2 hab)) this },
4848
cases eq_or_lt_of_le cmem.2 with hbc hbc,
49-
-- Show that `c` can't be equal to `a`
49+
-- Show that `c` can't be equal to `b`
5050
{ subst c,
5151
refine absurd (sub_nonpos.1 $ nonpos_of_mul_nonneg_right _ (sub_lt_zero.2 hab'))
5252
(not_le_of_lt hmb),

src/analysis/calculus/extend_deriv.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ begin
4747
/- One needs to show that `∥f y - f x - f' (y - x)∥ ≤ ε ∥y - x∥` for `y` close to `x` in `closure
4848
s`, where `ε` is an arbitrary positive constant. By continuity of the functions, it suffices to
4949
prove this for nearby points inside `s`. In a neighborhood of `x`, the derivative of `f` is
50-
arbitrarily close to f' by assumption. The mean value inequality completes the proof. -/
50+
arbitrarily close to `f'` by assumption. The mean value inequality completes the proof. -/
5151
assume ε ε_pos,
5252
obtain ⟨δ, δ_pos, hδ⟩ : ∃ δ > 0, ∀ y ∈ s, dist y x < δ → ∥fderiv ℝ f y - f'∥ < ε,
5353
by simpa [dist_zero_right] using tendsto_nhds_within_nhds.1 h ε ε_pos,

0 commit comments

Comments
 (0)