Anda di halaman 1dari 22

Captulo 2

Divisibilidad en Z
2.1. Division eucldea en Z. Maximo com un divi-
sor
Denicion 2.1 Dados dos n umeros enteros a y b, con b = 0, se dice que b divide
a a o que a es m ultiplo de b o que b es divisor de a, si existe otro entero q tal que
a = bq. Se escribe
b | a
Naturalmente, todo n umero entero a distinto de 1 y 1 tiene, al menos, cuatro
divisores, a saber, 1 y a. A estos divisores se les conoce con el nombre de divisores
(o factores) triviales de a. Otras propiedades, de todos conocidas, de la divisibilidad
se recogen en la siguiente Proposicion:
Proposicion 2.2 En las propiedades siguientes todos los n umeros seran enteros y
|a| denotara el valor absoluto de a.
1) d|a d|a d| a,
2) d|a, a = 0 y d 0 = 1 d |a|,
3) d|1 = d = 1 o d = 1,
4) a|b y b|a = b = a o b = a,
5) a|b y b|c = a|c,
6) a|b y a|c = a|b + c,
7) a|b y a|c = a|bc,
8) a|b y c Z = ac|bc,
25
26 CAP

ITULO 2. DIVISIBILIDAD EN Z
9) a|b y c|d = ac|bd,
10) ac|bc y c = 0 = a|b.
Nota. La prueba de estas propiedades requiere el uso de la Denicion 2.1 y de los
axiomas que denen los n umeros enteros. Como la prueba de dichas propiedades es
sencilla, la dejaremos como ejercicio.
De entre todos los n umeros enteros, adquieren una singular importancia los cono-
cidos como n umeros primos que, desde siempre, han fascinado a los matematicos
y al resto de los mortales. Por poner un ejemplo, en la pelcula Contact dirigida
por Robert Zemeckis en 1997 y cuyo guion se basa en una novela de Carl Sagan, el
primer mensaje que recibe de los extraterrestres la Dra. Arroway, interpretada por
Jodie Foster, es una sucesion de n umeros primos.
Denicion 2.3 Un entero p > 1 se dice primo si sus unicos divisores positivos son
los triviales, es decir, 1 y p.
Los primeros primos son:
2, 3, 5, 7, 11, 13, 17, 19, 23, ...
Notese que 1 no es primo.
Teorema 2.4 (Euclides, Libro IX de los Elementos, aprox. 300 a. C.) Todo
n umero entero mayor que 1 es producto de primos.
Demostracion. Induccion en la talla.
En particular, todo entero no nulo es producto de uno de los n umeros 1 y de
n umeros primos. Veremos mas adelante que esta expresion es, esencialmente, unica.
Teorema 2.5 (Euclides, Libro IX de los Elementos) Existen innitos n umeros
primos.
La prueba de este resultado es sencilla y su interes radica en el hecho de que es
una de las primeras demostraciones conocidas en las que se utilizo la reduccion al
absurdo.
Demostracion. Supongamos que hay un n umero nito, digamos n, de primos a los
que denotaremos por p
1
, p
2
, . . . , p
n
. Consideremos el n umero
2.1. DIVISI

ON EUCL

IDEA EN Z. M

AXIMO COM

UN DIVISOR 27
N = p
1
p
2
p
n
+ 1.
Por el teorema anterior, sabemos que N es producto de primos. Sea, pues, p un
factor primo de N. Este primo ha de ser uno de los p
1
, p
2
, . . . , p
n
, digamos p = p
i
.
Entonces, p
i
divide a N p
1
p
2
p
n
que es igual a 1, con lo que hemos llegado a
una contradiccion.
Una de las primeras tareas matematicas (y algortmicas) que realizamos en nuestra
vida es la de aprender a dividir n umeros naturales con resto. La forma en la que nos
ense nan a dividir, basada en la b usqueda de un natural que quepa(si no la mejor
desde un punto de vista de eciencia) es, en cierto modo, la misma idea en la que
se basa la demostracion del siguiente teorema.
Teorema 2.6 (Division eucldea) Si a y b son dos enteros, b = 0, existe un unico
par de enteros q y r tales que:
a = bq + r y 0 r < |b|.
A q y a r se les conoce, respectivamente, como cociente y resto de la division eucldea
de a por b.
Demostracion. Empecemos por demostrar la existencia de cociente y resto.
Supongamos, primero, que b > 0 y sea S = {x Z : bx a}. Este conjunto S es
no vaco (|a| pertenece a S) y esta acotado superiormente (por ejemplo, por |a|).
En consecuencia, tiene maximo. Llamaremos q a este maximo y r = a bq. Por
construccion, se tiene que a = bq + r. Veamos que r verica lo exigido. En efecto,
r 0 (por pertenecer q a S)
r < |b| = b. Si r b, se tendra b(q+1) = bq+b bq+r = a y, en consecuencia
q + 1 pertenecera a S contradiciendo el hecho de q es el maximo de S.
Si b < 0, aplicamos el caso anterior a b.
Para probar la unicidad supongamos que q
1
, r
1
y q
2
, r
2
verican las condiciones del
teorema, es decir,
a = bq
1
+ r
1
con 0 r
1
< |b| y
a = bq
2
+ r
2
con 0 r
2
< |b|
y que r
1
r
2
. Restando, se tiene b(q
1
q
2
) = r
2
r
1
. Por lo tanto, |b| divide a r
2
r
1
,
pero tambien se tiene que 0 r
2
r
1
< |b|. Esto solo es posible si r
2
r
1
= 0. Por
lo tanto, r
2
= r
1
y, en consecuencia q
2
= q
1
.
28 CAP

ITULO 2. DIVISIBILIDAD EN Z
Denicion 2.7 (Maximo com un divisor) Si d|a y d|b decimos que d es un divi-
sor com un (o factor com un) de a y b; por ejemplo, 1 es un divisor com un a cualquier
par de enteros a y b. Si a y b no son los dos nulos, el Teorema 2.6 prueba que ninguno
de sus divisores comunes puede ser mayor que max(|a|, |b|), por lo que podemos ase-
gurar que de entre todos sus divisores comunes debe existir uno que sea el mayor de
ellos. Este es el maximo com un divisor de a y b que denotaremos por mcd(a, b);
siendo el unico entero d que satisface
d|a y d|b (por ser d un divisor com un),
Si c|a y c|b, c|d (pues d es el mayor de los divisores comunes de a y b).
Sin embargo, el caso a = b = 0 debe ser excluido; cualquier entero divide a 0
y es, por tanto, un divisor com un de a y b, por lo que, en este caso, no existe
un maximo com un divisor. Esta denicion puede obviamente extenderse al maximo
com un divisor de cualquier conjunto nito de enteros (no todos nulos).
Nota. Dos n umeros enteros a y b se dicen coprimos o primos entre s si no poseen
factores comunes no triviales, esto es, si mcd(a, b) = 1.
Al igual que hicimos con la divisibilidad, recogemos en la siguiente Proposicion
algunas propiedades basicas del maximo com un divisor.
Proposicion 2.8 En las propiedades siguientes todos los n umeros son enteros y |a|
denotar a el valor absoluto de a.
1) mcd(a, b) = mcd(b, a),
2) mcd(a, b, c) = mcd(mcd(a, b), c) = mcd(a, mcd(b, c)),
3) mcd(a, 0) = mcd(a, a) = |a|,
4) mcd(a, b) = mcd(a, b) = mcd(|a|, |b|),
5) mcd(ca, cb) = |c|mcd(a, b),
6) mcd(a, b) = mcd(a, b + ac),
7) mcd
_
a
mcd(a, b)
,
a
mcd(a, b)
_
= 1,
Una de las primeras aplicaciones del maximo com un divisor que suele realizarse en la
escuela es la reduccion del tama no de numerador y denominador en la aritmetica con
n umeros racionales. Obviamente, esto requerira, sobre todo si se piensa en n umeros
2.2. ALGORITMO DE EUCLIDES. TEOREMA DE LAM

E 29
de gran tama no, de un algoritmo eciente
1
para su calculo. Afortunadamente (no
siempre es el caso para otros problemas) se dispone de un metodo que, sorprenden-
temente, se hallaba ya en los Elementos de Euclides. Seg un D. Knuth, the oldest
nontrivial algorithm that has survived to the present day.
2.2. Algoritmo de Euclides. Teorema de Lame
Trataremos, en esta Seccion, de construir un algoritmo eciente para el calculo del
maximo com un divisor y estudiar algunas de sus propiedades. Naturalmente, la
propia denicion de maximo com un divisor proporciona un algoritmo para calcular
mcd(a, b): construir la lista de divisores de a y b y tomar el mayor de los comunes.
Sin embargo, para grandes n umeros, este algoritmo es, ciertamente, inaplicable.
El algoritmo de Euclides que estudiaremos para el calculo del maximo com un divisor
se basa en la sencilla observacion siguiente:
d|a y d|b d|a y d|r,
siendo r el resto de la division de a por b. Esto quiere decir que los divisores comunes
de a y b son los divisores comunes de a y r, por lo que mcd(a, b) = mcd(b, r).
El algoritmo de Euclides explota la idea anterior para simplicar el calculo del
maximo com un divisor reduciendo el tama no de los enteros sin alterar su maximo
com un divisor. Eliminando casos triviales, podemos suponer que a > b > 0. Sean
r
0
= a, r
1
= b. Dividiendo, se tendra que r
0
= q
1
r
1
+ r
2
con 0 r
2
< r
1
= b.
Si r
2
= 0, entonces b|a, por lo que mcd(a, b) = b y hemos terminado. Si r
2
= 0,
dividimos r
1
entre r
2
y escribimos r
2
= q
2
r
2
+ r
3
con 0 r
3
< r
2
y repetimos
el proceso. Dado que la sucesion de restos es decreciente (r
1
> r
2
> r
3
> ...), en
alg un momento habremos de encontrar un resto r
n+1
igual a 0. Los dos ultimos
pasos podemos escribirlos de la forma r
n2
= q
n1
r
n1
+ r
n
con 0 < r
n
< r
n1
, y
r
n1
= q
n
r
n
+ r
n+1
con r
n+1
= 0.
Teorema 2.9 En el proceso anterior, r
n
es el maximo com un divisor de a y b.
Ademas, el maximo com un divisor es unico.
1
En el contexto informatico, eciente quiere decir que, una vez convenientemente programado,
pueda ser ejecutado por un ordenador en un tiempo y utilizacion de recursos de memoria razonables.
No nos entretendremos en discutir que quiere decir razonable, que sera objeto de la asignatura
Complejidad Computacional u otras.
30 CAP

ITULO 2. DIVISIBILIDAD EN Z
Tras las consideraciones anteriores, podemos escribir el algoritmo de Euclides como
sigue, donde rem(a, b) representa el resto de dividir a entre b:
Entrada : a, b Z
mientras b = 0, hacer
t |a|
a |b|
b rem(t, a)
salida : a
Pseudocodigo del algoritmo de Euclides.
Naturalmente, el algoritmo anterior puede extenderse al calculo del maximo com un
divisor de mas de dos enteros. Supongamos dados t enteros positivos a
1
, . . . , a
t
y sea
R
0
= (a
1
, . . . , a
t
). Supongamos que i es el ndice de la coordenada mas peque na de
R
0
. En este caso es facil ver que mcd(a
1
, . . . , a
t
) es igual a
mcd(rem(a
1
, a
i
), . . . , rem(a
i1
, a
i
), a
i
, rem(a
i+1
, a
i
), . . . , rem(a
t
, a
i
))
Esta idea conduce al siguiente algoritmo.
entrada : (a
1
, a
2
, . . . , a
t
) Z
t
Inicializar A := (|a
1
|, |a
2
|, . . . , |a
t
|)
mientras A contenga, al menos, dos coordenadas no nulas hacer
Calcular el ndice i del menor entero no nulo de A
A (rem(a
1
, a
i
), . . . , rem(a
i1
, a
i
), a
i
, rem(a
i+1
, a
i
), . . . , rem(a
t
, a
i
))
salida : a
i
Pseudocodigo del algoritmo de Euclides para t enteros.
Ejemplo 2.10 Calcular el mcd de 120, 146 y 180. En este caso, se tiene:
mcd(120, 146, 180) = mcd(120, 26, 60) = mcd(16, 26, 8) = mcd(0, 2, 8) =
= mcd(0, 2, 0) = 2.
2.2. ALGORITMO DE EUCLIDES. TEOREMA DE LAM

E 31
2.2.1. Teorema de Lame
Examinamos el algoritmo de Euclides sobre una entrada (a, b) tomando nota de
cocientes y de restos. Si r
0
= a y r
1
= b, se tiene:
r
0
= q
1
r
1
+ r
2
r
1
= q
2
r
2
+ r
3
.
.
. (2.1)
r
n2
= q
n1
r
n1
+ r
n
r
n1
= q
n
r
n
Hemos probado con anterioridad que r
n
= mcd(a, b). Notemos, por otro lado, que
el ultimo cociente, q
n
es mayor o igual que 2 (salvo que n = 1).
Denotemos por E(a, b) el n umero de divisiones que realiza el algoritmo de Euclides
si el input es (a, b). El objetivo es probar una buena cota superior para E(a, b).
Sea F
n
el nesimo n umero de Fibonacci que, recordemos, esta denido por F
0
= 0,
F
1
= 1 y F
n
= F
n1
+ F
n2
si n 2.
Lema 2.11 Sean a y b enteros tales que a > b > 0 y supongamos que E(a, b) = n.
Entonces, a F
n+2
y b F
n+1
Demostracion. Utilizaremos la notacion de 2.1 y probaremos que r
0
F
n+2
y
r
1
F
n+1
por induccion en n.
El enunciado es cierto para n = 1. En este caso, el algoritmo de Euclides consta
de una unica division, r
0
= q
0
r
1
y puesto que r
0
> r
1
, los menores enteros que lo
verican son r
1
= 1 = F
2
y r
0
= 2 = F
3
.
Supongamos ahora que el enunciado es cierto para i < n; queremos probarlo para n.
El primer paso del algoritmo de Euclides es r
0
= q
0
r
1
+r
2
y sabemos que E(r
1
, r
2
) =
n 1. Por lo tanto, r
1
F
n+1
y r
2
F
n
. Por lo tanto, r
0
r
1
+ r
2
F
n+2
.
A partir del Lema anterior y utilizando que
F
n
=

n

5
,
donde =
1+

5
2
y =
1

5
2
, se tiene
Corolario 2.12 Si a > b > 0, E(a, b) < c
1
log(u) + c
2
2 + c
3
u
1
, donde c
1
=
1
log
= 2,08, c
2
=
log

5
log
= 1,67 y c
3
=
1

5 log
= 0,93. (log logaritmo natural). Si
se escribe la cota anterior en terminos de la talla binaria de a (es decir, log
2
a) se
obtiene, redondeando, que
E(a, b) 1,90 log
2
a 0,33
32 CAP

ITULO 2. DIVISIBILIDAD EN Z
Demostracion. Supongamos que E(a, b) = n. Por el lema 2.11, sabemos que, en ese
caso, a F
n+2
. Entonces,
a

n+2

n+2

5
>

n+2
1

5
.
En consecuencia, (n + 2) log log(1 + a

5). Ahora, usando el hecho de que


log(x + 1) = log x + log
_
1 +
1
x
_
y la estimacion log
_
1 +
1
x
_
<
1
x
para obtener
(n + 2) log < log(a

5) +
1
a

5
,
se obtiene el resultado.
Observacion 2.13 Queda algo alejado del curso hacer consideraciones sobre la e-
ciencia de los algoritmos introducidos. Sin embargo, deje el lector que se le ofrezca
un resultado que demuestra bien a las claras las posibilidades del Algoritmo de Eu-
clides. A partir del resultado anterior se puede probar que el n umero de operaciones
binarias necesarias para calcular el mcd usando Euclides es
k (log
2
a)(log
2
b)
Olvidandonos de la constante k, si los enteros a y b tienen talla binaria 10000 (aprox-
imadamente 3000 dgitos en base 10), habra que realizar, mas o menos, cien millones
de operaciones binarias. Dado que, por ejemplo, los primeros procesadores Pentium
realizaban entre 100 y 112 millones de operaciones binarias por segundo, un orde-
nador equipado con uno de dichos procesadores, nos dara la respuesta en algo menos
de un segundo.
Por otro lado, si usamos la factorizacion en producto de primos para calcular el
maximo com un divisor, la situacion no es, ni mucho menos, tan boyante. En la
practica, el mejor de los algoritmos de factorizacion conocidos (que utiliza tecnicas
matem aticas ciertamente sosticadas) no puede factorizar, ni a un usando el Super-
Computer de IBM, enteros de varios cientos de dgitos (aunque nadie ha probado
a un que nunca pueda encontrarse un algoritmo eciente). Esta dicultad de la fac-
torizacion es una de las ideas claves por la que el sistema criptograco RSA que
estudiaremos mas adelante se haya convertido en el sistema criptograco de uso
com un.
Por ultimo, se nalemos que la falta de una prueba que demuestre que no es posible
encontrar un algoritmo eciente para la factorizacion esta estrechamente ligada a
uno de los problemas centrales de la Informatica como es la Conjetura de Cook
2
.
2
En la pagina http://www.claymath.org/prizeproblems/pvsnp.htm del Clay Mathematics
Institute existe informacion (sencilla descripcion del problema, artculo mas profundo sobre el
asunto e incluso un vdeo de una charla divulgativa) sobre esta conjetura. De hecho, el Instituto
Clay ofrece un millon de dolares a quien sea capaz de resolver esta conjetura.
2.3. IDENTIDAD DE B

EZOUT. ALGORITMO EXTENDIDO DE EUCLIDES33


2.3. Identidad de Bezout. Algoritmo extendido de
Euclides
Denicion 2.14 Dados enteros a y b y su maximo com un divisor d = mcd(a, b),
se denomina identidad de Bezout a una expresion de la forma
ax + by = d x, y Z.
El objetivo fundamental de esta seccion, junto a la prueba del Teorema Fundamental
de la Aritmetica, es el demostrar que siempre existen tales enteros x e y y encontrar
un algoritmo para su calculo. Pero antes, veamos un ejemplo. Aplicando el algoritmo
de Euclides a a = 180 y b = 146, se tiene la siguiente sucesion de identidades:
180 = 1 146 + 34 (2.2)
146 = 4 34 + 10 (2.3)
34 = 3 10 + 4 (2.4)
10 = 2 4 + 2 (2.5)
4 = 2 2 (2.6)
Supongamos que queremos encontrar una identidad de Bezout, es decir, encontrar
enteros x e y tales que
180 x + 146 y = 2
Para ello, podemos volver hacia atras en las identidades anteriores, es decir, de (2.5)
se tiene
2 = 10 2 4.
Ahora, de (2.4) podemos despejar 4 y llegar a
2 = 7 10 2 34.
De nuevo, usando (2.3) llegamos a
2 = 7 146 30 34.
Finalmente, usando (2.2) se tiene
2 = 30 180 + 37 146.
Esta forma de proceder implicara que para resolver una identidad de Bezout,
habramos de aplicar el algoritmo de Euclides (tomando nota de restos y cocientes)
34 CAP

ITULO 2. DIVISIBILIDAD EN Z
y despues volver hacia atras utilizando dichos restos y cocientes. Sin embargo, pode-
mos organizar los calculos de manera que esto no sea necesario. Para ello, usaremos
los cocientes para construir x
k
e y
k
tales que:
ax
k
+ by
k
= r
k
(0 k n).
De este modo, si k = n, tendramos resuelto nuestro problema.
Para k = 0, basta tomar x
0
= 1 e y
0
= 0 y si k = 1, x
1
= 0 e y
1
= 1. Ahora
supongamos que hemos encontrado x
k
e y
k
para todo ndice 0 k s y queremos
calcular x
s+1
e y
s+1
. Se tendra:
r
s+1
= r
s1
r
s
q
s
= ax
s1
+by
s1
q
s
(ax
s
+by
s
) = a(x
s1
q
s
x
s
) +b(y
s1
q
s
y
s
)
Lo que hemos visto es que las sucesiones de enteros denidas por:
x
0
= 1, x
1
= 0, x
k+1
= x
k1
q
k
x
k
y
0
= 0, y
1
= 1, y
k+1
= y
k1
q
k
y
k
verican
ax
k
+ by
k
= r
k
(0 k n).
De paso, esta construccion demuestra que:
Teorema 2.15 Para todo par de enteros a y b no los dos nulos, existen enteros x
e y tales que se verica la identidad de Bezout:
ax + by = mcd(a, b)
Ejercicio. Probar que a y b son coprimos si, y solo si, existen enteros x e y tales que
ax + by = 1.
Interpretacion matricial del Algoritmo extendido de Euclides
Llamemos, al igual que antes, r
0
= a y r
1
= b. Asimismo, consideremos las matrices
R
0
=
_
x
0
x
1
y
0
y
1
_
= I S
0
=
_
_
r
0
r
1
x
0
x
1
y
0
y
1
_
_
Observese que det(R
0
) = 1. El primer paso en el algoritmo de Euclides extendido
consiste en dividir r
0
por r
1
, r
0
= r
1
q
1
+ r
2
, sustituir el par (r
0
, r
1
) por (r
1
, r
2
) y
2.3. IDENTIDAD DE B

EZOUT. ALGORITMO EXTENDIDO DE EUCLIDES35


calcular x
2
= x
0
x
1
q
1
e y
2
= y
0
y
1
q
1
. En consecuencia, podemos pensar que si
llamamos Q
1
a la matriz
Q
1
=
_
0 1
1 q
1
_
,
se tiene
R
1
=
_
x
1
x
2
y
1
y
2
_
= R
0
Q
1
y S
1
=
_
_
r
1
r
2
x
1
x
2
y
1
y
2
_
_
= S
0
Q
1
Ademas, es facil ver que este producto por Q
1
consiste, en realidad, en restar a la
primera columna de S
0
la segunda multiplicada por q
1
e intercambiar las columnas
de S
0
. Por otro lado, se tiene que det(R
1
) = 1, es decir, x
1
y
2
x
2
y
1
= 1 lo que
implica que mcd(x
2
, y
2
) = 1. Este proceso se contin ua obteniendo matrices
R
k
=
_
x
k
x
k+1
y
k
y
k+1
_
= R
k1
Q
k
= R
0
Q
1
Q
k
y
S
k
=
_
_
r
k
r
k+1
x
k
x
k+1
y
k
y
k+a
_
_
= S
k1
Q
k
= S
0
Q
1
Q
k
que verican
det(R
k
) = (1)
k
, ax
k
+ by
k
= r
k
, ax
k+1
+ bx
k+1
= r
k+1
,
lo que, en particular, implica que mcd(x
k
, y
k
) = 1. El algoritmo sigue hasta que en
el lugar (1, 2) de una de las matrices S
k
aparezca un cero. De este modo, si en el
algoritmo extendido de Euclides se realizan n divisiones, se tendra
R
n
=
_
x
n
x
n+1
y
n
y
n+1
_
= R
n1
Q
n
y S
1
=
_
_
r
n
0
x
n
x
n+1
y
n
y
n+1
_
_
= S
n1
Q
n
,
con lo que se tiene:
ax
n
+ by
n
= mcd(a, b), ax
n+1
+ by
n+1
= 0, mcd(x
n
, y
n
) = mcd(x
n+1
, y
n+1
) = 1.
La ultima de las igualdades se obtiene de det(R
n
) = (1)
n
. En particular se tendra,
si b = 0, que la fraccion
y
n+1
x
n+1
es reducida e igual a
a
b
. Dicho de otra manera,
|x
n+1
| =
|b|
mcd(a, b)
e |y
n+1
| =
|a|
mcd(a, b)
36 CAP

ITULO 2. DIVISIBILIDAD EN Z
De hecho, la construccion anterior no solo proporciona una prueba del Teorema sino
que nos da un algoritmo para su calculo.
3
En la forma en la que aparece descrito a
continuacion, coc(A, B) denota el cociente de la division eucldea de A por B.
Input : a, b Z
Inicializar :
S :=
_
_
a b
1 0
0 1
_
_
while s
12
= 0, do
Q
_
0 1
1 coc(s
11
, s
12
)
_
S S Q
endwhile
Output : s
11
, x = s
21
, y = s
31
Algoritmo Extendido de Euclides.
Observese que como subproducto del algoritmo anterior, se obtienen x
n+1
e y
n+1
cuya utilidad se vera en la resolucion de ecuaciones diofanticas lineales
A partir del Teorema 2.15, podemos demostrar la anunciada unicidad de la factori-
zacion de un n umero entero, pero antes un resultado previo.
Teorema 2.16 Si a|bc y mcd(a, b) = 1, entonces a|c. En particular, si p es primo
y p|ab, entonces p|a o p|b.
Demostracion. Gracias a la identidad de Bezout sabemos que existen enteros x e
y tales que ax + by = 1. Multiplicando por c se tiene c = cax + cby, con lo que a
divide a los dos sumandos a la derecha y, por lo tanto, a c.
A partir del Teorema anterior y pagando un bajo precio, en forma de sencillo argu-
mento inductivo, se puede probar que
Si p es primo y p|a
1
a
k
, entonces p divide a alg un a
i
Todas estas disquisiciones realizadas sobre la relacion entre n umeros primos y di-
visibilidad nos ponen en condiciones de probar la unicidad, ya anunciada, de la
expresion de un n umero entero como producto de 1 y n umeros primos.
3
En clase de problemas veremos c omo extender este algoritmo para mas de dos enteros.
2.4. ECUACIONES DIOF

ANTICAS LINEALES 37
Teorema 2.17 (Teorema fundamental de la aritmetica) Todo entero positi-
vo
puede expresarse como producto de potencias no triviales de n umeros primos
n = p

1
1
p

2
2
p

k
k
y, salvo, reordenacion de los factores, esta factorizacion es unica.
Demostracion del Teorema Fundamental de la Aritmetica. La existencia de la fac-
torizaci on se sigue del Teorema 2.4 y, por lo tanto, solo queda probar la unicidad.
Sea S el conjunto de enteros positivos que admiten dos factorizaciones distintas y,
supongamos, por reduccion al absurdo, que este conjunto es no vaco. Por la buena
ordenacion de N, sabemos que, en ese caso, el conjunto S admite mnimo, digamos
n. Se tendran dos factorizaciones distintas de n:
n = p

1
1
p

2
2
p

k
k
y
n = q

1
1
q

2
2
q

s
s
.
Es claro que p
1
divide a q

1
1
q

2
2
q

s
s
y, por lo tanto, a alguno de los q

i
i
. A un mas, se
tendra que p
1
divide a alguno de los q
i
lo que implica que es igual a alguno de los q
i
.
Reordenando los q
i
, podemos suponer que p
1
= q
1
. En consecuencia, se tendra que
n
p
1
= p

1
1
1
p

2
2
p

k
k
= q

1
1
1
q

2
2
q

s
s
.
Puesto que las factorizaciones de n consideradas eran distintas, tenemos dos facto-
rizaciones distintas del entero positivo
n
p
1
< n, lo que contradice el hecho de que n
sea el mnimo de S.
2.4. Ecuaciones diofanticas lineales
Se llaman ecuaciones diofanticas a aquellas de las que nos interesan las soluciones
enteras. Un caso interesante es de las ecuaciones diofanticas lineales en dos variables
aX + bY = c a, b, c Z (2.7)
Puesto que el caso a = b = 0 no tiene ning un interes, supondremos que (a, b) = (0, 0).
Utilizando el Algoritmo de Euclides extendido, sabemos encontrar una solucion si
c = mcd(a, b). Del mismo modo, es obvio encontrar una solucion si mcd(a, b) divide a
c. Dicho de otra manera, la ecuacion diofantica tiene solucion si c divide a mcd(a, b).
38 CAP

ITULO 2. DIVISIBILIDAD EN Z
Y si mcd(a, b) no divide a c? En este caso, no puede haber solucion: si existiesen
enteros x e y tales que
ax + by = c,
se tendra que todo factor com un de a y de b tambien lo sera de c. En particular,
el maximo com un divisor de a y de b dividira a c.
Recopilando, hemos demostrado que la ecuacion diofantica 2.7 tiene solucion si,
y solo si, c divide a mcd(a, b). De hecho, sabemos como encontrar una solucion:
aplicamos el algoritmo extendido de Euclides a a y b obteniendo x
0
e y
0
tales que
ax
0
+ by
0
= mcd(a, b). Es claro que (
c
mcd(a,b)
x
0
,
c
mcd(a,b)
y
0
) es solucion de 2.7. Sin
embargo, hasta ahora no nos hemos preocupado por saber si hay mas de una solucion
y, en el caso de que haya mas de una, saber cuales son todas las soluciones. Para
analizar este problema, estudiemos la ecuacion diofantica
aX + bY = 0 (2.8)
por cuanto si (x
1
, y
1
) es solucion cualquiera de la ecuacion diofantica 2.7 y (x
0
, y
0
)
solucion de 2.8, es facil ver que (x
1
+ x
0
, y
1
+ y
0
) es solucion de 2.7. Una solucion
obvia ( y la mas peque na) a la ecuacion diofantica 2.8 es
_
b
mcd(a, b)
,
a
mcd(a, b)
_
,
pero tambien lo son todas las de la forma
_
t
b
mcd(a, b)
, t
a
mcd(a, b)
_
, con t Z.
As pues, si (x
1
, y
1
) es solucion cualquiera de 2.7 el conjunto
{
_
x
1
+
b
mcd(a, b)
t, y
1

a
mcd(a, b)
t
_
: t Z},
es un conjunto de innitas soluciones de 2.7. Hay mas? Para verlo, sea (x, y) una
solucion de 2.7. Por lo tanto,
ax
1
+ by
1
= c y
ax + by = c.
Restando, se tiene a(x x
1
) + b(y y
1
) = 0 y, dividiendo por mcd(a, b),
a
mcd(a, b)
(x x
1
) +
b
mcd(a, b)
(y y
1
) = 0. (2.9)
2.5. M

INIMO COM

UN M

ULTIPLO 39
Ahora, supongamos que b = 0 (si b = 0 y a = 0, haramos el mismo argumento que
sigue con a). Como
mcd
_
a
mcd(a, b)
,
b
mcd(a, b)
_
= 1
y
b
mcd(a,b)
divide a (x x
1
)
a
mcd(a,b)
, se tiene que
b
mcd(a,b)
divide a (x x
1
), es decir,
x x
1
= t
b
mcd(a, b)
, para alg un t Z.
Sustituyendo en 2.9, se obtiene que
y y
1
= t
b
mcd(a, b)
.
Los argumentos anteriores prueban que el siguiente resultado es cierto.
Proposicion 2.18 Dados enteros a, b, c la ecuacion diofantica
aX + bY = c
tiene solucion si, y solo si, mcd(a, b) divide a c. En caso de que tenga solucion tiene
innitas, dadas por
{
_
x
1
+
b
mcd(a, b)
t, y
1

a
mcd(a, b)
t
_
: t Z},
donde (x
1
, y
1
) es una solucion particular cualquiera.
De hecho, hemos encontrado un algoritmo para resolver ecuaciones diofanticas de
la forma 2.7, ya que basta encontrar una solucion particular cualquiera y, para ello
podemos utilizar el algoritmo extendido de Euclides.
2.5. Mnimo com un m ultiplo
Denicion 2.19 Si a y b son dos enteros, un m ultiplo com un de a y b es un entero
c tal que a|c y b|c. Si a y b son ambos no nulos, existen m ultiplos comunes positivos
(por ejemplo |ab|), por lo que la buena ordenacion de N nos asegura la existen-
cia de un mnimo com un m ultiplo, es decir, el menor m ultiplo com un positivo.
Normalmente, se escribe mcm(a, b).
De hecho, se tiene que el mnimo com un m ultiplo de a y b es el unico entero positivo
m que verica:
1) a|m y b|m (por ser m ultiplo com un)
40 CAP

ITULO 2. DIVISIBILIDAD EN Z
2) Si c es un entero que verica a|c y b|c, entonces, m|c (por ser el menor de los
m ultiplos comunes).
El mnimo com un m ultiplo esta estrechamente ligado al maximo com un divisor. Esta
ligazon viene dada por el siguiente resultado.
Teorema 2.20 Sean a y b dos enteros. Se tiene
|ab| = mcd(a, b) mcm(a, b).
Demostracion. Se trata de probar que el entero positivo
m =
|ab|
mcd(a, b)
es el mnimo com un m ultiplo de a y b, es decir, que verica las dos propiedades
anteriores.
En primer lugar, es claro que a|m por cuanto mcd(a, b) divide a b y, por lo tanto,
podemos escribir
m = |a|
|b|
mcd(a, b)
.
De igual forma puede verse que b|m.
Por otro lado, supongamos que c es un entero que es m ultiplo com un de a y b, es
decir,
c = au para alg un entero u y c = bv para alg un entero v.
Se tiene, entonces que
a
mcd(a, b)
u =
b
mcd(a, b)
v
y, como
a
mcd(a,b)
y
b
mcd(a,b)
son primos entre s, que
a
mcd(a,b)
divide a v, es decir,
v = k
a
mcd(a, b)
para alg un entero k.
Finalmente, se tendra
c = bv = k
ab
mcd(a, b)
para alg un entero k.
2.6. PROBLEMAS PROPUESTOS 41
2.6. Problemas propuestos
Problema 2.1 .- (Expresion de n umeros natural en bases distintas de la decimal)
Demostrar que, dado un natural q > 0, todo n umero natural n puede expresarse de
manera unica en la forma
a
k
q
k
+ a
k1
q
k1
+ + a
1
q + a
0
,
con 0 a
k
< q, donde k el unico natural para el que se verica q
k
n < q
k+1
.
Problema 2.2 .- Sea
a
k
a
k1
. . . a
1
a
0
, a
i
{0, 1}
la expresion en base 2 (binaria) de un cierto n umero natural. Expresar, en base 2,
cociente y resto de la division por 2 de dicho n umero.
Problema 2.3 .- Si (A, +, ) es un anillo conmutativo con elemento unidad, un
subconjunto I se llama ideal si
a + b I para todo a, b I
x A y a I = xa I.
(1) Probar que si a
1
, . . . , a
n
son elementos cualesquiera del anillo A, el conjunto
(a
1
, . . . , a
n
) = {a
1
x
1
+ a
2
x
2
+ . . . + a
n
x
n
: x
i
A}
es un ideal de A. Todo ideal que se puede expresar de esta forma, se dice
nitamente generado. Si n = 1, se denomina principal.
(2) Probar que en Z todo ideal es principal. Un anillo sin divisores de cero y que
verica esta propiedad se dice dominio de ideales principales.
(3) Sean ahora, (a) y (b) dos ideales de Z. Quien es el menor ideal que contiene
a ambos? Quien es la interseccion de (a) y (b)?
Problema 2.4 .- Dados a y b enteros no nulos, los podemos escribir en la forma
a =
n

i=1
p

i
i
, a =
n

i=1
p

i
i
,
i
,
i
0.
donde los p
i
son todos los primos que dividen a ab. Comprobar que
mcd(a, b) =
n

i=1
p
min{
i
,
i
}
i
y mcm(a, b) =
n

i=1
p
max{
i
,
i
}
i
42 CAP

ITULO 2. DIVISIBILIDAD EN Z
Problema 2.5 .- Para cada uno de los pares de enteros siguientes, calcular el
maximo com un divisor utilizando el algoritmo de Euclides:
(i) 34, 21; (ii) 136, 51; (iii) 481, 325; (iv) 8711, 3206; (v) 1134, 1221;
En cada uno de los casos, resuelve la correspondiente identidad de Bezout.
Problema 2.6 .- El algoritmo de Euclides puede hacerse ligeramente mas rapido
si permitimos restos negativos en la forma que sigue
r
i1
= r
i
q
i
+ r
i+1
con |r
i
/2| < r
i+1
|r
i
/2|.
Por ejemplo, si aplicamos este metodo para calcular el maximo com un divisor de 59
y 49, se tiene
mcd(59, 49) = mcd(49, 10) = mcd(10, 1) = mcd(1, 0) = 1.
Utilizar este algoritmo, conocido como del mnimo resto, para calcular los maximos
comunes divisores del ejercicio anterior y resolver las correspondientes identidades
de Bezout.
Problema 2.7 .- Demostrar las siguientes propiedades del maximo com un divisor.
1. Si a y b son pares, mcd(a, b) = 2mcd
_
a
2
,
b
2
_
2. Si a es par y b es impar, mcd(a, b) = mcd
_
a
2
, b
_
3. Si a y b son impares, mcd(a, b) = mcd
_
|a b|
2
, b
_
A partir de las propiedades anteriores, construir un algoritmo para calcular el maxi-
mo com un divisor de dos enteros realizando unicamente divisiones por 2. (Nota:
Este algoritmo se conoce como algoritmo binario para el calculo del mcd y es debido
a J. Stein que publico su resultado en 1967).
Problema 2.8 .- Considerese la siguiente variante del algoritmo binario para el
computo de mcd(a, b). Asumamos que a y b no son los dos pares.
1) Si a es par, sustituimos (a, b) por (a/2, b).
2) Si b es par, sustituimos (a, b) por (a, b/2).
3) Si a y b son impares, sustituimos (a, b) por
_
a+b
2
,
ab
2
_
.
2.6. PROBLEMAS PROPUESTOS 43
El algoritmo consiste en repetir los pasos (1)-(3) en ese orden. Si a o b es cero,
paramos y devolvemos como mcd(a, b) el otro n umero en valor absoluto. Por ejemplo,
para calcular mcd(15, 6) utilizando este algoritmo, se tendra:
(15, 6) (15, 3) (9, 6) (9, 3) (6, 3) (3, 3) (3, 0)
Demostrar que este algoritmo siempre acaba y que la respuesta es correcta. (Indi-
cacion: Para probar que el algoritmo termina, considera la aplicacion f(a, b) = a
2
+b
2
y comprueba que cada vez que se da un paso en el algoritmo su valor decrece).
Problema 2.9 .- Probar las siguientes propiedades de la sucesion de Fibonacci:
Dos terminos consecutivos de la sucesion son coprimos, es decir,
mcd(F
n1
, F
n
) = 1 para n 1
El mayor natural menor que F
n+2
/F
n+1
(escrito F
n+2
/F
n+1
) es 1.
El resto de la division de F
n+1
por F
n
es F
n1
.
Problema 2.10 .- Descomponer de todas las formas posibles el n umero racional
100/273 en suma de dos fracciones positivas con denominadores 21 y 13.
Problema 2.11 .- (Algoritmo extendido de Euclides para t enteros) Basandose en
la interpretacion matricial del algoritmo extendido de Euclides, dise nar un algoritmo
para calcular, dados enteros a
1
, . . . , a
t
, una identidad de Bezout del tipo
a
1
x
1
+ a
2
x
2
+ + a
t
x
t
= mcd(a
1
, . . . , a
t
).
Aplicar dicho algoritmo a la resolucion de ecuaciones diofanticas de la forma
a
1
X
1
+ a
2
X
2
+ + a
n
X
n
= b.
Problema 2.12 .- Para cada una de las ecuaciones diofanticas siguientes, estudiar
si tienen solucion y, en su caso, calcular todas las soluciones:
25X + 36Y = 10 ; 40X + 50Y = 3 ;
200X 1768Y = 8 ; 213X + 1123Y = 18 ;
30X + 1107Y + 3030303Z = 25 ; 10X + 11Y + 20Z = 10 ;
3X + 7Y + 12Z + 21T = 22 ; 2200X + 1221Y 2332Z + 101101T = 12.
44 CAP

ITULO 2. DIVISIBILIDAD EN Z
Problema 2.13 .- Resolver el sistema de ecuaciones diofanticas lineales:
_
11X + 3Y + 5Z = 20
3X + 7Y + 10Z = 10
Problema 2.14 .- Supongamos que el maximo com un divisor de a y b es un primo
p. Cu ales son los posibles valores del maximo com un divisor de a
2
y b? Y del
maximo com un divisor de a
3
y b? Si m.c.d(a, b) = p, cuanto vale m.c.d(a
3
, b
3
)?
Problema 2.15 .- Una empresa alemana esta replanteandose sus planes de ac-
tividad. Tiene una fabrica en Espa na con un millar de empleados espa noles y un
centenar de ejecutivos alemanes y esta estudiando una reestructuracion de plantilla.
Obviamente sin informar a los sindicatos; aunque estos sospechan que va a haber
alg un despido. Un representante sindical encuentra en una fotocopiadora un docu-
mento del estudio de reestructuracion de plantilla (olvidado por error, obviamente)
en que se puede leer
El 80.9 por ciento de los que van a ser despedidos esta casado.
El 43.5 por ciento de los que van a ser despedidos esta pagando hipoteca.
Deducir que piensan hacer los alemanes con la empresa.
Problema 2.16 .- Un turista estadounidense va a pasar unos das de vacaciones
en Pars, Madrid y Cracovia y desea cambiar 810 dolares en euros y en zlotys.
Sabiendo que el euro se cotiza a 0,90 dolares y un zloty a 0,24, de cuantas formas
posibles puede hacer el cambio si necesita para su estancia en Cracovia, al menos,
3000 zlotys?
Problema 2.17 .- Sean dados dos n umeros naturales no nulos a y b. Es posible es-
cribir el n umero racional
1
m.c.m.(a,b)
como suma de dos racionales de denominadores
a y b? En caso de respuesta armativa, esbozar un algoritmo para el calculo de
dichos racionales.
Problema 2.18 .- Una cierta empresa fabrica tres productos A, B y C que vende a
590, 410 y 300 euros respectivamente. Calcular cuantas unidades de cada producto
se vendieron en un da determinado sabiendo que:
La recaudacion por la venta de los productos fue de 32420 euros.
Se vendieron mas unidades de A que de B.
El n umero de unidades de C vendidas fue mayor que 83.
Problema 2.19 .- Resolver el siguiente problema: Si un gallo cuesta siete mon-
edas, una gallina cinco monedas y tres pollos una moneda, de cuantas formas
distintas pueden comprarse un total de trescientas aves (gallos, gallinas y pollos) si
disponemos de quinientas monedas? Escribir cada una de estas formas posibles.
2.6. PROBLEMAS PROPUESTOS 45
Problema 2.20 .- Una compa na aerea ofrece tres tipos de billetes en sus vuelos
de Madrid a Pars. Los billetes de clase preferente cuestan 150 euros, los de clase
turista con derecho a comida 110 y el resto 67. Si, en un vuelo concreto un total
de 100 pasajeros pagaron un total de 10766 euros, cuantos billetes de cada tipo se
vendieron?
Problema 2.21 .- Probar que para cada n umero natural n, existen siempre n
n umeros compuestos consecutivos.
Problema 2.22 .- Si mn es un cuadrado perfecto y mcd(m, n) = 1, demostrar que
m y n son tambien cuadrados perfectos.
Problema 2.23 .- (N umeros de Fermat)
i) Demostrar que si 2
m
+ 1 es primo, m es una potencia de 2, es decir, m = 2
n
para alg un natural n.
Nota. Los n umeros de la forma 2
2
n
+ 1 se llaman n umeros de Fermat y si
son primos, se les dice primos de Fermat. Pierre de Fermat (1601-1665) con-
jeturo que todos los n umeros de la forma 2
2
n
+ 1 eran primos, pues pudo
comprobar que eso era cierto para n = 0, 1, 2, 3, 4. Sin embargo, en 1732 Leon-
hard Euler (1707-1783) demostro que 641 era factor de 2
32
+1 = 4294967297.
A fecha de hoy, los unicos primos de Fermat conocidos son los que se corre-
sponden con n = 0, 1, 2, 3, 4, aunque no se sabe si hay mas.
ii) Demostrar que dos n umeros de Fermat distintos son siempre primos entre s.
Problema 2.24 .- Un primo de Mersenne es un n umero primo de la forma 2
n
1.
Demostrar que si 2
n
1 es primo, n ha de ser primo.
Nota. En 1644, Mersenne conjeturo que 2
p
1 era primo para p = 2, 3, 5, 7, 13,
17, 19, 31, 67, 127, 257 y para ning un otro primo menor que 257. En la lista de
Mersenne, haba errores por cuanto los n umeros correspondientes a 67 y 257 no son
primos y le faltaban los correspondientes a 61 y 89. A fecha de hoy, solo se conocen
38 primos de Fermat, el mayor de los cuales es 2
6972593
1, n umero este que tiene mas
de 2 millones de dgitos decimales. Una lista de los primos de Mersenne conocidos
puede verse en http://www.utm.edu/research/primes/mersenne.shtml#known.
Problema 2.25 .- Dado un entero positivo n, sea (n) =

d|n
d la suma de todos
sus divisores positivos. Por ejemplo, (27) = 1 + 3 + 9 + 27 = 40. Demostrar que si
mcd(m, n) = 1, (nm) = (n)(m) y encontrar una formula para calcular (n) a
partir de la descomposicion de n en factores primos.
46 CAP

ITULO 2. DIVISIBILIDAD EN Z
Problema 2.26 .- Un n umero perfecto es un entero positivo que es igual a la
suma de sus divisores distintos de el mismo (p.e., 6 es perfecto pues 6 = 1 + 2 +
3). Demostrar que los n umeros perfectos pares son exactamente los de la forma
2
k1
(2
k
1), con 2
k
1 un primo de Mersenne. (Indicacion: Para ver que un n umero
perfecto par tiene esa forma, escrbelo primero en la forma 2
k1
n
0
con n
0
impar,
demostrar que n
0
es divisible por 2
k
1 y comprueba que n
0
tiene que ser primo
estudiando (n
0
)).
Nota: No se sabe si existen n umeros perfectos impares. Por otro lado, los primeros
n umeros perfectos son: 6 = 2
1
(2
2
1), 28 = 2
2
(2
3
1), 496 = 2
4
(2
5
1), 8128 =
2
6
(2
7
1), 33550336 = 2
12
(2
13
1),...
Problema 2.27 .- Sean a y b n umeros positivos coprimos. Demostrar que para
todo entero positivo n > ab, existen n umeros enteros positivos x e y tales que
n = ax + by
A partir de lo anterior, deducir que todo n umero entero > 11 puede escribirse como
suma de dos n umeros compuestos.

Anda mungkin juga menyukai