Analysis II (Tao, 2022) -- Chapter 06 -- Section 03 -- Part 4

section Chap06section Section03open scoped Topology

Helper for Theorem 6.2: specialize Theorem 6.1 to Unknown identifier `E`sorry = sorry : PropE = Unknown identifier `F`F and Unknown identifier `F`sorry = sorry : PropF = Unknown identifier `U`U to package the within-Unknown identifier `F`F Fréchet derivative at Unknown identifier `x₀`x₀ together with its coordinate-sum evaluation formula.

lemma helperForTheorem_6_2_fderiv_data_from_6_1 {n m : } {F U : Set (EuclideanSpace (Fin n))} {f : EuclideanSpace (Fin n) EuclideanSpace (Fin m)} {x₀ : EuclideanSpace (Fin n)} (hx₀U : x₀ interior U) (hUF : U F) (g : Fin n EuclideanSpace (Fin n) EuclideanSpace (Fin m)) (hpartial : j : Fin n, x, x U HasPartialDerivWithinAt F f x j (g j x)) (hcont : j : Fin n, ContinuousWithinAt (g j) U x₀) : f' : EuclideanSpace (Fin n) →L[] EuclideanSpace (Fin m), HasFDerivWithinAt f f' F x₀ w : EuclideanSpace (Fin n), f' w = j : Fin n, w j g j x₀ := by exact hasFDerivAt_of_continuous_partialDerivWithinAt (E := F) (F := U) (hFE := hUF) (hx₀ := hx₀U) (g := g) hpartial hcont

Helper for Theorem 6.2: a within-Unknown identifier `F`F Fréchet derivative and its coordinate-sum evaluation formula imply the punctured directional limit with target j, sorry sorry : ?m.2 j, Unknown identifier `v`v j Unknown identifier `g`g j x₀.

lemma helperForTheorem_6_2_directional_limit_to_sum {n m : } {F : Set (EuclideanSpace (Fin n))} {f : EuclideanSpace (Fin n) EuclideanSpace (Fin m)} {x₀ v : EuclideanSpace (Fin n)} {f' : EuclideanSpace (Fin n) →L[] EuclideanSpace (Fin m)} (g : Fin n EuclideanSpace (Fin n) EuclideanSpace (Fin m)) (hx₀F : x₀ interior F) (hfd : HasFDerivWithinAt f f' F x₀) (hf' : w : EuclideanSpace (Fin n), f' w = j : Fin n, w j g j x₀) : Filter.Tendsto (fun t : => t⁻¹ (f (x₀ + t v) - f x₀)) (nhdsWithin (0 : ) {t : | t 0 x₀ + t v F}) (𝓝 ( j : Fin n, v j g j x₀)) := by have hlim : Filter.Tendsto (fun t : => t⁻¹ (f (x₀ + t v) - f x₀)) (nhdsWithin (0 : ) {t : | t 0 x₀ + t v F}) (𝓝 (f' v)) := helperForLemma_6_6_punctured_directional_limit_of_hasFDerivWithinAt (x₀ := x₀) (v := v) (f' := f') hx₀F hfd simpa [hf' v] using hlim

Helper for Theorem 6.2: project a vector-valued limit in Euclidean space to any coordinate.

lemma helperForTheorem_6_2_component_limit_from_vector_limit {m : } {L : Filter } {φ : EuclideanSpace (Fin m)} {y : EuclideanSpace (Fin m)} ( : Filter.Tendsto φ L (𝓝 y)) (i : Fin m) : Filter.Tendsto (fun t : => (φ t) i) L (𝓝 (y i)) := by let e : EuclideanSpace (Fin m) ≃L[] (Fin m ) := EuclideanSpace.equiv (Fin m) have hφe : Filter.Tendsto (fun t : => e (φ t)) L (𝓝 (e y)) := (e.continuous.tendsto y).comp have hcoord : Filter.Tendsto (fun t : => (e (φ t)) i) L (𝓝 ((e y) i)) := tendsto_pi_nhds.1 hφe i simpa [e] using hcoord

Helper for Theorem 6.2: the Unknown identifier `i`i-th coordinate of j, sorry sorry : ?m.2 j, Unknown identifier `v`v j Unknown identifier `g`g j x₀ is the dot-product sorry ⬝ᵥ fun j => ?m.7 : ?m.2dotProduct Unknown identifier `v`v (fun j => (Unknown identifier `g`g j x₀) i).

lemma helperForTheorem_6_2_sum_component_eq_dotProduct {n m : } (g : Fin n EuclideanSpace (Fin n) EuclideanSpace (Fin m)) (x₀ : EuclideanSpace (Fin n)) (v : EuclideanSpace (Fin n)) (i : Fin m) : (( j : Fin n, v j g j x₀) i) = dotProduct v (fun j : Fin n => (g j x₀) i) := by simp [dotProduct]

Theorem 6.2: Let and , and let Unknown identifier `x₀`sorry interior sorry : Propx₀ interior Unknown identifier `F`F. Assume there is a neighborhood Unknown identifier `U`U of Unknown identifier `x₀`x₀ with Unknown identifier `U`sorry sorry : PropU Unknown identifier `F`F such that for each coordinate , the partial derivative of Unknown identifier `f`f with respect to Unknown identifier `xⱼ`xⱼ exists at every Unknown identifier `x`sorry sorry : Propx Unknown identifier `U`U within Unknown identifier `F`F and is represented by Unknown identifier `g`g j x, and the map Unknown identifier `g`g j is continuous at Unknown identifier `x₀`x₀ within Unknown identifier `U`U. Then for every direction Unknown identifier `v`v, the directional difference quotient of Unknown identifier `f`f at Unknown identifier `x₀`x₀ along Unknown identifier `v`v (equation 6.u93) converges to (equation 6.u94). In the scalar-valued case Unknown identifier `m`sorry = 1 : Propm = 1, the 0 : 0-th coordinate form is in dot-product form (equation 6.u95).

theorem directionalDerivWithinAt_eq_sum_partialDeriv_of_continuousAt {n m : } {F U : Set (EuclideanSpace (Fin n))} {f : EuclideanSpace (Fin n) EuclideanSpace (Fin m)} {x₀ : EuclideanSpace (Fin n)} (hx₀F : x₀ interior F) (hx₀U : x₀ interior U) (hUF : U F) (g : Fin n EuclideanSpace (Fin n) EuclideanSpace (Fin m)) (hpartial : j : Fin n, x, x U HasPartialDerivWithinAt F f x j (g j x)) (hcont : j : Fin n, ContinuousWithinAt (g j) U x₀) (v : EuclideanSpace (Fin n)) : Filter.Tendsto (fun t : => t⁻¹ (f (x₀ + t v) - f x₀)) (nhdsWithin (0 : ) {t : | t 0 x₀ + t v F}) (𝓝 ( j : Fin n, v j g j x₀)) (m = 1 i : Fin m, Filter.Tendsto (fun t : => (t⁻¹ (f (x₀ + t v) - f x₀)) i) (nhdsWithin (0 : ) {t : | t 0 x₀ + t v F}) (𝓝 (dotProduct v (fun j : Fin n => (g j x₀) i)))) := by rcases helperForTheorem_6_2_fderiv_data_from_6_1 (hx₀U := hx₀U) (hUF := hUF) (g := g) (hpartial := hpartial) (hcont := hcont) with f', hfd, hf' have hvectorLimit : Filter.Tendsto (fun t : => t⁻¹ (f (x₀ + t v) - f x₀)) (nhdsWithin (0 : ) {t : | t 0 x₀ + t v F}) (𝓝 ( j : Fin n, v j g j x₀)) := helperForTheorem_6_2_directional_limit_to_sum (g := g) (hx₀F := hx₀F) (hfd := hfd) (hf' := hf') constructor · exact hvectorLimit · intro _ i have hcoordLimit : Filter.Tendsto (fun t : => (t⁻¹ (f (x₀ + t v) - f x₀)) i) (nhdsWithin (0 : ) {t : | t 0 x₀ + t v F}) (𝓝 (( j : Fin n, v j g j x₀) i)) := helperForTheorem_6_2_component_limit_from_vector_limit ( := hvectorLimit) i simpa [helperForTheorem_6_2_sum_component_eq_dotProduct (g := g) (x₀ := x₀) (v := v) i] using hcoordLimit
end Section03end Chap06