Módulos / tdn-1 / Capítulo 2 — Números primos y TFA / Lección 2.3

La criba de Eratóstenes

Lección 2.3·Capítulo 2 — Números primos y TFA·10 min·Piloto

Video en producción

El contenido pedagógico de esta lección ya está completo y lo puedes leer abajo. El video con la voz de Eduardo Espinoza Ramos se produce según la Política de IA.

Disclosure de IA: al publicarse, este contenido reproducirá digitalmente, con autorización expresa del autor, la voz y fisonomía de Eduardo Espinoza Ramos. Curaduría revisada por matemáticos profesionales. Política completa →

Objetivo de la lección

Ejecutar la criba de Eratóstenes para encontrar todos los primos hasta $N$, entender por qué solo hay que cribar hasta $\sqrt{N}$, y conocer la notación $\pi(x)$ junto con estimaciones básicas para el conteo de primos.

El algoritmo: tachar los no-primos

La criba de Eratóstenes es un algoritmo del siglo III a.C. para encontrar todos los primos hasta un límite NN. La idea es simple: empezar con la lista 2,3,4,,N2, 3, 4, \ldots, N y, a partir de cada primo encontrado, tachar todos sus múltiplos mayores que él.

Pasos: (1) Escribe los enteros de 22 a NN. (2) El primer número no tachado es 22; táchalo de primo y testa todos sus múltiplos: 4,6,8,4, 6, 8, \ldots (3) El siguiente no tachado es 33; ídem con 6,9,12,6, 9, 12, \ldots (4) El siguiente no tachado es 55; táchalo y sus múltiplos. Continúa. (5) Cuando llegas a un número p>Np > \sqrt{N}, todos los compuestos hasta NN ya fueron tachados. Los sobrevivientes son exactamente los primos N\le N.

**¿Por qué basta cribar hasta N\sqrt{N}?** Todo compuesto nNn \le N tiene un factor primo pnNp \le \sqrt{n} \le \sqrt{N}. Luego, cuando hemos procesado todos los primos N\le \sqrt{N}, todos los compuestos ya fueron marcados.

Si n=ab con 2ab, entonces an\text{Si } n = ab \text{ con } 2 \le a \le b, \text{ entonces } a \le \sqrt{n}

Ejemplo: todos los primos hasta 50

Aplicamos la criba hasta N=50N = 50. Como 50<8\sqrt{50} < 8, solo necesitamos cribar con los primos 2,3,5,72, 3, 5, 7.

Tachamos múltiplos de 2: 4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,504, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50.

Tachamos múltiplos de 3 (no ya tachados): 9,15,21,27,33,39,459, 15, 21, 27, 33, 39, 45.

Tachamos múltiplos de 5 (no ya tachados): 25,3525, 35.

Tachamos múltiplos de 7 (no ya tachados): 4949.

Sobreviven: 2,3,5,7,11,13,17,19,23,29,31,37,41,43,472, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47. Hay 15 primos hasta 50.

La función $\pi(x)$: contando primos

Se define π(x)\pi(x) como el **número de primos menores o iguales a xx**. Por ejemplo, π(10)=4\pi(10)=4 (los primos 2,3,5,72,3,5,7), π(50)=15\pi(50)=15, π(100)=25\pi(100)=25.

El Teorema del Número Primo (demostrado por Hadamard y de la Vallée Poussin en 1896) dice que π(x)xlnx\pi(x) \sim \frac{x}{\ln x}, es decir, limxπ(x)x/lnx=1\lim_{x\to\infty} \frac{\pi(x)}{x/\ln x} = 1.

Para olimpiadas, la estimación útil es: π(x)x/lnx\pi(x) \approx x/\ln x da el orden de magnitud correcto. Por ejemplo, π(1000)=168\pi(1000) = 168 y 1000/ln(1000)1441000/\ln(1000) \approx 144. No exacto, pero útil para argumentos de conteo.

Una cota que sí se puede demostrar elementalmente (Chebychev): existen constantes c1,c2>0c_1, c_2 > 0 tales que c1x/lnxπ(x)c2x/lnxc_1 x/\ln x \le \pi(x) \le c_2 x/\ln x para todo x2x \ge 2.

π(x)xlnx\pi(x) \sim \frac{x}{\ln x}

Gaps entre primos y primos gemelos

El gap entre dos primos consecutivos pnp_n y pn+1p_{n+1} es pn+1pnp_{n+1} - p_n. Los primeros gaps son 11 (entre 22 y 33), 2,2,4,2,4,2,4,6,2,6,2, 2, 4, 2, 4, 2, 4, 6, 2, 6, \ldots

Los gaps pueden ser arbitrariamente grandes: los n1n-1 números n!+2,n!+3,,n!+nn!+2, n!+3, \ldots, n!+n son todos compuestos (pues kn!+kk \mid n!+k para 2kn2 \le k \le n). Así hay runs de n1n-1 compuestos consecutivos.

Los primos gemelos son pares (p,p+2)(p, p+2) ambos primos: (3,5),(5,7),(11,13),(17,19),(29,31),(3,5), (5,7), (11,13), (17,19), (29,31), \ldots La conjetura de los primos gemelos —que hay infinitos pares gemelos— sigue abierta. Es uno de los problemas no resueltos más famosos de la teoría de números.

Postulado de Bertrand (que demostraremos en la lección 2.4): para todo n1n \ge 1, existe un primo pp con n<p2nn < p \le 2n. Equivalentemente, pn+1<2pnp_{n+1} < 2p_n: los primos no se alejan demasiado.

Complejidad de la criba y variantes

La criba de Eratóstenes tiene complejidad temporal O(NloglogN)O(N \log \log N) y espacial O(N)O(N). Para N=106N = 10^6 es perfectamente viable (millisegundos en computador).

Variante importante: la criba segmentada reduce la memoria a O(N)O(\sqrt{N}) dividiendo el intervalo [1,N][1,N] en bloques de tamaño N\sqrt{N}. Se usa cuando NN es muy grande (por ejemplo N=1010N = 10^{10}).

Para olimpiadas sin computador lo que importa es ejecutar la criba a mano hasta N=100N = 100. Memoriza los primos hasta 100100: 2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,972,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97. Son 25. Ese dato —π(100)=25\pi(100) = 25— aparece en problemas de conteo.

Problemas del Capítulo 2 — con solución

8 problemas verificados. Intenta cada uno antes de abrir la solución.

2.1

Calcula el número de divisores de n=360n = 360.

2.2

¿Cuántos primos hay menores que 5050?

2.3★★

Halla todos los enteros positivos nn tales que τ(n)=5\tau(n) = 5.

2.4★★

Sea pp un primo con p>3p > 3. Demuestra que 24p2124 \mid p^2 - 1.

2.5★★

Encuentra todos los primos pp tales que p+10p+10 y p+14p+14 también son primos.

2.6★★★

Demuestra que si 2n12^n - 1 es primo, entonces nn es primo.

2.7★★★ONEM adaptado

Halla todos los pares de primos (p,q)(p, q) con pqp \le q tales que pqpq+qppq \mid p^q + q^p.

2.8★★★★ONEM regional (nivel avanzado)

Sea nn un entero positivo tal que τ(n)\tau(n) es impar. Demuestra que nn es un cuadrado perfecto.