En matemáticas , el teorema del resto chino establece que si se conocen los restos de la división euclidiana de un entero n por varios enteros, entonces se puede determinar de forma única el resto de la división de n por el producto de estos enteros, bajo la condición de que los divisores sean coprimos por pares (ningún par de divisores comparte un factor común distinto de 1).
Por ejemplo, si sabemos que el resto de n dividido por 3 es 2, el resto de n dividido por 5 es 3 y el resto de n dividido por 7 es 2, entonces, sin ninguna otra información, podemos determinar que el resto de n dividido por 105 (el producto de 3, 5 y 7) es 23. Es importante destacar que esto nos dice que si n es un número natural menor que 105, entonces 23 es el único valor posible de n .
También se conoce como teorema de Sunzi , ya que la declaración más antigua conocida es la del matemático chino Sunzi en el Sunzi Suanjing del siglo III al V d.C.
El teorema del resto chino se utiliza ampliamente para realizar cálculos con números enteros grandes, ya que permite reemplazar un cálculo para el cual se conoce un límite en el tamaño del resultado por varios cálculos similares con números enteros pequeños.
El teorema del resto chino (expresado en términos de congruencias ) es válido para todos los dominios ideales principales . Se ha generalizado a cualquier anillo , con una formulación que implica ideales bilaterales .
La primera formulación conocida del problema aparece en el libro del siglo V Sunzi Suanjing del matemático chino Sunzi: [1]
Hay cosas cuyo número es desconocido. Si las contamos de tres en tres, nos sobran dos; de cinco en cinco, nos sobran tres; y de siete en siete, nos sobran dos. ¿Cuántas cosas hay? [2]
El trabajo de Sunzi no sería considerado un teorema según los estándares modernos; solo da un problema particular, sin mostrar cómo resolverlo, mucho menos alguna prueba sobre el caso general o un algoritmo general para resolverlo. [3] Lo que equivale a un algoritmo para resolver este problema fue descrito por Aryabhata (siglo VI). [4] Los casos especiales del teorema del resto chino también eran conocidos por Brahmagupta (siglo VII) y aparecen en el Liber Abaci de Fibonacci (1202). [5] El resultado se generalizó más tarde con una solución completa llamada Da-yan-shu (大衍術) en el Tratado matemático en nueve secciones de Qin Jiushao de 1247 [6] que fue traducido al inglés a principios del siglo XIX por el misionero británico Alexander Wylie . [7]
El concepto de congruencias fue introducido y utilizado por primera vez por Carl Friedrich Gauss en sus Disquisitiones Arithmeticae de 1801. [9] Gauss ilustra el teorema del resto chino en un problema que involucra calendarios, a saber, "encontrar los años que tienen un cierto número de período con respecto al ciclo solar y lunar y la indicción romana". [10] Gauss introduce un procedimiento para resolver el problema que ya había sido utilizado por Leonhard Euler pero que, de hecho, era un método antiguo que había aparecido varias veces. [11]
Sean n 1 , ..., n k números enteros mayores que 1, que suelen llamarse módulos o divisores . Denotemos por N el producto de los n i .
El teorema del resto chino afirma que si los n i son coprimos por pares , y si a 1 , ..., a k son números enteros tales que 0 ≤ a i < n i para cada i , entonces hay un y sólo un número entero x , tal que 0 ≤ x < N y el resto de la división euclidiana de x por n i es a i para cada i .
Esto puede reformularse de la siguiente manera en términos de congruencias : si son coprimos por pares, y si a 1 , ..., a k son números enteros cualesquiera, entonces el sistema
tiene una solución, y dos soluciones cualesquiera, digamos x 1 y x 2 , son congruentes módulo N , es decir, x 1 ≡ x 2 (mod N ) . [12]
En álgebra abstracta , el teorema a menudo se reformula como: si los n i son coprimos por pares, la función
define un isomorfismo de anillo [13]
entre el anillo de números enteros módulo N y el producto directo de los anillos de números enteros módulo n i . Esto significa que para hacer una secuencia de operaciones aritméticas en una se puede hacer el mismo cálculo independientemente en cada una y luego obtener el resultado aplicando el isomorfismo (de derecha a izquierda). Esto puede ser mucho más rápido que el cálculo directo si N y el número de operaciones son grandes. Esto se usa ampliamente, bajo el nombre de cálculo multimodular , para el álgebra lineal sobre los números enteros o los números racionales .
El teorema también puede reformularse en el lenguaje de la combinatoria como el hecho de que las progresiones aritméticas infinitas de números enteros forman una familia Helly . [14]
La existencia y la unicidad de la solución pueden demostrarse independientemente. Sin embargo, la primera prueba de existencia, que se da a continuación, utiliza esta unicidad.
Supóngase que x e y son ambas soluciones de todas las congruencias. Como x e y dan el mismo resto, cuando se dividen por n i , su diferencia x − y es un múltiplo de cada n i . Como los n i son coprimos por pares, su producto N también divide a x − y , y por lo tanto x e y son congruentes módulo N . Si se supone que x e y son no negativos y menores que N (como en el primer enunciado del teorema), entonces su diferencia puede ser un múltiplo de N solo si x = y .
El mapa
asigna clases de congruencia módulo N a sucesiones de clases de congruencia módulo n i . La prueba de unicidad muestra que esta función es inyectiva . Como el dominio y el codominio de esta función tienen el mismo número de elementos, la función también es sobreyectiva , lo que prueba la existencia de la solución.
Esta prueba es muy sencilla, pero no proporciona ninguna manera directa de calcular una solución. Además, no se puede generalizar a otras situaciones en las que sí se puede aplicar la siguiente prueba.
La existencia puede establecerse mediante una construcción explícita de x . [15] Esta construcción puede dividirse en dos pasos: primero resolver el problema en el caso de dos módulos y luego extender esta solución al caso general por inducción sobre el número de módulos.
Queremos resolver el sistema:
donde y son coprimos .
La identidad de Bézout afirma la existencia de dos números enteros y tales que
Los números enteros y pueden calcularse mediante el algoritmo euclidiano extendido .
Una solución la da
En efecto,
lo que implica que la segunda congruencia se demuestra de manera similar, intercambiando los subíndices 1 y 2.
Consideremos una secuencia de ecuaciones de congruencia:
donde son coprimos por pares. Las dos primeras ecuaciones tienen una solución proporcionada por el método de la sección anterior. El conjunto de las soluciones de estas dos primeras ecuaciones es el conjunto de todas las soluciones de la ecuación
Como los otros son coprimos con esto, la solución del problema inicial de k ecuaciones se reduce a un problema similar con ecuaciones. Al iterar el proceso, se obtienen eventualmente las soluciones del problema inicial.
Para construir una solución no es necesario hacer una inducción sobre el número de módulos. Sin embargo, una construcción tan directa implica más cálculos con números grandes, lo que la hace menos eficiente y menos utilizada. No obstante, la interpolación de Lagrange es un caso especial de esta construcción, aplicada a polinomios en lugar de números enteros.
Sea el producto de todos los módulos excepto uno. Como los son coprimos entre sí, y son coprimos. Por lo tanto, se aplica la identidad de Bézout , y existen números enteros y tales que
Una solución del sistema de congruencias es
De hecho, como es un múltiplo de para tenemos
Para cada uno
Consideremos un sistema de congruencias:
donde son coprimos por pares , y sean En esta sección se describen varios métodos para calcular la solución única para , tal que y estos métodos se aplican en el ejemplo
Se presentan varios métodos de cálculo. Los dos primeros son útiles para ejemplos pequeños, pero resultan muy ineficientes cuando el producto es grande. El tercero utiliza la prueba de existencia dada en el § Existencia (prueba constructiva). Es el más conveniente cuando el producto es grande o para cálculos informáticos.
Es fácil comprobar si un valor de x es una solución: basta con calcular el resto de la división euclidiana de x por cada n i . Así, para hallar la solución, basta con comprobar sucesivamente los números enteros de 0 a N hasta hallar la solución.
Aunque es un método muy simple, es muy ineficiente. Para el ejemplo simple que se considera aquí, se deben comprobar 40 números enteros (incluido 0 ) para encontrar la solución, que es 39. Se trata de un algoritmo de tiempo exponencial , ya que el tamaño de la entrada es, hasta un factor constante, el número de dígitos de N y el número promedio de operaciones es del orden de N.
Por lo tanto, este método rara vez se utiliza, ni para el cálculo manuscrito ni en ordenadores.
La búsqueda de la solución puede hacerse mucho más rápida mediante el cribado. Para este método, suponemos, sin pérdida de generalidad, que (si no fuera el caso, bastaría con reemplazar cada uno por el resto de su división por ). Esto implica que la solución pertenece a la progresión aritmética
Al probar los valores de estos números módulo, se encuentra finalmente una solución de las dos primeras congruencias. Entonces, la solución pertenece a la progresión aritmética.
Al probar los valores de estos números módulo y continuar hasta que se haya probado cada módulo, finalmente se obtiene la solución.
Este método es más rápido si los módulos se han ordenado por valor decreciente, es decir, si Para el ejemplo, esto da el siguiente cálculo. Consideramos primero los números que son congruentes con 4 módulo 5 (el módulo más grande), que son 4, 9 = 4 + 5 , 14 = 9 + 5 , ... Para cada uno de ellos, calculamos el resto por 4 (el segundo módulo más grande) hasta obtener un número congruente con 3 módulo 4. Luego, uno puede proceder sumando 20 = 5 × 4 en cada paso y calculando solo los restos por 3. Esto da
Este método funciona bien para cálculos escritos a mano con un producto de módulos que no es demasiado grande. Sin embargo, es mucho más lento que otros métodos para productos de módulos muy grandes. Aunque es considerablemente más rápido que la búsqueda sistemática, este método también tiene una complejidad temporal exponencial y, por lo tanto, no se utiliza en computadoras.
La prueba de existencia constructiva muestra que, en el caso de dos módulos, la solución puede obtenerse mediante el cálculo de los coeficientes de Bézout de los módulos, seguido de unas cuantas multiplicaciones, adiciones y reducciones módulo (para obtener un resultado en el intervalo ). Como los coeficientes de Bézout pueden calcularse con el algoritmo euclidiano extendido , todo el cálculo, como máximo, tiene una complejidad temporal cuadrática de donde denota el número de dígitos de
Para más de dos módulos, el método para dos módulos permite reemplazar dos congruencias cualesquiera por una única congruencia módulo el producto de los módulos. La iteración de este proceso proporciona eventualmente la solución con una complejidad, que es cuadrática en el número de dígitos del producto de todos los módulos. Esta complejidad temporal cuadrática no depende del orden en el que se reagrupan los módulos. Se pueden reagrupar los dos primeros módulos, luego reagrupar el módulo resultante con el siguiente, y así sucesivamente. Esta estrategia es la más fácil de implementar, pero también requiere más cálculos que involucran números grandes.
Otra estrategia consiste en particionar los módulos en pares cuyo producto tenga tamaños comparables (en la medida de lo posible), aplicar, en paralelo, el método de dos módulos a cada par, e iterar con un número de módulos dividido aproximadamente por dos. Este método permite una fácil paralelización del algoritmo. Además, si se utilizan algoritmos rápidos (es decir, algoritmos que funcionan en tiempo cuasilineal ) para las operaciones básicas, este método proporciona un algoritmo para todo el cómputo que funciona en tiempo cuasilineal.
En el ejemplo actual (que tiene sólo tres módulos), ambas estrategias son idénticas y funcionan de la siguiente manera.
La identidad de Bézout para 3 y 4 es
Poniendo esto en la fórmula dada para probar la existencia da
para una solución de las dos primeras congruencias, las otras soluciones se obtienen sumando a −9 cualquier múltiplo de 3 × 4 = 12. Se puede continuar con cualquiera de estas soluciones, pero la solución 3 = −9 +12 es menor (en valor absoluto ) y, por lo tanto, conduce probablemente a un cálculo más fácil.
La identidad de Bézout para 5 y 3 × 4 = 12 es
Aplicando nuevamente la misma fórmula obtenemos una solución del problema:
Las otras soluciones se obtienen sumando cualquier múltiplo de 3 × 4 × 5 = 60 , y la solución positiva más pequeña es −21 + 60 = 39 .
El sistema de congruencias resuelto por el teorema del resto chino puede reescribirse como un sistema de ecuaciones diofánticas lineales :
donde los enteros desconocidos son y Por lo tanto, cada método general para resolver tales sistemas puede usarse para encontrar la solución del teorema del resto chino, como la reducción de la matriz del sistema a la forma normal de Smith o la forma normal de Hermite . Sin embargo, como es habitual cuando se usa un algoritmo general para un problema más específico, este enfoque es menos eficiente que el método de la sección anterior, basado en un uso directo de la identidad de Bézout .
En § Enunciado, el teorema del resto chino ha sido enunciado de tres maneras diferentes: en términos de restos, de congruencias y de un isomorfismo de anillo . El enunciado en términos de restos no se aplica, en general, a dominios ideales principales , ya que los restos no están definidos en tales anillos . Sin embargo, las otras dos versiones tienen sentido sobre un dominio ideal principal R : basta con reemplazar "entero" por "elemento del dominio" y por R. Estas dos versiones del teorema son verdaderas en este contexto, porque las demostraciones (excepto la primera demostración de existencia), se basan en el lema de Euclides y la identidad de Bézout , que son verdaderas sobre todo dominio principal.
Sin embargo, en general, el teorema es sólo un teorema de existencia y no proporciona ninguna forma de calcular la solución, a menos que se tenga un algoritmo para calcular los coeficientes de la identidad de Bézout.
El enunciado en términos de residuos dado en § Enunciado del teorema no puede generalizarse a ningún dominio ideal principal, pero su generalización a dominios euclidianos es sencilla. Los polinomios univariados sobre un cuerpo son el ejemplo típico de un dominio euclidiano que no son los números enteros. Por lo tanto, enunciamos el teorema para el caso del anillo para un cuerpo. Para obtener el teorema para un dominio euclidiano general, basta con reemplazar el grado por la función euclidiana del dominio euclidiano.
El teorema chino del resto para polinomios es, por tanto: Sean (los módulos), para , polinomios coprimos por pares en . Sea el grado de , y sea la suma de Si son polinomios tales que o para cada i , entonces, hay un y solo un polinomio , tal que y el resto de la división euclidiana de por es para cada i .
La construcción de la solución puede realizarse como en § Existencia (prueba constructiva) o § Existencia (prueba directa). Sin embargo, la última construcción puede simplificarse utilizando, como sigue, la descomposición en fracciones parciales en lugar del algoritmo euclidiano extendido .
Por lo tanto, queremos encontrar un polinomio que satisfaga las congruencias
para
Consideremos los polinomios
La descomposición en fracciones parciales de da k polinomios con grados tales que
y por lo tanto
Entonces una solución del sistema de congruencia simultánea viene dada por el polinomio
De hecho, tenemos
para
Esta solución puede tener un grado mayor que La única solución de grado menor que se puede deducir considerando el resto de la división euclidiana de por Esta solución es
Un caso especial del teorema del resto chino para polinomios es la interpolación de Lagrange . Para ello, considérense k polinomios mónicos de grado uno:
Son coprimos por pares si son todos diferentes. El resto de la división por de un polinomio es , según el teorema del resto del polinomio .
Ahora, sean constantes (polinomios de grado 0) en Tanto la interpolación de Lagrange como el teorema del resto chino afirman la existencia de un único polinomio de grado menor que tal que
Para cada uno
La fórmula de interpolación de Lagrange es exactamente el resultado, en este caso, de la construcción de la solución anterior. Más precisamente, sea
La descomposición en fracciones parciales de es
De hecho, al reducir el lado derecho a un denominador común se obtiene
y el numerador es igual a uno, por ser un polinomio de grado menor que el cual toma el valor uno para distintos valores de
Utilizando la fórmula general anterior, obtenemos la fórmula de interpolación de Lagrange:
La interpolación de Hermite es una aplicación del teorema del resto chino para polinomios univariados, que pueden involucrar módulos de grados arbitrarios (la interpolación de Lagrange involucra solo módulos de grado uno).
El problema consiste en encontrar un polinomio del menor grado posible, tal que el polinomio y sus primeras derivadas tomen valores dados en algunos puntos fijos.
Más precisamente, sean elementos del campo fundamental y, para sean los valores de las primeras derivadas del polinomio buscado en (incluida la derivada 0, que es el valor del propio polinomio). El problema es encontrar un polinomio tal que su derivada j -ésima tome el valor en para y
Considere el polinomio
Este es el polinomio de Taylor de orden en , del polinomio desconocido Por lo tanto, debemos tener
Por el contrario , cualquier polinomio que satisfaga estas congruencias, en particular, verifica, para cualquier
por lo tanto, su polinomio de Taylor es de orden , es decir, resuelve el problema de interpolación de Hermite inicial. El teorema del resto chino afirma que existe exactamente un polinomio de grado menor que la suma de los que satisface estas congruencias.
Existen varias formas de calcular la solución. Se puede utilizar el método descrito al principio de § Sobre anillos polinómicos univariados y dominios euclidianos. También se pueden utilizar las construcciones dadas en § Existencia (prueba constructiva) o § Existencia (prueba directa).
El teorema del resto chino se puede generalizar a módulos no coprimos. Sea cualquier número entero, sea ; , y considere el sistema de congruencias:
Si , entonces este sistema tiene una solución única módulo . En caso contrario, no tiene soluciones.
Si se utiliza la identidad de Bézout para escribir , entonces la solución viene dada por
Esto define un entero, ya que g divide tanto a m como a n . De lo contrario, la prueba es muy similar a la de los módulos coprimos. [16]
El teorema del resto chino se puede generalizar a cualquier anillo , utilizando ideales coprimos (también llamados ideales comaximales ). Dos ideales I y J son coprimos si hay elementos y tales que Esta relación juega el papel de la identidad de Bézout en las demostraciones relacionadas con esta generalización, que por lo demás son muy similares. La generalización puede enunciarse de la siguiente manera. [17] [18]
Sean I 1 , ..., I k ideales bilaterales de un anillo y sea I su intersección . Si los ideales son coprimos por pares, tenemos el isomorfismo :
entre el anillo cociente y el producto directo de donde " " denota la imagen del elemento en el anillo cociente definido por el ideal Además, si es conmutativo , entonces la intersección ideal de ideales coprimos por pares es igual a su producto ; es decir
si I i y I j son coprimos para todo i ≠ j .
Sean ideales bilaterales coprimos por pares con y
Sea el isomorfismo definido anteriormente. Sea el elemento cuyos componentes son todos 0 excepto el i ésimo que es 1 , y
Son idempotentes centrales que son ortogonales entre sí ; esto significa, en particular, que y para cada i y j . Además, se tiene y
En resumen, este teorema de resto chino generalizado es la equivalencia entre dar ideales bilaterales coprimos por pares con una intersección cero y dar idempotentes centrales y ortogonales por pares que suman 1. [ 19]
El teorema del resto chino se ha utilizado para construir una numeración de Gödel para secuencias , que participa en la prueba de los teoremas de incompletitud de Gödel .
El algoritmo FFT de factores primos (también llamado algoritmo de Good-Thomas) utiliza el teorema del resto chino para reducir el cálculo de una transformada rápida de Fourier de tamaño al cálculo de dos transformadas rápidas de Fourier de tamaños más pequeños y (siempre que y sean coprimos).
La mayoría de las implementaciones de RSA utilizan el teorema del resto chino durante la firma de certificados HTTPS y durante el descifrado.
El teorema del resto chino también puede emplearse en la compartición de secretos , que consiste en distribuir un conjunto de porciones entre un grupo de personas que, todas juntas (pero ninguna sola), pueden recuperar un cierto secreto del conjunto de porciones dado. Cada una de las porciones se representa en una congruencia, y la solución del sistema de congruencias utilizando el teorema del resto chino es el secreto a recuperar. La compartición de secretos utilizando el teorema del resto chino utiliza, junto con el teorema del resto chino, secuencias especiales de números enteros que garantizan la imposibilidad de recuperar el secreto de un conjunto de porciones con menos de una determinada cardinalidad .
Las técnicas de resolución de ambigüedad de alcance utilizadas con radares de frecuencia de repetición de pulsos media pueden considerarse un caso especial del teorema del resto chino.
Dada una sobreyección de grupos abelianos finitos , podemos utilizar el teorema del resto chino para dar una descripción completa de cualquier función de este tipo. En primer lugar, el teorema da isomorfismos
donde . Además, para cualquier mapa inducido
de la sobreyección original, tenemos y dado que para un par de primos , las únicas sobreyecciones distintas de cero
se puede definir si y .
Estas observaciones son fundamentales para construir el anillo de números enteros profinitos , que se da como un límite inverso de todos esos mapas.
Teorema de Dedekind sobre la independencia lineal de los caracteres. Sea M un monoide y k un dominio integral , visto como un monoide considerando la multiplicación por k . Entonces, cualquier familia finita ( f i ) i ∈ I de homomorfismos de monoides distintos f i : M → k es linealmente independiente . En otras palabras, cada familia ( α i ) i ∈ I de elementos α i ∈ k que satisfacen
debe ser igual a la familia (0) i ∈ I .
Demostración. Supongamos primero que k es un cuerpo , de lo contrario, reemplacemos el dominio integral k por su cuerpo cociente , y nada cambiará. Podemos extender linealmente los homomorfismos monoides f i : M → k a los homomorfismos de k - álgebra F i : k [ M ] → k , donde k [ M ] es el anillo monoide de M sobre k . Entonces, por linealidad, la condición
rendimientos
A continuación, para i , j ∈ I ; i ≠ j las dos funciones k -lineales F i : k [ M ] → k y F j : k [ M ] → k no son proporcionales entre sí. De lo contrario, f i y f j también serían proporcionales y, por lo tanto, iguales, ya que, como homomorfismos monoides, satisfacen: f i (1) = 1 = f j (1) , lo que contradice la suposición de que son distintas.
Por lo tanto, los núcleos Ker F i y Ker F j son distintos. Como k [ M ]/Ker F i ≅ F i ( k [ M ]) = k es un cuerpo, Ker F i es un ideal maximal de k [ M ] para cada i en I . Como son distintos y maximalistas, los ideales Ker F i y Ker F j son coprimos siempre que i ≠ j . El teorema del resto chino (para anillos generales) produce un isomorfismo:
dónde
En consecuencia, el mapa
es sobreyectiva. Bajo los isomorfismos k [ M ]/Ker F i → F i ( k [ M ]) = k , la función Φ corresponde a:
Ahora,
rendimientos
para cada vector ( u i ) i ∈ I en la imagen de la función ψ . Como ψ es sobreyectiva, esto significa que
para cada vector
En consecuencia, ( α i ) i ∈ I = (0) i ∈ I . QED.