Documentation

Books.Analysis2_Tao_2022.Chapters.Chap06.section03_part2

theorem helperForLemma_6_6_target_tendsto_of_zero_directionalValue {n m : } {E : Set (EuclideanSpace (Fin n))} {f : EuclideanSpace (Fin n)EuclideanSpace (Fin m)} {x₀ : EuclideanSpace (Fin n)} (hx₀ : x₀ interior E) {v : EuclideanSpace (Fin n)} {f' : EuclideanSpace (Fin n) →L[] EuclideanSpace (Fin m)} (hfd : HasFDerivWithinAt f f' E x₀) (hv0 : f' v = 0) :
Filter.Tendsto (fun (t : ) => t⁻¹ (f (x₀ + t v) - f x₀)) (nhdsWithin 0 {t : | x₀ + t v E}) (nhds (f' v))

Helper for Lemma 6.6: when the directional value f' v is zero, the theorem's unpunctured directional-limit target follows from the established equivalence with f' v = 0.

theorem helperForLemma_6_6_false_of_target_tendsto_of_nonzero_directionalValue {n m : } {E : Set (EuclideanSpace (Fin n))} {f : EuclideanSpace (Fin n)EuclideanSpace (Fin m)} {x₀ : EuclideanSpace (Fin n)} (hx₀ : x₀ interior E) {v : EuclideanSpace (Fin n)} {f' : EuclideanSpace (Fin n) →L[] EuclideanSpace (Fin m)} (hfd : HasFDerivWithinAt f f' E x₀) (hv0 : f' v 0) (htarget : Filter.Tendsto (fun (t : ) => t⁻¹ (f (x₀ + t v) - f x₀)) (nhdsWithin 0 {t : | x₀ + t v E}) (nhds (f' v))) :

Helper for Lemma 6.6: for fixed differentiable data at an interior point, if f' v ≠ 0 then any proof of the theorem's unpunctured directional-limit target yields False.

theorem helperForLemma_6_6_target_implication_forces_directionalValue_zero {n m : } {E : Set (EuclideanSpace (Fin n))} {f : EuclideanSpace (Fin n)EuclideanSpace (Fin m)} {x₀ : EuclideanSpace (Fin n)} (hx₀ : x₀ interior E) {v : EuclideanSpace (Fin n)} {f' : EuclideanSpace (Fin n) →L[] EuclideanSpace (Fin m)} (himp : HasFDerivWithinAt f f' E x₀Filter.Tendsto (fun (t : ) => t⁻¹ (f (x₀ + t v) - f x₀)) (nhdsWithin 0 {t : | x₀ + t v E}) (nhds (f' v))) :
HasFDerivWithinAt f f' E x₀f' v = 0

Helper for Lemma 6.6: any implication that turns differentiability data into the theorem's unpunctured directional-limit target forces the directional value f' v to be zero.

theorem helperForLemma_6_6_false_of_target_implication_of_nonzero_directionalValue {n m : } {E : Set (EuclideanSpace (Fin n))} {f : EuclideanSpace (Fin n)EuclideanSpace (Fin m)} {x₀ : EuclideanSpace (Fin n)} (hx₀ : x₀ interior E) {v : EuclideanSpace (Fin n)} {f' : EuclideanSpace (Fin n) →L[] EuclideanSpace (Fin m)} (hfd : HasFDerivWithinAt f f' E x₀) (hv0 : f' v 0) (himp : HasFDerivWithinAt f f' E x₀Filter.Tendsto (fun (t : ) => t⁻¹ (f (x₀ + t v) - f x₀)) (nhdsWithin 0 {t : | x₀ + t v E}) (nhds (f' v))) :

Helper for Lemma 6.6: with fixed differentiability data, a nonzero directional value makes any implication to the theorem's unpunctured target claim contradictory.

theorem helperForLemma_6_6_no_target_implication_of_nonzero_directionalValue {n m : } {E : Set (EuclideanSpace (Fin n))} {f : EuclideanSpace (Fin n)EuclideanSpace (Fin m)} {x₀ : EuclideanSpace (Fin n)} (hx₀ : x₀ interior E) {v : EuclideanSpace (Fin n)} {f' : EuclideanSpace (Fin n) →L[] EuclideanSpace (Fin m)} (hfd : HasFDerivWithinAt f f' E x₀) (hv0 : f' v 0) :
¬(HasFDerivWithinAt f f' E x₀Filter.Tendsto (fun (t : ) => t⁻¹ (f (x₀ + t v) - f x₀)) (nhdsWithin 0 {t : | x₀ + t v E}) (nhds (f' v)))

Helper for Lemma 6.6: once differentiability data is fixed, a nonzero directional value precludes any implication from that data to the theorem's unpunctured target claim.

theorem helperForLemma_6_6_target_tendsto_iff_false_of_nonzero_directionalValue {n m : } {E : Set (EuclideanSpace (Fin n))} {f : EuclideanSpace (Fin n)EuclideanSpace (Fin m)} {x₀ : EuclideanSpace (Fin n)} (hx₀ : x₀ interior E) {v : EuclideanSpace (Fin n)} {f' : EuclideanSpace (Fin n) →L[] EuclideanSpace (Fin m)} (hfd : HasFDerivWithinAt f f' E x₀) (hv0 : f' v 0) :
Filter.Tendsto (fun (t : ) => t⁻¹ (f (x₀ + t v) - f x₀)) (nhdsWithin 0 {t : | x₀ + t v E}) (nhds (f' v)) False

Helper for Lemma 6.6: for fixed differentiable data at an interior point, if f' v ≠ 0 then the theorem's unpunctured directional-limit target is equivalent to False.

theorem helperForLemma_6_6_target_tendsto_iff_zero_and_punctured {n m : } {E : Set (EuclideanSpace (Fin n))} {f : EuclideanSpace (Fin n)EuclideanSpace (Fin m)} {x₀ : EuclideanSpace (Fin n)} (hx₀ : x₀ interior E) {v : EuclideanSpace (Fin n)} {f' : EuclideanSpace (Fin n) →L[] EuclideanSpace (Fin m)} (hfd : HasFDerivWithinAt f f' E x₀) :
Filter.Tendsto (fun (t : ) => t⁻¹ (f (x₀ + t v) - f x₀)) (nhdsWithin 0 {t : | x₀ + t v E}) (nhds (f' v)) f' v = 0 Filter.Tendsto (fun (t : ) => t⁻¹ (f (x₀ + t v) - f x₀)) (nhdsWithin 0 {t : | t 0 x₀ + t v E}) (nhds (f' v))

Helper for Lemma 6.6: for fixed differentiable data at an interior point, the theorem's unpunctured directional-limit target is equivalent to the conjunction of the punctured directional limit and the vanishing directional value f' v = 0.

theorem helperForLemma_6_6_not_target_of_targetIff_zero_and_punctured_and_nonzero_directionalValue {n m : } {E : Set (EuclideanSpace (Fin n))} {f : EuclideanSpace (Fin n)EuclideanSpace (Fin m)} {x₀ v : EuclideanSpace (Fin n)} {f' : EuclideanSpace (Fin n) →L[] EuclideanSpace (Fin m)} (htargetIffZeroAndPunctured : Filter.Tendsto (fun (t : ) => t⁻¹ (f (x₀ + t v) - f x₀)) (nhdsWithin 0 {t : | x₀ + t v E}) (nhds (f' v)) f' v = 0 Filter.Tendsto (fun (t : ) => t⁻¹ (f (x₀ + t v) - f x₀)) (nhdsWithin 0 {t : | t 0 x₀ + t v E}) (nhds (f' v))) (hv0 : f' v 0) :
¬Filter.Tendsto (fun (t : ) => t⁻¹ (f (x₀ + t v) - f x₀)) (nhdsWithin 0 {t : | x₀ + t v E}) (nhds (f' v))

Helper for Lemma 6.6: if the theorem's unpunctured target claim is equivalent to f' v = 0 together with the punctured directional-limit claim, then any nonzero directional value f' v excludes the unpunctured target claim.

theorem helperForLemma_6_6_false_of_nonzero_directionalValue_and_targetClaim {n m : } {E : Set (EuclideanSpace (Fin n))} {f : EuclideanSpace (Fin n)EuclideanSpace (Fin m)} {x₀ : EuclideanSpace (Fin n)} (hx₀ : x₀ interior E) {v : EuclideanSpace (Fin n)} {f' : EuclideanSpace (Fin n) →L[] EuclideanSpace (Fin m)} (hfd : HasFDerivWithinAt f f' E x₀) (hv0 : f' v 0) (htarget : Filter.Tendsto (fun (t : ) => t⁻¹ (f (x₀ + t v) - f x₀)) (nhdsWithin 0 {t : | x₀ + t v E}) (nhds (f' v))) :

Helper for Lemma 6.6: for fixed differentiability data at an interior point, combining a nonzero directional value f' v ≠ 0 with the theorem's unpunctured target claim yields a contradiction.

theorem helperForLemma_6_6_target_tendsto_isEmpty_of_nonzero_directionalValue {n m : } {E : Set (EuclideanSpace (Fin n))} {f : EuclideanSpace (Fin n)EuclideanSpace (Fin m)} {x₀ : EuclideanSpace (Fin n)} (hx₀ : x₀ interior E) {v : EuclideanSpace (Fin n)} {f' : EuclideanSpace (Fin n) →L[] EuclideanSpace (Fin m)} (hfd : HasFDerivWithinAt f f' E x₀) (hv0 : f' v 0) :
IsEmpty (Filter.Tendsto (fun (t : ) => t⁻¹ (f (x₀ + t v) - f x₀)) (nhdsWithin 0 {t : | x₀ + t v E}) (nhds (f' v)))

Helper for Lemma 6.6: for fixed differentiable data at an interior point, if f' v ≠ 0 then the theorem's unpunctured directional-limit target proposition is empty.

theorem helperForLemma_6_6_target_tendsto_not_nonempty_of_nonzero_directionalValue {n m : } {E : Set (EuclideanSpace (Fin n))} {f : EuclideanSpace (Fin n)EuclideanSpace (Fin m)} {x₀ : EuclideanSpace (Fin n)} (hx₀ : x₀ interior E) {v : EuclideanSpace (Fin n)} {f' : EuclideanSpace (Fin n) →L[] EuclideanSpace (Fin m)} (hfd : HasFDerivWithinAt f f' E x₀) (hv0 : f' v 0) :
¬Nonempty (Filter.Tendsto (fun (t : ) => t⁻¹ (f (x₀ + t v) - f x₀)) (nhdsWithin 0 {t : | x₀ + t v E}) (nhds (f' v)))

Helper for Lemma 6.6: for fixed differentiable data at an interior point, if f' v ≠ 0 then the theorem's unpunctured directional-limit target proposition has no inhabitants.

theorem helperForLemma_6_6_target_tendsto_nonempty_forces_zero {n m : } {E : Set (EuclideanSpace (Fin n))} {f : EuclideanSpace (Fin n)EuclideanSpace (Fin m)} {x₀ : EuclideanSpace (Fin n)} (hx₀ : x₀ interior E) {v : EuclideanSpace (Fin n)} {f' : EuclideanSpace (Fin n) →L[] EuclideanSpace (Fin m)} (hnonempty : Nonempty (Filter.Tendsto (fun (t : ) => t⁻¹ (f (x₀ + t v) - f x₀)) (nhdsWithin 0 {t : | x₀ + t v E}) (nhds (f' v)))) :
f' v = 0

Helper for Lemma 6.6: if the theorem's unpunctured directional-limit target proposition is inhabited for fixed interior-point data, then the directional value f' v must be zero.

theorem helperForLemma_6_6_target_tendsto_nonempty_iff_directionalValue_eq_zero {n m : } {E : Set (EuclideanSpace (Fin n))} {f : EuclideanSpace (Fin n)EuclideanSpace (Fin m)} {x₀ : EuclideanSpace (Fin n)} (hx₀ : x₀ interior E) {v : EuclideanSpace (Fin n)} {f' : EuclideanSpace (Fin n) →L[] EuclideanSpace (Fin m)} (hfd : HasFDerivWithinAt f f' E x₀) :
Nonempty (Filter.Tendsto (fun (t : ) => t⁻¹ (f (x₀ + t v) - f x₀)) (nhdsWithin 0 {t : | x₀ + t v E}) (nhds (f' v))) f' v = 0

Helper for Lemma 6.6: for fixed differentiable data at an interior point, inhabitation of the theorem's unpunctured directional-limit target proposition is equivalent to f' v = 0.

theorem helperForLemma_6_6_target_tendsto_isEmpty_iff_nonzero_directionalValue {n m : } {E : Set (EuclideanSpace (Fin n))} {f : EuclideanSpace (Fin n)EuclideanSpace (Fin m)} {x₀ : EuclideanSpace (Fin n)} (hx₀ : x₀ interior E) {v : EuclideanSpace (Fin n)} {f' : EuclideanSpace (Fin n) →L[] EuclideanSpace (Fin m)} (hfd : HasFDerivWithinAt f f' E x₀) :
IsEmpty (Filter.Tendsto (fun (t : ) => t⁻¹ (f (x₀ + t v) - f x₀)) (nhdsWithin 0 {t : | x₀ + t v E}) (nhds (f' v))) f' v 0

Helper for Lemma 6.6: for fixed differentiable data at an interior point, the theorem's unpunctured directional-limit target proposition is empty exactly when the directional value f' v is nonzero.

theorem helperForLemma_6_6_target_tendsto_nonempty_iff_false_of_nonzero_directionalValue {n m : } {E : Set (EuclideanSpace (Fin n))} {f : EuclideanSpace (Fin n)EuclideanSpace (Fin m)} {x₀ : EuclideanSpace (Fin n)} (hx₀ : x₀ interior E) {v : EuclideanSpace (Fin n)} {f' : EuclideanSpace (Fin n) →L[] EuclideanSpace (Fin m)} (hfd : HasFDerivWithinAt f f' E x₀) (hv0 : f' v 0) :
Nonempty (Filter.Tendsto (fun (t : ) => t⁻¹ (f (x₀ + t v) - f x₀)) (nhdsWithin 0 {t : | x₀ + t v E}) (nhds (f' v))) False

Helper for Lemma 6.6: for fixed differentiable data at an interior point, if f' v ≠ 0 then inhabitation of the theorem's unpunctured directional-limit target proposition is equivalent to False.

theorem helperForLemma_6_6_nonzero_branch_punctured_limit_and_empty_target {n m : } {E : Set (EuclideanSpace (Fin n))} {f : EuclideanSpace (Fin n)EuclideanSpace (Fin m)} {x₀ : EuclideanSpace (Fin n)} (hx₀ : x₀ interior E) {v : EuclideanSpace (Fin n)} {f' : EuclideanSpace (Fin n) →L[] EuclideanSpace (Fin m)} (hfd : HasFDerivWithinAt f f' E x₀) (hv0 : f' v 0) :
Filter.Tendsto (fun (t : ) => t⁻¹ (f (x₀ + t v) - f x₀)) (nhdsWithin 0 {t : | t 0 x₀ + t v E}) (nhds (f' v)) IsEmpty (Filter.Tendsto (fun (t : ) => t⁻¹ (f (x₀ + t v) - f x₀)) (nhdsWithin 0 {t : | x₀ + t v E}) (nhds (f' v)))

Helper for Lemma 6.6: in the nonzero directional-value branch, differentiability still gives the punctured directional limit, while the theorem's unpunctured target proposition is empty.

theorem hasDirectionalDerivWithinAt_eq_fderiv {n m : } {E : Set (EuclideanSpace (Fin n))} {f : EuclideanSpace (Fin n)EuclideanSpace (Fin m)} {x₀ : EuclideanSpace (Fin n)} (hx₀ : x₀ interior E) {v : EuclideanSpace (Fin n)} {f' : EuclideanSpace (Fin n) →L[] EuclideanSpace (Fin m)} (hfd : HasFDerivWithinAt f f' E x₀) :
Filter.Tendsto (fun (t : ) => t⁻¹ (f (x₀ + t v) - f x₀)) (nhdsWithin 0 {t : | t 0 x₀ + t v E}) (nhds (f' v))

Lemma 6.6: Let E ⊆ ℝⁿ, f : E → ℝᵐ (represented by an ambient map with within-domain derivative), and x₀ ∈ interior E. If f is differentiable at x₀ within E with derivative f', then the directional derivative at x₀ in direction v exists as t → 0 along nonzero points with x₀ + t v ∈ E, and equals f' v.

noncomputable def standardBasisVectorEuclidean (n : ) (j : Fin n) :

The j-th standard basis vector in ℝⁿ, viewed as an element of EuclideanSpace.

Equations
Instances For
    noncomputable def partialDifferenceQuotientWithin {n m : } (f : EuclideanSpace (Fin n)EuclideanSpace (Fin m)) (x₀ : EuclideanSpace (Fin n)) (j : Fin n) :

    The difference quotient used to define the partial derivative of f with respect to the j-th coordinate at x₀.

    Equations
    Instances For
      def HasPartialDerivWithinAt {n m : } (E : Set (EuclideanSpace (Fin n))) (f : EuclideanSpace (Fin n)EuclideanSpace (Fin m)) (x₀ : EuclideanSpace (Fin n)) (j : Fin n) (L : EuclideanSpace (Fin m)) :

      The within-E partial derivative notion (equation 6.u77): for E ⊆ ℝⁿ, ambient extension f : ℝⁿ → ℝᵐ of the book map E → ℝᵐ, interior x₀ ∈ E, and coordinate j, HasPartialDerivWithinAt E f x₀ j L records that the constrained difference quotient along e_j converges to L as t → 0 through nonzero values with x₀ + t e_j ∈ E.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For

        Definition 6.10: f is continuously differentiable on E if E consists of interior points and for each coordinate direction j, there is a map gⱼ : ℝⁿ → ℝᵐ that is continuous on E and satisfies gⱼ x = ∂f/∂xⱼ (x) for every x ∈ E in the within-E sense (using equation 6.u77); the companion declarations below encode equations 6.u78–6.u80.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          noncomputable def derivativeMatrixWithinAt {n m : } (E : Set (EuclideanSpace (Fin n))) (f : EuclideanSpace (Fin n)EuclideanSpace (Fin m)) (x₀ : EuclideanSpace (Fin n)) (hpartial : x₀ E ∀ (j : Fin n), ∃ (L : EuclideanSpace (Fin m)), HasPartialDerivWithinAt E f x₀ j L) :
          Matrix (Fin m) (Fin n)

          Definition 6.11: Let E ⊆ ℝⁿ, f : ℝⁿ → ℝᵐ (an ambient extension of a map on E), and x₀ ∈ E such that for every coordinate j the partial derivative of f at x₀ within E exists. The derivative (Jacobian) matrix Df(x₀) is the m × n matrix whose (i,j)-entry is ∂fᵢ/∂xⱼ (x₀).

          Equations
          Instances For
            theorem hasPartialDerivWithinAt_componentwise {n m : } {E : Set (EuclideanSpace (Fin n))} {f : EuclideanSpace (Fin n)EuclideanSpace (Fin m)} {x₀ : EuclideanSpace (Fin n)} {j : Fin n} {L : EuclideanSpace (Fin m)} :
            HasPartialDerivWithinAt E f x₀ j L x₀ interior E ∀ (k : Fin m), Filter.Tendsto (fun (t : ) => t⁻¹ * ((fun (x : EuclideanSpace (Fin n)) => (f x).ofLp k) (x₀ + t standardBasisVectorEuclidean n j) - (fun (x : EuclideanSpace (Fin n)) => (f x).ofLp k) x₀)) (nhdsWithin 0 {t : | t 0 x₀ + t standardBasisVectorEuclidean n j E}) (nhds (L.ofLp k))

            For vector-valued maps, the partial derivative in one coordinate direction is determined by the partial derivatives of the component functions fun x => (f x) k (equation 6.u78).

            If f has Fréchet derivative f' at x₀ within E, then its j-th partial derivative at x₀ exists and equals f' e_j.

            theorem hasFDerivAt_hasPartialDerivWithinAt {n m : } {E : Set (EuclideanSpace (Fin n))} {f : EuclideanSpace (Fin n)EuclideanSpace (Fin m)} {x₀ : EuclideanSpace (Fin n)} (hx₀ : x₀ interior E) {f' : EuclideanSpace (Fin n) →L[] EuclideanSpace (Fin m)} (hfd : HasFDerivAt f f' x₀) (j : Fin n) :

            If f has ambient Fréchet derivative f' at x₀, then at an interior point of E its j-th partial derivative within E exists and equals f' e_j (equation 6.u79).

            A linear derivative map sends a direction v = ∑ⱼ vⱼ eⱼ to ∑ⱼ vⱼ (f' eⱼ), matching the directional derivative expansion by partial derivatives.

            theorem hasFDerivWithinAt_directionalDeriv_eq_sum_partial {n m : } {E : Set (EuclideanSpace (Fin n))} {f : EuclideanSpace (Fin n)EuclideanSpace (Fin m)} {x₀ : EuclideanSpace (Fin n)} (hx₀ : x₀ interior E) {f' : EuclideanSpace (Fin n) →L[] EuclideanSpace (Fin m)} (hfd : HasFDerivWithinAt f f' E x₀) (L : Fin nEuclideanSpace (Fin m)) (hpartial : ∀ (j : Fin n), HasPartialDerivWithinAt E f x₀ j (L j)) (v : EuclideanSpace (Fin n)) :
            Filter.Tendsto (fun (t : ) => t⁻¹ (f (x₀ + t v) - f x₀)) (nhdsWithin 0 {t : | t 0 x₀ + t v E}) (nhds (∑ j : Fin n, v.ofLp j L j))

            If f has Fréchet derivative within E at x₀, and if L j are the corresponding partial derivatives at x₀, then the directional derivative in any direction v equals ∑ⱼ vⱼ • L j (equation 6.u80).

            theorem directionalDerivWithinAt_eq_jacobian_mulVec_and_sum {n m : } {E : Set (EuclideanSpace (Fin n))} {f : EuclideanSpace (Fin n)EuclideanSpace (Fin m)} {x₀ : EuclideanSpace (Fin n)} {f' : EuclideanSpace (Fin n) →L[] EuclideanSpace (Fin m)} (hx₀ : x₀ E) (hfd : HasFDerivWithinAt f f' E x₀) (Df : Matrix (Fin m) (Fin n) ) (hDf : ∀ (w : EuclideanSpace (Fin n)), f' w = (EuclideanSpace.equiv (Fin m) ).symm (Df.mulVec ((EuclideanSpace.equiv (Fin n) ) w))) (v : EuclideanSpace (Fin n)) :
            Filter.Tendsto (fun (t : ) => t⁻¹ (f (x₀ + t v) - f x₀)) (nhdsWithin 0 {t : | t 0 x₀ + t v E}) (nhds ((EuclideanSpace.equiv (Fin m) ).symm (Df.mulVec ((EuclideanSpace.equiv (Fin n) ) v)))) (EuclideanSpace.equiv (Fin m) ).symm (Df.mulVec ((EuclideanSpace.equiv (Fin n) ) v)) = f' v f' v = j : Fin n, v.ofLp j f' (standardBasisVectorEuclidean n j)

            Proposition 6.9: Let E ⊆ ℝⁿ, f : ℝⁿ → ℝᵐ, and x₀ ∈ E. Assume f is differentiable at x₀ within E with derivative f', and let Df be the Jacobian matrix representing f' (so f' = Matrix.mulVecLin Df). Then for every direction v, the directional derivative exists and (Dᵥ f(x₀))ᵀ = Df * vᵀ, i.e. the directional derivative limit is Matrix.mulVec Df v. Equivalently, Dᵥ f(x₀) = f' v = ∑ⱼ vⱼ • (f' eⱼ).