Lemma 4.1 — the concave closure dominates on , has the same maximum, and its maximizers are
ProvedSteinitzExchange.Extension.concaveClosure_basicLet be a nonempty finite set, any function, and its concave closure, regarded as a function on . Then:
- for every ;
- , the maximum on the left being attained;
- , where and the right side is the convex hull of .
No exchange property is assumed. The lemma transfers maximization questions about on the lattice points to the concave function on the polytope .
Formalization Note. Part (2) is stated as: some has , and for all . All three parts evaluate only on (see the definition of concaveClosure).
import Mathlib import Definitions.Def_SteinitzExchange_Extension_IntegralBaseSet import Definitions.Def_SteinitzExchange_Extension_Exchange import Definitions.Def_SteinitzExchange_Extension_ConcaveClosure
namespace SteinitzExchange.Extension
/-- Murota 1996, p. 285, Lemma 4.1, for any `g : B → ℝ` on a nonempty finite `B ⊆ ℤ^V`:
(1) `ĝ(x) ≥ g(x)` for `x ∈ B`;
(2) `max{ĝ(b) | b ∈ B̄} = max{g(x) | x ∈ B}` (the left maximum is attained);
(3) `argmax(ĝ) = conv(argmax(g))`, the argmax of `ĝ` taken over `B̄`. -/
theorem concaveClosure_basic {V : Type*} [Fintype V] [DecidableEq V] [Nonempty V]
(B : Finset (V → ℤ)) (hB : B.Nonempty) (g : (V → ℤ) → ℝ) :
(∀ x ∈ B, g x ≤ concaveClosure B g (toReal x)) ∧
((∃ b ∈ hull B, concaveClosure B g b = B.sup' hB g) ∧
∀ b ∈ hull B, concaveClosure B g b ≤ B.sup' hB g) ∧
argmaxOn (hull B) (concaveClosure B g) = hull (argmaxB B g) := by sorry
end SteinitzExchange.Extension
Read-back
What the Lean code literally says, in plain math · claude-opus-5-5
Setting. is a finite, nonempty type with decidable equality. The symbols used are:
- is read in .
- .
- is a nonempty finite set. It is not assumed to be an integral base set.
- is arbitrary.
Definitions used.
- is the real convex hull of .
- The conjugate is
- The closure is
taken as a real infimum. It takes the value when the family is not bounded below.
- .
- .
Let .
Conclusion. Three claims hold together:
- for every .
- There is some with , and for every .
- equals the convex hull of .
Degenerate cases.
- If , then . The claims say:
- and ;
- both argmax sets equal .
- is only evaluated at points of , so its behaviour outside is not constrained here.
- If took the default value for some , claims 2 and 3 would apply to that default value.
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.