Teoría de NúmerosContenidos

Teorema de Lucas para coeficientes binomiales módulo

Para un primo y enteros con expansiones , en base , se cumple . Una factorización en base de los binomiales mod p.

DificultadRegional
Etiquetaslucasbinomialesmodularbase-p
Requisitosbases-numericascongruencias
AutorAdrián García Bouzas
Actualizado2026-02-13
Teorema (Lucas, 1878)

Sea pp un primo, y sean n,kn, k enteros no negativos con expansiones en base pp:

n  =  arpr+ar1pr1++a1p+a0,n \;=\; a_r p^r + a_{r-1} p^{r-1} + \cdots + a_1 p + a_0, k  =  brpr+br1pr1++b1p+b0,k \;=\; b_r p^r + b_{r-1} p^{r-1} + \cdots + b_1 p + b_0,

con 0ai,bip10 \leq a_i, b_i \leq p - 1. Entonces

(nk)    i=0r(aibi)(modp),\binom{n}{k} \;\equiv\; \prod_{i=0}^{r} \binom{a_i}{b_i} \pmod p,

donde por convención (ab)=0\binom{a}{b} = 0 si b>ab > a.

Consecuencias inmediatas

Corolario 1. p(nk)p \nmid \binom{n}{k} si y solo si biaib_i \leq a_i para todo ii, es decir, cada dígito de kk en base pp es a lo más el dígito correspondiente de nn.

Corolario 2. El número de k{0,1,,n}k \in \{0, 1, \ldots, n\} con p(nk)p \nmid \binom{n}{k} es i(ai+1)\prod_i (a_i + 1).

Corolario 3 (Kummer, en realidad anterior). vp(nk)v_p\binom{n}{k} es el número de acarreos al sumar kk y nkn - k en base pp.

Demostración

Usamos el lema de Freshman's Dream: para todo primo pp y todo entero aa,

(1+x)p    1+xp(modp),(1 + x)^p \;\equiv\; 1 + x^p \pmod p,

como polinomios en Fp[x]\mathbb F_p[x]. La razón: el coeficiente (pj)\binom{p}{j} es divisible por pp para 1jp11 \leq j \leq p - 1.

Por iteración:

(1+x)pi    1+xpi(modp).(1 + x)^{p^i} \;\equiv\; 1 + x^{p^i} \pmod p.

Ahora calculamos (1+x)n(1+x)^n usando la expansión de nn en base pp:

(1+x)n  =  (1+x)a0+a1p+a2p2+  =  i(1+x)aipi.(1+x)^n \;=\; (1+x)^{a_0 + a_1 p + a_2 p^2 + \cdots} \;=\; \prod_i (1+x)^{a_i p^i}.

Módulo pp:

(1+x)aipi  =  [(1+x)pi]ai    (1+xpi)ai(modp).(1+x)^{a_i p^i} \;=\; \left[(1+x)^{p^i}\right]^{a_i} \;\equiv\; (1 + x^{p^i})^{a_i} \pmod p.

Por tanto:

(1+x)n    i(1+xpi)ai(modp).(1+x)^n \;\equiv\; \prod_i (1 + x^{p^i})^{a_i} \pmod p.

El coeficiente de xkx^k en el lado izquierdo es (nk)\binom{n}{k}. En el lado derecho, tomar exponente kk de xx significa, para cada ii, tomar el coeficiente de xbipix^{b_i p^i} en (1+xpi)ai(1 + x^{p^i})^{a_i}, que es (aibi)\binom{a_i}{b_i} (los dígitos bib_i deben coincidir con la expansión de kk en base pp). Multiplicando:

(nk)    i(aibi)(modp).\binom{n}{k} \;\equiv\; \prod_i \binom{a_i}{b_i} \pmod p. \quad \blacksquare
Ejemplos

Ejemplo 1. (175)mod3\binom{17}{5} \mod 3.

17=19+23+2=(122)317 = 1 \cdot 9 + 2 \cdot 3 + 2 = (122)_3. 5=09+13+2=(012)35 = 0 \cdot 9 + 1 \cdot 3 + 2 = (012)_3.

Por Lucas:

(175)    (10)(21)(22)  =  121  =  2(mod3).\binom{17}{5} \;\equiv\; \binom{1}{0} \binom{2}{1} \binom{2}{2} \;=\; 1 \cdot 2 \cdot 1 \;=\; 2 \pmod 3.

Verificación: (175)=6188=32062+2\binom{17}{5} = 6188 = 3 \cdot 2062 + 2. ✓

Ejemplo 2. ¿Es (10037)\binom{100}{37} divisible por 77?

100=(202)7100 = (202)_7 (porque 249+07+2=1002 \cdot 49 + 0 \cdot 7 + 2 = 100). 37=(52)737 = (52)_7 (porque 57+2=375 \cdot 7 + 2 = 37, o (052)7(052)_7).

Comparando dígito a dígito: a0=2,b0=2a_0 = 2, b_0 = 2. a1=0,b1=5a_1 = 0, b_1 = 5. Aquí b1>a1b_1 > a_1, así (05)=0\binom{0}{5} = 0.

Por tanto (10037)0(mod7)\binom{100}{37} \equiv 0 \pmod 7.

Aplicaciones

Aplicación 1: contar binomiales no divisibles

Problema clásico. ¿Cuántos k{0,1,,n}k \in \{0, 1, \ldots, n\} satisfacen p(nk)p \nmid \binom{n}{k}?

Por el Corolario 2: si n=(ara0)pn = (a_r \cdots a_0)_p, son exactamente (ai+1)\prod (a_i + 1).

Ejemplo. Entre (10000),(10001),,(10001000)\binom{1000}{0}, \binom{1000}{1}, \ldots, \binom{1000}{1000}, ¿cuántos son impares?

1000=(1111101000)21000 = (1111101000)_2 (binario). Dígitos: cuatro 11, un 00, dos 11, tres 00. Cuento los 11: 1,1,1,1,0,1,1,0,0,01, 1, 1, 1, 0, 1, 1, 0, 0, 0. Son siete unos.

Por el Corolario 2 con p=2p = 2: (ai+1)=27=128\prod (a_i + 1) = 2^7 = 128.

Aplicación 2: caracterización de impares

Por Lucas con p=2p = 2: (nk)\binom{n}{k} es impar si y solo si cada bit de kk está en nn, es decir, k  AND  n=kk \;\mathrm{AND}\; n = k en lenguaje binario.

Aplicación 3: el triángulo de Sierpinski

Si pintamos (nk)\binom{n}{k} módulo 22 en una rejilla triangular (Pascal), obtenemos el triángulo de Sierpinski. La estructura fractal es consecuencia directa de Lucas.

Aplicación 4: problemas olímpicos

OME 2017. Demostrar que (2nn)\binom{2n}{n} es par para todo n1n \geq 1.

Solución. 2n=(ara00)22n = (a_r \cdots a_0 0)_2 termina en 00. n=(ara0)2n = (a_r \cdots a_0)_2 tiene los mismos bits pero desplazados. Comparando dígito a dígito vs 2n2n: el dígito 00 de 2n2n es 00, pero el dígito 00 de nn es a0a_0. Si a0=1a_0 = 1, (01)=0\binom{0}{1} = 0 y el producto se anula.

Más simple: 2n2n termina en bit 00, nn debería tener su bit 00 a 0\leq 0 para que 2(2nn)2 \nmid \binom{2n}{n}, lo cual requiere bit 00 de nn igual a 00. Pero entonces hay otra comparación a hacer... Caso a caso lleva al resultado.

Argumento más limpio (Kummer): v2(2nn)v_2\binom{2n}{n} es el número de acarreos en n+nn + n binario. Para n1n \geq 1, hay al menos un acarreo (el del bit más bajo de nn donde ai=1a_i = 1). Por tanto v2(2nn)1v_2\binom{2n}{n} \geq 1, par. \blacksquare

Observación

Lucas es el enlace fundamental entre la combinatoria de los binomiales y la aritmética modular. Su poder viene de localizar la información sobre (nk)modp\binom{n}{k} \mod p en los dígitos de n,kn, k en base pp, transformando una cuestión global en una cuestión dígito a dígito.

Generalización. Hay una versión de Lucas para módulos primos potencia (pkp^k) más complicada (Granville, Davis-Webb), aplicable cuando los argumentos elementales se quedan cortos.