Conectar vía MCP →

Ingresar cálculo

Fórmula

Publicidad

Resultados

Resultado de la exponenciación modular
9
7^256 mod 13
Base 7
Exponente 256
Módulo 13

¿Qué es la Calculadora de Potencia Modular?

La Calculadora de Potencia Modular obtiene \((\text{base}^{\text{exponente}}) \bmod m\), es decir, el resto que queda al elevar una base a una potencia y dividir el resultado entre un módulo. Esta operación, conocida como exponenciación modular, está presente en todas partes dentro de la teoría de números y la criptografía: es la base del cifrado RSA, del intercambio de claves Diffie-Hellman, de las pruebas de primalidad y de las funciones hash. Calcularla de forma directa (primero la potencia gigantesca y luego el resto) resulta imposible cuando el exponente es grande, así que recurrimos a un algoritmo rápido.

$$\text{result} = \text{Base}^{\text{Exponent}} \bmod \text{Modulus}$$

Cómo usarla

Introduce tres números enteros: la base, el exponente (cero o positivo) y el módulo \(m\) (un entero positivo mayor que 1). Pulsa calcular y la herramienta devuelve el resultado dentro del rango de 0 a \(m-1\). Las bases negativas se reducen automáticamente a su residuo no negativo correcto.

La fórmula explicada

En lugar de construir el número enorme \(\text{base}^{\text{exponente}}\), la calculadora aplica el método de elevar al cuadrado y multiplicar (también llamado exponenciación binaria). Lee el exponente en binario. Partiendo de un resultado igual a 1, eleva repetidamente la base al cuadrado módulo \(m\); cada vez que el dígito binario actual del exponente es 1, multiplica ese valor elevado al cuadrado por el resultado acumulado, reduciendo de nuevo módulo \(m\). Como cada número intermedio se mantiene por debajo de \(m^2\), el cálculo es veloz incluso con exponentes de cientos de cifras.

Publicidad
Diagrama de flujo del algoritmo de exponenciación modular por cuadrado y multiplicación
Cuadrado y multiplicación: recorre los bits del exponente, elevando al cuadrado en cada paso y multiplicando cuando un bit es 1, reduciendo módulo m en todo momento.

Ejemplo resuelto

Calculemos \(7^{256} \bmod 13\). El orden de 7 módulo 13 divide a 12, y \(7^{12} \equiv 1\). Como \(256 = 12\times 21 + 4\), tenemos que $$7^{256} \equiv 7^{4} = 2401 \equiv 9 \pmod{13}.$$ Por tanto, la respuesta es 9, obtenida aquí al instante sin necesidad de formar nunca el número de 217 cifras que sería \(7^{256}\).

Tabla de pasos para calcular base elevada al exponente módulo m mediante cuadrados repetidos
Cada paso eleva al cuadrado el valor actual y lo reduce módulo m, multiplicando por la base donde los bits del exponente están activos.

Preguntas frecuentes

¿Qué ocurre si el módulo es 1? Todo entero es congruente con 0 módulo 1, así que el resultado es 0.

¿Puede ser el exponente 0? Sí. Cualquier base elevada a 0 vale 1, de modo que el resultado es \(1 \bmod m\) (que es 1 cuando \(m > 1\)).

¿Por qué no calcular la potencia directamente? Con exponentes grandes, el número intermedio tendría una cantidad astronómica de cifras y provocaría desbordamiento. Reducir módulo \(m\) en cada paso mantiene los valores pequeños y el método eficiente.

Última actualización: