En matemáticas, particularmente na área da aritmética, o inverso multiplicativo modular dun número enteiro a é un número enteiro x tal que o produto ax é congruente con 1 en relación ao módulo m.[1] Na notación estándar da aritmética modular esta congruencia escríbese como
que é a forma abreviada de escribir a afirmación de que m divide a cantidade ax − 1 ou, dito doutro xeito, o resto despois de dividir ax polo número enteiro m é 1. Se a ten un inverso módulo m, entón hai un número infinito de solucións desta congruencia, que forman unha clase de congruencia con respecto a este módulo. A maiores, calquera número enteiro que sexa congruente con a (é dicir, a clase de congruencia de a) ten calquera elemento da clase de congruencia de x como inverso multiplicativo modular. Usando a notación de para indicar a clase de congruencia que contén w, isto pódese expresar dicindo que o inverso multiplicativo modular da clase de congruencia é a clase de congruencia tal que:
onde o símbolo denota a multiplicación de clases de equivalencia módulo m.[2] Escrito deste xeito, represéntase claramente a analoxía co concepto habitual de inverso multiplicativo no conxunto de números racionais ou reais, substituíndo os números por clases de congruencia e alterando axeitadamente a operación binaria.
Do mesmo xeito que coa operación análoga sobre os números reais, un uso fundamental desta operación é resolver, cando sexa posíbel, congruencias lineares da forma
Para un número enteiro positivo m, dous enteiros, a e b, dise que son congruentes módulo m se m divide a súa diferenza. Esta relación binaria denótase como
Isto é unha relación de equivalencia no conxunto de enteiros, , e as clases de equivalencia chámanse clases de congruencia módulo m ou clases de residuos módulo m. Denotamos como a clase de congruencia que contén o número enteiro a,[4] daquela
Unha congruencia linear é unha congruencia modular da forma
A diferenza das ecuacións lineares sobre os reais, as congruencias lineares poden ter cero, unha ou varias solucións. Se x é unha solución dunha congruencia linear, todo elemento en tamén é unha solución, polo que cando falamos do número de solucións dunha congruencia linear estamos a referirnos ao número de clases de congruencia diferentes que conteñen solucións.
Se d é o máximo común divisor de a e m entón a congruencia linear ax ≡ b (mod m) ten solucións se e só se d divide a b. Se d divide a b, entón hai exactamente d solucións.[5]
Un inverso multiplicativo modular dun número enteiro a con respecto ao módulo m é unha solución da congruencia linear
O resultado anterior di que unha solución existe se e só se gcd(a, m) = 1, é dicir, a e m deben ser primos relativos (é dicir, coprimos ou primos entre si). A maiores, cando se cumpre esta condición, hai exactamente unha solución, é dicir, cando existe, un inverso multiplicativo modular é único: Se b e b' son ambos os dous inversos multiplicativos modulares de a en relación ao módulo m, daquela
polo tanto
Se a ≡ 0 (mod m), entón gcd(a, m) = a, e a non terá un inverso multiplicativo modular. Polo tanto, b ≡ b' (mod m) .
Cando ax ≡ 1 (mod m) ten unha solución, a miúdo denótase coa notación habitual de inversos, expoñente
A relación de congruencia, módulo m, estabelece unha partición do conxunto de enteiros en m clases de congruencia. As operacións de suma e multiplicación pódense definir nestes m obxectos do seguinte xeito: Para sumar ou multiplicar dúas clases de congruencia, primeiro escolla un representante de cada clase e despois realice a operación habitual para os enteiros dos dous representantes. Finalmente, tome a clase de congruencia na que se atopa o resultado da operación enteira como resultado da operación sobre as clases de congruencia. En símbolos, con e representando as operacións sobre clases de congruencia, estas definicións son
e
Estas operacións están ben definidas, o que significa que o resultado final non depende das eleccións dos representantes que se fixeron para obter o resultado.
As m clases de congruencia con estas dúas operacións definidas forman un anel, chamado anel de enteiros módulo m. Hai varias notacións utilizadas para estes obxectos alxébricos, a maioría das veces ou (conxunto cociente), mais tamén cando é improbábel a confusión con outros obxectos alxébricos.
As clases de congruencia dos enteiros módulo m coñecíanse tradicionalmente como clases de residuos módulo m, o que reflicte o feito de que todos os elementos dunha clase de congruencia teñen o mesmo resto (é dicir, "residuo") ao seren divididos por m. O algoritmo de división para números enteiros mostra que o conxunto de números enteiros, {0, 1, 2, ..., m − 1} forma un sistema completo de residuos módulo m, coñecido como o sistema de mínimos residuos módulo m.[6]
Non todos os elementos dun sistema de residuos completo módulo m teñen un inverso multiplicativo modular, por exemplo, cero nunca o ten. Despois de eliminar os elementos dun sistema de residuos completo que non son coprimos con m, o que fica denomínase sistema reducido de residuos, cuxos elementos teñen todos un inverso multiplicativo modular. O número de elementos nun sistema reducido de residuos é , onde é a función totiente de Euler, é dicir, o número de enteiros positivos inferiores a m que son coprimos con m.
Nun anel xeral con unidade non todos os elementos teñen un inverso multiplicativo e os que o teñen denomínanse unidades. Como o produto de dúas unidades é unha unidade, as unidades dun anel forman un grupo, o grupo de unidades do anel e moitas veces denótase como R× se R é o nome do anel. O grupo de unidades do anel de enteiros módulo m chámase grupo multiplicativo de enteiros módulo m, e é isomorfo a un sistema de residuos reducido. En particular, ten orde (tamaño), .
No caso de que m sexa primo, digamos p, daquela e todos os elementos distintos de cero de teñen inversos multiplicativos, polo tanto é un corpo finito. Neste caso, o grupo multiplicativo de enteiros módulo p forma un grupo cíclico de orde p − 1.
O produto das clases de congruencia e pódese obter seleccionando un elemento de , digamos 25, e un elemento de , digamos −2, e observando que o seu produto (25)(−2) = −50 está na clase de congruencia . Así, . A suma defínese dun xeito similar. As dez clases de congruencia xunto con estas operacións de suma e multiplicación de clases de congruencia forman o anel de enteiros módulo 10, é dicir, .
Pódese atopar un inverso multiplicativo modular a módulo m usando o algoritmo de Euclides estendido.
O algoritmo de Euclides determina números enteiros x e y que satisfán a identidade de Bézout,
Reescrito, isto é
é dicir,
e polo tanto temos o inverso multiplicativo modular de a. Unha versión máis eficiente do algoritmo é o algoritmo de Euclides estendido.
En notación O grande, este algoritmo corre en tempo O(log2(m)), asumindo |a| < m, e considérase moi rápido e xeralmente máis eficiente que a súa alternativa, a exponenciación.
Como alternativa ao algoritmo de Euclides estendido, o teorema de Euler pódese usar para calcular inversos modulares.[7]
Segundo o teorema de Euler, se a é coprimo con m, é dicir, gcd(a, m) = 1, daquela
onde é a función total de Euler. Isto débese ao feito de que a pertence ao grupo multiplicativo × se e só se a é coprimo con m. Polo tanto, pódese atopar directamente un inverso multiplicativo modular mediante:
No caso especial onde m é primo, e o inverso modular vén dada por
Este método é xeralmente máis lento que o algoritmo de Euclides estendido.
É posíbel calcular a inversa de múltiples números ai, módulo un m común, cunha única invocación do algoritmo de Euclides e tres multiplicacións por entrada adicional.[8]A idea básica é formar o produto de todos os ai, calcular a inversa e, a continuación, multiplica por aj para todo j ≠ i e así conseguir o desexado a−1
i.
En pseudocódigo, o algoritmo é (toda a aritmética realizada módulo m ):
É posíbel realizar as multiplicacións nunha estrutura en árbore en lugar de utilizar de forma linear a computación paralela.
No algoritmo RSA, o cifrado e descifrado dunha mensaxe realízase mediante un par de números que son inversos multiplicativos con respecto a un módulo coidadosamente seleccionado. Un destes números faise público e pódese utilizar nun procedemento de cifrado rápido, mentres que o outro, usado no procedemento de descifrado, manténse oculto. Determinar o número oculto a partir do número público considérase computacionalmente inviábel e isto é o que fai que o sistema funcione para garantir a privacidade.[9]
Os inversos multiplicativos modulares utilízanse para obter unha solución dun sistema de congruencias lineares que está garantido polo teorema chinés do resto.
Por exemplo, o sistema
ten solucións comúns xa que 5,7 e 11 son coprimos por parellas. Unha solución vén dada por
onde
Por tanto,
e na súa forma reducida
xa que 385 é o mcm de 5,7 e 11.
Outro uso do inverso multiplicativo modular ocupa un lugar destacado na definición da suma de Kloosterman.