The cubic switch polynomial bounds entropy loss from below
ProvedThreeSum.Parameters.phi_le_gamma3sumalgorithmsfine-grained-complexitythree-sum-1962word-ram
Let be binary entropy in bits and set . The loss in the output-support entropy when its fraction is reduced by is . For every real ,
All polynomial coefficients are exact rationals, and the interval is closed.
This validates the polynomial surrogate used by the integer cubic-switch test: a certified polynomial threshold also gives the required entropy-loss threshold at every permitted switch fraction.
Preamble
import Definitions.Def_ThreeSum1962Source_Bundle01 import Mathlib.Analysis.Complex.ExponentialBounds import Mathlib.Analysis.Convex.Deriv import Mathlib.Analysis.SpecialFunctions.BinaryEntropy import Mathlib.Tactic.FieldSimp import Mathlib.Tactic.Linarith import Mathlib.Tactic.NormNum import Mathlib.Tactic.Positivity import Mathlib.Tactic.Ring set_option autoImplicit false set_option relaxedAutoImplicit false set_option Elab.async false
Formal statement
theorem ThreeSum.Parameters.phi_le_gamma : ∀ {t : Real}
(ht :
@Membership.mem.{0, 0} Real (Set.{0} Real) (@Set.instMembership.{0} Real)
(@Set.Icc.{0} Real Real.instPreorder (@OfNat.ofNat.{0} Real (nat_lit 0) (@Zero.toOfNat0.{0} Real Real.instZero))
(@HDiv.hDiv.{0, 0, 0} Real Real Real (@instHDiv.{0} Real (@DivInvMonoid.toDiv.{0} Real Real.instDivInvMonoid))
(@OfNat.ofNat.{0} Real (nat_lit 1) (@One.toOfNat1.{0} Real Real.instOne))
(@OfNat.ofNat.{0} Real (nat_lit 2)
(@instOfNatAtLeastTwo.{0} Real (nat_lit 2) Real.instNatCast
(@Nat.instAtLeastTwoHAddOfNat (@OfNat.ofNat.{0} Nat (nat_lit 1) (instOfNatNat (nat_lit 1)))
(@Nat.instNeZeroSucc (@OfNat.ofNat.{0} Nat (nat_lit 0) (instOfNatNat (nat_lit 0)))))))))
t),
@LE.le.{0} Real Real.instLE (ThreeSum.Parameters.phi t) (ThreeSum.Parameters.gamma t) := by
sorry
Source