imo.imo2011_q3
⟷
Archive.Imo.Imo2011Q3
The following section lists changes to this file in mathlib3 and mathlib4 that occured after the initial port. Most recent changes are shown first. Hovering over a commit will show all commits associated with the same mathlib3 commit.
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(last sync)
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -67,7 +67,7 @@ theorem imo2011_q3 (f : ℝ → ℝ) (hf : ∀ x y, f (x + y) ≤ y * f x + f (f
· suffices : 0 ≤ f 0; exact le_antisymm (h_f_nonpos 0) this
have hno : f (-1) = 0 := h_fx_zero_of_neg (-1) neg_one_lt_zero
have hp := hxt (-1) (-1)
- rw [hno] at hp
+ rw [hno] at hp
linarith
#align imo2011_q3 imo2011_q3
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce64cd319bb6b3e82f31c2d38e79080d377be451
@@ -3,7 +3,7 @@ Copyright (c) 2021 David Renshaw. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: David Renshaw
-/
-import Mathbin.Data.Real.Basic
+import Data.Real.Basic
#align_import imo.imo2011_q3 from "leanprover-community/mathlib"@"08b081ea92d80e3a41f899eea36ef6d56e0f1db0"
mathlib commit https://github.com/leanprover-community/mathlib/commit/8ea5598db6caeddde6cb734aa179cc2408dbd345
@@ -2,14 +2,11 @@
Copyright (c) 2021 David Renshaw. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: David Renshaw
-
-! This file was ported from Lean 3 source module imo.imo2011_q3
-! leanprover-community/mathlib commit 08b081ea92d80e3a41f899eea36ef6d56e0f1db0
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathbin.Data.Real.Basic
+#align_import imo.imo2011_q3 from "leanprover-community/mathlib"@"08b081ea92d80e3a41f899eea36ef6d56e0f1db0"
+
/-!
# IMO 2011 Q3
mathlib commit https://github.com/leanprover-community/mathlib/commit/bf2428c9486c407ca38b5b3fb10b87dad0bc99fa
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: David Renshaw
! This file was ported from Lean 3 source module imo.imo2011_q3
-! leanprover-community/mathlib commit 5f25c089cb34db4db112556f23c50d12da81b297
+! leanprover-community/mathlib commit 08b081ea92d80e3a41f899eea36ef6d56e0f1db0
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -13,6 +13,9 @@ import Mathbin.Data.Real.Basic
/-!
# IMO 2011 Q3
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
+
Let f : ℝ → ℝ be a function that satisfies
f(x + y) ≤ y * f(x) + f(f(x))
mathlib commit https://github.com/leanprover-community/mathlib/commit/7e5137f579de09a059a5ce98f364a04e221aabf0
@@ -35,7 +35,6 @@ theorem imo2011_q3 (f : ℝ → ℝ) (hf : ∀ x y, f (x + y) ≤ y * f x + f (f
f t = f (x + (t - x)) := by rw [add_eq_of_eq_sub' rfl]
_ ≤ (t - x) * f x + f (f x) := (hf x (t - x))
_ = t * f x - x * f x + f (f x) := by rw [sub_mul]
-
have h_ab_combined : ∀ a b, a * f a + b * f b ≤ 2 * f a * f b :=
by
intro a b
@@ -58,7 +57,6 @@ theorem imo2011_q3 (f : ℝ → ℝ) (hf : ∀ x y, f (x + y) ≤ y * f x + f (f
f (min 0 s - 1) ≤ (min 0 s - 1) * f x - x * f x + f (f x) := hxt x (min 0 s - 1)
_ < s * f x - x * f x + f (f x) := by linarith [(mul_lt_mul_right hp).mpr hm]
_ = 0 := by rw [(eq_div_iff hp.ne.symm).mp rfl]; linarith
-
have h_fx_zero_of_neg : ∀ x < 0, f x = 0 :=
by
intro x hxz
mathlib commit https://github.com/leanprover-community/mathlib/commit/a3209ddf94136d36e5e5c624b10b2a347cc9d090
@@ -28,7 +28,7 @@ theorem imo2011_q3 (f : ℝ → ℝ) (hf : ∀ x y, f (x + y) ≤ y * f x + f (f
have hxt : ∀ x t, f t ≤ t * f x - x * f x + f (f x) := fun x t =>
calc
f t = f (x + (t - x)) := by rw [add_eq_of_eq_sub' rfl]
- _ ≤ (t - x) * f x + f (f x) := (hf x (t - x))
+ _ ≤ (t - x) * f x + f (f x) := hf x (t - x)
_ = t * f x - x * f x + f (f x) := by rw [sub_mul]
have h_ab_combined : ∀ a b, a * f a + b * f b ≤ 2 * f a * f b := fun a b => by
linarith [hxt b (f a), hxt a (f b)]
have
, replace
and suffices
(#10640)
No changes to tactic file, it's just boring fixes throughout the library.
This follows on from #6964.
Co-authored-by: sgouezel <sebastien.gouezel@univ-rennes1.fr> Co-authored-by: Eric Wieser <wieser.eric@gmail.com>
@@ -41,7 +41,7 @@ theorem imo2011_q3 (f : ℝ → ℝ) (hf : ∀ x y, f (x + y) ≤ y * f x + f (f
let s := (x * f x - f (f x)) / f x
have hm : min 0 s - 1 < s := (sub_one_lt _).trans_le (min_le_right 0 s)
have hml : min 0 s - 1 < 0 := (sub_one_lt _).trans_le (min_le_left 0 s)
- suffices : f (min 0 s - 1) < 0; exact not_le.mpr this (h_f_nonneg_of_pos (min 0 s - 1) hml)
+ suffices f (min 0 s - 1) < 0 from not_le.mpr this (h_f_nonneg_of_pos (min 0 s - 1) hml)
have hp : 0 < f x := not_le.mp h_suppose_not
calc
f (min 0 s - 1) ≤ (min 0 s - 1) * f x - x * f x + f (f x) := hxt x (min 0 s - 1)
@@ -4,6 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: David Renshaw
-/
import Mathlib.Data.Real.Basic
+import Mathlib.Tactic.Linarith
#align_import imo.imo2011_q3 from "leanprover-community/mathlib"@"5f25c089cb34db4db112556f23c50d12da81b297"
@@ -57,4 +58,3 @@ theorem imo2011_q3 (f : ℝ → ℝ) (hf : ∀ x y, f (x + y) ≤ y * f x + f (f
rw [hno] at hp
linarith
#align imo2011_q3 imo2011_q3
-
@@ -54,7 +54,7 @@ theorem imo2011_q3 (f : ℝ → ℝ) (hf : ∀ x y, f (x + y) ≤ y * f x + f (f
· suffices 0 ≤ f 0 from le_antisymm (h_f_nonpos 0) this
have hno : f (-1) = 0 := h_fx_zero_of_neg (-1) neg_one_lt_zero
have hp := hxt (-1) (-1)
- rw [hno] at hp
+ rw [hno] at hp
linarith
#align imo2011_q3 imo2011_q3
@@ -2,14 +2,11 @@
Copyright (c) 2021 David Renshaw. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: David Renshaw
-
-! This file was ported from Lean 3 source module imo.imo2011_q3
-! leanprover-community/mathlib commit 5f25c089cb34db4db112556f23c50d12da81b297
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathlib.Data.Real.Basic
+#align_import imo.imo2011_q3 from "leanprover-community/mathlib"@"5f25c089cb34db4db112556f23c50d12da81b297"
+
/-!
# IMO 2011 Q3
The unported dependencies are