Módulos /
tdn-2 / Capítulo 3 — Orden multiplicativo y raíces primitivas / Lección 3.2
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 → Cuando el orden es máximo
Recordando los ejemplos de la lección anterior: ord7(2)=3 mientras que ord7(3)=6=φ(7). El elemento 3 tiene el orden más grande posible —su período es exactamente φ(7)— y al calcular sus potencias recorremos todos los enteros de 1 a 6 módulo 7.
Este comportamiento tiene un nombre y un poder especial. Un entero g con gcd(g,n)=1 es una **raíz primitiva módulo n** si ordn(g)=φ(n). Equivalentemente, g es raíz primitiva si las potencias g1,g2,…,gφ(n) recorren todas las clases de residuos coprimas con n.
Cuando n=p es primo, φ(p)=p−1 y hay p−1 clases no nulas. Así, g es raíz primitiva módulo p si y solo si {g1,g2,…,gp−1}={1,2,…,p−1} como conjuntos módulo p. En otras palabras, g genera el grupo multiplicativo (Z/pZ)∗.
Teorema de existencia de raíces primitivas
El teorema fundamental es: **existe una raíz primitiva módulo n si y solo si n∈{1,2,4,pk,2pk}** para algún primo impar p y k≥1.
El caso más importante para olimpiadas es n=p primo: siempre existe una raíz primitiva módulo p. La demostración usa el hecho de que el polinomio xd−1 tiene a lo sumo d raíces en Z/pZ (un campo). Si el grupo (Z/pZ)∗ no tuviera un elemento de orden p−1, el exponente del grupo sería un divisor propio e<p−1, y todos los p−1 elementos satisfarían xe≡1(modp). Pero xe−1 tiene a lo sumo e<p−1 raíces, contradicción.
Para n=pk con p impar: si g es raíz primitiva módulo p, existe un levantamiento g o g+p que es raíz primitiva módulo pk. El argumento usa el Lema de Hensel (o una variante directa con la fórmula del orden en potencias de primos).
Para n=2: φ(2)=1 y g=1 es trivialmente raíz primitiva. Para n=4: g=3 tiene ord4(3)=2=φ(4). Para n=2k con k≥3: NO existen raíces primitivas; el grupo (Z/2kZ)∗ es isomorfo a Z/2×Z/2k−2, que no es cíclico.
(Z/pZ)∗ es cıˊclico de orden p−1⟹∃g raıˊz primitiva moˊdulo p Cuántas raíces primitivas hay
Dado que existen raíces primitivas módulo p, ¿cuántas hay? La respuesta es exactamente φ(p−1).
Demostración. Sea g una raíz primitiva fija. Todo elemento de (Z/pZ)∗ es de la forma gk para algún k∈{1,…,p−1}. Por la fórmula del orden de una potencia, ordp(gk)=(p−1)/gcd(p−1,k). Esto es igual a p−1 si y solo si gcd(p−1,k)=1. El número de k∈{1,…,p−1} con gcd(p−1,k)=1 es exactamente φ(p−1).
Por ejemplo, módulo 7 (donde p−1=6 y φ(6)=2): hay exactamente 2 raíces primitivas. Verificamos: 3 tiene orden 6 (raíz primitiva); 35=243≡5(mod7) también tiene orden 6 (otra raíz primitiva). Las demás potencias 32≡2 (orden 3), 33≡6 (orden 2), 34≡4 (orden 3), 36≡1 (orden 1) no son raíces primitivas.
#{raıˊces primitivas mod p}=φ(p−1) El índice: logaritmo discreto
Fijada una raíz primitiva g módulo p, todo a con gcd(a,p)=1 se escribe de manera única como a≡gk(modp) para algún k∈{1,…,p−1}. Este exponente k se llama el índice de a en base g módulo p, denotado indg(a) o logga.
El índice se comporta como un logaritmo: indg(ab)≡indg(a)+indg(b)(modp−1) y indg(ak)≡k⋅indg(a)(modp−1). Esto convierte multiplicaciones modulares en sumas, y potencias en multiplicaciones —exactamente como los logaritmos convierten problemas multiplicativos en aditivos.
Aplicación: resolver x5≡3(mod7). Con g=3: ind3(3)=1. La ecuación se convierte en 5⋅ind3(x)≡1(mod6). La ecuación lineal 5k≡1(mod6) tiene solución k≡5(mod6) (ya que 5⋅5=25≡1). Entonces x≡35=243≡5(mod7). Verificación: 55=3125=446⋅7+3≡3(mod7). Correcto.
indg(ab)≡indg(a)+indg(b)(modφ(n)) Residuos cuadráticos y raíces primitivas
Una de las aplicaciones más elegantes de las raíces primitivas es la caracterización de los residuos cuadráticos módulo un primo impar p. Un entero a con p∤a es un residuo cuadrático módulo p (i.e., x2≡a(modp) tiene solución) si y solo si a(p−1)/2≡1(modp).
Con una raíz primitiva g: escribe a=gk. Entonces a(p−1)/2=gk(p−1)/2. Como gp−1≡1, el valor de gk(p−1)/2 es 1 si k(p−1)/2≡0(modp−1), es decir si (p−1)/2∣k(p−1)/2... simplificando, si k es par. Si k es impar, gk(p−1)/2=(g(p−1)/2)k≡(−1)k=−1(modp) (pues g(p−1)/2≡−1: tiene orden 2 y el único elemento de orden 2 en (Z/pZ)∗ es −1).
Conclusión: exactamente la mitad de los elementos de (Z/pZ)∗ son residuos cuadráticos (los gk con k par), y la otra mitad son no-residuos (los gk con k impar). Esto es el Criterio de Euler expresado en lenguaje de raíces primitivas.
a es residuo cuadraˊtico mod p⟺a(p−1)/2≡1(modp)⟺indg(a)≡0(mod2)