Larman's layer step: a facet relaxed to the rows of a distance layer creates no shortcuts
ProvedHirsch.larman_layer_stepLet be a bounded H-polytope, fix a base vertex and write for the graph distance from (definition Hirsch_walk). Let be a row with , let be a set of rows containing , and suppose (inductive hypothesis) that every bounded H-polyhedron in described by inequalities has diameter at most . Let be vertices of on the facet whose tight rows all lie in , and assume the layer condition: every vertex of on at which some row outside is tight lies strictly closer to than ,
Then
This is the inductive step of Larman's proof of in the form given by Kim--Santos: the facet , relaxed to the inequalities active in the current distance layer (and bounded by one auxiliary cut, Hirsch.bounded_relaxation_cut), is a -polyhedron with inequalities, so its vertices are joined by a walk of steps there. Followed backwards from , that walk cannot leave : as long as it stays at distance from , every neighbour of the current vertex on is at distance , hence has all its rows in by the layer condition, so by Hirsch.relaxation_exit_vertex the next step is an edge of . Consequently the walk is a walk in and .
Formalization Note is a Finset (Fin n); the inductive hypothesis is stated with exactly T.card inequalities in EuclideanSpace ℝ (Fin (d-1)) and no nonemptiness hypothesis (the empty polytope satisfies every DiamLE). The direction of the walk (from towards ) is what makes the layer condition, which only constrains vertices closer than , sufficient.
import Mathlib import Definitions.Def_Hirsch_model import Definitions.Def_Hirsch_walk open scoped RealInnerProductSpace
namespace Hirsch
theorem larman_layer_step (d n : ℕ)
(a : Fin n → EuclideanSpace ℝ (Fin d)) (b : Fin n → ℝ)
(hbd : Bornology.IsBounded (Hpoly a b))
(u : EuclideanSpace ℝ (Fin d)) (hu : u ∈ Set.extremePoints ℝ (Hpoly a b))
(r : Fin n) (har : a r ≠ 0) (T : Finset (Fin n)) (hrT : r ∈ T) (B : ℕ)
(IH : ∀ (a' : Fin T.card → EuclideanSpace ℝ (Fin (d - 1))) (b' : Fin T.card → ℝ),
Bornology.IsBounded (Hpoly a' b') → DiamLE (Hpoly a' b') B)
(y z : EuclideanSpace ℝ (Fin d))
(hy : y ∈ Set.extremePoints ℝ (Hpoly a b)) (hz : z ∈ Set.extremePoints ℝ (Hpoly a b))
(hyr : ⟪a r, y⟫ = b r) (hzr : ⟪a r, z⟫ = b r)
(hyT : ∀ j, ⟪a j, y⟫ = b j → j ∈ T) (hzT : ∀ j, ⟪a j, z⟫ = b j → j ∈ T)
(hback : ∀ w ∈ Set.extremePoints ℝ (Hpoly a b), ⟪a r, w⟫ = b r →
(∃ j, j ∉ T ∧ ⟪a j, w⟫ = b j) → gdist (Hpoly a b) u w + 1 ≤ gdist (Hpoly a b) u y) :
gdist (Hpoly a b) u z ≤ gdist (Hpoly a b) u y + B := by sorry
end Hirsch