internlm/Lean-Github huggingface dataset:
Theorem: W21_approximation
Proof state before:
case hp.refine_1
E : Type u_1
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace ℝ E
n : ℕ
f : W21
g : trunc
f' : W1 1 ℂ := W1.deriv f
f'' : W1 0 ℂ := f'.deriv
g' : CS 1 ℝ := g.deriv
g'' : CS 0 ℝ := g'.deriv
h : ℝ → ℝ → ℝ := fun R v => 1 - (g.scale R).toFun v
h' : ℝ → CS 1 ℝ := fun R => -(g.scale R).deriv
h'' : ℝ → CS 0 ℝ := fun R => -(g.scale R).deriv.deriv
ch : ∀ {R : ℝ}, Continuous fun v => ↑(h R v)
ch' : ∀ {R : ℝ}, Continuous fun v => ↑((h' R).toFun v)
ch'' : ∀ {R : ℝ}, Continuous fun v => ↑((h'' R).toFun v)
dh : ∀ (R v : ℝ), HasDerivAt (h R) ((h' R).toFun v) v
dh' : ∀ (R v : ℝ), HasDerivAt (h' R).toFun ((h'' R).toFun v) v
hh1 : ∀ (R v : ℝ), |h R v| ≤ 1
vR : ∀ (v : ℝ), Tendsto (fun R => v * R⁻¹) atTop (𝓝 0)
F : ℝ → ℝ → ℝ :=
  fun R v => ‖↑((h'' R).toFun v) * f.toFun v + 2 * ↑((h' R).toFun v) * f'.toFun v + ↑(h R v) * f''.toFun v‖
c1 : ℝ
mg' : ∀ (v : ℝ), ‖g'.toFun v‖ ≤ c1
c2 : ℝ
mg'' : ∀ (v : ℝ), ‖g''.toFun v‖ ≤ c2
bound : ℝ → ℝ := fun v => c2 * ‖f.toFun v‖ + 2 * c1 * ‖f'.toFun v‖ + ‖f''.toFun v‖
e1 : ∀ᶠ (n : ℝ) in atTop, AEStronglyMeasurable (F n) volume
e2 : ∀ᶠ (R : ℝ) in atTop, ∀ᵐ (a : ℝ), ‖F R a‖ ≤ bound a
e3 : Integrable bound volume
v : ℝ
evg' : g'.toFun =ᶠ[𝓝 0] 0
evg'' : g''.toFun =ᶠ[𝓝 0] 0
eh'' : ∀ (v : ℝ), ∀ᶠ (R : ℝ) in atTop, (h'' R).toFun v = 0
⊢ atTop.ZeroAtFilter fun n => ↑((h'' n).toFun v) * f.toFun v
Tactic:
apply tendsto_nhds_of_eventually_eq
Proof state after:
case hp.refine_1.h
E : Type u_1
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace ℝ E
n : ℕ
f : W21
g : trunc
f' : W1 1 ℂ := W1.deriv f
f'' : W1 0 ℂ := f'.deriv
g' : CS 1 ℝ := g.deriv
g'' : CS 0 ℝ := g'.deriv
h : ℝ → ℝ → ℝ := fun R v => 1 - (g.scale R).toFun v
h' : ℝ → CS 1 ℝ := fun R => -(g.scale R).deriv
h'' : ℝ → CS 0 ℝ := fun R => -(g.scale R).deriv.deriv
ch : ∀ {R : ℝ}, Continuous fun v => ↑(h R v)
ch' : ∀ {R : ℝ}, Continuous fun v => ↑((h' R).toFun v)
ch'' : ∀ {R : ℝ}, Continuous fun v => ↑((h'' R).toFun v)
dh : ∀ (R v : ℝ), HasDerivAt (h R) ((h' R).toFun v) v
dh' : ∀ (R v : ℝ), HasDerivAt (h' R).toFun ((h'' R).toFun v) v
hh1 : ∀ (R v : ℝ), |h R v| ≤ 1
vR : ∀ (v : ℝ), Tendsto (fun R => v * R⁻¹) atTop (𝓝 0)
F : ℝ → ℝ → ℝ :=
  fun R v => ‖↑((h'' R).toFun v) * f.toFun v + 2 * ↑((h' R).toFun v) * f'.toFun v + ↑(h R v) * f''.toFun v‖
c1 : ℝ
mg' : ∀ (v : ℝ), ‖g'.toFun v‖ ≤ c1
c2 : ℝ
mg'' : ∀ (v : ℝ), ‖g''.toFun v‖ ≤ c2
bound : ℝ → ℝ := fun v => c2 * ‖f.toFun v‖ + 2 * c1 * ‖f'.toFun v‖ + ‖f''.toFun v‖
e1 : ∀ᶠ (n : ℝ) in atTop, AEStronglyMeasurable (F n) volume
e2 : ∀ᶠ (R : ℝ) in atTop, ∀ᵐ (a : ℝ), ‖F R a‖ ≤ bound a
e3 : Integrable bound volume
v : ℝ
evg' : g'.toFun =ᶠ[𝓝 0] 0
evg'' : g''.toFun =ᶠ[𝓝 0] 0
eh'' : ∀ (v : ℝ), ∀ᶠ (R : ℝ) in atTop, (h'' R).toFun v = 0
⊢ ∀ᶠ (x' : ℝ) in atTop, ↑((h'' x').toFun v) * f.toFun v = 0
Theorem: W21_approximation
Proof state before:
case hp.refine_1.h
E : Type u_1
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace ℝ E
n : ℕ
f : W21
g : trunc
f' : W1 1 ℂ := W1.deriv f
f'' : W1 0 ℂ := f'.deriv
g' : CS 1 ℝ := g.deriv
g'' : CS 0 ℝ := g'.deriv
h : ℝ → ℝ → ℝ := fun R v => 1 - (g.scale R).toFun v
h' : ℝ → CS 1 ℝ := fun R => -(g.scale R).deriv
h'' : ℝ → CS 0 ℝ := fun R => -(g.scale R).deriv.deriv
ch : ∀ {R : ℝ}, Continuous fun v => ↑(h R v)
ch' : ∀ {R : ℝ}, Continuous fun v => ↑((h' R).toFun v)
ch'' : ∀ {R : ℝ}, Continuous fun v => ↑((h'' R).toFun v)
dh : ∀ (R v : ℝ), HasDerivAt (h R) ((h' R).toFun v) v
dh' : ∀ (R v : ℝ), HasDerivAt (h' R).toFun ((h'' R).toFun v) v
hh1 : ∀ (R v : ℝ), |h R v| ≤ 1
vR : ∀ (v : ℝ), Tendsto (fun R => v * R⁻¹) atTop (𝓝 0)
F : ℝ → ℝ → ℝ :=
  fun R v => ‖↑((h'' R).toFun v) * f.toFun v + 2 * ↑((h' R).toFun v) * f'.toFun v + ↑(h R v) * f''.toFun v‖
c1 : ℝ
mg' : ∀ (v : ℝ), ‖g'.toFun v‖ ≤ c1
c2 : ℝ
mg'' : ∀ (v : ℝ), ‖g''.toFun v‖ ≤ c2
bound : ℝ → ℝ := fun v => c2 * ‖f.toFun v‖ + 2 * c1 * ‖f'.toFun v‖ + ‖f''.toFun v‖
e1 : ∀ᶠ (n : ℝ) in atTop, AEStronglyMeasurable (F n) volume
e2 : ∀ᶠ (R : ℝ) in atTop, ∀ᵐ (a : ℝ), ‖F R a‖ ≤ bound a
e3 : Integrable bound volume
v : ℝ
evg' : g'.toFun =ᶠ[𝓝 0] 0
evg'' : g''.toFun =ᶠ[𝓝 0] 0
eh'' : ∀ (v : ℝ), ∀ᶠ (R : ℝ) in atTop, (h'' R).toFun v = 0
⊢ ∀ᶠ (x' : ℝ) in atTop, ↑((h'' x').toFun v) * f.toFun v = 0
Tactic:
filter_upwards [eh'' v] with R hR
Proof state after:
case h
E : Type u_1
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace ℝ E
n : ℕ
f : W21
g : trunc
f' : W1 1 ℂ := W1.deriv f
f'' : W1 0 ℂ := f'.deriv
g' : CS 1 ℝ := g.deriv
g'' : CS 0 ℝ := g'.deriv
h : ℝ → ℝ → ℝ := fun R v => 1 - (g.scale R).toFun v
h' : ℝ → CS 1 ℝ := fun R => -(g.scale R).deriv
h'' : ℝ → CS 0 ℝ := fun R => -(g.scale R).deriv.deriv
ch : ∀ {R : ℝ}, Continuous fun v => ↑(h R v)
ch' : ∀ {R : ℝ}, Continuous fun v => ↑((h' R).toFun v)
ch'' : ∀ {R : ℝ}, Continuous fun v => ↑((h'' R).toFun v)
dh : ∀ (R v : ℝ), HasDerivAt (h R) ((h' R).toFun v) v
dh' : ∀ (R v : ℝ), HasDerivAt (h' R).toFun ((h'' R).toFun v) v
hh1 : ∀ (R v : ℝ), |h R v| ≤ 1
vR : ∀ (v : ℝ), Tendsto (fun R => v * R⁻¹) atTop (𝓝 0)
F : ℝ → ℝ → ℝ :=
  fun R v => ‖↑((h'' R).toFun v) * f.toFun v + 2 * ↑((h' R).toFun v) * f'.toFun v + ↑(h R v) * f''.toFun v‖
c1 : ℝ
mg' : ∀ (v : ℝ), ‖g'.toFun v‖ ≤ c1
c2 : ℝ
mg'' : ∀ (v : ℝ), ‖g''.toFun v‖ ≤ c2
bound : ℝ → ℝ := fun v => c2 * ‖f.toFun v‖ + 2 * c1 * ‖f'.toFun v‖ + ‖f''.toFun v‖
e1 : ∀ᶠ (n : ℝ) in atTop, AEStronglyMeasurable (F n) volume
e2 : ∀ᶠ (R : ℝ) in atTop, ∀ᵐ (a : ℝ), ‖F R a‖ ≤ bound a
e3 : Integrable bound volume
v : ℝ
evg' : g'.toFun =ᶠ[𝓝 0] 0
evg'' : g''.toFun =ᶠ[𝓝 0] 0
eh'' : ∀ (v : ℝ), ∀ᶠ (R : ℝ) in atTop, (h'' R).toFun v = 0
R : ℝ
hR : (h'' R).toFun v = 0
⊢ ↑((h'' R).toFun v) * f.toFun v = 0
Theorem: W21_approximation
Proof state before:
case h
E : Type u_1
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace ℝ E
n : ℕ
f : W21
g : trunc
f' : W1 1 ℂ := W1.deriv f
f'' : W1 0 ℂ := f'.deriv
g' : CS 1 ℝ := g.deriv
g'' : CS 0 ℝ := g'.deriv
h : ℝ → ℝ → ℝ := fun R v => 1 - (g.scale R).toFun v
h' : ℝ → CS 1 ℝ := fun R => -(g.scale R).deriv
h'' : ℝ → CS 0 ℝ := fun R => -(g.scale R).deriv.deriv
ch : ∀ {R : ℝ}, Continuous fun v => ↑(h R v)
ch' : ∀ {R : ℝ}, Continuous fun v => ↑((h' R).toFun v)
ch'' : ∀ {R : ℝ}, Continuous fun v => ↑((h'' R).toFun v)
dh : ∀ (R v : ℝ), HasDerivAt (h R) ((h' R).toFun v) v
dh' : ∀ (R v : ℝ), HasDerivAt (h' R).toFun ((h'' R).toFun v) v
hh1 : ∀ (R v : ℝ), |h R v| ≤ 1
vR : ∀ (v : ℝ), Tendsto (fun R => v * R⁻¹) atTop (𝓝 0)
F : ℝ → ℝ → ℝ :=
  fun R v => ‖↑((h'' R).toFun v) * f.toFun v + 2 * ↑((h' R).toFun v) * f'.toFun v + ↑(h R v) * f''.toFun v‖
c1 : ℝ
mg' : ∀ (v : ℝ), ‖g'.toFun v‖ ≤ c1
c2 : ℝ
mg'' : ∀ (v : ℝ), ‖g''.toFun v‖ ≤ c2
bound : ℝ → ℝ := fun v => c2 * ‖f.toFun v‖ + 2 * c1 * ‖f'.toFun v‖ + ‖f''.toFun v‖
e1 : ∀ᶠ (n : ℝ) in atTop, AEStronglyMeasurable (F n) volume
e2 : ∀ᶠ (R : ℝ) in atTop, ∀ᵐ (a : ℝ), ‖F R a‖ ≤ bound a
e3 : Integrable bound volume
v : ℝ
evg' : g'.toFun =ᶠ[𝓝 0] 0
evg'' : g''.toFun =ᶠ[𝓝 0] 0
eh'' : ∀ (v : ℝ), ∀ᶠ (R : ℝ) in atTop, (h'' R).toFun v = 0
R : ℝ
hR : (h'' R).toFun v = 0
⊢ ↑((h'' R).toFun v) * f.toFun v = 0
Tactic:
simp [hR]
Proof state after:
no goals
Theorem: W21_approximation
Proof state before:
E : Type u_1
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace ℝ E
n : ℕ
f : W21
g : trunc
f' : W1 1 ℂ := W1.deriv f
f'' : W1 0 ℂ := f'.deriv
g' : CS 1 ℝ := g.deriv
g'' : CS 0 ℝ := g'.deriv
h : ℝ → ℝ → ℝ := fun R v => 1 - (g.scale R).toFun v
h' : ℝ → CS 1 ℝ := fun R => -(g.scale R).deriv
h'' : ℝ → CS 0 ℝ := fun R => -(g.scale R).deriv.deriv
ch : ∀ {R : ℝ}, Continuous fun v => ↑(h R v)
ch' : ∀ {R : ℝ}, Continuous fun v => ↑((h' R).toFun v)
ch'' : ∀ {R : ℝ}, Continuous fun v => ↑((h'' R).toFun v)
dh : ∀ (R v : ℝ), HasDerivAt (h R) ((h' R).toFun v) v
dh' : ∀ (R v : ℝ), HasDerivAt (h' R).toFun ((h'' R).toFun v) v
hh1 : ∀ (R v : ℝ), |h R v| ≤ 1
vR : ∀ (v : ℝ), Tendsto (fun R => v * R⁻¹) atTop (𝓝 0)
F : ℝ → ℝ → ℝ :=
  fun R v => ‖↑((h'' R).toFun v) * f.toFun v + 2 * ↑((h' R).toFun v) * f'.toFun v + ↑(h R v) * f''.toFun v‖
c1 : ℝ
mg' : ∀ (v : ℝ), ‖g'.toFun v‖ ≤ c1
c2 : ℝ
mg'' : ∀ (v : ℝ), ‖g''.toFun v‖ ≤ c2
bound : ℝ → ℝ := fun v => c2 * ‖f.toFun v‖ + 2 * c1 * ‖f'.toFun v‖ + ‖f''.toFun v‖
e1 : ∀ᶠ (n : ℝ) in atTop, AEStronglyMeasurable (F n) volume
e2 : ∀ᶠ (R : ℝ) in atTop, ∀ᵐ (a : ℝ), ‖F R a‖ ≤ bound a
e3 : Integrable bound volume
v✝ : ℝ
evg' : g'.toFun =ᶠ[𝓝 0] 0
evg'' : g''.toFun =ᶠ[𝓝 0] 0
v : ℝ
⊢ ∀ᶠ (R : ℝ) in atTop, (h'' R).toFun v = 0
Tactic:
filter_upwards [(vR v).eventually evg'', eventually_ne_atTop 0] with R hR hR'
Proof state after:
case h
E : Type u_1
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace ℝ E
n : ℕ
f : W21
g : trunc
f' : W1 1 ℂ := W1.deriv f
f'' : W1 0 ℂ := f'.deriv
g' : CS 1 ℝ := g.deriv
g'' : CS 0 ℝ := g'.deriv
h : ℝ → ℝ → ℝ := fun R v => 1 - (g.scale R).toFun v
h' : ℝ → CS 1 ℝ := fun R => -(g.scale R).deriv
h'' : ℝ → CS 0 ℝ := fun R => -(g.scale R).deriv.deriv
ch : ∀ {R : ℝ}, Continuous fun v => ↑(h R v)
ch' : ∀ {R : ℝ}, Continuous fun v => ↑((h' R).toFun v)
ch'' : ∀ {R : ℝ}, Continuous fun v => ↑((h'' R).toFun v)
dh : ∀ (R v : ℝ), HasDerivAt (h R) ((h' R).toFun v) v
dh' : ∀ (R v : ℝ), HasDerivAt (h' R).toFun ((h'' R).toFun v) v
hh1 : ∀ (R v : ℝ), |h R v| ≤ 1
vR : ∀ (v : ℝ), Tendsto (fun R => v * R⁻¹) atTop (𝓝 0)
F : ℝ → ℝ → ℝ :=
  fun R v => ‖↑((h'' R).toFun v) * f.toFun v + 2 * ↑((h' R).toFun v) * f'.toFun v + ↑(h R v) * f''.toFun v‖
c1 : ℝ
mg' : ∀ (v : ℝ), ‖g'.toFun v‖ ≤ c1
c2 : ℝ
mg'' : ∀ (v : ℝ), ‖g''.toFun v‖ ≤ c2
bound : ℝ → ℝ := fun v => c2 * ‖f.toFun v‖ + 2 * c1 * ‖f'.toFun v‖ + ‖f''.toFun v‖
e1 : ∀ᶠ (n : ℝ) in atTop, AEStronglyMeasurable (F n) volume
e2 : ∀ᶠ (R : ℝ) in atTop, ∀ᵐ (a : ℝ), ‖F R a‖ ≤ bound a
e3 : Integrable bound volume
v✝ : ℝ
evg' : g'.toFun =ᶠ[𝓝 0] 0
evg'' : g''.toFun =ᶠ[𝓝 0] 0
v R : ℝ
hR : g''.toFun (v * R⁻¹) = OfNat.ofNat 0 (v * R⁻¹)
hR' : R ≠ 0
⊢ (h'' R).toFun v = 0
Theorem: W21_approximation
Proof state before:
case h
E : Type u_1
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace ℝ E
n : ℕ
f : W21
g : trunc
f' : W1 1 ℂ := W1.deriv f
f'' : W1 0 ℂ := f'.deriv
g' : CS 1 ℝ := g.deriv
g'' : CS 0 ℝ := g'.deriv
h : ℝ → ℝ → ℝ := fun R v => 1 - (g.scale R).toFun v
h' : ℝ → CS 1 ℝ := fun R => -(g.scale R).deriv
h'' : ℝ → CS 0 ℝ := fun R => -(g.scale R).deriv.deriv
ch : ∀ {R : ℝ}, Continuous fun v => ↑(h R v)
ch' : ∀ {R : ℝ}, Continuous fun v => ↑((h' R).toFun v)
ch'' : ∀ {R : ℝ}, Continuous fun v => ↑((h'' R).toFun v)
dh : ∀ (R v : ℝ), HasDerivAt (h R) ((h' R).toFun v) v
dh' : ∀ (R v : ℝ), HasDerivAt (h' R).toFun ((h'' R).toFun v) v
hh1 : ∀ (R v : ℝ), |h R v| ≤ 1
vR : ∀ (v : ℝ), Tendsto (fun R => v * R⁻¹) atTop (𝓝 0)
F : ℝ → ℝ → ℝ :=
  fun R v => ‖↑((h'' R).toFun v) * f.toFun v + 2 * ↑((h' R).toFun v) * f'.toFun v + ↑(h R v) * f''.toFun v‖
c1 : ℝ
mg' : ∀ (v : ℝ), ‖g'.toFun v‖ ≤ c1
c2 : ℝ
mg'' : ∀ (v : ℝ), ‖g''.toFun v‖ ≤ c2
bound : ℝ → ℝ := fun v => c2 * ‖f.toFun v‖ + 2 * c1 * ‖f'.toFun v‖ + ‖f''.toFun v‖
e1 : ∀ᶠ (n : ℝ) in atTop, AEStronglyMeasurable (F n) volume
e2 : ∀ᶠ (R : ℝ) in atTop, ∀ᵐ (a : ℝ), ‖F R a‖ ≤ bound a
e3 : Integrable bound volume
v✝ : ℝ
evg' : g'.toFun =ᶠ[𝓝 0] 0
evg'' : g''.toFun =ᶠ[𝓝 0] 0
v R : ℝ
hR : g''.toFun (v * R⁻¹) = OfNat.ofNat 0 (v * R⁻¹)
hR' : R ≠ 0
⊢ (h'' R).toFun v = 0
Tactic:
simp [h'', CS.deriv_scale, CS.deriv_smul, hR, hR']
Proof state after:
case h
E : Type u_1
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace ℝ E
n : ℕ
f : W21
g : trunc
f' : W1 1 ℂ := W1.deriv f
f'' : W1 0 ℂ := f'.deriv
g' : CS 1 ℝ := g.deriv
g'' : CS 0 ℝ := g'.deriv
h : ℝ → ℝ → ℝ := fun R v => 1 - (g.scale R).toFun v
h' : ℝ → CS 1 ℝ := fun R => -(g.scale R).deriv
h'' : ℝ → CS 0 ℝ := fun R => -(g.scale R).deriv.deriv
ch : ∀ {R : ℝ}, Continuous fun v => ↑(h R v)
ch' : ∀ {R : ℝ}, Continuous fun v => ↑((h' R).toFun v)
ch'' : ∀ {R : ℝ}, Continuous fun v => ↑((h'' R).toFun v)
dh : ∀ (R v : ℝ), HasDerivAt (h R) ((h' R).toFun v) v
dh' : ∀ (R v : ℝ), HasDerivAt (h' R).toFun ((h'' R).toFun v) v
hh1 : ∀ (R v : ℝ), |h R v| ≤ 1
vR : ∀ (v : ℝ), Tendsto (fun R => v * R⁻¹) atTop (𝓝 0)
F : ℝ → ℝ → ℝ :=
  fun R v => ‖↑((h'' R).toFun v) * f.toFun v + 2 * ↑((h' R).toFun v) * f'.toFun v + ↑(h R v) * f''.toFun v‖
c1 : ℝ
mg' : ∀ (v : ℝ), ‖g'.toFun v‖ ≤ c1
c2 : ℝ
mg'' : ∀ (v : ℝ), ‖g''.toFun v‖ ≤ c2
bound : ℝ → ℝ := fun v => c2 * ‖f.toFun v‖ + 2 * c1 * ‖f'.toFun v‖ + ‖f''.toFun v‖
e1 : ∀ᶠ (n : ℝ) in atTop, AEStronglyMeasurable (F n) volume
e2 : ∀ᶠ (R : ℝ) in atTop, ∀ᵐ (a : ℝ), ‖F R a‖ ≤ bound a
e3 : Integrable bound volume
v✝ : ℝ
evg' : g'.toFun =ᶠ[𝓝 0] 0
evg'' : g''.toFun =ᶠ[𝓝 0] 0
v R : ℝ
hR : g''.toFun (v * R⁻¹) = OfNat.ofNat 0 (v * R⁻¹)
hR' : R ≠ 0
⊢ (g.deriv.deriv.scale R).toFun v = 0
Theorem: W21_approximation
Proof state before:
case h
E : Type u_1
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace ℝ E
n : ℕ
f : W21
g : trunc
f' : W1 1 ℂ := W1.deriv f
f'' : W1 0 ℂ := f'.deriv
g' : CS 1 ℝ := g.deriv
g'' : CS 0 ℝ := g'.deriv
h : ℝ → ℝ → ℝ := fun R v => 1 - (g.scale R).toFun v
h' : ℝ → CS 1 ℝ := fun R => -(g.scale R).deriv
h'' : ℝ → CS 0 ℝ := fun R => -(g.scale R).deriv.deriv
ch : ∀ {R : ℝ}, Continuous fun v => ↑(h R v)
ch' : ∀ {R : ℝ}, Continuous fun v => ↑((h' R).toFun v)
ch'' : ∀ {R : ℝ}, Continuous fun v => ↑((h'' R).toFun v)
dh : ∀ (R v : ℝ), HasDerivAt (h R) ((h' R).toFun v) v
dh' : ∀ (R v : ℝ), HasDerivAt (h' R).toFun ((h'' R).toFun v) v
hh1 : ∀ (R v : ℝ), |h R v| ≤ 1
vR : ∀ (v : ℝ), Tendsto (fun R => v * R⁻¹) atTop (𝓝 0)
F : ℝ → ℝ → ℝ :=
  fun R v => ‖↑((h'' R).toFun v) * f.toFun v + 2 * ↑((h' R).toFun v) * f'.toFun v + ↑(h R v) * f''.toFun v‖
c1 : ℝ
mg' : ∀ (v : ℝ), ‖g'.toFun v‖ ≤ c1
c2 : ℝ
mg'' : ∀ (v : ℝ), ‖g''.toFun v‖ ≤ c2
bound : ℝ → ℝ := fun v => c2 * ‖f.toFun v‖ + 2 * c1 * ‖f'.toFun v‖ + ‖f''.toFun v‖
e1 : ∀ᶠ (n : ℝ) in atTop, AEStronglyMeasurable (F n) volume
e2 : ∀ᶠ (R : ℝ) in atTop, ∀ᵐ (a : ℝ), ‖F R a‖ ≤ bound a
e3 : Integrable bound volume
v✝ : ℝ
evg' : g'.toFun =ᶠ[𝓝 0] 0
evg'' : g''.toFun =ᶠ[𝓝 0] 0
v R : ℝ
hR : g''.toFun (v * R⁻¹) = OfNat.ofNat 0 (v * R⁻¹)
hR' : R ≠ 0
⊢ (g.deriv.deriv.scale R).toFun v = 0
Tactic:
simp [CS.scale, hR', funscale, mul_comm R⁻¹]
Proof state after:
case h
E : Type u_1
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace ℝ E
n : ℕ
f : W21
g : trunc
f' : W1 1 ℂ := W1.deriv f
f'' : W1 0 ℂ := f'.deriv
g' : CS 1 ℝ := g.deriv
g'' : CS 0 ℝ := g'.deriv
h : ℝ → ℝ → ℝ := fun R v => 1 - (g.scale R).toFun v
h' : ℝ → CS 1 ℝ := fun R => -(g.scale R).deriv
h'' : ℝ → CS 0 ℝ := fun R => -(g.scale R).deriv.deriv
ch : ∀ {R : ℝ}, Continuous fun v => ↑(h R v)
ch' : ∀ {R : ℝ}, Continuous fun v => ↑((h' R).toFun v)
ch'' : ∀ {R : ℝ}, Continuous fun v => ↑((h'' R).toFun v)
dh : ∀ (R v : ℝ), HasDerivAt (h R) ((h' R).toFun v) v
dh' : ∀ (R v : ℝ), HasDerivAt (h' R).toFun ((h'' R).toFun v) v
hh1 : ∀ (R v : ℝ), |h R v| ≤ 1
vR : ∀ (v : ℝ), Tendsto (fun R => v * R⁻¹) atTop (𝓝 0)
F : ℝ → ℝ → ℝ :=
  fun R v => ‖↑((h'' R).toFun v) * f.toFun v + 2 * ↑((h' R).toFun v) * f'.toFun v + ↑(h R v) * f''.toFun v‖
c1 : ℝ
mg' : ∀ (v : ℝ), ‖g'.toFun v‖ ≤ c1
c2 : ℝ
mg'' : ∀ (v : ℝ), ‖g''.toFun v‖ ≤ c2
bound : ℝ → ℝ := fun v => c2 * ‖f.toFun v‖ + 2 * c1 * ‖f'.toFun v‖ + ‖f''.toFun v‖
e1 : ∀ᶠ (n : ℝ) in atTop, AEStronglyMeasurable (F n) volume
e2 : ∀ᶠ (R : ℝ) in atTop, ∀ᵐ (a : ℝ), ‖F R a‖ ≤ bound a
e3 : Integrable bound volume
v✝ : ℝ
evg' : g'.toFun =ᶠ[𝓝 0] 0
evg'' : g''.toFun =ᶠ[𝓝 0] 0
v R : ℝ
hR : g''.toFun (v * R⁻¹) = OfNat.ofNat 0 (v * R⁻¹)
hR' : R ≠ 0
⊢ g.deriv.deriv.toFun (v * R⁻¹) = 0
Theorem: W21_approximation
Proof state before:
case h
E : Type u_1
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace ℝ E
n : ℕ
f : W21
g : trunc
f' : W1 1 ℂ := W1.deriv f
f'' : W1 0 ℂ := f'.deriv
g' : CS 1 ℝ := g.deriv
g'' : CS 0 ℝ := g'.deriv
h : ℝ → ℝ → ℝ := fun R v => 1 - (g.scale R).toFun v
h' : ℝ → CS 1 ℝ := fun R => -(g.scale R).deriv
h'' : ℝ → CS 0 ℝ := fun R => -(g.scale R).deriv.deriv
ch : ∀ {R : ℝ}, Continuous fun v => ↑(h R v)
ch' : ∀ {R : ℝ}, Continuous fun v => ↑((h' R).toFun v)
ch'' : ∀ {R : ℝ}, Continuous fun v => ↑((h'' R).toFun v)
dh : ∀ (R v : ℝ), HasDerivAt (h R) ((h' R).toFun v) v
dh' : ∀ (R v : ℝ), HasDerivAt (h' R).toFun ((h'' R).toFun v) v
hh1 : ∀ (R v : ℝ), |h R v| ≤ 1
vR : ∀ (v : ℝ), Tendsto (fun R => v * R⁻¹) atTop (𝓝 0)
F : ℝ → ℝ → ℝ :=
  fun R v => ‖↑((h'' R).toFun v) * f.toFun v + 2 * ↑((h' R).toFun v) * f'.toFun v + ↑(h R v) * f''.toFun v‖
c1 : ℝ
mg' : ∀ (v : ℝ), ‖g'.toFun v‖ ≤ c1
c2 : ℝ
mg'' : ∀ (v : ℝ), ‖g''.toFun v‖ ≤ c2
bound : ℝ → ℝ := fun v => c2 * ‖f.toFun v‖ + 2 * c1 * ‖f'.toFun v‖ + ‖f''.toFun v‖
e1 : ∀ᶠ (n : ℝ) in atTop, AEStronglyMeasurable (F n) volume
e2 : ∀ᶠ (R : ℝ) in atTop, ∀ᵐ (a : ℝ), ‖F R a‖ ≤ bound a
e3 : Integrable bound volume
v✝ : ℝ
evg' : g'.toFun =ᶠ[𝓝 0] 0
evg'' : g''.toFun =ᶠ[𝓝 0] 0
v R : ℝ
hR : g''.toFun (v * R⁻¹) = OfNat.ofNat 0 (v * R⁻¹)
hR' : R ≠ 0
⊢ g.deriv.deriv.toFun (v * R⁻¹) = 0
Tactic:
exact hR
Proof state after:
no goals
Theorem: W21_approximation
Proof state before:
case hp.refine_2
E : Type u_1
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace ℝ E
n : ℕ
f : W21
g : trunc
f' : W1 1 ℂ := W1.deriv f
f'' : W1 0 ℂ := f'.deriv
g' : CS 1 ℝ := g.deriv
g'' : CS 0 ℝ := g'.deriv
h : ℝ → ℝ → ℝ := fun R v => 1 - (g.scale R).toFun v
h' : ℝ → CS 1 ℝ := fun R => -(g.scale R).deriv
h'' : ℝ → CS 0 ℝ := fun R => -(g.scale R).deriv.deriv
ch : ∀ {R : ℝ}, Continuous fun v => ↑(h R v)
ch' : ∀ {R : ℝ}, Continuous fun v => ↑((h' R).toFun v)
ch'' : ∀ {R : ℝ}, Continuous fun v => ↑((h'' R).toFun v)
dh : ∀ (R v : ℝ), HasDerivAt (h R) ((h' R).toFun v) v
dh' : ∀ (R v : ℝ), HasDerivAt (h' R).toFun ((h'' R).toFun v) v
hh1 : ∀ (R v : ℝ), |h R v| ≤ 1
vR : ∀ (v : ℝ), Tendsto (fun R => v * R⁻¹) atTop (𝓝 0)
F : ℝ → ℝ → ℝ :=
  fun R v => ‖↑((h'' R).toFun v) * f.toFun v + 2 * ↑((h' R).toFun v) * f'.toFun v + ↑(h R v) * f''.toFun v‖
c1 : ℝ
mg' : ∀ (v : ℝ), ‖g'.toFun v‖ ≤ c1
c2 : ℝ
mg'' : ∀ (v : ℝ), ‖g''.toFun v‖ ≤ c2
bound : ℝ → ℝ := fun v => c2 * ‖f.toFun v‖ + 2 * c1 * ‖f'.toFun v‖ + ‖f''.toFun v‖
e1 : ∀ᶠ (n : ℝ) in atTop, AEStronglyMeasurable (F n) volume
e2 : ∀ᶠ (R : ℝ) in atTop, ∀ᵐ (a : ℝ), ‖F R a‖ ≤ bound a
e3 : Integrable bound volume
v : ℝ
evg' : g'.toFun =ᶠ[𝓝 0] 0
evg'' : g''.toFun =ᶠ[𝓝 0] 0
⊢ atTop.ZeroAtFilter fun n => 2 * ↑((h' n).toFun v) * f'.toFun v
Tactic:
have eh' v : ∀ᶠ R in atTop, h' R v = 0 := by
  filter_upwards [(vR v).eventually evg'] with R hR
  simp [g'] at hR
  simp [h', CS.deriv_scale', mul_comm R⁻¹, hR]
Proof state after:
case hp.refine_2
E : Type u_1
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace ℝ E
n : ℕ
f : W21
g : trunc
f' : W1 1 ℂ := W1.deriv f
f'' : W1 0 ℂ := f'.deriv
g' : CS 1 ℝ := g.deriv
g'' : CS 0 ℝ := g'.deriv
h : ℝ → ℝ → ℝ := fun R v => 1 - (g.scale R).toFun v
h' : ℝ → CS 1 ℝ := fun R => -(g.scale R).deriv
h'' : ℝ → CS 0 ℝ := fun R => -(g.scale R).deriv.deriv
ch : ∀ {R : ℝ}, Continuous fun v => ↑(h R v)
ch' : ∀ {R : ℝ}, Continuous fun v => ↑((h' R).toFun v)
ch'' : ∀ {R : ℝ}, Continuous fun v => ↑((h'' R).toFun v)
dh : ∀ (R v : ℝ), HasDerivAt (h R) ((h' R).toFun v) v
dh' : ∀ (R v : ℝ), HasDerivAt (h' R).toFun ((h'' R).toFun v) v
hh1 : ∀ (R v : ℝ), |h R v| ≤ 1
vR : ∀ (v : ℝ), Tendsto (fun R => v * R⁻¹) atTop (𝓝 0)
F : ℝ → ℝ → ℝ :=
  fun R v => ‖↑((h'' R).toFun v) * f.toFun v + 2 * ↑((h' R).toFun v) * f'.toFun v + ↑(h R v) * f''.toFun v‖
c1 : ℝ
mg' : ∀ (v : ℝ), ‖g'.toFun v‖ ≤ c1
c2 : ℝ
mg'' : ∀ (v : ℝ), ‖g''.toFun v‖ ≤ c2
bound : ℝ → ℝ := fun v => c2 * ‖f.toFun v‖ + 2 * c1 * ‖f'.toFun v‖ + ‖f''.toFun v‖
e1 : ∀ᶠ (n : ℝ) in atTop, AEStronglyMeasurable (F n) volume
e2 : ∀ᶠ (R : ℝ) in atTop, ∀ᵐ (a : ℝ), ‖F R a‖ ≤ bound a
e3 : Integrable bound volume
v : ℝ
evg' : g'.toFun =ᶠ[𝓝 0] 0
evg'' : g''.toFun =ᶠ[𝓝 0] 0
eh' : ∀ (v : ℝ), ∀ᶠ (R : ℝ) in atTop, (h' R).toFun v = 0
⊢ atTop.ZeroAtFilter fun n => 2 * ↑((h' n).toFun v) * f'.toFun v
Theorem: W21_approximation
Proof state before:
case hp.refine_2
E : Type u_1
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace ℝ E
n : ℕ
f : W21
g : trunc
f' : W1 1 ℂ := W1.deriv f
f'' : W1 0 ℂ := f'.deriv
g' : CS 1 ℝ := g.deriv
g'' : CS 0 ℝ := g'.deriv
h : ℝ → ℝ → ℝ := fun R v => 1 - (g.scale R).toFun v
h' : ℝ → CS 1 ℝ := fun R => -(g.scale R).deriv
h'' : ℝ → CS 0 ℝ := fun R => -(g.scale R).deriv.deriv
ch : ∀ {R : ℝ}, Continuous fun v => ↑(h R v)
ch' : ∀ {R : ℝ}, Continuous fun v => ↑((h' R).toFun v)
ch'' : ∀ {R : ℝ}, Continuous fun v => ↑((h'' R).toFun v)
dh : ∀ (R v : ℝ), HasDerivAt (h R) ((h' R).toFun v) v
dh' : ∀ (R v : ℝ), HasDerivAt (h' R).toFun ((h'' R).toFun v) v
hh1 : ∀ (R v : ℝ), |h R v| ≤ 1
vR : ∀ (v : ℝ), Tendsto (fun R => v * R⁻¹) atTop (𝓝 0)
F : ℝ → ℝ → ℝ :=
  fun R v => ‖↑((h'' R).toFun v) * f.toFun v + 2 * ↑((h' R).toFun v) * f'.toFun v + ↑(h R v) * f''.toFun v‖
c1 : ℝ
mg' : ∀ (v : ℝ), ‖g'.toFun v‖ ≤ c1
c2 : ℝ
mg'' : ∀ (v : ℝ), ‖g''.toFun v‖ ≤ c2
bound : ℝ → ℝ := fun v => c2 * ‖f.toFun v‖ + 2 * c1 * ‖f'.toFun v‖ + ‖f''.toFun v‖
e1 : ∀ᶠ (n : ℝ) in atTop, AEStronglyMeasurable (F n) volume
e2 : ∀ᶠ (R : ℝ) in atTop, ∀ᵐ (a : ℝ), ‖F R a‖ ≤ bound a
e3 : Integrable bound volume
v : ℝ
evg' : g'.toFun =ᶠ[𝓝 0] 0
evg'' : g''.toFun =ᶠ[𝓝 0] 0
eh' : ∀ (v : ℝ), ∀ᶠ (R : ℝ) in atTop, (h' R).toFun v = 0
⊢ atTop.ZeroAtFilter fun n => 2 * ↑((h' n).toFun v) * f'.toFun v
Tactic:
apply tendsto_nhds_of_eventually_eq
Proof state after:
case hp.refine_2.h
E : Type u_1
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace ℝ E
n : ℕ
f : W21
g : trunc
f' : W1 1 ℂ := W1.deriv f
f'' : W1 0 ℂ := f'.deriv
g' : CS 1 ℝ := g.deriv
g'' : CS 0 ℝ := g'.deriv
h : ℝ → ℝ → ℝ := fun R v => 1 - (g.scale R).toFun v
h' : ℝ → CS 1 ℝ := fun R => -(g.scale R).deriv
h'' : ℝ → CS 0 ℝ := fun R => -(g.scale R).deriv.deriv
ch : ∀ {R : ℝ}, Continuous fun v => ↑(h R v)
ch' : ∀ {R : ℝ}, Continuous fun v => ↑((h' R).toFun v)
ch'' : ∀ {R : ℝ}, Continuous fun v => ↑((h'' R).toFun v)
dh : ∀ (R v : ℝ), HasDerivAt (h R) ((h' R).toFun v) v
dh' : ∀ (R v : ℝ), HasDerivAt (h' R).toFun ((h'' R).toFun v) v
hh1 : ∀ (R v : ℝ), |h R v| ≤ 1
vR : ∀ (v : ℝ), Tendsto (fun R => v * R⁻¹) atTop (𝓝 0)
F : ℝ → ℝ → ℝ :=
  fun R v => ‖↑((h'' R).toFun v) * f.toFun v + 2 * ↑((h' R).toFun v) * f'.toFun v + ↑(h R v) * f''.toFun v‖
c1 : ℝ
mg' : ∀ (v : ℝ), ‖g'.toFun v‖ ≤ c1
c2 : ℝ
mg'' : ∀ (v : ℝ), ‖g''.toFun v‖ ≤ c2
bound : ℝ → ℝ := fun v => c2 * ‖f.toFun v‖ + 2 * c1 * ‖f'.toFun v‖ + ‖f''.toFun v‖
e1 : ∀ᶠ (n : ℝ) in atTop, AEStronglyMeasurable (F n) volume
e2 : ∀ᶠ (R : ℝ) in atTop, ∀ᵐ (a : ℝ), ‖F R a‖ ≤ bound a
e3 : Integrable bound volume
v : ℝ
evg' : g'.toFun =ᶠ[𝓝 0] 0
evg'' : g''.toFun =ᶠ[𝓝 0] 0
eh' : ∀ (v : ℝ), ∀ᶠ (R : ℝ) in atTop, (h' R).toFun v = 0
⊢ ∀ᶠ (x' : ℝ) in atTop, 2 * ↑((h' x').toFun v) * f'.toFun v = 0