Documentation

Books.Analysis2_Tao_2022.Chapters.Chap06.section08

def graphOfFunction {n : } (f : (Fin n)) :
Set (Fin (n + 1))

Definition 6.16 (Graph of a function): for f : ℝ^n → ℝ, the graph of f is the subset {(x, f x) : x ∈ ℝ^n} of ℝ^(n+1).

Equations
Instances For
    theorem verticalLineTest (S : Set ( × )) :
    (∃ (f : ), S = Set.range fun (x : ) => (x, f x)) ∀ (x : ), ∃! y : , (x, y) S

    Definition 6.17 (Vertical line test): a subset S ⊆ ℝ² is the graph of some function f : ℝ → ℝ if and only if for every x : ℝ there exists a unique y : ℝ such that (x, y) ∈ S.

    def hypersurfaceDefinedBy (n : ) (g : (Fin n)) :
    Set (Fin n)

    Definition 6.18 (Hypersurface defined by an equation): for g : ℝ^n → ℝ, the hypersurface (level set) defined by g is Z(g) = {x ∈ ℝ^n | g x = 0}.

    Equations
    Instances For
      def IsCriticalPoint {n : } (f : (Fin n)) (x₀ : Fin n) :

      Definition 6.19 (Critical point): for a differentiable function f : ℝ^n → ℝ, a point x₀ is a critical point of f when ∇ f(x₀) = 0. In finite-dimensional coordinates, this is expressed as differentiability at x₀ and vanishing Fréchet derivative there.

      Equations
      Instances For
        noncomputable def partialDerivWithin {n : } (f : (Fin n)) (s : Set (Fin n)) (x : Fin n) (i : Fin n) :

        The coordinate-direction derivative of a scalar function on ℝ^n within a set.

        Equations
        Instances For

          Helper for Theorem 6.11: a continuous linear map ℝ →L[ℝ] ℝ is bijective if it is nonzero at 1.

          theorem helperForTheorem_6_11_lastPartial_ne_zero_fderiv {n : } {E : Set (Fin (n + 1))} {f : (Fin (n + 1))} {y' : Fin n} {yLast : } (hEopen : IsOpen E) (hf : ContDiffOn 1 f E) (hy : Fin.snoc y' yLast E) (hpartial : partialDerivWithin f E (Fin.snoc y' yLast) (Fin.last n) 0) :
          (fderiv f (Fin.snoc y' yLast)) (Pi.single (Fin.last n) 1) 0

          Helper for Theorem 6.11: convert the nonvanishing within-partial at the base point to the ambient Fréchet derivative coordinate being nonzero.

          theorem helperForTheorem_6_11_uniqueness_from_graph_equality {n : } {f : (Fin (n + 1))} {U : Set (Fin n)} {V : Set (Fin (n + 1))} {g g2 : (Fin n)} (hA : {x : Fin (n + 1) | x V f x = 0} = (fun (x' : Fin n) => Fin.snoc x' (g x')) '' U) (hA2 : {x : Fin (n + 1) | x V f x = 0} = (fun (x' : Fin n) => Fin.snoc x' (g2 x')) '' U) (x' : Fin n) :
          x' Ug2 x' = g x'

          Helper for Theorem 6.11: graph equality determines the implicit function uniquely on U.

          theorem implicitFunctionTheorem (n : ) (E : Set (Fin (n + 1))) (f : (Fin (n + 1))) (y' : Fin n) (yLast : ) (hEopen : IsOpen E) (hf : ContDiffOn 1 f E) (hy : Fin.snoc y' yLast E) (hyZero : f (Fin.snoc y' yLast) = 0) (hpartial : partialDerivWithin f E (Fin.snoc y' yLast) (Fin.last n) 0) :
          ∃ (U : Set (Fin n)), IsOpen U y' U ∃ (V : Set (Fin (n + 1))), IsOpen V Fin.snoc y' yLast V V E have A := fun (g : (Fin n)) => g y' = yLast {x : Fin (n + 1) | x V f x = 0} = (fun (x' : Fin n) => Fin.snoc x' (g x')) '' U; have B := fun (g : (Fin n)) => ContDiffOn 1 g U x'U, ∀ (j : Fin n), partialDerivWithin g U x' j = -(partialDerivWithin f E (Fin.snoc x' (g x')) j.castSucc / partialDerivWithin f E (Fin.snoc x' (g x')) (Fin.last n)); ∃ (g : (Fin n)), A g B g ∀ (g2 : (Fin n)), A g2x'U, g2 x' = g x'

          Theorem 6.11 (Implicit function theorem): in ambient coordinates (x', x_{n+1}) ∈ ℝ^(n+1) (corresponding to the book's ℝ^n after reindexing), if E ⊆ ℝ^(n+1) is open, f is continuously differentiable on E, f (y', yLast) = 0, and ∂f/∂x_{n+1} (y', yLast) ≠ 0, then there are open sets U, V with (y', yLast) ∈ V, y' ∈ U, and a C^1 function g whose graph over U cuts out the zero set of f in V; moreover this g is unique on U and satisfies the usual derivative quotient formula in each x'-direction.

          theorem helperForProposition_6_17_constraintEventuallyEqZero {m : } {V : Set (Fin m)} {f : (Fin (m + 1))} {g : (Fin m)} {x : Fin m} (hconstraint : zV, f (Fin.snoc z (g z)) = 0) :
          (fun (z : Fin m) => f (Fin.snoc z (g z))) =ᶠ[nhdsWithin x V] fun (x : Fin m) => 0

          Helper for Proposition 6.17: turn the pointwise constraint on V into an eventual equality with the constant zero function within V.

          noncomputable def helperForProposition_6_17_DGx {m : } (g : (Fin m)) (V : Set (Fin m)) (x : Fin m) :
          (Fin m) →L[] Fin (m + 1)

          Helper for Proposition 6.17: the derivative of the map z ↦ (z, g z) within V.

          Equations
          Instances For
            theorem helperForProposition_6_17_compositionHasFDerivWithinAt {m : } {U : Set (Fin (m + 1))} {V : Set (Fin m)} {f : (Fin (m + 1))} {g : (Fin m)} {x : Fin m} (hx : x V) (hf : DifferentiableOn f U) (hg : DifferentiableOn g V) (hgraph : zV, Fin.snoc z (g z) U) :
            HasFDerivWithinAt (fun (z : Fin m) => f (Fin.snoc z (g z))) ((fderivWithin f U (Fin.snoc x (g x))).comp (helperForProposition_6_17_DGx g V x)) V x

            Helper for Proposition 6.17: chain-rule derivative for the constrained composition z ↦ f (z, g z) within V.

            theorem helperForProposition_6_17_DGxApplyBasis {m : } {V : Set (Fin m)} {g : (Fin m)} {x : Fin m} (j : Fin m) :

            Helper for Proposition 6.17: evaluate DGx on the jth basis vector.

            theorem helperForProposition_6_17_snocBasisDecomposition {m : } {V : Set (Fin m)} {g : (Fin m)} {x : Fin m} (j : Fin m) :

            Helper for Proposition 6.17: decompose Fin.snoc of a basis direction into the castSucc and last coordinate basis vectors.

            theorem helperForProposition_6_17_linearIdentity {m : } {U : Set (Fin (m + 1))} {V : Set (Fin m)} {f : (Fin (m + 1))} {g : (Fin m)} (hVopen : IsOpen V) (hf : DifferentiableOn f U) (hg : DifferentiableOn g V) (hgraph : zV, Fin.snoc z (g z) U) (hconstraint : zV, f (Fin.snoc z (g z)) = 0) (j : Fin m) (x : Fin m) (hx : x V) :

            Helper for Proposition 6.17: linear identity obtained by differentiating the constraint f (x, g x) = 0 within V.

            theorem helperForProposition_6_17_solveForPartialG (A B C : ) (hLinear : A + B * C = 0) (hB : B 0) :
            C = -A / B

            Helper for Proposition 6.17: solve A + B*C = 0 for C when B ≠ 0.

            theorem implicitDifferentiationForImplicitConstraint (m : ) (U : Set (Fin (m + 1))) (f : (Fin (m + 1))) (V : Set (Fin m)) (g : (Fin m)) (hf : DifferentiableOn f U) (hVopen : IsOpen V) (hg : DifferentiableOn g V) (hgraph : xV, Fin.snoc x (g x) U) (hconstraint : xV, f (Fin.snoc x (g x)) = 0) :
            (∀ (j : Fin m), xV, partialDerivWithin f U (Fin.snoc x (g x)) j.castSucc + partialDerivWithin f U (Fin.snoc x (g x)) (Fin.last m) * partialDerivWithin g V x j = 0) ∀ (j : Fin m), xV, partialDerivWithin f U (Fin.snoc x (g x)) (Fin.last m) 0partialDerivWithin g V x j = -partialDerivWithin f U (Fin.snoc x (g x)) j.castSucc / partialDerivWithin f U (Fin.snoc x (g x)) (Fin.last m)

            Proposition 6.17 (Implicit differentiation for an implicit constraint): in ambient coordinates with m free variables and one dependent coordinate (book's n = m + 1), if f : ℝ^(m+1) → ℝ and g : ℝ^m → ℝ are differentiable on open sets U and V, a ∈ U satisfies f a = 0 and nonvanishing last partial derivative at a, and f (x, g x) = 0 for all x ∈ V with (x, g x) ∈ U, then for each coordinate j and each x ∈ V one has ∂ⱼ f(x, g x) + ∂ₘ₊₁ f(x, g x) * ∂ⱼ g(x) = 0; equivalently, ∂ⱼ g(x) = -(∂ⱼ f(x, g x)) / (∂ₘ₊₁ f(x, g x)) whenever ∂ₘ₊₁ f(x, g x) ≠ 0.

            theorem regularLevelSetAsLocalGraph (m : ) (f : (Fin (m + 1))) (x₀ : Fin (m + 1)) (hf : ContDiff 1 f) (hx₀ : f x₀ = 0) :
            (∃ (j : Fin (m + 1)), partialDerivWithin f Set.univ x₀ j 0)∃ (j : Fin (m + 1)), partialDerivWithin f Set.univ x₀ j 0 ∃ (U : Set (Fin m)), IsOpen U ∃ (W : Set (Fin (m + 1))), IsOpen W x₀ W ∃ (g : (Fin m)), DifferentiableOn g U {x : Fin (m + 1) | x W f x = 0} = (fun (x' : Fin m) => j.insertNth (g x') x') '' U

            Definition 6.20 (Regular level set as a local graph): with ambient coordinates ℝ^(m+1) (so the book's ambient dimension parameter is n = m + 1), let f : ℝ^(m+1) → ℝ be continuously differentiable and let x₀ satisfy f x₀ = 0. If some coordinate partial derivative of f at x₀ is nonzero, then locally near x₀ the zero level set {x | f x = 0} is the graph of a differentiable function g : ℝ^m → ℝ, matching the book's ℝ^(n-1) parameter space.