Bienvenidas al Escritorio de Enrique. Antes de nada, si queréis descargaros en pdf el contenido de esta entrada podéis pinchar en este enlace post8. En este artículo (bastante más teórico que otros) vamos a tratar un tema muy relacionado con mi anterior post Congruencias. Las matemáticas de la semana: la divisibilidad de números enteros, y como tema central se estudiará el Algoritmo de Euclides (aunque realmente es anterior a Euclides) como herramienta de división de números enteros.
Dado un número entero , decimos que un entero
es divisor de
, o divide a
si existe otro entero
tal que
, y se escribe
. Por ejemplo, un divisor de
es
, porque
, pues hemos encontrado un entero (
). Llamamos máximo común divisor de dos enteros
, al mayor divisor de entre todos los divisores comunes a
y
, y se denota por
. Por ejemplo,
. Los divisores de
son
(y sus respectivos negativos), y los de
son
(y sus respectivos negativos). Los divisores comunes a ambos son
(y sus respectivos negativos), y el mayor de todos ellos es
, por lo que es el máximo común divisor.
Una forma de encontrar es calcular «a mano» todos los divisores, como en el párrafo anterior, y quedarnos con el mayor de los comunes a ambos, pero es un método muy largo y trabajoso (hay que pensar siempre en grande, cuando tenemos números enormes). Euclides en sus Elementos expuso un algoritmo para calcular el máximo común divisor basado en la fórmula que ya comenté en el artículo que he enlazado en la introducción de
. Antes de explicarlo, vamos a realizar unas observaciones.
Si , entonces
o
. Por ejemplo,
y
, luego divide a
(no) o divide a
(sí). Además, si
, entonces
, para cualquier entero
. Por ejemplo, como
,
divide a cualquier múltiplo de
(
).
El máximo común divisor de dos números es único. Esto quiere decir que no hay dos máximo común divisor diferentes. En matemáticas nada se deja a la imaginación, todo exige demostración; al fin y al cabo, a priori nada nos garantiza que esto tenga por qué ser así. La prueba es un argumento por reducción al absurdo suponiendo que existe otro máximo común divisor. Veámoslo. Sea máximo común divisor de
y de
(ninguno de ellos es
), y sea
otro máximo común divisor. Como
es máximo común divisor de
y
, y como
es, en particular, divisor de ellos, también tiene que dividir a su máximo común divisor
. Por tanto, como lo divide es porque es, como mucho, tan grande como él:
. Por otra parte, podemos utilizar el mismo argumento cambiando los papeles de
y
, obteniendo que
. De las dos desigualdades obtenemos que
. Esto constituye un absurdo, porque habíamos supuesto que eran distintos, así que concluimos que no lo son.
Otra observación que debemos hacer es que, si y
, entonces
. La razón es que si
, existen dos números
tales que
. Si pasamos
al otro lado de la desigualdad restando, sustituimos
y
por sus nuevas expresiones y sacamos factor común
, nos queda que
. Como
es un número entero
, concluimos que
. De esta forma, hemos encontrado un entero
que hace que al multiplicarlo por
nos dé
. Por tanto,
.
Esta última observación se puede generalizar al caso en que y
Así que, si dividimos
entre
, con la fórmula
, denotando por
al cociente y
al resto, la fórmula es
. Por lo que hemos descubierto hasta ahora, como
, en particular es un divisor de ambos, es decir,
(luego
). De esta forma,
.
En matemáticas no hay una definición precisa de algoritmo, pero se podría definir como un proceso que, dados unos datos de entrada y realizando unas operaciones sistemáticas, se devuelven unos resultados de salida. El algoritmo de Euclides recibe como datos de entrada los enteros que se dividen y devuelve como salida el máximo común divisor. La clave de todo, que luego vamos a entender, es que
. Veamos la forma del algoritmo:
Supongamos que (si no, intercambiamos los papeles de
y
). El primer paso consiste en hacer la división de
entre
y escribirla en forma de
, pero vamos a llamar al cociente
y al resto
. Recordemos que el resto es siempre mayor o igual que
y menor que el divisor.
El siguiente paso es ver si el resto es . Si lo es, entonces
y
sería
(porque
sería divisor de
y no hay mayor divisor de
que
). Si
, dividimos
entre
y lo escribimos como
. Este proceso se repite hasta encontrar un
, y el máximo común divisor será
. Veámoslo bien escrito (suponiendo
):
(
)
(
)
(
)
…
(
)
(
)
Para comprobar que este algoritmo es correcto hay que comprobar dos cosas: que va a terminar en algún momento y que . Pero antes vamos a ver un ejemplo.
Veamos quién es . Tal y como están dispuestos los números,
jugaría el papel de
y
el de
, pero como
, vamos a cambiar el orden, es decir, vamos a encontrar el
(que, obviamente, es igual).
(
).
Como ,
(
).
Como ,
(
).
, luego
.
La justificación de la terminación del algoritmo radica en que cada y en que todos los
. Por lo que en cada iteración del algoritmo los restos se van haciendo cada vez más pequeños, hasta que no les queda otra que anularse.
Ver que es un pelín más costoso. Por una parte hay que demostrar que
es divisor de
y
, y por otra hay que demostrar que si
es otro divisor común de
y
, entonces es más pequeño que
.
Para ver que es divisor de
y
, comencemos por el final del algoritmo.
. Esto, junto con el hecho de que
, implica que
.
Ahora vamos al paso justo anterior del algoritmo sabiendo que .
. Como
divide a ambos sumandos del lado derecho de la fórmula, existe
tal que
. Por tanto,
.
Si repetimos este proceso de abajo hacia arriba del algoritmo, en el primer paso del algoritmo tendríamos que divide a
y a
, luego divide a
. En conclusión: es divisor común de
y
.
Ahora, si suponemos que es otro divisor común de
y
, por el primer paso del algoritmo, también va a ser divisor de
. En el segundo paso del algoritmo obtenemos que
es divisor de
(por serlo de
y
). Reiterando el argumento hasta llegar al penúltimo paso, obtendríamos que
es divisor de
, lo que implica que
y
.
Como colofón para los más teóricos vamos a demostrar el Teorema Fundamental de la Aritmética, que dice que todo número entero se descompone como producto de números primos (de manera única). Por ejemplo, (el primo
aparece elevado al cuadrado porque se está multiplicando dos veces, luego no deja de ser un producto de números primos). La demostración es por inducción sobre el número.
Si ,
ya es un número primo.
Sea . Si
es primo, ya habríamos terminado, porque la descomposición es ese mismo número. Si no es primo, entonces tiene algún divisor primo
de forma que
. Por hipótesis de inducción, como
se descompone en producto de números primos,
, luego
.
Como véis, el algoritmo de Euclides es muy útil para calcular de forma eficiente el máximo común divisor. Espero que os haya gustado. Si es así, dejádmelo en los comentarios. ¡Hasta la próxima!
Un comentario en “El Algoritmo de Euclides”