Le mostré a mi hijo de 8 años cómo hacer aritmética modular, como un descanso de las cosas aburridas que le están enseñando en segundo grado. Imagine que la recta numérica, en lugar de ir al infinito en ambas direcciones, solo sube a 10, luego vuelve a cero.
Al contar a lo largo de esta línea numérica, puede mostrar que 6 + 7 = 2, lo cual es muy gracioso para un niño de 8 años. Regresará a la escuela y causará todo tipo de problemas, puedo decir.
También puedes restar, contando hacia atrás, tal como lo haces en una recta numérica regular. Evidentemente, 6–7 = 10. Observe que 6 + 4 también es igual a 10. Sumar 4 es lo mismo que restar 7. Decimos que 4 y 7 son “inversos aditivos”. (Al igual que en la aritmética regular, sumarlos da como resultado cero: 7 + 4 = 0).
- ¿Hay algún algoritmo del orden O (sqrt (n))?
- ¿Qué especialidad de pregrado debo elegir si quiero aplicar inteligencia artificial a los campos médicos?
- ¿Cuáles son algunos ejemplos de pruebas matemáticas que contradicen las expectativas?
- ¿Por qué me sigue mostrando el valor 0.0 en mi código Python?
- ¿Hasta qué punto puede comprimir un archivo comprimido de manera eficiente?
En este punto, el hermano de diez años se involucró, así que hicimos algo de multiplicación, que en realidad es solo una suma repetida. 6 x 7 = 9; 2 x 7 = 3; 8 x 7 = 1.
Ahora, 8 × 7 = 1 es interesante. Cuando dos números se multiplican por 1, decimos que son inversos multiplicativos. Esto es lo que se entiende por inversa modular. El inverso modular de 7 es 8.
Por supuesto, esto depende del sistema que estemos usando, donde solo tenemos 11 números en la recta numérica. Más exactamente, “7 es el inverso modular de 8, mod 11”.
Los inversos modulares significan que podemos definir la división. Dado que dividir por 7 es lo mismo que multiplicar por su inverso multiplicativo, podemos decir que dividir por 7 es lo mismo que multiplicar por 8.
Por ejemplo, 2/7 = 2 * 8 = 5. (Efectivamente, si lo haces al revés, 5 x 7 = 2).
La búsqueda de inversos modulares se puede hacer mediante prueba y error en casos pequeños. Para un módulo muy grande, podemos usar el algoritmo Euclidiano Extendido para encontrarlos de manera eficiente.