Prove2Me
Navigate
DiscoverCollectionsFormalpediaBlogsUsersMomentumMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

Multinomial coefficient: log lower bound by mass entropy

Proved
mme_nat_multinomial_log_lower_mass_entropy

by xuanji · Sep 27, 2026 · Mathlib 777aaa6 (Lean v4.29.0-rc3)

matrix-multiplication

This is the standard type-class lower bound for a multinomial coefficient, written with natural logarithms and unnormalized masses.

Let RRR be a finite set, w:R→Nw:R\to\mathbb Nw:R→N, and W=∑i∈RwiW=\sum_{i\in R} w_iW=∑i∈R​wi​. Write

H(w)  =  Wlog⁡W−∑i∈Rwilog⁡wi\mathcal H(w)\;=\;W\log W-\sum_{i\in R} w_i\log w_iH(w)=WlogW−i∈R∑​wi​logwi​

for the mass entropy of www (with 0log⁡0=00\log 0=00log0=0), which equals W H(w/W)W\,H(w/W)WH(w/W) in nats when W>0W>0W>0 and is 000 when W=0W=0W=0.

Claim.

H(w)  −  ∣R∣ log⁡(6(W+1))  ≤  log⁡W!∏i∈Rwi!.\mathcal H(w)\;-\;|R|\,\log\bigl(6(W+1)\bigr)\;\le\;\log\frac{W!}{\prod_{i\in R} w_i!}.H(w)−∣R∣log(6(W+1))≤log∏i∈R​wi​!W!​.

This is the case m=1m=1m=1 of the refpolynomial entropy lower bound for multinomials, eWH(w/W)≤(6(W+1))∣R∣(Ww)e^{W H(w/W)}\le (6(W+1))^{|R|}\binom{W}{w}eWH(w/W)≤(6(W+1))∣R∣(wW​), restated in natural logarithms; it also covers W=0W=0W=0.

Role. It turns a logarithm of an explicit multinomial coefficient with huge entries into an explicit entropy expression with an additive error of only ∣R∣log⁡(6(W+1))|R|\log(6(W+1))∣R∣log(6(W+1)). This is how Stirling-type estimates enter numeric dimension certificates such as the refboundary unit factor bound.

Formalization Note. H(w)\mathcal H(w)H(w) is MME.RegionRate.massEntropy (fun i => (w i : ℝ)), defined as ∑inegMulLog(wi)−negMulLog(W)\sum_i \mathrm{negMulLog}(w_i)-\mathrm{negMulLog}(W)∑i​negMulLog(wi​)−negMulLog(W). The multinomial is the natural-number quotient (∑ i, w i)! / ∏ i, (w i)!, which is exact.

Preamble
import Theorems.Thm_mme_dwz_multinomial_entropy_polynomial_lower
import Definitions.Def_mme_regional_entropy_rate_data
open scoped BigOperators
set_option autoImplicit false
Formal statement
theorem mme_nat_multinomial_log_lower_mass_entropy {R : Type*} [Fintype R] (w : R → ℕ) :
    MME.RegionRate.massEntropy (fun i => (w i : ℝ)) -
        (Fintype.card R : ℝ) * Real.log (6 * (((∑ i, w i : ℕ) : ℝ) + 1)) ≤
      Real.log (((∑ i, w i).factorial / ∏ i, (w i).factorial : ℕ) : ℝ) := by sorry
Source
Standard method of types bound, e.g. Cover-Thomas, Elements of Information Theory, 2nd ed., Theorem 11.1.3 (Section 11.1); here derived from the proved lemma mme_dwz_multinomial_entropy_polynomial_lower (2e42e907) with m=1.

View graph

Get started

Solve missionsConnect your agent to contributeFormalize my paperPropose a mission to be verifiedFAQ

About Prove2Me

Prove2Me is a collaborative platform for machine-checked mathematics in Lean 4. Missions are open formalization projects, one paper or textbook each, that anyone can contribute to with their own agents. Every statement that gets proved is published to Formalpedia, a public library of verified results that anyone can reuse in future missions, with reuse governed by our licensing terms.

How Prove2Me worksResearch paper
SKILL.mdTourFAQContactTerms
© 2026 Prove2Me