Documentation

LeanPool.HSDInteriorPointLP.NewtonSystem

Newton-system layer #

This file connects the HSDE/HLP equations with the Newton direction used in the interior-point proof. Conceptually, this is the linear-algebra layer: the later algorithm file should not need to know the details of the Newton matrix.

Lean-reading hints for beginners:

Short Lean proof-command guide #

The file is written for readers who know the interior-point algebra but may be new to Lean.

Active HLP/YTM proof layer #

This file contains the parts that are still under active proof engineering:

The stable definitions and elementary lemmas are imported from HSDInteriorPointLP.PrimalDualData.

theorem HSDInteriorPointLP.finset_sum_smul_simple {ι : Type u_1} [Fintype ι] (a : ) (f : ι) :
x : ι, a * f x = a * x : ι, f x

Pull a scalar out of a finite sum. This is the only finite-sum scalar rule used below; the block-operator proof invokes it through matVec, tMatVec, and dot scalar-multiplication lemmas, rather than by broad rewriting inside the large product goal.

theorem HSDInteriorPointLP.matVec_smul_apply {m n : } (A : Matrix (Fin m) (Fin n) ) (a : ) (x : Vec n) (i : Fin m) :
matVec A (fun (j : Fin n) => a * x j) i = a * matVec A x i

Scalar multiplication in the vector argument of matVec.

theorem HSDInteriorPointLP.tMatVec_smul_apply {m n : } (A : Matrix (Fin m) (Fin n) ) (a : ) (y : Vec m) (j : Fin n) :
tMatVec A (fun (i : Fin m) => a * y i) j = a * tMatVec A y j

Scalar multiplication in the vector argument of tMatVec.

theorem HSDInteriorPointLP.dot_smul_right {n : } (u v : Vec n) (a : ) :
(dot u fun (i : Fin n) => a * v i) = a * dot u v

Scalar multiplication in the second argument of dot.

@[simp]
theorem HSDInteriorPointLP.HLPBlockSpace_smul_dy {m n : } (a : ) (u : HLPBlockSpace m n) (i : Fin m) :
(a u).1 i = a * u.1 i

Component projections for scalar multiplication on the HLP block product space. These lemmas keep the Newton-block linearity proof away from broad simp.

@[simp]
theorem HSDInteriorPointLP.HLPBlockSpace_smul_dx {m n : } (a : ) (u : HLPBlockSpace m n) (j : Fin n) :
(a u).2.1 j = a * u.2.1 j
@[simp]
theorem HSDInteriorPointLP.HLPBlockSpace_smul_dtau {m n : } (a : ) (u : HLPBlockSpace m n) :
(a u).2.2.1 = a * u.2.2.1
@[simp]
theorem HSDInteriorPointLP.HLPBlockSpace_smul_dtheta {m n : } (a : ) (u : HLPBlockSpace m n) :
(a u).2.2.2.1 = a * u.2.2.2.1
@[simp]
theorem HSDInteriorPointLP.HLPBlockSpace_smul_ds {m n : } (a : ) (u : HLPBlockSpace m n) (j : Fin n) :
(a u).2.2.2.2.1 j = a * u.2.2.2.2.1 j
@[simp]
theorem HSDInteriorPointLP.HLPBlockSpace_smul_dkappa {m n : } (a : ) (u : HLPBlockSpace m n) :
(a u).2.2.2.2.2 = a * u.2.2.2.2.2
@[simp]
theorem HSDInteriorPointLP.HLPBlockSpace_add_dy {m n : } (u v : HLPBlockSpace m n) (i : Fin m) :
(u + v).1 i = u.1 i + v.1 i

Component projections for addition on the HLP block product space.

@[simp]
theorem HSDInteriorPointLP.HLPBlockSpace_add_dx {m n : } (u v : HLPBlockSpace m n) (j : Fin n) :
(u + v).2.1 j = u.2.1 j + v.2.1 j
@[simp]
theorem HSDInteriorPointLP.HLPBlockSpace_add_dtau {m n : } (u v : HLPBlockSpace m n) :
(u + v).2.2.1 = u.2.2.1 + v.2.2.1
@[simp]
theorem HSDInteriorPointLP.HLPBlockSpace_add_dtheta {m n : } (u v : HLPBlockSpace m n) :
(u + v).2.2.2.1 = u.2.2.2.1 + v.2.2.2.1
@[simp]
theorem HSDInteriorPointLP.HLPBlockSpace_add_ds {m n : } (u v : HLPBlockSpace m n) (j : Fin n) :
(u + v).2.2.2.2.1 j = u.2.2.2.2.1 j + v.2.2.2.2.1 j
@[simp]
theorem HSDInteriorPointLP.HLPBlockSpace_add_dkappa {m n : } (u v : HLPBlockSpace m n) :
(u + v).2.2.2.2.2 = u.2.2.2.2.2 + v.2.2.2.2.2

The full Newton block operator as a linear self-map on the product block space.

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

    Zero residual of the block operator is exactly the homogeneous Newton block.

    Hitting the inhomogeneous right-hand side is exactly solving the Newton block.

    In a finite-dimensional vector space, an injective linear self-map is surjective.

    The concrete HLP nullspace equations imply the reduced skew-operator nullspace condition. This is the explicit place where the skew-symmetry of the YTM HLP coefficient matrix must be formalized.

    Schur-complement form of the homogeneous Newton-kernel proof #

    The following small definitions and lemmas make the proof of HLP_newton_block_kernel_trivial_from_full_row_rank follow the standard Newton matrix argument: eliminate (ds, dκ) by the positive diagonal complementarity block, form the Schur complement in (dy, dτ, dθ), first prove the Schur residual and vanish, and only then remove the remaining multiplier variables.

    The Schur-complement residual r = Aᵀ dy - c dτ + cbar dθ. In the homogeneous dual block we have ds = -r.

    Equations
    Instances For
      noncomputable def HSDInteriorPointLP.HLPThetaDiag {n : } (w : HSState n) :
      Vec n

      The positive diagonal ratio Θ = S^{-1}X, written componentwise.

      Equations
      Instances For

        The homogeneous dual block gives ds = -r.

        The scalar complementarity block eliminates .

        The complementarity block and the eliminated dual slack give dx = Θ r, the usual first step in forming the Schur complement.

        Schur-complement complementarity identity.

        After eliminating ds, dx, and through the positive diagonal complementarity block, the homogeneous HLP orthogonality relation becomes ∑ᵢ (xᵢ/sᵢ) rᵢ² + (κ/τ) dτ² = 0. This is the finite-dimensional inner-product identity used in the standard interior-point nonsingularity argument.

        theorem HSDInteriorPointLP.finite_sum_pos_sq_plus_pos_sq_eq_zero {n : } (theta r : Vec n) (eta t : ) (htheta : ∀ (j : Fin n), 0 < theta j) (heta : 0 < eta) (h : j : Fin n, theta j * r j ^ 2 + eta * t ^ 2 = 0) :
        (∀ (j : Fin n), r j = 0) t = 0

        A finite-dimensional positivity lemma for the reduced complementarity form.

        If all diagonal Schur weights are strictly positive and eta > 0, then the identity ∑ᵢ thetaᵢ rᵢ² + eta t² = 0 forces every residual component rᵢ and the scalar t to vanish. This is the positive-diagonal part of the interior-point nonsingularity argument, rather than positive-definiteness of the whole (dy, dτ, dθ) Schur matrix.

        The reduced complementarity identity forces the Schur residual and to be zero.

        theorem HSDInteriorPointLP.HLPHomogeneous.dx_dkappa_ds_zero_from_schur_core {m n : } (P : LPData m n) (w : HSState n) (D : HLPFullDirection m n) (hw : Interior w) (hD : HLPNewtonHomogeneousBlockSystem P w D) (hr : ∀ (j : Fin n), HLPSchurResidual P D j = 0) (hdtau : D.dtau = 0) :
        (∀ (j : Fin n), D.dx j = 0) (∀ (j : Fin n), D.ds j = 0) D.dkappa = 0

        Once the Schur residual and vanish, the reduced primal and scalar directions vanish.

        theorem HSDInteriorPointLP.HLPHomogeneous.dtheta_dy_zero_from_schur_core {m n : } (P : LPData m n) (std : LPStandardAssumptions P) (w : HSState n) (D : HLPFullDirection m n) (hD : HLPNewtonHomogeneousBlockSystem P w D) (hr : ∀ (j : Fin n), HLPSchurResidual P D j = 0) (hdtau : D.dtau = 0) (hdx : ∀ (j : Fin n), D.dx j = 0) (hdkappa : D.dkappa = 0) :
        D.dtheta = 0 ∀ (i : Fin m), D.dy i = 0

        Final algebra after the Schur core has vanished: the definitions of bbar, cbar, and zbar imply dθ = 0; then full row rank gives dy = 0.

        theorem HSDInteriorPointLP.HLP_newton_block_kernel_trivial_from_full_row_rank {m n : } (P : LPData m n) (std : LPStandardAssumptions P) (w : HSState n) (hw : Interior w) (D : HLPFullDirection m n) :
        HLPNewtonHomogeneousBlockSystem P w D(∀ (i : Fin n), D.dx i = 0) D.dtau = 0 (∀ (i : Fin n), D.ds i = 0) D.dkappa = 0 (∀ (i : Fin m), D.dy i = 0) D.dtheta = 0

        Kernel triviality of the full HLP Newton block operator.

        This is the part where the proof should use:

        • full row rank of A,
        • strict positivity of x, tau, s, and kappa,
        • the skew-symmetric HLP block identities.

        Mathematically, one first eliminates ds and using the complementarity blocks. With r = Aᵀdy - c dτ + cbar dθ, this gives dx = Θ r, where Θ = S^{-1}X is positive diagonal. The Schur-complement identity is then ∑ᵢ Θᵢ rᵢ² + (κ/τ)dτ² = 0, so r = 0 and dτ = 0. The remaining HLP equations, together with the definitions of bbar, cbar, and zbar, give dθ = 0, and full row rank removes dy.

        theorem HSDInteriorPointLP.HLP_newton_block_system_solvable_from_kernel_trivial {m n : } (P : LPData m n) (w : HSState n) (γ : ) (hker : ∀ (D : HLPFullDirection m n), HLPNewtonHomogeneousBlockSystem P w D(∀ (i : Fin n), D.dx i = 0) D.dtau = 0 (∀ (i : Fin n), D.ds i = 0) D.dkappa = 0 (∀ (i : Fin m), D.dy i = 0) D.dtheta = 0) :
        ∃ (D : HLPFullDirection m n), HLPNewtonBlockSystem P w D γ

        Finite-dimensional square linear systems: zero kernel implies solvability.

        The HLP Newton block system is square. Once the homogeneous block operator has trivial kernel, finite-dimensional linear algebra gives surjectivity, hence existence of a solution for the inhomogeneous Newton right-hand side.

        Concrete nonsingularity/surjectivity statement for the full HLP Newton block system. This is now the only finite-dimensional linear-algebra theorem that remains for search-direction existence.

        Mathematically, this is proved by eliminating ds and with the positive diagonal coefficients xᵢ and τ, and then using full row rank of A together with the self-dual/skew-symmetric HLP block structure.

        A full HLP direction equation gives the reduced direction equation used by the rest of the proof skeleton.

        Concrete full HLP Newton linear-algebra theorem.

        This is stronger and more explicit than the reduced HLPNewtonLinearAlgebra: it states solvability of the full YTM direction system containing dy and . The proof should use the full-row-rank assumption on A and the positive diagonal terms from the interior iterate.

        Instances For

          Main concrete Newton solvability obligation for the YTM HLP system.

          theorem HSDInteriorPointLP.aggregate_eq_from_component_eq {n : } (w : HSState n) (d : HSDirection n) (γ : ) (hcomp : ∀ (i : Fin n), w.x i * d.ds i + w.s i * d.dx i = γ * mu w - w.x i * w.s i) (hscalar : w.tau * d.dkappa + w.kappa * d.dtau = γ * mu w - w.tau * w.kappa) :
          hdot w.x w.tau d.ds d.dkappa + hdot d.dx d.dtau w.s w.kappa = -(1 - γ) * gap w

          Summing the componentwise complementarity equations, including the scalar τκ equation, gives the aggregate first-order gap identity.

          The skew-symmetry consequence is derived from the bundled HLP nullspace relation. This is the separated-variable version of Theorem 5(ii) in YTM.

          The componentwise search-direction equation implies the aggregate complementarity equation.

          A solution of the HLP search-direction system gives a valid step direction.

          Linear-algebra theorem needed for the YTM/HLP Newton system.

          This packages the remaining finite-dimensional linear-algebra task: from the concrete HLP Newton matrix and the full-row-rank assumption on A, one proves that the predictor/corrector direction equations are solvable at every interior iterate.

          The theorem is kept as an explicit field rather than hidden inside the algorithm. In a later file, this should be replaced by an actual matrix nonsingularity proof.

          Instances For

            The concrete full Newton linear algebra induces the reduced linear algebra used by the existing convergence skeleton.

            Main finite-dimensional linear-algebra obligation for the HLP Newton system.

            This is the place where the full-row-rank assumption on A should be used to prove that the concrete Ye--Todd--Mizuno Newton system has a solution at each interior iterate. The current skeleton routes this obligation through the explicit full-system solvability statement above.

            Solvability of the YTM/HLP Newton system at a given point and parameter.

            Instances For

              Full-row-rank linear algebra supplies a solution of the search-direction system.

              Once solvability of the HLP Newton system is available, existence of a search direction is immediate.

              noncomputable def HSDInteriorPointLP.chooseSearchDirection {n : } (w : HSState n) (γ : ) (hex : ∃ (d : HSDirection n), HSDDirectionEquation w d γ) :

              A noncomputable selector for the search direction once existence is known.

              Equations
              Instances For

                The selected search direction satisfies the search-direction equations.

                theorem HSDInteriorPointLP.chosen_step_direction {n : } (w : HSState n) (γ : ) (hex : ∃ (d : HSDirection n), HSDDirectionEquation w d γ) :

                The selected search direction is a valid step direction.

                theorem HSDInteriorPointLP.sum_mul_add_smul {n : } (u v dv : Vec n) (α : ) :
                i : Fin n, u i * (v i + α * dv i) = i : Fin n, u i * v i + α * i : Fin n, u i * dv i

                Linearity of a finite sum with respect to the update v + α dv.

                theorem HSDInteriorPointLP.dot_add_smul {n : } (u v dv : Vec n) (α : ) :
                (dot u fun (i : Fin n) => v i + α * dv i) = dot u v + α * dot u dv

                Linearity of the second argument of dot for the update v + α dv.

                theorem HSDInteriorPointLP.dot_comm {n : } (u v : Vec n) :
                dot u v = dot v u
                theorem HSDInteriorPointLP.dot_add_smul_left {n : } (u du v : Vec n) (α : ) :
                dot (fun (i : Fin n) => u i + α * du i) v = dot u v + α * dot du v

                Linearity of the first argument of dot for the update u + α du.

                theorem HSDInteriorPointLP.dot_pair_add_smul {n : } (u v du dv : Vec n) (α : ) :
                (dot (fun (i : Fin n) => u i + α * du i) fun (i : Fin n) => v i + α * dv i) = dot u v + α * (dot du v + dot u dv) + α ^ 2 * dot du dv

                Expansion of dot (u + α du) (v + α dv).

                theorem HSDInteriorPointLP.gap_addStep_expansion {n : } (w : HSState n) (d : HSDirection n) (α : ) :
                gap (addStep w d α) = gap w + α * (hdot w.x w.tau d.ds d.dkappa + hdot d.dx d.dtau w.s w.kappa) + α ^ 2 * hdot d.dx d.dtau d.ds d.dkappa

                Algebraic expansion of the complementarity gap under a line step.

                theorem HSDInteriorPointLP.gap_addStep_of_HSDStepDirection {n : } (w : HSState n) (d : HSDirection n) (α γ : ) (hdir : HSDStepDirection w d γ) :
                gap (addStep w d α) = (1 - α * (1 - γ)) * gap w

                Gap update for a direction satisfying the HLP nullspace and complementarity equations.

                structure HSDInteriorPointLP.PredictorStepGuarantee {n : } (βwide c : ) (w : HSState n) (d : HSDirection n) (α : ) :

                Predictor step guarantee from the Mizuno--Todd--Ye local analysis.

                Instances For
                  structure HSDInteriorPointLP.CorrectorStepGuarantee {n : } (βtight : ) (w : HSState n) (d : HSDirection n) :

                  Corrector step guarantee from the Mizuno--Todd--Ye local analysis.

                  Instances For

                    The tight neighborhood parameter used in the YTM proof.

                    Equations
                    Instances For

                      The wide neighborhood parameter used in the YTM proof.

                      Equations
                      Instances For

                        The predictor step-size constant appearing in YTM Theorem 6. Mathematically this is 8^{-2.5}.

                        Equations
                        Instances For

                          Corrector local estimate #

                          The corrector half of the YTM local analysis is a componentwise estimate for the full step. In the usual notation, set

                          For a corrector direction (γ = 1), the linearized complementarity equations give

                          uᵢ Δvᵢ + vᵢ Δuᵢ = μ - uᵢ vᵢ,

                          and skew orthogonality gives Σ Δuᵢ Δvᵢ = 0. The Mizuno--Todd--Ye componentwise estimate proves that, if w ∈ N(1/2), then the full corrector step w + d is positive and lies in N(1/4). The proof is the standard scaled estimate

                          ‖Δu ∘ Δv‖ ≤ μ / 4,

                          obtained by writing pᵢ = Δuᵢ/uᵢ, qᵢ = Δvᵢ/vᵢ, aᵢ = sqrt(uᵢvᵢ) pᵢ, and bᵢ = sqrt(uᵢvᵢ) qᵢ. This lemma is stated separately so that the top-level corrector theorem has exactly the same shape as the IPM proof: local positivity/centrality estimate plus the already-formalized gap identity.