zzhisthebest/LeanBenchmark huggingface dataset:
import Mathlib
import Optlib


open Set Bornology Filter BigOperators Topology BCD

open BCD

theorem extracted_formal_statement_162 : ENNReal.toReal 0 = 0 := sorry

Tactic state before:
case h
E : Type u_1
F : Type u_2
inst✝⁷ : NormedAddCommGroup E
inst✝⁶ : InnerProductSpace ℝ E
inst✝⁵ : CompleteSpace E
inst✝⁴ : NormedAddCommGroup F
inst✝³ : InnerProductSpace ℝ F
inst✝² : CompleteSpace F
f : E → ℝ
g : F → ℝ
H : WithLp 2 (E × F) → ℝ
x0 : E
y0 : F
l : NNReal
alg : BCD f g H l x0 y0
inst✝¹ : ProperSpace E
inst✝ : ProperSpace F
γ : ℝ
hγ : γ > 1
ck : ∀ (k : ℕ), alg.c k = 1 / (γ * ↑l)
dk : ∀ (k : ℕ), alg.d k = 1 / (γ * ↑l)
bd : Bornology.IsBounded (z '' univ)
lbdψ : BddBelow (ψ '' univ)
a b : Set (WithLp 2 (E × F))
closea : IsClosed a
closeb : IsClosed b
sub_ab : limit_set z ⊆ a ∪ b
nez_a : (limit_set z ∩ a).Nonempty
nez_b : (limit_set z ∩ b).Nonempty
nz_ab : limit_set z ∩ (a ∩ b) = ∅
A : Set (WithLp 2 (E × F)) := limit_set z ∩ a
B : Set (WithLp 2 (E × F)) := limit_set z ∩ b
eqAB : A ∪ B = limit_set z
disjoint_AB : A ∩ B = ∅
ω : WithLp 2 (E × F) → ℝ :=
  fun z => (EMetric.infEdist z A).toReal / ((EMetric.infEdist z A).toReal + (EMetric.infEdist z B).toReal)
sum_ne_zero : ∀ (z : WithLp 2 (E × F)), (EMetric.infEdist z A).toReal + (EMetric.infEdist z B).toReal ≠ 0
contω : Continuous ω
U : Set (WithLp 2 (E × F)) := {z | ω z < 1 / 4}
V : Set (WithLp 2 (E × F)) := {z | 3 / 4 < ω z}
z_ : WithLp 2 (E × F)
zA : z_ ∈ A
⊢ (EMetric.infEdist z_ A).toReal = 0

Tactic:
rw [EMetric.infEdist_zero_of_mem zA]

Tactic state after:
[case h
 E : Type u_1
 F : Type u_2
 inst✝⁷ : NormedAddCommGroup E
 inst✝⁶ : InnerProductSpace ℝ E
 inst✝⁵ : CompleteSpace E
 inst✝⁴ : NormedAddCommGroup F
 inst✝³ : InnerProductSpace ℝ F
 inst✝² : CompleteSpace F
 f : E → ℝ
 g : F → ℝ
 H : WithLp 2 (E × F) → ℝ
 x0 : E
 y0 : F
 l : NNReal
 alg : BCD f g H l x0 y0
 inst✝¹ : ProperSpace E
 inst✝ : ProperSpace F
 γ : ℝ
 hγ : γ > 1
 ck : ∀ (k : ℕ), alg.c k = 1 / (γ * ↑l)
 dk : ∀ (k : ℕ), alg.d k = 1 / (γ * ↑l)
 bd : Bornology.IsBounded (z '' univ)
 lbdψ : BddBelow (ψ '' univ)
 a b : Set (WithLp 2 (E × F))
 closea : IsClosed a
 closeb : IsClosed b
 sub_ab : limit_set z ⊆ a ∪ b
 nez_a : (limit_set z ∩ a).Nonempty
 nez_b : (limit_set z ∩ b).Nonempty
 nz_ab : limit_set z ∩ (a ∩ b) = ∅
 A : Set (WithLp 2 (E × F)) := limit_set z ∩ a
 B : Set (WithLp 2 (E × F)) := limit_set z ∩ b
 eqAB : A ∪ B = limit_set z
 disjoint_AB : A ∩ B = ∅
 ω : WithLp 2 (E × F) → ℝ :=
   fun z => (EMetric.infEdist z A).toReal / ((EMetric.infEdist z A).toReal + (EMetric.infEdist z B).toReal)
 sum_ne_zero : ∀ (z : WithLp 2 (E × F)), (EMetric.infEdist z A).toReal + (EMetric.infEdist z B).toReal ≠ 0
 contω : Continuous ω
 U : Set (WithLp 2 (E × F)) := {z | ω z < 1 / 4}
 V : Set (WithLp 2 (E × F)) := {z | 3 / 4 < ω z}
 z_ : WithLp 2 (E × F)
 zA : z_ ∈ A
 ⊢ ENNReal.toReal 0 = 0]
import Mathlib
import Optlib


open Set Bornology Filter BigOperators Topology BCD

open BCD

theorem extracted_formal_statement_166 : ENNReal.toReal 0 = 0 := sorry

Tactic state before:
E : Type u_1
F : Type u_2
inst✝⁷ : NormedAddCommGroup E
inst✝⁶ : InnerProductSpace ℝ E
inst✝⁵ : CompleteSpace E
inst✝⁴ : NormedAddCommGroup F
inst✝³ : InnerProductSpace ℝ F
inst✝² : CompleteSpace F
f : E → ℝ
g : F → ℝ
H : WithLp 2 (E × F) → ℝ
x0 : E
y0 : F
l : NNReal
alg : BCD f g H l x0 y0
inst✝¹ : ProperSpace E
inst✝ : ProperSpace F
γ : ℝ
hγ : γ > 1
ck : ∀ (k : ℕ), alg.c k = 1 / (γ * ↑l)
dk : ∀ (k : ℕ), alg.d k = 1 / (γ * ↑l)
bd : Bornology.IsBounded (z '' univ)
lbdψ : BddBelow (ψ '' univ)
a b : Set (WithLp 2 (E × F))
closea : IsClosed a
closeb : IsClosed b
sub_ab : limit_set z ⊆ a ∪ b
nez_a : (limit_set z ∩ a).Nonempty
nez_b : (limit_set z ∩ b).Nonempty
nz_ab : limit_set z ∩ (a ∩ b) = ∅
A : Set (WithLp 2 (E × F)) := limit_set z ∩ a
B : Set (WithLp 2 (E × F)) := limit_set z ∩ b
eqAB : A ∪ B = limit_set z
disjoint_AB : A ∩ B = ∅
ω : WithLp 2 (E × F) → ℝ :=
  fun z => (EMetric.infEdist z A).toReal / ((EMetric.infEdist z A).toReal + (EMetric.infEdist z B).toReal)
sum_ne_zero : ∀ (z : WithLp 2 (E × F)), (EMetric.infEdist z A).toReal + (EMetric.infEdist z B).toReal ≠ 0
contω : Continuous ω
U : Set (WithLp 2 (E × F)) := {z | ω z < 1 / 4}
V : Set (WithLp 2 (E × F)) := {z | 3 / 4 < ω z}
A0 : ∀ z_ ∈ A, ω z_ = 0
z_ : WithLp 2 (E × F)
zB : z_ ∈ B
⊢ (EMetric.infEdist z_ B).toReal = 0

Tactic:
rw [EMetric.infEdist_zero_of_mem zB]

Tactic state after:
[E : Type u_1
 F : Type u_2
 inst✝⁷ : NormedAddCommGroup E
 inst✝⁶ : InnerProductSpace ℝ E
 inst✝⁵ : CompleteSpace E
 inst✝⁴ : NormedAddCommGroup F
 inst✝³ : InnerProductSpace ℝ F
 inst✝² : CompleteSpace F
 f : E → ℝ
 g : F → ℝ
 H : WithLp 2 (E × F) → ℝ
 x0 : E
 y0 : F
 l : NNReal
 alg : BCD f g H l x0 y0
 inst✝¹ : ProperSpace E
 inst✝ : ProperSpace F
 γ : ℝ
 hγ : γ > 1
 ck : ∀ (k : ℕ), alg.c k = 1 / (γ * ↑l)
 dk : ∀ (k : ℕ), alg.d k = 1 / (γ * ↑l)
 bd : Bornology.IsBounded (z '' univ)
 lbdψ : BddBelow (ψ '' univ)
 a b : Set (WithLp 2 (E × F))
 closea : IsClosed a
 closeb : IsClosed b
 sub_ab : limit_set z ⊆ a ∪ b
 nez_a : (limit_set z ∩ a).Nonempty
 nez_b : (limit_set z ∩ b).Nonempty
 nz_ab : limit_set z ∩ (a ∩ b) = ∅
 A : Set (WithLp 2 (E × F)) := limit_set z ∩ a
 B : Set (WithLp 2 (E × F)) := limit_set z ∩ b
 eqAB : A ∪ B = limit_set z
 disjoint_AB : A ∩ B = ∅
 ω : WithLp 2 (E × F) → ℝ :=
   fun z => (EMetric.infEdist z A).toReal / ((EMetric.infEdist z A).toReal + (EMetric.infEdist z B).toReal)
 sum_ne_zero : ∀ (z : WithLp 2 (E × F)), (EMetric.infEdist z A).toReal + (EMetric.infEdist z B).toReal ≠ 0
 contω : Continuous ω
 U : Set (WithLp 2 (E × F)) := {z | ω z < 1 / 4}
 V : Set (WithLp 2 (E × F)) := {z | 3 / 4 < ω z}
 A0 : ∀ z_ ∈ A, ω z_ = 0
 z_ : WithLp 2 (E × F)
 zB : z_ ∈ B
 ⊢ ENNReal.toReal 0 = 0]
import Mathlib
import Optlib


open Set Bornology Filter BigOperators Topology BCD

open BCD

theorem extracted_formal_statement_202.{u_2, u_1} {E : Type u_1} {F : Type u_2} [inst : NormedAddCommGroup E]
  [inst_1 : InnerProductSpace ℝ E] [inst_2 : CompleteSpace E] [inst_3 : NormedAddCommGroup F]
  [inst_4 : InnerProductSpace ℝ F] [inst_5 : CompleteSpace F] {f : E → ℝ} {g : F → ℝ} {H : WithLp 2 (E × F) → ℝ}
  {x0 : E} {y0 : F} {l : NNReal} {alg : BCD f g H l x0 y0} [inst_6 : ProperSpace E] [inst_7 : ProperSpace F] (γ : ℝ)
  (hγ : γ > 1) (ck : ∀ (k : ℕ), alg.c k = 1 / (γ * ↑l)) (dk : ∀ (k : ℕ), alg.d k = 1 / (γ * ↑l))
  (bd : Bornology.IsBounded (z '' univ)) (lbdψ : BddBelow (ψ '' univ)) (monopsi : Antitone (ψ ∘ z))
  (h1 : Tendsto (ψ ∘ z) atTop atBot) (notbd : ¬BddBelow (range (ψ ∘ z))) (h_original_goal : range (ψ ∘ z) ⊆ ψ '' univ) :
  range (ψ ∘ z) ⊆ range ψ := sorry

Tactic state before:
E : Type u_1
F : Type u_2
inst✝⁷ : NormedAddCommGroup E
inst✝⁶ : InnerProductSpace ℝ E
inst✝⁵ : CompleteSpace E
inst✝⁴ : NormedAddCommGroup F
inst✝³ : InnerProductSpace ℝ F
inst✝² : CompleteSpace F
f : E → ℝ
g : F → ℝ
H : WithLp 2 (E × F) → ℝ
x0 : E
y0 : F
l : NNReal
alg : BCD f g H l x0 y0
inst✝¹ : ProperSpace E
inst✝ : ProperSpace F
γ : ℝ
hγ : γ > 1
ck : ∀ (k : ℕ), alg.c k = 1 / (γ * ↑l)
dk : ∀ (k : ℕ), alg.d k = 1 / (γ * ↑l)
bd : Bornology.IsBounded (z '' univ)
lbdψ : BddBelow (ψ '' univ)
monopsi : Antitone (ψ ∘ z)
h1 : Tendsto (ψ ∘ z) atTop atBot
notbd : ¬BddBelow (range (ψ ∘ z))
⊢ range (ψ ∘ z) ⊆ ψ '' univ

Tactic:
simp

Tactic state after:
[E : Type u_1
 F : Type u_2
 inst✝⁷ : NormedAddCommGroup E
 inst✝⁶ : InnerProductSpace ℝ E
 inst✝⁵ : CompleteSpace E
 inst✝⁴ : NormedAddCommGroup F
 inst✝³ : InnerProductSpace ℝ F
 inst✝² : CompleteSpace F
 f : E → ℝ
 g : F → ℝ
 H : WithLp 2 (E × F) → ℝ
 x0 : E
 y0 : F
 l : NNReal
 alg : BCD f g H l x0 y0
 inst✝¹ : ProperSpace E
 inst✝ : ProperSpace F
 γ : ℝ
 hγ : γ > 1
 ck : ∀ (k : ℕ), alg.c k = 1 / (γ * ↑l)
 dk : ∀ (k : ℕ), alg.d k = 1 / (γ * ↑l)
 bd : Bornology.IsBounded (z '' univ)
 lbdψ : BddBelow (ψ '' univ)
 monopsi : Antitone (ψ ∘ z)
 h1 : Tendsto (ψ ∘ z) atTop atBot
 notbd : ¬BddBelow (range (ψ ∘ z))
 ⊢ range (ψ ∘ z) ⊆ range ψ]
import Mathlib
import Optlib


open Set Bornology Filter BigOperators Topology BCD

open BCD

theorem extracted_formal_statement_203.{u_2, u_1} {E : Type u_1} {F : Type u_2} [inst : NormedAddCommGroup E]
  [inst_1 : InnerProductSpace ℝ E] [inst_2 : CompleteSpace E] [inst_3 : NormedAddCommGroup F]
  [inst_4 : InnerProductSpace ℝ F] [inst_5 : CompleteSpace F] {f : E → ℝ} {g : F → ℝ} {H : WithLp 2 (E × F) → ℝ}
  {x0 : E} {y0 : F} {l : NNReal} {alg : BCD f g H l x0 y0} [inst_6 : ProperSpace E] [inst_7 : ProperSpace F] (γ : ℝ)
  (hγ : γ > 1) (ck : ∀ (k : ℕ), alg.c k = 1 / (γ * ↑l)) (dk : ∀ (k : ℕ), alg.d k = 1 / (γ * ↑l))
  (bd : Bornology.IsBounded (z '' univ)) (lbdψ : BddBelow (ψ '' univ)) (monopsi : Antitone (ψ ∘ z))
  (h1 : Tendsto (ψ ∘ z) atTop atBot) (notbd : ¬BddBelow (range (ψ ∘ z))) : range (ψ ∘ z) ⊆ range ψ := sorry

Tactic state before:
E : Type u_1
F : Type u_2
inst✝⁷ : NormedAddCommGroup E
inst✝⁶ : InnerProductSpace ℝ E
inst✝⁵ : CompleteSpace E
inst✝⁴ : NormedAddCommGroup F
inst✝³ : InnerProductSpace ℝ F
inst✝² : CompleteSpace F
f : E → ℝ
g : F → ℝ
H : WithLp 2 (E × F) → ℝ
x0 : E
y0 : F
l : NNReal
alg : BCD f g H l x0 y0
inst✝¹ : ProperSpace E
inst✝ : ProperSpace F
γ : ℝ
hγ : γ > 1
ck : ∀ (k : ℕ), alg.c k = 1 / (γ * ↑l)
dk : ∀ (k : ℕ), alg.d k = 1 / (γ * ↑l)
bd : Bornology.IsBounded (z '' univ)
lbdψ : BddBelow (ψ '' univ)
monopsi : Antitone (ψ ∘ z)
h1 : Tendsto (ψ ∘ z) atTop atBot
notbd : ¬BddBelow (range (ψ ∘ z))
⊢ range (ψ ∘ z) ⊆ range ψ

Tactic:
apply range_comp_subset_range

Tactic state after:
import Mathlib
import Optlib


open Set Bornology Filter BigOperators Topology BCD

open BCD

theorem extracted_formal_statement_204.{u_2, u_1} {E : Type u_1} {F : Type u_2} [inst : NormedAddCommGroup E]
  [inst_1 : InnerProductSpace ℝ E] [inst_2 : CompleteSpace E] [inst_3 : NormedAddCommGroup F]
  [inst_4 : InnerProductSpace ℝ F] [inst_5 : CompleteSpace F] {f : E → ℝ} {g : F → ℝ} {H : WithLp 2 (E × F) → ℝ}
  {x0 : E} {y0 : F} {l : NNReal} {alg : BCD f g H l x0 y0} [inst_6 : ProperSpace E] [inst_7 : ProperSpace F] (γ : ℝ)
  (hγ : γ > 1) (ck : ∀ (k : ℕ), alg.c k = 1 / (γ * ↑l)) (dk : ∀ (k : ℕ), alg.d k = 1 / (γ * ↑l))
  (bd : Bornology.IsBounded (z '' univ)) (lbdψ : BddBelow (ψ '' univ)) (monopsi : Antitone (ψ ∘ z))
  (h2 : ∃ l_1, Tendsto (ψ ∘ z) atTop (𝓝 l_1)) : ∃ ψ_final, Tendsto (ψ ∘ z) atTop (𝓝 ψ_final) := sorry

Tactic state before:
case inr
E : Type u_1
F : Type u_2
inst✝⁷ : NormedAddCommGroup E
inst✝⁶ : InnerProductSpace ℝ E
inst✝⁵ : CompleteSpace E
inst✝⁴ : NormedAddCommGroup F
inst✝³ : InnerProductSpace ℝ F
inst✝² : CompleteSpace F
f : E → ℝ
g : F → ℝ
H : WithLp 2 (E × F) → ℝ
x0 : E
y0 : F
l : NNReal
alg : BCD f g H l x0 y0
inst✝¹ : ProperSpace E
inst✝ : ProperSpace F
γ : ℝ
hγ : γ > 1
ck : ∀ (k : ℕ), alg.c k = 1 / (γ * ↑l)
dk : ∀ (k : ℕ), alg.d k = 1 / (γ * ↑l)
bd : Bornology.IsBounded (z '' univ)
lbdψ : BddBelow (ψ '' univ)
monopsi : Antitone (ψ ∘ z)
h2 : ∃ l_1, Tendsto (ψ ∘ z) atTop (𝓝 l_1)
⊢ ∃ ψ_final, Tendsto (ψ ∘ z) atTop (𝓝 ψ_final)

Tactic:
exact h2

Tactic state after:
import Mathlib
import Optlib


open Set Bornology Filter BigOperators Topology BCD

open BCD

theorem extracted_formal_statement_205.{u_2, u_1} {E : Type u_1} {F : Type u_2} [inst : NormedAddCommGroup E]
  [inst_1 : InnerProductSpace ℝ E] [inst_2 : CompleteSpace E] [inst_3 : NormedAddCommGroup F]
  [inst_4 : InnerProductSpace ℝ F] [inst_5 : CompleteSpace F] {f : E → ℝ} {g : F → ℝ} {H : WithLp 2 (E × F) → ℝ}
  {x0 : E} {y0 : F} {l : NNReal} {alg : BCD f g H l x0 y0} [inst_6 : ProperSpace E] [inst_7 : ProperSpace F] (γ : ℝ)
  (hγ : γ > 1) (ck : ∀ (k : ℕ), alg.c k = 1 / (γ * ↑l)) (dk : ∀ (k : ℕ), alg.d k = 1 / (γ * ↑l))
  (bd : Bornology.IsBounded (z '' univ)) (lbdψ : BddBelow (ψ '' univ)) (ψ_final : ℝ)
  (hψ : Tendsto (ψ ∘ z) atTop (𝓝 ψ_final)) (z_1 : WithLp 2 (E × F)) (hz_1 : z_1 ∈ limit_set z) (φ : ℕ → ℕ)
  (monoφ : StrictMono φ) (conv : Tendsto (z ∘ φ) atTop (𝓝 z_1))
  (h_original_goal : Tendsto (ψ ∘ z ∘ φ) atTop (𝓝 ψ_final)) : map (ψ ∘ z ∘ φ) atTop ≤ map (ψ ∘ z) atTop := sorry

Tactic state before:
E : Type u_1
F : Type u_2
inst✝⁷ : NormedAddCommGroup E
inst✝⁶ : InnerProductSpace ℝ E
inst✝⁵ : CompleteSpace E
inst✝⁴ : NormedAddCommGroup F
inst✝³ : InnerProductSpace ℝ F
inst✝² : CompleteSpace F
f : E → ℝ
g : F → ℝ
H : WithLp 2 (E × F) → ℝ
x0 : E
y0 : F
l : NNReal
alg : BCD f g H l x0 y0
inst✝¹ : ProperSpace E
inst✝ : ProperSpace F
γ : ℝ
hγ : γ > 1
ck : ∀ (k : ℕ), alg.c k = 1 / (γ * ↑l)
dk : ∀ (k : ℕ), alg.d k = 1 / (γ * ↑l)
bd : Bornology.IsBounded (z '' univ)
lbdψ : BddBelow (ψ '' univ)
ψ_final : ℝ
hψ : Tendsto (ψ ∘ z) atTop (𝓝 ψ_final)
z_1 : WithLp 2 (E × F)
hz_1 : z_1 ∈ limit_set z
φ : ℕ → ℕ
monoφ : StrictMono φ
conv : Tendsto (z ∘ φ) atTop (𝓝 z_1)
⊢ Tendsto (ψ ∘ z ∘ φ) atTop (𝓝 ψ_final)

Tactic:
apply le_trans _ hψ

Tactic state after:
[E : Type u_1
 F : Type u_2
 inst✝⁷ : NormedAddCommGroup E
 inst✝⁶ : InnerProductSpace ℝ E
 inst✝⁵ : CompleteSpace E
 inst✝⁴ : NormedAddCommGroup F
 inst✝³ : InnerProductSpace ℝ F
 inst✝² : CompleteSpace F
 f : E → ℝ
 g : F → ℝ
 H : WithLp 2 (E × F) → ℝ
 x0 : E
 y0 : F
 l : NNReal
 alg : BCD f g H l x0 y0
 inst✝¹ : ProperSpace E
 inst✝ : ProperSpace F
 γ : ℝ
 hγ : γ > 1
 ck : ∀ (k : ℕ), alg.c k = 1 / (γ * ↑l)
 dk : ∀ (k : ℕ), alg.d k = 1 / (γ * ↑l)
 bd : Bornology.IsBounded (z '' univ)
 lbdψ : BddBelow (ψ '' univ)
 ψ_final : ℝ
 hψ : Tendsto (ψ ∘ z) atTop (𝓝 ψ_final)
 z_1 : WithLp 2 (E × F)
 hz_1 : z_1 ∈ limit_set z
 φ : ℕ → ℕ
 monoφ : StrictMono φ
 conv : Tendsto (z ∘ φ) atTop (𝓝 z_1)
 ⊢ map (ψ ∘ z ∘ φ) atTop ≤ map (ψ ∘ z) atTop]
import Mathlib
import Optlib


open Set Bornology Filter BigOperators Topology BCD

open BCD

theorem extracted_formal_statement_206.{u_2, u_1} {E : Type u_1} {F : Type u_2} [inst : NormedAddCommGroup E]
  [inst_1 : InnerProductSpace ℝ E] [inst_2 : CompleteSpace E] [inst_3 : NormedAddCommGroup F]
  [inst_4 : InnerProductSpace ℝ F] [inst_5 : CompleteSpace F] {f : E → ℝ} {g : F → ℝ} {H : WithLp 2 (E × F) → ℝ}
  {x0 : E} {y0 : F} {l : NNReal} {alg : BCD f g H l x0 y0} [inst_6 : ProperSpace E] [inst_7 : ProperSpace F] (γ : ℝ)
  (hγ : γ > 1) (ck : ∀ (k : ℕ), alg.c k = 1 / (γ * ↑l)) (dk : ∀ (k : ℕ), alg.d k = 1 / (γ * ↑l))
  (bd : Bornology.IsBounded (z '' univ)) (lbdψ : BddBelow (ψ '' univ)) (ψ_final : ℝ)
  (hψ : Tendsto (ψ ∘ z) atTop (𝓝 ψ_final)) (z_1 : WithLp 2 (E × F)) (hz_1 : z_1 ∈ limit_set z) (φ : ℕ → ℕ)
  (monoφ : StrictMono φ) (conv : Tendsto (z ∘ φ) atTop (𝓝 z_1))
  (h_original_goal : map (ψ ∘ z ∘ φ) atTop ≤ map (ψ ∘ z) atTop) : map ψ (map (z ∘ φ) atTop) ≤ map (ψ ∘ z) atTop := sorry

Tactic state before:
E : Type u_1
F : Type u_2
inst✝⁷ : NormedAddCommGroup E
inst✝⁶ : InnerProductSpace ℝ E
inst✝⁵ : CompleteSpace E
inst✝⁴ : NormedAddCommGroup F
inst✝³ : InnerProductSpace ℝ F
inst✝² : CompleteSpace F
f : E → ℝ
g : F → ℝ
H : WithLp 2 (E × F) → ℝ
x0 : E
y0 : F
l : NNReal
alg : BCD f g H l x0 y0
inst✝¹ : ProperSpace E
inst✝ : ProperSpace F
γ : ℝ
hγ : γ > 1
ck : ∀ (k : ℕ), alg.c k = 1 / (γ * ↑l)
dk : ∀ (k : ℕ), alg.d k = 1 / (γ * ↑l)
bd : Bornology.IsBounded (z '' univ)
lbdψ : BddBelow (ψ '' univ)
ψ_final : ℝ
hψ : Tendsto (ψ ∘ z) atTop (𝓝 ψ_final)
z_1 : WithLp 2 (E × F)
hz_1 : z_1 ∈ limit_set z
φ : ℕ → ℕ
monoφ : StrictMono φ
conv : Tendsto (z ∘ φ) atTop (𝓝 z_1)
⊢ map (ψ ∘ z ∘ φ) atTop ≤ map (ψ ∘ z) atTop

Tactic:
rw [← Filter.map_map]

Tactic state after:
[E : Type u_1
 F : Type u_2
 inst✝⁷ : NormedAddCommGroup E
 inst✝⁶ : InnerProductSpace ℝ E
 inst✝⁵ : CompleteSpace E
 inst✝⁴ : NormedAddCommGroup F
 inst✝³ : InnerProductSpace ℝ F
 inst✝² : CompleteSpace F
 f : E → ℝ
 g : F → ℝ
 H : WithLp 2 (E × F) → ℝ
 x0 : E
 y0 : F
 l : NNReal
 alg : BCD f g H l x0 y0
 inst✝¹ : ProperSpace E
 inst✝ : ProperSpace F
 γ : ℝ
 hγ : γ > 1
 ck : ∀ (k : ℕ), alg.c k = 1 / (γ * ↑l)
 dk : ∀ (k : ℕ), alg.d k = 1 / (γ * ↑l)
 bd : Bornology.IsBounded (z '' univ)
 lbdψ : BddBelow (ψ '' univ)
 ψ_final : ℝ
 hψ : Tendsto (ψ ∘ z) atTop (𝓝 ψ_final)
 z_1 : WithLp 2 (E × F)
 hz_1 : z_1 ∈ limit_set z
 φ : ℕ → ℕ
 monoφ : StrictMono φ
 conv : Tendsto (z ∘ φ) atTop (𝓝 z_1)
 ⊢ map ψ (map (z ∘ φ) atTop) ≤ map (ψ ∘ z) atTop]
import Mathlib
import Optlib


open Set Bornology Filter BigOperators Topology BCD

open BCD

theorem extracted_formal_statement_207.{u_2, u_1} {E : Type u_1} {F : Type u_2} [inst : NormedAddCommGroup E]
  [inst_1 : InnerProductSpace ℝ E] [inst_2 : CompleteSpace E] [inst_3 : NormedAddCommGroup F]
  [inst_4 : InnerProductSpace ℝ F] [inst_5 : CompleteSpace F] {f : E → ℝ} {g : F → ℝ} {H : WithLp 2 (E × F) → ℝ}
  {x0 : E} {y0 : F} {l : NNReal} {alg : BCD f g H l x0 y0} [inst_6 : ProperSpace E] [inst_7 : ProperSpace F] (γ : ℝ)
  (hγ : γ > 1) (ck : ∀ (k : ℕ), alg.c k = 1 / (γ * ↑l)) (dk : ∀ (k : ℕ), alg.d k = 1 / (γ * ↑l))
  (bd : Bornology.IsBounded (z '' univ)) (lbdψ : BddBelow (ψ '' univ)) (ψ_final : ℝ)
  (hψ : Tendsto (ψ ∘ z) atTop (𝓝 ψ_final)) (z_1 : WithLp 2 (E × F)) (hz_1 : z_1 ∈ limit_set z) (φ : ℕ → ℕ)
  (monoφ : StrictMono φ) (conv : Tendsto (z ∘ φ) atTop (𝓝 z_1)) : map ψ (map (z ∘ φ) atTop) ≤ map (ψ ∘ z) atTop := sorry

Tactic state before:
E : Type u_1
F : Type u_2
inst✝⁷ : NormedAddCommGroup E
inst✝⁶ : InnerProductSpace ℝ E
inst✝⁵ : CompleteSpace E
inst✝⁴ : NormedAddCommGroup F
inst✝³ : InnerProductSpace ℝ F
inst✝² : CompleteSpace F
f : E → ℝ
g : F → ℝ
H : WithLp 2 (E × F) → ℝ
x0 : E
y0 : F
l : NNReal
alg : BCD f g H l x0 y0
inst✝¹ : ProperSpace E
inst✝ : ProperSpace F
γ : ℝ
hγ : γ > 1
ck : ∀ (k : ℕ), alg.c k = 1 / (γ * ↑l)
dk : ∀ (k : ℕ), alg.d k = 1 / (γ * ↑l)
bd : Bornology.IsBounded (z '' univ)
lbdψ : BddBelow (ψ '' univ)
ψ_final : ℝ
hψ : Tendsto (ψ ∘ z) atTop (𝓝 ψ_final)
z_1 : WithLp 2 (E × F)
hz_1 : z_1 ∈ limit_set z
φ : ℕ → ℕ
monoφ : StrictMono φ
conv : Tendsto (z ∘ φ) atTop (𝓝 z_1)
⊢ map ψ (map (z ∘ φ) atTop) ≤ map (ψ ∘ z) atTop

Tactic:
apply map_mono $ StrictMono.tendsto_atTop monoφ

Tactic state after:
import Mathlib
import Optlib


open Set Bornology Filter BigOperators Topology BCD

open BCD

theorem extracted_formal_statement_208 {φ : ℝ → ℝ} {η x y : ℝ} (hx : x ∈ Ioo 0 η) (hy : y ∈ Ioo 0 η)
  (h1 : ConcaveOn ℝ (Ico 0 η) φ) (left : φ 0 = 0) (left_1 : ContDiffOn ℝ 1 φ (Ioo 0 η)) (left_2 : ContinuousAt φ 0)
  (h6 : ∀ x ∈ Ioo 0 η, deriv φ x > 0) (hdiff : DifferentiableAt ℝ φ x) :
  let hx' := Ioo_subset_Ico_self hx;
  let hy' := Ioo_subset_Ico_self hy;
  x = y → φ x - φ y ≥ deriv φ x * (x - y) → φ y - φ y ≥ deriv φ y * (y - y) := sorry

Tactic state before:
case intro.intro.intro.intro.inl
φ : ℝ → ℝ
η x y : ℝ
hx : x ∈ Ioo 0 η
hy : y ∈ Ioo 0 η
h1 : ConcaveOn ℝ (Ico 0 η) φ
left✝² : φ 0 = 0
left✝¹ : ContDiffOn ℝ 1 φ (Ioo 0 η)
left✝ : ContinuousAt φ 0
h6 : ∀ x ∈ Ioo 0 η, deriv φ x > 0
hdiff : DifferentiableAt ℝ φ x
hx' : x ∈ Ico 0 η := Ioo_subset_Ico_self hx
hy' : y ∈ Ico 0 η := Ioo_subset_Ico_self hy
heq : x = y
⊢ φ x - φ y ≥ deriv φ x * (x - y)

Tactic:
rw [heq]

Tactic state after:
[case intro.intro.intro.intro.inl
 φ : ℝ → ℝ
 η x y : ℝ
 hx : x ∈ Ioo 0 η
 hy : y ∈ Ioo 0 η
 h1 : ConcaveOn ℝ (Ico 0 η) φ
 left✝² : φ 0 = 0
 left✝¹ : ContDiffOn ℝ 1 φ (Ioo 0 η)
 left✝ : ContinuousAt φ 0
 h6 : ∀ x ∈ Ioo 0 η, deriv φ x > 0
 hdiff : DifferentiableAt ℝ φ x
 hx' : x ∈ Ico 0 η := Ioo_subset_Ico_self hx
 hy' : y ∈ Ico 0 η := Ioo_subset_Ico_self hy
 heq : x = y
 ⊢ φ y - φ y ≥ deriv φ y * (y - y)]
import Mathlib
import Optlib


open Set Bornology Filter BigOperators Topology BCD

open BCD

theorem extracted_formal_statement_209 {φ : ℝ → ℝ} {η x y : ℝ} (hx : x ∈ Ioo 0 η) (hy : y ∈ Ioo 0 η)
  (h1 : ConcaveOn ℝ (Ico 0 η) φ) (left : φ 0 = 0) (left_1 : ContDiffOn ℝ 1 φ (Ioo 0 η)) (left_2 : ContinuousAt φ 0)
  (h6 : ∀ x ∈ Ioo 0 η, deriv φ x > 0) (hdiff : DifferentiableAt ℝ φ x) :
  let hx' := Ioo_subset_Ico_self hx;
  let hy' := Ioo_subset_Ico_self hy;
  x = y → φ y - φ y ≥ deriv φ y * (y - y) := sorry

Tactic state before:
case intro.intro.intro.intro.inl
φ : ℝ → ℝ
η x y : ℝ
hx : x ∈ Ioo 0 η
hy : y ∈ Ioo 0 η
h1 : ConcaveOn ℝ (Ico 0 η) φ
left✝² : φ 0 = 0
left✝¹ : ContDiffOn ℝ 1 φ (Ioo 0 η)
left✝ : ContinuousAt φ 0
h6 : ∀ x ∈ Ioo 0 η, deriv φ x > 0
hdiff : DifferentiableAt ℝ φ x
hx' : x ∈ Ico 0 η := Ioo_subset_Ico_self hx
hy' : y ∈ Ico 0 η := Ioo_subset_Ico_self hy
heq : x = y
⊢ φ y - φ y ≥ deriv φ y * (y - y)

Tactic:
simp only [sub_self, mul_zero, ge_iff_le, le_refl]

Tactic state after:
import Mathlib
import Optlib


open Set Bornology Filter BigOperators Topology BCD

open BCD

theorem extracted_formal_statement_210 {φ : ℝ → ℝ} {η x y : ℝ} (hx : x ∈ Ioo 0 η) (hy : y ∈ Ioo 0 η)
  (h1 : ConcaveOn ℝ (Ico 0 η) φ) (left : φ 0 = 0) (left_1 : ContDiffOn ℝ 1 φ (Ioo 0 η)) (left_2 : ContinuousAt φ 0)
  (h6 : ∀ x ∈ Ioo 0 η, deriv φ x > 0) (hdiff : DifferentiableAt ℝ φ x) :
  let hx' := Ioo_subset_Ico_self hx;
  let hy' := Ioo_subset_Ico_self hy;
  x < y → slope φ x y ≤ deriv φ x → φ x - φ y ≥ deriv φ x * (x - y) → 0 < y - x := sorry

Tactic state before:
case intro.intro.intro.intro.inr.inl
φ : ℝ → ℝ
η x y : ℝ
hx : x ∈ Ioo 0 η
hy : y ∈ Ioo 0 η
h1 : ConcaveOn ℝ (Ico 0 η) φ
left✝² : φ 0 = 0
left✝¹ : ContDiffOn ℝ 1 φ (Ioo 0 η)
left✝ : ContinuousAt φ 0
h6 : ∀ x ∈ Ioo 0 η, deriv φ x > 0
hdiff : DifferentiableAt ℝ φ x
hx' : x ∈ Ico 0 η := Ioo_subset_Ico_self hx
hy' : y ∈ Ico 0 η := Ioo_subset_Ico_self hy
ygt : x < y
h : slope φ x y ≤ deriv φ x
⊢ φ x - φ y ≥ deriv φ x * (x - y)

Tactic:
rw [slope_def_field, div_le_iff₀] at h

Tactic state after:
[case intro.intro.intro.intro.inr.inl
 φ : ℝ → ℝ
 η x y : ℝ
 hx : x ∈ Ioo 0 η
 hy : y ∈ Ioo 0 η
 h1 : ConcaveOn ℝ (Ico 0 η) φ
 left✝² : φ 0 = 0
 left✝¹ : ContDiffOn ℝ 1 φ (Ioo 0 η)
 left✝ : ContinuousAt φ 0
 h6 : ∀ x ∈ Ioo 0 η, deriv φ x > 0
 hdiff : DifferentiableAt ℝ φ x
 hx' : x ∈ Ico 0 η := Ioo_subset_Ico_self hx
 hy' : y ∈ Ico 0 η := Ioo_subset_Ico_self hy
 ygt : x < y
 h : φ y - φ x ≤ deriv φ x * (y - x)
 ⊢ φ x - φ y ≥ deriv φ x * (x - y),
 case intro.intro.intro.intro.inr.inl
 φ : ℝ → ℝ
 η x y : ℝ
 hx : x ∈ Ioo 0 η
 hy : y ∈ Ioo 0 η
 h1 : ConcaveOn ℝ (Ico 0 η) φ
 left✝² : φ 0 = 0
 left✝¹ : ContDiffOn ℝ 1 φ (Ioo 0 η)
 left✝ : ContinuousAt φ 0
 h6 : ∀ x ∈ Ioo 0 η, deriv φ x > 0
 hdiff : DifferentiableAt ℝ φ x
 hx' : x ∈ Ico 0 η := Ioo_subset_Ico_self hx
 hy' : y ∈ Ico 0 η := Ioo_subset_Ico_self hy
 ygt : x < y
 h : (φ y - φ x) / (y - x) ≤ deriv φ x
 ⊢ 0 < y - x]
import Mathlib
import Optlib


open Set Bornology Filter BigOperators Topology BCD

open BCD

theorem extracted_formal_statement_211 {φ : ℝ → ℝ} {η x y : ℝ} (hx : x ∈ Ioo 0 η) (hy : y ∈ Ioo 0 η)
  (h1 : ConcaveOn ℝ (Ico 0 η) φ) (left : φ 0 = 0) (left_1 : ContDiffOn ℝ 1 φ (Ioo 0 η)) (left_2 : ContinuousAt φ 0)
  (h6 : ∀ x ∈ Ioo 0 η, deriv φ x > 0) (hdiff : DifferentiableAt ℝ φ x) :
  let hx' := Ioo_subset_Ico_self hx;
  let hy' := Ioo_subset_Ico_self hy;
  y < x → deriv φ x ≤ slope φ y x → φ x - φ y ≥ deriv φ x * (x - y) → 0 < x - y := sorry

Tactic state before:
case intro.intro.intro.intro.inr.inr
φ : ℝ → ℝ
η x y : ℝ
hx : x ∈ Ioo 0 η
hy : y ∈ Ioo 0 η
h1 : ConcaveOn ℝ (Ico 0 η) φ
left✝² : φ 0 = 0
left✝¹ : ContDiffOn ℝ 1 φ (Ioo 0 η)
left✝ : ContinuousAt φ 0
h6 : ∀ x ∈ Ioo 0 η, deriv φ x > 0
hdiff : DifferentiableAt ℝ φ x
hx' : x ∈ Ico 0 η := Ioo_subset_Ico_self hx
hy' : y ∈ Ico 0 η := Ioo_subset_Ico_self hy
xgt : y < x
h : deriv φ x ≤ slope φ y x
⊢ φ x - φ y ≥ deriv φ x * (x - y)

Tactic:
rw [slope_def_field, le_div_iff₀] at h

Tactic state after:
[case intro.intro.intro.intro.inr.inr
 φ : ℝ → ℝ
 η x y : ℝ
 hx : x ∈ Ioo 0 η
 hy : y ∈ Ioo 0 η
 h1 : ConcaveOn ℝ (Ico 0 η) φ
 left✝² : φ 0 = 0
 left✝¹ : ContDiffOn ℝ 1 φ (Ioo 0 η)
 left✝ : ContinuousAt φ 0
 h6 : ∀ x ∈ Ioo 0 η, deriv φ x > 0
 hdiff : DifferentiableAt ℝ φ x
 hx' : x ∈ Ico 0 η := Ioo_subset_Ico_self hx
 hy' : y ∈ Ico 0 η := Ioo_subset_Ico_self hy
 xgt : y < x
 h : deriv φ x * (x - y) ≤ φ x - φ y
 ⊢ φ x - φ y ≥ deriv φ x * (x - y),
 case intro.intro.intro.intro.inr.inr
 φ : ℝ → ℝ
 η x y : ℝ
 hx : x ∈ Ioo 0 η
 hy : y ∈ Ioo 0 η
 h1 : ConcaveOn ℝ (Ico 0 η) φ
 left✝² : φ 0 = 0
 left✝¹ : ContDiffOn ℝ 1 φ (Ioo 0 η)
 left✝ : ContinuousAt φ 0
 h6 : ∀ x ∈ Ioo 0 η, deriv φ x > 0
 hdiff : DifferentiableAt ℝ φ x
 hx' : x ∈ Ico 0 η := Ioo_subset_Ico_self hx
 hy' : y ∈ Ico 0 η := Ioo_subset_Ico_self hy
 xgt : y < x
 h : deriv φ x ≤ (φ x - φ y) / (x - y)
 ⊢ 0 < x - y]