Documentation

LeanPool.ViscositySolutionTheory.ViscositySolns.Comparison.ProductCoordinates.Embeddings

Ported for Lean Pool: imports relocated and code adapted to Lean/Mathlib v4.34.0.

Product-coordinate consequences of the semiconvex matrix lemma (Embeddings) #

Part of the product-coordinate development connecting the semiconvex matrix conclusion on the coordinate space R^(n+n) to the block-matrix notation on R^n × R^n. Split from ProductCoordinates.lean; see the umbrella module docstring.

theorem ViscositySolns.exists_isMaxOn_mem_nhdsWithin_of_isLocalMaxOn {α : Type u_1} {β : Type u_2} [TopologicalSpace α] [Preorder β] {f : α → β} {S : Set α} {a : α} (ha : a ∈ S) (hlocal : IsLocalMaxOn f S a) :
∃ P ∈ nhdsWithin a S, a ∈ P ∧ P ⊆ S ∧ IsMaxOn f P a

A local maximum on a set is a maximum on a smaller relative neighborhood.

In quantified mathematical form, if a ∈ S and a is a local maximum point of f relative to S, then there is a set P such that P is a neighborhood of a relative to S, a ∈ P, P ⊆ S, and a is a maximum point of f on P.

View a function on R^n × R^n as a function on the coordinate space R^(n+n).

Equations
Instances For

    The coordinate map from R^(n+n) to R^n × R^n is continuous.

    The point (x, 0) in the product coordinate space R^n × R^n.

    Equations
    Instances For

      The point (0, y) in the product coordinate space R^n × R^n.

      Equations
      Instances For

        The point (x, 0), written in R^(n+n) coordinates.

        Equations
        Instances For

          The point (0, y), written in R^(n+n) coordinates.

          Equations
          Instances For
            def ViscositySolns.pointLeft {n : ℕ} (z : Point (n + n)) :

            The left R^n coordinate of a point of R^(n+n) = R^n × R^n.

            Equations
            Instances For
              def ViscositySolns.pointRight {n : ℕ} (z : Point (n + n)) :

              The right R^n coordinate of a point of R^(n+n) = R^n × R^n.

              Equations
              Instances For
                def ViscositySolns.pointWithLeft {n : ℕ} (z : Point (n + n)) (x : Point n) :
                Point (n + n)

                The point obtained from z = (x0, y0) by replacing its left coordinate with x, giving (x, y0).

                Equations
                Instances For
                  def ViscositySolns.pointWithRight {n : ℕ} (z : Point (n + n)) (y : Point n) :
                  Point (n + n)

                  The point obtained from z = (x0, y0) by replacing its right coordinate with y, giving (x0, y).

                  Equations
                  Instances For

                    The left R^n component of a vector written in R^(n+n) coordinates.

                    Equations
                    Instances For

                      The right R^n component of a vector written in R^(n+n) coordinates.

                      Equations
                      Instances For

                        The left-left block of a Hessian written in R^(n+n) coordinates.

                        Equations
                        Instances For

                          The right-right block of a Hessian written in R^(n+n) coordinates.

                          Equations
                          Instances For
                            def ViscositySolns.leftPointJet {n : ℕ} (J : Jet (n + n)) :
                            Jet n

                            The left coordinate projection of a jet on R^n × R^n.

                            Equations
                            Instances For
                              def ViscositySolns.rightPointJet {n : ℕ} (J : Jet (n + n)) :
                              Jet n

                              The right coordinate projection of a jet on R^n × R^n.

                              Equations
                              Instances For
                                theorem ViscositySolns.tendsto_leftPointJet_of_tendsto {n : ℕ} {ι : Type u_1} {l : Filter ι} {JSeq : ι → Jet (n + n)} {J : Jet (n + n)} (hJ : Filter.Tendsto JSeq l (nhds J)) :
                                Filter.Tendsto (fun (i : ι) => leftPointJet (JSeq i)) l (nhds (leftPointJet J))

                                Convergence of block jets implies convergence of their left-coordinate projected jets.

                                theorem ViscositySolns.tendsto_rightPointJet_neg_of_tendsto {n : ℕ} {ι : Type u_1} {l : Filter ι} {JSeq : ι → Jet (n + n)} {J : Jet (n + n)} (hJ : Filter.Tendsto JSeq l (nhds J)) :
                                Filter.Tendsto (fun (i : ι) => (rightPointJet (JSeq i)).neg) l (nhds (rightPointJet J).neg)

                                Convergence of block jets implies convergence of the negated right-coordinate projected jets.

                                In standard mathematical terms, if J_i -> J as jets on R^n × R^n, then the jets obtained by taking the right coordinate component and negating both the gradient and Hessian also converge: -(right J_i) -> -(right J).

                                @[simp]
                                theorem ViscositySolns.pointLeft_pointWithLeft {n : ℕ} (z : Point (n + n)) (x : Point n) :
                                @[simp]
                                @[simp]
                                @[simp]

                                The left embedding vanishes on the right coordinate block.

                                @[simp]

                                The right embedding recovers the original right coordinate.

                                @[simp]
                                theorem ViscositySolns.quadraticModel_pointWithLeft {n : ℕ} (z : Point (n + n)) (r : ℝ) (p : Point (n + n)) (X : Hessian (n + n)) (x : Point n) :
                                @[simp]
                                theorem ViscositySolns.quadraticModel_pointWithRight {n : ℕ} (z : Point (n + n)) (r : ℝ) (p : Point (n + n)) (X : Hessian (n + n)) (y : Point n) :

                                The mixed second difference of a quadratic model in a left direction and a right direction depends only on the mixed Hessian terms.

                                In standard mathematical terms, for a quadratic polynomial on R^n × R^n, the expression

                                q(z + (x, 0) + (0, y)) - q(z + (x, 0)) - q(z + (0, y)) + q(z)

                                is

                                (1 / 2) * (⟪X(x, 0), (0, y)⟫ + ⟪X(0, y), (x, 0)⟫).

                                The cross term between a left increment and a right increment may be computed in block coordinates.

                                In standard mathematical terms, reindexing the Hessian Z from R^{2n} to R^n × R^n does not change the bilinear expression ⟪Z(x, 0), (0, y)⟫.

                                The cross term between a right increment and a left increment may be computed in block coordinates.

                                In standard mathematical terms, reindexing the Hessian Z from R^{2n} to R^n × R^n does not change the bilinear expression ⟪Z(0, y), (x, 0)⟫.

                                The left-right cross term against coordinate basis vectors is the corresponding matrix entry.

                                In standard mathematical terms, for a block Hessian A,

                                ⟪A e_i^L, e_j^R⟫ = A_{R_j,L_i}.

                                The right-left cross term against coordinate basis vectors is the corresponding matrix entry.

                                In standard mathematical terms, for a block Hessian A,

                                ⟪A e_j^R, e_i^L⟫ = A_{L_i,R_j}.