Kummer’s theorem in MathComp

5 Corollaries for binomial factorizations

Lemma 5.1 Upper bound on logn of binomial

For prime \(p\) and \(k \leq n\),

\[ v_p\! \binom {n}{k} \leq \texttt{trunc\_ log}(p, n). \]

Proof. By Kummer’s theorem, \(v_p\binom {n}{k}\) counts carries among at most \(\texttt{trunc\_ log}(p, n)\) positions.

Lemma 5.2 Primes larger than \(n\) don’t divide \(\binom {n}{k}\)

For prime \(p\) with \(n {\lt} p\) and \(k \leq n\),

\[ v_p\! \binom {n}{k} = 0. \]

Proof. When \(n {\lt} p\), \(\texttt{trunc\_ log}(p, n) = 0\), so there are no carry positions.

Lemma 5.3 Primes with \(p^2 {\gt} n\) appear at most once

For prime \(p\) with \(p^2 {\gt} n\) and \(k \leq n\),

\[ v_p\! \binom {n}{k} \leq 1. \]

Proof. Since \(p^2 {\gt} n\), \(\texttt{trunc\_ log}(p, n) \leq 1\), so there is at most one carry position.

Lemma 5.4 Lower bound on logn of binomial

For prime \(p\), \(k \leq n\), and \(0 {\lt} k\),

\[ v_p(n) \leq v_p\! \binom {n}{k} + v_p(k). \]

Proof.

Lemma 5.5 Valuation of \(\binom {p^m}{k}\)

For prime \(p\), \(0 {\lt} k \leq p^m\),

\[ v_p\! \binom {p^m}{k} + v_p(k) = m. \]

Proof. Combine Kummer’s theorem with Lemma 1.4.

Lemma 5.6 \(v_2(n!) {\lt} n\)

For \(n {\gt} 0\),

\[ v_2(n!) {\lt} n. \]

Proof. By Legendre’s formula, \(v_2(n!) = \sum _{k \geq 1} \lfloor n/2^k \rfloor {\lt} n \cdot \sum _{k \geq 1} 2^{-k} = n\).