Theorem: HasLineDerivWithinAt.congr_of_eventuallyEq
File: Mathlib/Analysis/Calculus/LineDeriv/Basic.lean

tactic: apply HasDerivWithinAt.congr_of_eventuallyEq hf _ (by simp [hx])
state_before: 𝕜 : Type u_1
inst✝⁴ : NontriviallyNormedField 𝕜
F : Type u_2
inst✝³ : NormedAddCommGroup F
inst✝² : NormedSpace 𝕜 F
E : Type u_3
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace 𝕜 E
f f₀ f₁ : E → F
f' : F
s t : Set E
x v : E
L : E →L[𝕜] F
hf : HasLineDerivWithinAt 𝕜 f f' s x v
h'f : f₁ =ᶠ[𝓝[s] x] f
hx : f₁ x = f x
⊢ HasLineDerivWithinAt 𝕜 f₁ f' s x v
state_after: 𝕜 : Type u_1
inst✝⁴ : NontriviallyNormedField 𝕜
F : Type u_2
inst✝³ : NormedAddCommGroup F
inst✝² : NormedSpace 𝕜 F
E : Type u_3
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace 𝕜 E
f f₀ f₁ : E → F
f' : F
s t : Set E
x v : E
L : E →L[𝕜] F
hf : HasLineDerivWithinAt 𝕜 f f' s x v
h'f : f₁ =ᶠ[𝓝[s] x] f
hx : f₁ x = f x
⊢ (fun t => f₁ (x + t • v)) =ᶠ[𝓝[(fun t => x + t • v) ⁻¹' s] 0] fun t => f (x + t • v)

tactic: have A : Continuous (fun (t : 𝕜) ↦ x + t • v) := by fun_prop
state_before: 𝕜 : Type u_1
inst✝⁴ : NontriviallyNormedField 𝕜
F : Type u_2
inst✝³ : NormedAddCommGroup F
inst✝² : NormedSpace 𝕜 F
E : Type u_3
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace 𝕜 E
f f₀ f₁ : E → F
f' : F
s t : Set E
x v : E
L : E →L[𝕜] F
hf : HasLineDerivWithinAt 𝕜 f f' s x v
h'f : f₁ =ᶠ[𝓝[s] x] f
hx : f₁ x = f x
⊢ (fun t => f₁ (x + t • v)) =ᶠ[𝓝[(fun t => x + t • v) ⁻¹' s] 0] fun t => f (x + t • v)
state_after: 𝕜 : Type u_1
inst✝⁴ : NontriviallyNormedField 𝕜
F : Type u_2
inst✝³ : NormedAddCommGroup F
inst✝² : NormedSpace 𝕜 F
E : Type u_3
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace 𝕜 E
f f₀ f₁ : E → F
f' : F
s t : Set E
x v : E
L : E →L[𝕜] F
hf : HasLineDerivWithinAt 𝕜 f f' s x v
h'f : f₁ =ᶠ[𝓝[s] x] f
hx : f₁ x = f x
A : Continuous fun t => x + t • v
⊢ (fun t => f₁ (x + t • v)) =ᶠ[𝓝[(fun t => x + t • v) ⁻¹' s] 0] fun t => f (x + t • v)

tactic: exact A.continuousWithinAt.preimage_mem_nhdsWithin'' h'f (by simp)
state_before: 𝕜 : Type u_1
inst✝⁴ : NontriviallyNormedField 𝕜
F : Type u_2
inst✝³ : NormedAddCommGroup F
inst✝² : NormedSpace 𝕜 F
E : Type u_3
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace 𝕜 E
f f₀ f₁ : E → F
f' : F
s t : Set E
x v : E
L : E →L[𝕜] F
hf : HasLineDerivWithinAt 𝕜 f f' s x v
h'f : f₁ =ᶠ[𝓝[s] x] f
hx : f₁ x = f x
A : Continuous fun t => x + t • v
⊢ (fun t => f₁ (x + t • v)) =ᶠ[𝓝[(fun t => x + t • v) ⁻¹' s] 0] fun t => f (x + t • v)
state_after: no goals

tactic: simp [hx]
state_before: 𝕜 : Type u_1
inst✝⁴ : NontriviallyNormedField 𝕜
F : Type u_2
inst✝³ : NormedAddCommGroup F
inst✝² : NormedSpace 𝕜 F
E : Type u_3
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace 𝕜 E
f f₀ f₁ : E → F
f' : F
s t : Set E
x v : E
L : E →L[𝕜] F
hf : HasLineDerivWithinAt 𝕜 f f' s x v
h'f : f₁ =ᶠ[𝓝[s] x] f
hx : f₁ x = f x
⊢ f₁ (x + 0 • v) = f (x + 0 • v)
state_after: no goals

tactic: fun_prop
state_before: 𝕜 : Type u_1
inst✝⁴ : NontriviallyNormedField 𝕜
F : Type u_2
inst✝³ : NormedAddCommGroup F
inst✝² : NormedSpace 𝕜 F
E : Type u_3
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace 𝕜 E
f f₀ f₁ : E → F
f' : F
s t : Set E
x v : E
L : E →L[𝕜] F
hf : HasLineDerivWithinAt 𝕜 f f' s x v
h'f : f₁ =ᶠ[𝓝[s] x] f
hx : f₁ x = f x
⊢ Continuous fun t => x + t • v
state_after: no goals

tactic: simp
state_before: 𝕜 : Type u_1
inst✝⁴ : NontriviallyNormedField 𝕜
F : Type u_2
inst✝³ : NormedAddCommGroup F
inst✝² : NormedSpace 𝕜 F
E : Type u_3
inst✝¹ : NormedAddCommGroup E
inst✝ : NormedSpace 𝕜 E
f f₀ f₁ : E → F
f' : F
s t : Set E
x v : E
L : E →L[𝕜] F
hf : HasLineDerivWithinAt 𝕜 f f' s x v
h'f : f₁ =ᶠ[𝓝[s] x] f
hx : f₁ x = f x
A : Continuous fun t => x + t • v
⊢ x = x + 0 • v
state_after: no goals