Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio...

115
´ Algebra Ingenier´ ıa en Inform´ atica Universidad de Alcal´ a Jos´ e Enrique Morais San Miguel 20 de enero de 2005

Transcript of Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio...

Page 1: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

Algebra

Ingenierıa en Informatica

Universidad de Alcala

Jose Enrique Morais San Miguel

20 de enero de 2005

Page 2: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

Computer science is no more about computers than astronomy is abouttelescopes.

E.W. Dijkstra

Page 3: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

Indice general

1. Preliminares 11.1. Teorıa de conjuntos y aplicaciones. . . . . . . . . . . . . . . . . . . . 1

1.1.1. Definicion de conjunto. Paradoja de Russell . . . . . . . . . . 11.1.2. Subconjuntos. Operaciones entre conjuntos . . . . . . . . . . . 21.1.3. Aplicaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

1.2. Relaciones de orden y de equivalencia . . . . . . . . . . . . . . . . . . 101.2.1. Relaciones de equivalencia . . . . . . . . . . . . . . . . . . . . 101.2.2. Relaciones de orden . . . . . . . . . . . . . . . . . . . . . . . . 11

1.3. Numeros naturales. Principio de induccion . . . . . . . . . . . . . . . 131.3.1. Numeros naturales . . . . . . . . . . . . . . . . . . . . . . . . 131.3.2. Principio de induccion . . . . . . . . . . . . . . . . . . . . . . 14

1.4. Cardinal de un conjunto . . . . . . . . . . . . . . . . . . . . . . . . . 161.4.1. ¿Que significa contar? . . . . . . . . . . . . . . . . . . . . . . 161.4.2. Cardinal de un conjunto . . . . . . . . . . . . . . . . . . . . . 17

1.5. Operaciones internas . . . . . . . . . . . . . . . . . . . . . . . . . . . 191.5.1. El anillo Z . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

1.6. Problemas propuestos . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

2. Divisibilidad en Z 252.1. Division euclıdea en Z. Maximo comun divisor . . . . . . . . . . . . . 252.2. Algoritmo de Euclides. Teorema de Lame . . . . . . . . . . . . . . . . 29

2.2.1. Teorema de Lame . . . . . . . . . . . . . . . . . . . . . . . . . 312.3. Identidad de Bezout. Algoritmo extendido de Euclides . . . . . . . . . 332.4. Ecuaciones diofanticas lineales . . . . . . . . . . . . . . . . . . . . . . 372.5. Mınimo comun multiplo . . . . . . . . . . . . . . . . . . . . . . . . . 392.6. Problemas propuestos . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

3. Congruencias 473.1. Aritmetica modular. Teorema chino de los restos . . . . . . . . . . . . 47

3.1.1. Aritmetica modular . . . . . . . . . . . . . . . . . . . . . . . . 473.1.2. Teorema chino de los restos . . . . . . . . . . . . . . . . . . . 483.1.3. El grupo multiplicativo Z∗

m . . . . . . . . . . . . . . . . . . . . 533.2. Teorema de Euler-Fermat . . . . . . . . . . . . . . . . . . . . . . . . 57

i

Page 4: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

3.3. Un test de primalidad eficiente . . . . . . . . . . . . . . . . . . . . . . 593.3.1. Algoritmo binario para el calculo de potencias . . . . . . . . . 593.3.2. Test de Miller-Rabin . . . . . . . . . . . . . . . . . . . . . . . 60

3.4. Sistema criptografico de clave publica RSA . . . . . . . . . . . . . . . 623.5. Problemas propuestos . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

4. El anillo de polinomios K[x] 714.1. Polinomios y divisibilidad . . . . . . . . . . . . . . . . . . . . . . . . 71

4.1.1. Division euclıdea . . . . . . . . . . . . . . . . . . . . . . . . . 724.2. Cuerpos finitos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

5. Matrices y sistemas de ecuaciones lineales 755.1. Matrices sobre un cuerpo. Definiciones y notacion . . . . . . . . . . . 75

5.1.1. Operaciones con matrices . . . . . . . . . . . . . . . . . . . . 775.2. Rango de una familia de vectores de Kn . . . . . . . . . . . . . . . . 775.3. Rango por filas y por columnas de una matriz . . . . . . . . . . . . . 805.4. Rango de una matriz. Matrices elementales . . . . . . . . . . . . . . . 84

5.4.1. Matrices elementales . . . . . . . . . . . . . . . . . . . . . . . 845.4.2. Rango de una matriz . . . . . . . . . . . . . . . . . . . . . . . 865.4.3. Aplicacion al calculo de inversas de matrices regulares . . . . . 87

5.5. Combinacion lineal. Variedades lineales . . . . . . . . . . . . . . . . . 885.6. Sistemas de ecuaciones lineales. . . . . . . . . . . . . . . . . . . . . . 90

5.6.1. Nulidad de una matriz . . . . . . . . . . . . . . . . . . . . . . 905.6.2. Resolucion de sistemas lineales . . . . . . . . . . . . . . . . . . 92

5.7. Problemas propuestos . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

6. Diagonalizacion de matrices 1016.1. Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

6.1.1. Un ejemplo preliminar . . . . . . . . . . . . . . . . . . . . . . 1016.1.2. Planteamiento general del problema . . . . . . . . . . . . . . . 103

6.2. Algoritmo de diagonalizacion . . . . . . . . . . . . . . . . . . . . . . . 1046.3. Problemas propuestos . . . . . . . . . . . . . . . . . . . . . . . . . . 108

7. Espacios vectoriales y aplicaciones lineales 1117.1. Espacios vectoriales . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1117.2. Aplicaciones lineales . . . . . . . . . . . . . . . . . . . . . . . . . . . 1117.3. Codigos correctores de errores . . . . . . . . . . . . . . . . . . . . . . 1117.4. Problemas propuestos . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

Page 5: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

Capıtulo 1

Preliminares

1.1. Teorıa de conjuntos y aplicaciones.

1.1.1. Definicion de conjunto. Paradoja de Russell

Si acudimos a un diccionario, la definicion que se nos da de conjunto es, mas o menos,del siguiente tenor: Totalidad de los entes matematicos que tienen una propiedadcomun.1

En esta definicion, y de manera implıcita, estamos suponiendo que tenemos unacoleccion de objetos (matematicos o no, eso es lo de menos) y que disponemos de uncriterio que nos permite saber si tal o cual objeto pertenece a dicha coleccion o no(se tratarıa de ver si cumple o no la propiedad) . Es decir, si mi coleccion de objetoses A y x es un objeto podemos determinar si x ∈ A (x pertenece a A) o x /∈ A(x no pertenece a A). Aparentemente, esta definicion de conjunto es perfectamentecoherente, pero plantea serios problemas como veremos a continuacion. El logicogales Bertrand Russell (1872-1970)2, considerado uno de los grandes en la Logicadel Siglo XX escribio : “Normally, a class 3 is not a member of itself. Mankind, forexample, is not a man”. Pero si consideramos el conjunto de todos los conjuntos,este se contendrıa a sı mismo. En consecuencia, Russell explicaba en 1901 la que hapasado a la historia como paradoja de Russell en los siguientes terminos:

Form now the assemblage of classes which are not members of them-selves. This is a class: is it a member of itself or not? If it is, it is oneof those classes that are members of themselves, i.e. it is not a memberof itself. If it is not, it is not one of the classes that are not membersof themselves, i.e it is a member of itself. Thus the two hypothesis- that

1Esta definicion esta extraıda de la version de 2001 del Diccionario de la RAE.2Una pequena biografıa de Russell, con especial atencion a sus aportaciones matematicas,

puede consultarse en http://www-groups.dcs.st-andrews.ac.uk/~history/Mathematicians/Russell.html

3Aquı clase debe entenderse como conjunto definido como en el diccionario.

1

Page 6: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

2 CAPITULO 1. PRELIMINARES

it is, and that is not, a member of itself-each implies its contradictory.This is a contradiction.

Utilizando notacion matematica al uso, la paradoja se escribe como sigue:

Sea S = {X : X conjunto y X /∈ X}. Se tiene que si S ∈ S, entonces, S /∈ S; y siS /∈ S, entonces S ∈ S.

Existen diversas formas de evitar esta paradoja (axiomatica a la Zermelo-Fraenkel, ala Godel-Bernays,...) pero no entraremos en ellas. Por ejemplo, una rapida introduc-cion a la axiomatica “a la Godel-Bernays”se encuentra en 4. Digamos unicamenteque, en la axiomatica “a la Godel-Bernays”, se llama clase a lo que el diccionariodefinıa como conjunto y se dice que una clase es un conjunto si, y solo si, existe otraclase B tal que A ∈ B. De esta forma, la clase S definida anteriormente, es decir,

S = {X : X conjunto y X /∈ X}

no es un conjunto, evitando la paradoja de Russell.

1.1.2. Subconjuntos. Operaciones entre conjuntos

Aun teniendo presente la paradoja de Russell, a lo largo del curso no nos vamosa encontrar con situaciones como esta, es decir, siempre que definamos una clasesera siempre un conjunto y, de esta forma, aceptaremos la definicion del diccionario.Asimismo, asumimos que cada vez que hagamos una operacion entre conjuntos(union, interseccion, producto cartesiano,...) el resultado sera siempre un conjun-to. Si en algun momento nos damos de bruces con una clase que no es un conjunto,lo senalaremos.

Junto a la propia definicion de conjunto y al concepto de pertenencia, aparece otranocion basica: la igualdad de conjuntos. Se dira que dos conjuntos son iguales siposeen los mismos elementos, aceptando la veracidad de las siguientes propiedadespara la igualdad:

Todo conjunto es igual a sı mismo.

Si A y B son conjuntos y A = B, entonces B = A.

Si A, B y C son conjuntos y A = B y B = C, entonces A = C.

Subconjuntos

Un conjunto B se dice subconjunto de otro conjunto A, y se escribe B ⊂ A, sitodo elemento de B tambien lo es de A, es decir,

4T.W. Hungerford. Algebra. Springer–Verlag (1987)

Page 7: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

1.1. TEORIA DE CONJUNTOS Y APLICACIONES. 3

para todo x ∈ B , x ∈ B implica x ∈ A.

Si B es subconjunto de A tambien se suele decir que A incluye a B o que B esta in-cluido en A.

Ejemplo 1.1

El conjunto formado por las alumnas de la Universidad de Alcala es un sub-conjunto del conjunto de todos los estudiantes de la Universidad de Alcala.

El conjunto dado por

{x ∈ N : x = 2n, para algun n ∈ N}

es un subconjunto de los numeros naturales.

Por otro lado, se tiene que

A = B ⇐⇒ A ⊂ B y B ⊂ A.

El conjunto vacıo (denotado ∅) es el conjunto que no tiene ningun elemento. Puestoque la condicion x ∈ ∅ es siempre falsa, por lo anterior ∅ es subconjunto de cualquierconjunto. Puesto que, por otro lado, todo conjunto es subconjunto de sı mismo,llamaremos subconjuntos propios de un conjunto a todos los subconjuntos de el queno sean ni el vacıo, ni el propio conjunto. Por ejemplo, el conjunto de los numerosnaturales pares es un subconjunto propio del conjunto de numeros naturales.

Operaciones entre conjuntos

A partir de un conjunto dado o de varios conjuntos dados, podemos construir nuevosconjuntos. De esto nos ocuparemos en lo que resta de Subseccion.

Dado un conjunto A se define otro conjunto, conocido como el conjunto de partesde A y denotado por P(A), que es el conjunto de todos los subconjuntos de el. Porejemplo, si

A = {a, b, c},

P(A) = {∅, {a}, {b}, {c}, {a, b}, {a, c}, {b, c}, {a, b, c}}.

Supongamos ahora que tenemos dos conjuntos A y B. A partir de ellos, podemosconstruir los siguientes conjuntos (¡conviene que se comparen estas nociones y suspropiedades con la de los conectivos logicos,{∨,∧,¬}, que seguro se introduciran enla asignatura de Logica!):

Page 8: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

4 CAPITULO 1. PRELIMINARES

La union de A y de B, escrito A⋃B, se define como {x : x ∈ A o x ∈ B}.

La interseccion de A y de B, escrito A⋂B se define como {x : x ∈ A y x ∈

B}. Si A⋂B = ∅, se dice que A y B son disjuntos.

El complementario de B en A, escrito A \B, es el subconjunto de A dadopor {x : x ∈ A y x /∈ B}.

Los conceptos de union e interseccion pueden extenderse a una familia (finita o no)de conjuntos cualesquiera.

Para las propiedades que siguen, supondremos que todos los conjuntos involucradosson subconjuntos de otro prefijado U y denotaremos por Ac el complementario deA en U . Asimismo, I denota un conjunto de ındices.

1. A⋂

(⋃i∈I

Bi) =⋃i∈I

(A⋂

Bi)

2. A⋃

(⋂i∈I

Bi) =⋂i∈I

(A⋃

Bi)

3. (⋃i∈I

Ai)c =

⋂i∈I

Aci y (

⋂i∈I

Ai)c =

⋃i∈I

Aci (Leyes de Morgan)

4. A⋃B = B ⇐⇒ A ⊂ B ⇐⇒ A

⋂B = A

Dado que es el primer resultado que nos aparece en las notas, demostraremos algunasde estas propiedades con todo lujo de detalles.

Propiedad 1. Por lo que hemos visto sobre la igualdad de los conjuntos, la propiedad1 es equivalente a

A⋂

(⋃i∈I

Bi) ⊂⋃i∈I

(A⋂

Bi) y (1.1)⋃i∈I

(A⋂

Bi) ⊂ A⋂

(⋃i∈I

Bi) (1.2)

Probemos (1.1) en primer lugar. Para ello, deberemos mostrar que todo elemento

de A⋂

(⋃i∈I

Bi) es tambien un elemento de⋃i∈I

(A⋂

Bi). Sea, pues, x ∈ A⋂

(⋃i∈I

Bi).

Por definicion de interseccion de conjuntos, esto es tanto como decir que x ∈ A

y x ∈⋃i∈I

Bi. Ahora bien, por definicion de union, x ∈⋃i∈I

Bi implica que existe al

menos un i ∈ I tal que x ∈ Bi. Si a esta ultima condicion le anadimos ahora que

x ∈ A, se tiene que x ∈ A⋂Bi para el i anterior. En consecuencia, x ∈

⋃i∈I

(A⋂

Bi)

como querıamos demostrar.

Page 9: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

1.1. TEORIA DE CONJUNTOS Y APLICACIONES. 5

Probemos ahora (1.2). Al igual que antes, hay que mostrar que si x ∈⋃i∈I

(A⋂

Bi),

entonces x ∈ A⋂

(⋃i∈I

Bi). Decir que x ∈⋃i∈I

(A⋂

Bi) es lo mismo que decir que para

algun i ∈ I, x ∈ A⋂Bi, es decir, que x ∈ A y x ∈ Bi. Ahora bien, x ∈ Bi implica

que x ∈⋃i∈I

Bi y como x ∈ A, se tiene que x ∈ A⋂

(⋃i∈I

Bi).

Prueba de las leyes de Morgan. Probemos que (⋃i∈I

Ai)c =

⋂i∈I

Aci . Decir que

x ∈ (⋃i∈I

Ai)c

es lo mismo que decir que

x /∈⋃i∈I

Ai.

A su vez, esta ultima condicion es equivalente a

para todo i ∈ I, x /∈ Ai.

De nuevo, esta ultima afirmacion es equivalente a

para todo i ∈ I, x ∈ Aci ,

y esto ultimo es equivalente a

x ∈⋂i∈I

Aci .

La siguiente construccion tiene gran interes y reaparecera a menudo en el curso, enespecial en la parte dedicada al Algebra Lineal. Es lo que se conoce como productocartesiano. Supongamos dados dos conjuntos A y B. El producto cartesiano de Apor B, escrito A×B, es el conjunto definido por

A×B = {(a, b) : a ∈ A, b ∈ B}.

Observese que ∅ × B = ∅ = A × ∅. A los elementos de A × B se les llama paresordenados. En forma clara, este mismo concepto se extiende a una familia finita deconjuntos. Supongamos dados conjuntos A1, . . . , An. Se define A1 × A2 × · · · × An

como el conjunto

A1 × A2 × · · · × An = {(a1, a2, . . . , an) : a1 ∈ A1, a2 ∈ A2, . . . , an ∈ An}.

Page 10: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

6 CAPITULO 1. PRELIMINARES

En el caso de que A = B, A×B se suele escribir A2 y si A1 = A2 = · · · = An = A,A1 × A2 × · · · × An se denota por An.

Finalmente, estudiamos un tipo de construccion de interes en Informatica, tal cuales el conjunto de palabras sobre un alfabeto finito. Supongamos dado unconjunto finito Σ (por ejemplo, el alfabeto espanol {a,b,c,d, . . . , n,n, . . . , x,y,z} o{0, 1}) que llamaremos alfabeto. Se llama palabra de longitud n a una n−tuplade elementos de Σ, es decir, α = (α1, . . . , αn) ∈ Σn. Habitualmente, se omiten losparentesis y las comas y se escribe

α1 . . . αn.

Si n = 0, Σ0 se define como el conjunto formada unicamente por la palabra vacıaque se denota λ.

Por poner unos ejemplos, si Σ es el alfabeto espanol, patata es una palabra delongitud 6 (esta formada por 6 letras), supercalifragilistico es una palabra de longitud21, ascvbghe tiene longitud 8,...

De esta forma, se define como el conjunto de palabras sobre el alfabeto finito Σ, yse denota Σ∗ a

Σ∗ =⋃n∈N

Σn.

1.1.3. Aplicaciones

Antes de definir de manera precisa el concepto de aplicacion, estudiemos un ejemploilustrativo. En tiempos que parecen ya muy lejanos (cuando la “mili”era obligatoria),todos los mozos de una quinta tenıan que pasar por un proceso que incluıa, entreotras cosas, la medida de su talla. Este proceso, asociar a cada mozo un numero (sutalla en centımetros) es un ejemplo tıpico de aplicacion. Dado un conjunto, en estecaso los mozos del reemplazo, a cada uno de ellos se le asocia un unico elemento deotro conjunto (en este caso, un numero natural).

Definicion 1.2 Dados conjuntos, A y B, una aplicacion f de A en B (escritof : A → B) asigna a cada elemento a ∈ A un unico elemento b ∈ B. Al conjuntoA se le dice dominio y a B rango. Dos funciones son iguales si poseen el mismodominio y toman igual valor para elementos iguales del dominio. Si S ⊂ A, podemosdefinir una aplicacion de S en B, llamada restriccion de f a S y denotada por f |S,que a cada elemento de S le asigna el mismo valor que f .

Ejemplo 1.3

La aplicacion que a cada ciudadano espanol le asigna un numero (el DNI).

La aplicacion talla estudiada anteriormente.

Page 11: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

1.1. TEORIA DE CONJUNTOS Y APLICACIONES. 7

f : N → N dado por f(n) = 2n. Esta ultima es una forma tıpica de expresaruna aplicacion: decir cual es la imagen de un elemento generico del dominio.

Definicion 1.4 (Composicion de aplicaciones) Sean f : A → B y g : B → Cdos aplicaciones. La composicion de las aplicaciones f y g, denotada por g ◦ f , esuna aplicacion de A en C dada por

(g ◦ f)(a) = g(f(a)).

Dada una aplicacion f : A→ B se denomina conjunto imagen al subconjunto de Bdefinido por:

{b ∈ B : b = f(a) para algun a ∈ A},

y a menudo se denota por Imf . Por otro lado, si T ⊂ B la imagen inversa de T porf es el conjunto

{a ∈ A : f(a) ∈ T}

que, habitualmente se denota por f−1(T ). Si T esta compuesto por un unico ele-mento, T = {b}, se suelen omitir las llaves y se escribe f−1(b).

Proposicion 1.5 Sea f : A→ B una aplicacion. Se puede ver que:

para S ⊂ A, S ⊂ f−1(f(S));

para T ⊂ B, f(f−1(T )) ⊂ T .

Asimismo, si {Ti : i ∈ I} es una familia de subconjuntos de B, se verifica

f−1(⋃i∈I

Ti) =⋃i∈I

f−1(Ti)

f−1(⋂i∈I

Ti) =⋂i∈I

f−1(Ti)

Nota: El recıproco a las dos primeras afirmaciones del resultado anterior no es, engeneral, cierto. Por ejemplo, sean J el conjunto de jugadores de la liga espanola enla temporada actual y f la aplicacion que a cada jugador le asocia su altura. Si Ses el conjunto formado unicamente por Benayoun (S = {Benayoun}), puesto que sualtura es de 178 cm, f−1(f(S)) es el conjunto de todos los jugadores que miden 178cm. Entre ellos estara el propio Benayoun, pero tambien muchos otros. ¿Por que nose da la igualdad? Simplemente, porque hay mas jugadores, aparte de Benayoun,que miden 178 cm.

Page 12: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

8 CAPITULO 1. PRELIMINARES

Consideramos ahora la aplicacion f : N → N dada por f(n) = 2 ∗ n y sea T elconjunto de numeros naturales multiplos de 3, es decir, T = {0, 3, 6, 9, 12, 15, . . .}.En este caso, f−1(T ) = T y f(f−1(T )) es el conjunto de naturales multiplos de 6.En este caso, la igualdad no es cierta porque, naturalmente, no todos los multiplosde 3 son pares.

En la proposicion anterior, la igualdad en las dos primeras afirmaciones se satisfacesiempre solo para algunos tipos particulares de funciones. Estudiemos, ahora, estasfunciones.

Definicion 1.6 (Aplicaciones inyectivas, sobreyectivas y biyectivas) Seaf : A→ B una aplicacion.

f se dice inyectiva si

para todo a, a′ ∈ A con f(a) = f(a′) =⇒ a = a′.

f se dice sobreyectiva si

para todo b ∈ B, b = f(a) para algun a ∈ A.

f se dice biyectiva si es inyectiva y sobreyectiva.

Ejercicio 1.7 Sea f : A→ B una aplicacion. Probar que:

si f es inyectiva y S ⊂ A, S = f−1(f(S)) y que

si f es sobreyectiva y T ⊂ B, f(f−1(T )) = T

De las definiciones anteriores se deduce que para todo conjunto A la llamada apli-cacion identidad, IA, definida por IA(a) = a, es biyectiva.

Hasta este momento, hemos definido una operacion entre funciones (la composicion)y de entre todas las funciones hemos distinguido algunas especiales (las inyectivas,sobreyectivas y biyectivas). ¿Como se comporta la composicion frente a estas apli-caciones especiales? La respuesta a esta pregunta se encuentra en los siguientesresultados.

Proposicion 1.8 Sean f : A→ B y g : B → C aplicaciones. Entonces,

f y g inyectivas =⇒ g ◦ f es inyectiva;

f y g sobreyectivas =⇒ g ◦ f es sobreyectiva

g ◦ f inyectiva =⇒ f es inyectiva;

g ◦ f sobreyectiva =⇒ g es sobreyectiva.

Page 13: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

1.1. TEORIA DE CONJUNTOS Y APLICACIONES. 9

Teorema 1.9 Sea f : A→ B una aplicacion y A 6= ∅.

1. f es inyectiva si, y solo si, existe una aplicacion g : B → A tal que g ◦ f = IA.

2. f es sobreyectiva si, y solo si, existe una aplicacion h : B → A tal que f ◦ h =IB.

Demostracion.– 1.- Supongamos, primero que existe g tal que g ◦ f = IA. Como IAes inyectiva, por lo anterior, la existencia de g garantiza la inyectividad de A.

Supongamos, ahora que f es inyectiva. Entonces, para cada b ∈ f(A), existe ununico a tal que f(a) = b. Sea ahora a0 un elemento cualquiera de A. La aplicacion

g(x) =

{a, si b ∈ f(A) y f(a) = ba0, si b /∈ f(A)

verifica g ◦ f = IA.

2.- Si existe h tal que f ◦ h = IB, puesto que IB es sobreyectiva, la Proposicionanterior me garantiza que f es sobreyectiva.

Supongamos ahora que f es sobreyectiva. Eso quiere decir que para cualquier b ∈ B,f−1(b) ⊂ A no es vacıo. En consecuencia podemos elegir ab ∈ f−1(b). La aplicacionh(b) = ab verifica la tesis del enunciado

Nota. En la prueba del Teorema anterior hemos dado por hecho que en cualquierconjunto no vacıo podemos escoger siempre un elemento. Aunque no entraremos enello, los axiomas tıpicos de la teorıa de conjuntos no nos garantizan que podamos ha-cerlo. En consecuencia, se suele asumir que esto siempre es posible constituyendoseentonces como un axioma mas. Existen distintas versiones de este axioma que seconoce como Axioma de eleccion.

La aplicacion g del Teorema anterior se suele llamar inversa a izquierda de f y la hinversa a derecha de f . Si una aplicacion f : A → B posee una inversa a izquierdag y una inversa a derecha h, se tiene:

g = g ◦ IB = g ◦ (f ◦ h) = (g ◦ f) ◦ h = IA ◦ h = h

y la aplicacion g = h se dice inversa a derecha e izquierda de f . Asimismo, esteargumento prueba que si existe inversa a derecha e izquierda de f esta es unica.Ahora, juntando los dos apartados del Teorema y las consideraciones previas, setiene que si f : A→ B es una aplicacion, entonces

f es biyectiva ⇐⇒ f posee inversa a izquierda y derecha.

La unica aplicacion que es inversa a derecha e izquierda de f se denota por f−1 yse llama inversa de f .

Page 14: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

10 CAPITULO 1. PRELIMINARES

1.2. Relaciones de orden y de equivalencia

1.2.1. Relaciones de equivalencia

Una relacion en un conjunto A no es mas que un subconjunto R del productocartesiano A×A. De esta forma se dice que dos elementos estan relacionados, aRb,si el par (a, b) pertenece al subconjunto R. Supongamos que tomamos un grupo depersonas y R el conjunto de pares ordenados de personas que son del mismo sexo.Dos personas estan relacionadas si, y solo si, son del mismo sexo.

Las propiedades que puede tener una relacion son:

reflexiva: aRa para todo a de A,

simetrica: aRb =⇒ bRa,

antisimetrica : aRb y bRa =⇒ a = b

transitiva: aRb y bRc =⇒ aRc

Ası, la relacion anteriormente definida es reflexiva, simetrica y transitiva. Observeseque, de esta forma, hemos clasificado a nuestro grupo en dos, a saber, hombres y mu-jeres. Esto es ası, justamente, por verificar esa relacion las citadas tres propiedades.

Definicion 1.10 Una relacion que verifique las propiedades reflexiva, simetrica ytransitiva se denomina relacion de equivalencia.

Ejemplo 1.11

Relacion de congruencia modulo un natural n > 0 en Z definida por

r congruente con s modulo n ⇐⇒ r − s es multiplo de n

Relacion de paralelismo entre rectas del plano.

La relacion de equipotencia entre conjuntos definida por

A y B equipotentes ⇐⇒ existe una aplicacion biyectiva f : A→ B.

Como ya hemos dicho, las relaciones de equivalencia sirven para clasificar los ele-mentos del conjunto A en lo que se conoce como clases de equivalencia. La clase deun elemento a es:

a = [a] = {x ∈ A : xRa}.

Page 15: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

1.2. RELACIONES DE ORDEN Y DE EQUIVALENCIA 11

El conjunto de todas las clases de equivalencia en A se denota por A/R y se denominaconjunto cociente de A por R. En el ejemplo del grupo de personas, solo tenemos 2clases de equivalencia como ya dijimos: la compuesta por los hombres y la compuestapor las mujeres. Ademas, la union de ambas clases de equivalencia es el conjunto depersonas que estamos considerando y su interseccion es vacıa.

Ejercicio 1.12 Si n es un numero natural, ¿cuantas clases tenemos para la relacionde congruencia modulo n?

Estudiemos de manera mas profunda estas las clases de equivalencia y, en conse-cuencia, el conjunto cociente. Se tiene:

(i) Para cada a ∈ A, la clase a es no vacıa como consecuencia de la propiedadreflexiva. Ademas, a ∈ a, por lo que

⋃a∈A

a = A =⋃

a∈A/R

a

(ii) a = b ⇐⇒ aRb

(iii) Dados a, b ∈ A, o a = b o a ∩ b = ∅.

Las propiedades (i) y (iii) suelen resumirse diciendo que el conjunto de clases deequivalencia forman una particion del conjunto A. En general, una particion de unconjunto A es un conjunto de subconjuntos {Ai : i ∈ I} de A tales que su uniones todo A y son disjuntos dos a dos, es decir, Ai ∩ Aj = ∅ si i 6= j. Se puede verque toda relacion de equivalencia en A forma una particion de A (lo hemos visto) yque toda particion de A da lugar a una relacion de equivalencia (dos elementos deA estaran relacionados si pertenecen al mismo subconjunto de la particion).

1.2.2. Relaciones de orden

En terminos coloquiales, si las clases de equivalencia servıan para clasificar, lasrelaciones de orden, como su propio nombre indica, sirven para ordenar los elementosde un conjunto.

Definicion 1.13 Una relacion que verifique las propiedades reflexiva, antisimetricay transitiva se denomina relacion de orden. Esta relacion se denota, habitualmente,por ≤.

Ejemplo 1.14

La relacion de inclusion en P(A) para un conjunto A.

Page 16: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

12 CAPITULO 1. PRELIMINARES

La relacion ≤ en Z, Q o R.

En los dos ejemplos anteriores, se percibe una radical diferencia. En P(A) dos ele-mentos no son siempre comparables: por ejemplo, si A = {1, 2, 3, 4}, los subconjuntos{1, 2} y {2, 3} no verifican ni {1, 2} ⊂ {2, 3} ni {2, 3} ⊂ {1, 2}. Sin embargo, dadosdos numeros enteros, por ejemplo, siempre uno de ellos es menor o igual que el otro.Un conjunto con una relacion de orden en la que dos elementos son siempre compa-rables, se dice totalmente ordenado. Si no, se dice parcialmente ordenado.En un conjunto con una relacion de orden, algunos elementos reciben nombres es-peciales:

mınimo: a ∈ A tal que a ≤ x para todo x ∈ A

maximo: a ∈ A tal que x ≤ a para todo x ∈ A

Por ejemplo, el conjunto de numeros naturales posee mınimo para la relacion deorden habitual, mientras que no posee maximo. En el caso de las partes de unconjunto A con la inclusion como relacion de orden, se tiene que el conjunto vacıoes mınimo y el propio conjunto A es maximo.

Por otro lado, en relacion a un subconjunto X de A se dice que a ∈ A es

cota inferior, si a ≤ x para todo x ∈ X;

ınfimo, si es la mayor de las cotas inferiores;

cota superior, si x ≤ a para todo x ∈ X;

supremo, si es la menor de las cotas superiores.

Cuando se tiene una relacion de orden ≤, la notacion a < b significa que a ≤ b ya 6= b, mientras que la notacion b ≥ a significa, obviamente, que a ≤ b.

Para concluir, una ultima definicion: un conjunto con una relacion de orden se dicebien ordenado si todo subconjunto no vacıo tiene mınimo, es decir, existe ınfimoy este pertenece al subconjunto.

Page 17: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

1.3. NUMEROS NATURALES. PRINCIPIO DE INDUCCION 13

1.3. Numeros naturales. Principio de induccion

1.3.1. Numeros naturales

El conjunto de los numeros naturales se define usando la conocida como Axiomaticade Peano que data de 1889. Esto es,

1. 0 es un numero natural

2. Para cada numero natural x existe otro numero natural x′ llamado sucesor dex, tal que

a) 0 no es sucesor de ningun numero natural

b) Si x′ = y′, entonces x = y

3. Axioma de Induccion : Si S es un subconjunto de N que verifica :

a) 0 ∈ S,

b) Si x esta en S, su sucesor tambien.

Entonces, S = N.

Antes de continuar, algunos pequenos comentarios sobre estos axiomas:

El primero de ellos postula la existencia de un elemento que consideramos el primerode todos para la ordenacion que introduce el segundo postulado. El segundo postu-lado garantiza la infinitud de N y, por ultimo, el tercero nos garantiza que el unicoconjunto que se puede construir a partir de los dos primeros postulados es el de losnumeros naturales.

Usando los axiomas de Peano, es posible definir la suma en N. En la forma habitual,llamemos 1 al sucesor de 0, 2 al sucesor de 1, 3 al sucesor de 2,... De esta forma,podemos definir n+ 0 = n y una vez definido n+m, definimos n+m′ := (n+m)′,por ejemplo, n + 1 = (n + 0)′ = n′. La multiplicacion puede tambien definirse apartir de estos axiomas de la forma que sigue:

n · 1 := n

una vez definido n ·m, definimos n ·m′ := (n ·m) + n

A pesar de que no entraremos en ello senalemos que, a partir de estas definiciones,se pueden demostrar las propiedades habituales de las operaciones aritmeticas sumay producto en N (conmutatividad de la suma y del producto, asociatividad de sumay producto, existencia de elemento neutro para la suma y elemento identidad parael producto, distributividad,...).

Amen de las operaciones aritmeticas ya senaladas, sabemos que en N se tiene un or-den que puede deducirse del segundo postulado de los axiomas de Peano. Senalemos,

Page 18: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

14 CAPITULO 1. PRELIMINARES

unicamente, que este orden es el habitual en N y que con este orden, el conjunto delos numeros naturales esta bien ordenado, es decir, todo subconjunto no vacıo de Nadmite mınimo. Observese que el mınimo de N es 0.

Para finalizar esta pequena introduccion a los numeros naturales, probemos unaligera variacion en nuestro axioma de induccion. La razon ultima para probar esteenunciado, amen de consideraciones que senalaremos mas adelante, radica en elhecho de que vamos a utilizar un tipo de razonamiento usual en Matematicas. Asaber, la reduccion al absurdo.

Teorema 1.15 Sea S un subconjunto de N que verifica

1. n0 ∈ S y

2. para todo n ≥ n0, n ∈ S =⇒ n+ 1 ∈ S.

Entonces, {x ∈ N : x ≥ n0} ⊂ S.

Demostracion.– Supongamos que la inclusion no se verifica. En ese caso, el conjuntoX = {x ∈ N : x ≥ n0 y x /∈ S} es no vacıo. Dada la buena ordenacion de N, estoimplica que el conjunto X posee mınimo, digamos α. Como n0 pertenece a S, setendra que α > n0, o dicho de otra manera, si β es el inmediato antecesor de α, esdecir, α = β+1, β ≥ n0. Puesto que α es el mınimo de X y β ≥ n0, se tendra β ∈ S.Ahora bien, por 2 se tendra que β + 1 = α ∈ S, llegando a una contradiccion.

1.3.2. Principio de induccion

El Teorema 1.15 se puede trasladar de manera casi inmediata a un resultado de granutilidad para la prueba de ciertos resultados. Pero antes, una anecdota atribuida algran matematico Carl Friedrich Gauss (1777-1855). Cuenta la leyenda (vease, porejemplo, 5), que de nino Gauss asistıa a la escuela local de Brunswick, dirigida porun maestro que gustaba de la rutina. Un dıa, el maestro tuvo la feliz idea de hacersumar a sus alumnos todos los numeros del 1 al 100, ordenandoles ademas que, segunfuesen acabando cada uno esta poco grata tarea, debıan poner su pizarra sobre lamesa. A los pocos segundos, Gauss coloco la pizarra sobre su mesa, diciendo: “Yaesta”. El maestro le miro con desden y dejo al resto de los alumnos con su tarea.Cuando acabaron todos, se encontro con la sorpresa de que la unica pizarra en la queaparecıa el resultado correcto, 5050, era la de Gauss. Obviamente, Gauss habıa hechoel calculo mental de sumar la progresion aritmetica 1 + 2 + · · ·+ 99 + 100 asociandoparejas de terminos igualmente alejados de los extremos, es decir, esencialmenteusando la formula

5Carl B. Boyer. Historia de la Matematica, Alianza Editorial

Page 19: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

1.3. NUMEROS NATURALES. PRINCIPIO DE INDUCCION 15

1 + 2 + · · ·+ n =n(n+ 1)

2.

Esta formula es un caso claro del tipo de problemas que podemos atacar con elTeorema 1.15. Tenemos una serie de afirmaciones, una por cada numero natural, yqueremos verificar la veracidad de cada una de ellas. Para ello, definimos el conjuntoS como

S = {n ∈ N : 1 + 2 + · · ·+ n =n(n+ 1)

2}

Se tiene que 1 ∈ S por cuanto

1 =1 · 22.

Ademas si suponemos que n ∈ S, es decir,

1 + 2 + · · ·+ n =n(n+ 1)

2,

es facil ver que tambien es cierto

1 + 2 + · · ·+ n+ (n+ 1) =(n+ 1)(n+ 2)

2,

o, lo que es lo mismo, (n+1) ∈ S. Aplicando el Teorema 1.15, habremos demostradoque la formula es cierta para cualquier numero natural mayor o igual que 1.

El mismo razonamiento que hemos hecho con la suma aritmetica, puede realizarsepara cualquier conjunto de proposiciones que dependan de un parametro natural.

Corolario 1.16 (Principio de induccion) Supongamos que para cada naturaln ≥ n0 se tiene una proposicion P (n) que puede ser cierta o falsa. Si

1. P (n0) es cierta y

2. para todo n ≥ n0, P (n) cierta =⇒ P (n+ 1) es cierta.

Entonces, P (n) es cierta para todo n ≥ n0.

Asimismo, por argumentos no demasiado complicados, podemos formular el princi-pio de induccion de esta otra manera:

Corolario 1.17 Supongamos que para cada natural n ≥ n0 se tiene una proposicionP (n) que puede ser cierta o falsa. Si

1. P (n0) es cierta y

2. para todo n ≥ n0, P (m) cierta para todo m con n0 ≤ m ≤ n =⇒ P (n+ 1) escierta.

Entonces, P (n) es cierta para todo n ≥ n0.

Page 20: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

16 CAPITULO 1. PRELIMINARES

Ejemplo 1.18 (Mas ejemplos de aplicacion del principio de induccion)1.- Probar que

12 + 22 + 32 + · · ·+ n2 =1

6n(n+ 1)(2n+ 1) para todo n ≥ 1

a) La formula es cierta para n = 1, pues 1 =1

61 · 2 · 3.

b) Supongamos que la formula es cierta para n. Si eso implica que la formula escierta para n + 1, tendrıamos probada la formula para cualquier natural ≥ 1. Setiene, aplicando la hipotesis de la veracidad de la formula para n (hipotesis deinduccion), que

12 + 22 + 32 + · · ·+ n2 + (n+ 1)2 =1

6n(n+ 1)(2n+ 1) + (n+ 1)2.

Unas pequenas cuentas prueban que

12 + 22 + 32 + · · ·+ n2 + (n+ 1)2 =1

6(n+ 1)(n+ 2)(2n+ 3),

con lo que habrıamos terminado.

2.- Probar que 32n − 1 es multiplo de 8 para todo natural ≥ 1.

a) Como 32 − 1 = 8, la afirmacion es cierta para n = 1.

b) Lo que tenemos que ver ahora es

32n − 1 multiplo de 8 =⇒ 32(n+1) − 1 multiplo de 8

Ahora bien,

32(n+1)− 1 = 32n+2− 1 = 32n · 32− 1 = 32n · 32− 32 + 32− 1 = 32(32n− 1) + (32− 1)

Aplicando que 32n − 1 es multiplo de 8 y que 32 − 1 = 8 tambien, se concluye que32(n+1) − 1 es multiplo de 8.

1.4. Cardinal de un conjunto

1.4.1. ¿Que significa contar?

Supongamos que tomamos el tren en el apeadero del Campus para trasladarnos ala estacion de Atocha. ¿Como contamos el numero de paradas entre una y otraestacion? La primera vez que se para el tren es en Alcala y a esa parada le asig-namos el numero natural 1. La siguiente parada es La Garena a la que le asignamos

Page 21: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

1.4. CARDINAL DE UN CONJUNTO 17

el numero 2. De esta manera continuamos hasta llegar a la estacion de Atochaque sera la undecima y a la que, logicamente, le asignaremos el numero 11. Laproxima vez que queramos hacer este recorrido no necesitaremos fijarnos en lasparadas; simplemente, tendremos que ir contando hasta once y en ese momentohabremos de descender del tren. En terminos matematicos, ¿que es lo que hemoshecho? Sencillamente, establecer una biyeccion entre el conjunto de paradas y elconjunto {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11}.El supuesto anterior es un ejemplo del hecho siguiente: contar es construir unaaplicacion biyectiva. Dicho de otra manera, decir que un conjunto tiene n elementoses tanto como dar una biyeccion entre dicho conjunto y {1, 2, . . . , n}. Dando otravuelta de tuerca, contar es, necesariamente, introducir un orden en un conjuntofinito.

A traves de los argumentos anteriores, podemos asegurar que dos conjuntos finitostienen el mismo numero de elementos si, y solo si, existe una biyeccion entre ambos.Al numero de elementos de un conjunto finito A se le llama cardinal de A y se escribe|A| o #A. Si hablamos de conjuntos finitos y de su cardinal, es facil establecer algunaspropiedades basicas. Sean, pues A y B conjuntos finitos.

Si A ⊂ B y A 6= B, |A| < |B|. Por lo tanto, no existe ninguna biyeccion entreA y B, es decir, si A es finito, ningun subconjunto propio es equipotente a A.

Si A y B son disjuntos, |A⋃B| = |A|+ |B|.

|A×B| = |A| · |B|.

Si f : A→ B es inyectiva, |A| ≤ |B|

Si f : A→ B es sobreyectiva, |A| ≥ |B|

1.4.2. Cardinal de un conjunto

En la Subseccion anterior, abstrayendo el significado de contar, hemos estableci-do una definicion de lo que llamamos cardinal de un conjunto finito y algunaspropiedades basicas; entre ellas, la imposibilidad de que un conjunto finito seaequipotente a un subconjunto propio. ¿Ocurre lo mismo con los conjuntos infini-tos? Consideremos, por ejemplo, el conjunto N de los numeros naturales y 2N elconjunto de numeros naturales pares que es un subconjunto propio de N. Es facilver que la aplicacion f : N → 2N, dada por f(n) = 2n es biyectiva, es decir, ¡el“numero de naturales”es igual al “numero de naturales pares”!

La forma en la que la definicion de cardinal se extiende a cualquier conjunto, finitoo no, es, esencialmente, la misma que la dada para el caso finito.

Definicion 1.19 (Cardinal de un conjunto) El cardinal de un conjunto A, es-crito |A| o #A, es la clase de equivalencia de A bajo la relacion de equipotencia.

Page 22: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

18 CAPITULO 1. PRELIMINARES

Veamos, en primer lugar, que la definicion se corresponde con la dada anteriormentepara conjuntos finitos. En efecto, puesto que todo conjunto A con n elementos esbiyectable con In = {1, 2, . . . , n}, podemos identificar su clase con el numero n,por lo que el cardinal de un conjunto finito se puede identificar con el numero deelementos.

El primer cardinal no finito es el cardinal de N que se denomina ℵ0 (se puededemostrar que todo conjunto infinito contiene un subconjunto que es equipotente aN). A los conjuntos que tienen el mismo cardinal que N, es decir, que son equipotentesa N se les llama numerables. Por ejemplo, 2N es numerable. ¿Que quiere decir queun conjunto sea numerable? Si retomamos los axiomas de Peano, una caracterısticaesencial de N es que sus elementos estan numerados: 0 es el primero, 1 el segundo, 2el tercero,. . . Por lo tanto, que un conjunto sea numerable querra decir que podemosescoger en dicho conjunto un primer elemento, un segundo elemento, etc. Dichode manera mas sencilla, un conjunto es numerable si podemos poner en fila suselementos. Por ejemplo, el conjunto de los numeros enteros es numerable, porquepodemos ponerlos en fila como sigue:

0, 1,−1, 2,−2, 3,−3, 4,−4, 5,−5 . . . .

Ejercicio 1.20

1. Mostrar una biyeccion entre Z y el conjunto de enteros impares.

2. Demostrar que N×N es numerable. (Indicacion: Todo numero natural distintode cero puede expresarse como una potencia de dos multiplicada por un numeroimpar).

Algunas propiedades de los conjuntos numerables, que damos sin demostracion, sonlas siguientes:

Todo subconjunto de un conjunto numerable o es finito o es numerable.

La union finita o numerable de conjuntos numerables es numerable.

El producto cartesiano de un numero finito de conjuntos numerables es nu-merable.

Finalizamos esta Seccion dedicada a los cardinales, senalando que ℵ0 no es el unicocardinal infinito. Puede verse que el conjunto de los numeros reales no es numerable.Se conjetura que entre ℵ0 y |R| no hay ningun otro cardinal, aunque sin demostracionpor ahora. A esta conjetura se la denomina Hipotesis del continuo.

Page 23: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

1.5. OPERACIONES INTERNAS 19

1.5. Operaciones internas

Una de los puntos esenciales del Algebra es el de abstraer modelos que se adaptana situaciones diversas. Un ejemplo tıpico es el de considerar las cuatro operacionesaritmeticas basicas (suma, resta, multiplicacion y division) y situarlas en un paisajeabstracto que se adapta a diversas situaciones como iremos viendo.

Consideremos, por ejemplo, la suma de numeros enteros. Esta operacion, puedepensarse como una aplicacion de Z× Z en Z, a saber,

+ : Z× Z −→ Z, (m,n)→ m+ n

Visto esto, se define operacion interna ∗ en un conjunto A a una regla que asociaa cada par (a, b) de A2 otro elemento de A, a ∗ b. Como en el caso de la suma unaoperacion interna puede considerarse como una aplicacion de A× A en A:

∗ : A× A −→ A, (a, b)→ a ∗ b

Si volvemos a la operacion suma de enteros, sabemos que verifica varias propiedades:es conmutativa (a+b = b+a, posee elemento neutro (a+0 = a), es asociativa y todoelemento posee un unico elemento opuesto (a+(−a) = 0). Estas mismas propiedadesson las mismas que puede tener cualquier operacion interna:

asociativa: a ∗ (b ∗ c) = (a ∗ b) ∗ c para todo a, b, c ∈ A

conmutativa: a ∗ b = b ∗ a para todo a, b ∈ A

elemento identidad : e ∈ A tal que e ∗ a = a ∗ e = a para todo a ∈ A

elemento inverso de un elemento a ∈ A: a′ ∈ A tal que a′ ∗ a = a ∗ a′ = e.

Nota. Las notaciones mas usuales para las operaciones internas, por analogıa conlas operaciones aritmeticas, son + y ·. Como para la suma de enteros, si se utilizanotacion aditiva (es decir, + como operacion) el elemento identidad, usualmentellamado neutro, se denota 0 y el inverso de a, generalmente llamado opuesto, se de-nota por −a. Si la notacion es multiplicativa (es decir, · como operacion) el elementoidentidad se denota 1 y el inverso de a se suele escribir a−1.

Definicion 1.21 (Grupo) Un conjunto A equipado con una operacion interna ∗se dice que es un grupo si la operacion es asociativa, posee elemento neutro y todoelemento posee inverso. Si la operacion es ademas conmutativa, el grupo se diceconmutativo o abeliano.

Naturalmente, hay conjuntos que admiten mas de una operacion interna. Por ejem-plo, en Z se tienen dos operaciones aritmeticas: la suma y el producto de enteros.

Page 24: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

20 CAPITULO 1. PRELIMINARES

Sabemos que estas dos operaciones verifican lo que se conoce como propiedad dis-tributiva, es decir,

a(b+ c) = ab+ bc , (a+ b)c = ac+ bc para todo a, b, c ∈ Z.

Definicion 1.22 (Anillo) Un anillo es un conjunto no vacıo R junto con dos op-eraciones internas (usualmente denotadas como suma (+) y producto ( ·)) talesque:

1. (R,+) es un grupo abeliano;

2. (ab)c = a(bc) para todo a, b, c ∈ R;

3. a(b+ c) = ab+ bc (a+ b)c = ac+ bc (propiedad distributiva)

Si el producto es conmutativo, se dice que el anillo es conmutativo y si existe ele-mento identidad para el producto, se llama anillo con elemento identidad.

Por ejemplo, (Z,+, ·) es un anillo conmutativo con elemento identidad. Esto implicaque en Z hay suma, resta y multiplicacion. Sin embargo, aun nos queda por con-siderar la cuarta operacion basica de la aritmetica: la division. Pero para hablar dedivision, necesitamos que todo elemento tenga un inverso con respecto a la multi-plicacion. En el caso de Z, debemos ampliar nuestro conjunto a los racionales, Q,para que esto sea posible. Si un anillo, en el que 1 6= 0, todo elemento no nulo poseeinverso, se dice que es un cuerpo. Por ejemplo, Q es un cuerpo.

1.5.1. El anillo ZLos numeros enteros forman un conjunto, Z, en el que hay dos operaciones y unorden. Junto a las operaciones, suma y producto en Z, hemos visto que tiene estruc-tura de anillo conmutativo con elemento identidad. El orden es total, compatiblecon la estructura de anillo y es un buen orden para los enteros ≥ 0. Resumimos laspropiedades esenciales de Z como sigue:

Operaciones. En Z hay dos operaciones, suma y producto, que le dan estructurade anillo conmutativo con elemento identidad:

Z1. (Z,+) es un grupo conmutativo.

Z2. El producto es asociativo, tiene elemento identidad y es conmutativo.

Z3. El producto es distributivo con respecto a la suma.

El producto posee una propiedad que no todos los anillos poseen:

Z4. ab = 0 =⇒ a = 0 o b = 0

Los anillos que verifican esta propiedad (y con 1 6= 0 )se llaman dominios deintegridad.

Page 25: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

1.5. OPERACIONES INTERNAS 21

Orden. En el conjunto de los enteros hay una relacion de orden, es decir, unarelacion ≤ con las propiedades:

Z5. reflexiva, simetrica y transitiva.

Este orden es un orden total, es decir,

Z6. para todo a, b ∈ Z, a ≤ b o b ≤ a.

Asimismo, el orden es compatible con las operaciones aritmeticas:

Z7. a ≤ b y c ∈ Z =⇒ a+ c ≤ b+ c,

Z8. a ≤ b y c ≥ 0 =⇒ ac ≤ bc,

y el conjunto de numeros enteros positivos, es decir, N esta bien ordenado:

Z8. Todo subconjunto no vacıo de N tiene mınimo.

Observacion 1.23 Al igual que para los axiomas de Peano con respecto a losnumeros de Peano, las propiedades Z1-Z9 pueden considerarse como los axiomasque definen los numeros enteros.

Page 26: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

22 CAPITULO 1. PRELIMINARES

1.6. Problemas propuestos

Nota. En todos los problemas anillo quiere decir anillo conmutativo con elementoidentidad.

Problema 1.1 .- Sea A un conjunto finito con n elementos. Probar que |P(A)| =2n y estudiar cuantas aplicaciones biyectivas de A en A se pueden construir.

Problema 1.2 .- Dados dos conjuntos A y B, se llama diferencia simetrica deambos y se escribe A∆B al conjunto

A∆B = (A \B)⋃

(B \ A).

Demostrar que A∆B = (A⋃B) \ (A

⋂B).

Problema 1.3 .- Sean f : Z → Z y g : Z → Z definidas por f(s) = s + 1 yg(s) = s2.

a) Estudiar si son inyectivas, sobreyectivas o biyectivas.

b) Describe las aplicaciones g ◦ f y f ◦ g y comprueba que no son iguales. (Deesta forma, queda demostrado que la composicion de aplicaciones no es, engeneral, conmutativa).

Problema 1.4 .- Supongamos que en un conjunto A tenemos definida una relacionde orden denotada por ≤. Probar que la relacion

(α1, . . . , αn) ≤ (β1, . . . , βn) ⇐⇒ αi ≤ βi ∀i ∈ {1, 2, . . . , n}

es una relacion de orden en An. Si el orden es total en A, ¿tambien lo es el ordenası definido en An?

Problema 1.5 .- Considerese la siguiente relacion en Z× Z \ {0}

(a, b) R (c, d) ⇐⇒ ad = bc.

Probar que dicha relacion es de equivalencia. ¿Quien es el conjunto cociente Z×Z \{0}/R?

Problema 1.6 .- Utilizar el apartado 2 del ejercicio 1.20 de los apuntes para probarque la union numerable de conjuntos numerables es numerable.

Page 27: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

1.6. PROBLEMAS PROPUESTOS 23

Problema 1.7 .- Probar, mediante el uso del principio de induccion, las formulaso afirmaciones siguientes :

1 + r + r2 + · · ·+ rn =rn+1 − 1

r − 1

1 + 1 · 1! + 2 · 2! + · · · (n− 1)(n− 1)! = n!

13 + 23 + 33 + · · ·+ (n− 1)3 + n3 =n2(n+ 1)2

4

Si a > 0, (1 + a)n ≥ 1 + na

7n − 6n− 1 es multiplo de 36 para todo n ≥ 1

Problema 1.8 .- Demostrar que la propiedad

n2 + 5n+ 1 es par

es cierta para n+1 si la suponemos cierta para n. ¿Para cuantos numeros naturaleses cierta la propiedad?

Problema 1.9 .- Demostrar que los terminos de la sucesion de Fibonacci (F0 =0, F1 = 1, Fn = Fn−1 + Fn−2 si n ≥ 2) estan dados por la formula:

Fn =

(1+

√5

2

)n

−(

1−√

52

)n

√5

.

Problema 1.10 .- Sea α y β dos numeros reales tales que la ecuacion X2−αX−βtiene dos raıces distintas, que denotaremos por r y s. Considerese la sucesion definidapor u0 = 0, u1 = 1 y un = αun−1 + βun−2 si n ≥ 2. Demostrar que

un =rn − sn

r − s.

Problema 1.11 .- Comprobar que en un conjunto con una operacion

a) el elemento identidad, si existe, es unico, y

b) si la operacion es asociativa y posee elemento unidad, el elemento inverso, siexiste, es unico.

Page 28: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

24 CAPITULO 1. PRELIMINARES

Problema 1.12 .- Probar que en un anillo

a) a · 0 = 0,

b) a(−b) = −(ab),

c) (−a)(−b) = ab.

Problema 1.13 .- Sea A un anillo. Supongamos que 1 = 0 en A. ¿Quien es A?

Problema 1.14 .- Sea A un anillo y sea A∗ el conjunto de las unidades de A, esdecir,

A∗ = {a ∈ A : existe a−1}.

Probar que A∗ junto a la multiplicacion es un grupo abeliano.

Problema 1.15 .- En un anillo A, un elemento x se dice nilpotente si xn = 0para algun n. Probar que si x ∈ A es nilpotente, 1 + x es una unidad de A. (Pista:recuerdese la primera formula probada en el Ejercicio 1.7.)

Problema 1.16 .- Un anillo se dice de Boole si x2 = x para todo x ∈ A. Probarque, en ese caso, 2x = 0 para todo x ∈ A.

Problema 1.17 .- Sean A1, A2, . . . , An anillos. Definimos suma y producto en A1×A2 × · · · × An componente a componente, es decir, (a1, . . . , an) + (b1, . . . , bn) =(a1 + b1, . . . , an + bn) y (a1, . . . , an) · (b1, . . . , bn) = (a1 · b1, . . . , an · bn). Probar que,con estas operaciones, A1 × A2 × · · · × An tiene estructura de anillo con elementounidad (1, . . . , 1). Si A1, A2, . . . , An son cuerpos, ¿A1 ×A2 × . . .×An es cuerpo conestas operaciones?

Problema 1.18 .- Si A y B son anillos, se dice que una aplicacion f : A → B eshomomorfismo si respeta las operaciones, es decir,

1. f(a+ b) = f(a) + f(b),

2. f(a · b) = f(a) · f(b) y

3. f(1) = 1.

Si, ademas, f es biyectiva se dice isomorfismo y se dice que los anillos A y B sonisomorfos. Probar que si f : A→ B es homomorfismo, se verifica

f(0A) = 0B

Si a es una unidad de A, f(a) es una unidad de B. De hecho, f(a)−1 = f(a−1).

Page 29: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

Capıtulo 2

Divisibilidad en Z

2.1. Division euclıdea en Z. Maximo comun divi-

sor

Definicion 2.1 Dados dos numeros enteros a y b, con b 6= 0, se dice que b dividea a o que a es multiplo de b o que b es divisor de a, si existe otro entero q tal quea = bq. Se escribe

b | a

Naturalmente, todo numero entero a distinto de 1 y −1 tiene, al menos, cuatrodivisores, 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 divisibilidadse recogen en la siguiente Proposicion:

Proposicion 2.2 En las propiedades siguientes todos los numeros seran enteros y|a| denotara el valor absoluto de a.

1) d|a ⇐⇒ −d|a ⇐⇒ d| − a,

2) d|a, a 6= 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

Page 30: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

26 CAPITULO 2. DIVISIBILIDAD EN Z

9) a|b y c|d =⇒ ac|bd,

10) ac|bc y c 6= 0 =⇒ a|b.

Nota. La prueba de estas propiedades requiere el uso de la Definicion 2.1 y de losaxiomas que definen los numeros enteros. Como la prueba de dichas propiedades essencilla, la dejaremos como ejercicio.

De entre todos los numeros enteros, adquieren una singular importancia los cono-cidos como numeros primos que, desde siempre, han fascinado a los matematicosy al resto de los mortales. Por poner un ejemplo, en la pelıcula Contact dirigidapor Robert Zemeckis en 1997 y cuyo guion se basa en una novela de Carl Sagan, elprimer mensaje que recibe de los extraterrestres la Dra. Arroway, interpretada porJodie Foster, es una sucesion de numeros primos.

Definicion 2.3 Un entero p > 1 se dice primo si sus unicos divisores positivos sonlos 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.) Todonumero 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 numeros ±1 y denumeros primos. Veremos mas adelante que esta expresion es, esencialmente, unica.

Teorema 2.5 (Euclides, Libro IX de los Elementos) Existen infinitos numerosprimos.

La prueba de este resultado es sencilla y su interes radica en el hecho de que esuna de las primeras demostraciones conocidas en las que se utilizo la reduccion alabsurdo.

Demostracion.– Supongamos que hay un numero finito, digamos n, de primos a losque denotaremos por p1, p2, . . . , pn. Consideremos el numero

Page 31: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

2.1. DIVISION EUCLIDEA EN Z. MAXIMO COMUN DIVISOR 27

N = p1p2 · · · pn + 1.

Por el teorema anterior, sabemos que N es producto de primos. Sea, pues, p unfactor primo de N . Este primo ha de ser uno de los p1, p2, . . . , pn, digamos p = pi.Entonces, pi divide a N − p1p2 · · · pn que es igual a 1, con lo que hemos llegado auna contradiccion.

Una de las primeras tareas matematicas (y algorıtmicas) que realizamos en nuestravida es la de aprender a dividir numeros naturales con resto. La forma en la que nosensenan a dividir, basada en la busqueda de un natural que “quepa”(si no la mejordesde un punto de vista de eficiencia) es, en cierto modo, la misma idea en la quese basa la demostracion del siguiente teorema.

Teorema 2.6 (Division euclıdea) Si a y b son dos enteros, b 6= 0, existe un unicopar 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 euclıdeade 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 esno vacıo (−|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. Porconstruccion, se tiene que a = bq + r. Veamos que r verifica lo exigido. En efecto,

r ≥ 0 (por pertenecer q a S)

r < |b| = b. Si r ≥ b, se tendrıa b(q+1) = bq+b ≤ bq+r = a y, en consecuenciaq + 1 pertenecerıa 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 q1, r1 y q2, r2 verifican las condiciones delteorema, es decir,

a = bq1 + r1 con 0 ≤ r1 < |b| y

a = bq2 + r2 con 0 ≤ r2 < |b|y que r1 ≤ r2. Restando, se tiene b(q1−q2) = r2−r1. Por lo tanto, |b| divide a r2−r1,pero tambien se tiene que 0 ≤ r2 − r1 < |b|. Esto solo es posible si r2 − r1 = 0. Porlo tanto, r2 = r1 y, en consecuencia q2 = q1.

Page 32: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

28 CAPITULO 2. DIVISIBILIDAD EN Z

Definicion 2.7 (Maximo comun divisor) Si d|a y d|b decimos que d es un divi-sor comun (o factor comun) de a y b; por ejemplo, 1 es un divisor comun a cualquierpar de enteros a y b. Si a y b no son los dos nulos, el Teorema 2.6 prueba que ningunode 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 deellos. Este es el maximo comun 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 comun),

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 0y es, por tanto, un divisor comun de a y b, por lo que, en este caso, no existeun maximo comun divisor. Esta definicion puede obviamente extenderse al maximocomun divisor de cualquier conjunto finito de enteros (no todos nulos).

Nota. Dos numeros enteros a y b se dicen coprimos o primos entre sı si no poseenfactores comunes no triviales, esto es, si mcd(a, b) = 1.

Al igual que hicimos con la divisibilidad, recogemos en la siguiente Proposicionalgunas propiedades basicas del maximo comun divisor.

Proposicion 2.8 En las propiedades siguientes todos los numeros son enteros y |a|denotara 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 comun divisor que suele realizarse en laescuela es la reduccion del tamano de numerador y denominador en la aritmetica connumeros racionales. Obviamente, esto requerira, sobre todo si se piensa en numeros

Page 33: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

2.2. ALGORITMO DE EUCLIDES. TEOREMA DE LAME 29

de gran tamano, de un algoritmo eficiente1 para su calculo. Afortunadamente (nosiempre es el caso para otros problemas) se dispone de un metodo que, sorprenden-temente, se hallaba ya en los Elementos de Euclides. Segun D. Knuth, the oldestnontrivial algorithm that has survived to the present day.

2.2. Algoritmo de Euclides. Teorema de Lame

Trataremos, en esta Seccion, de construir un algoritmo eficiente para el calculo delmaximo comun divisor y estudiar algunas de sus propiedades. Naturalmente, lapropia definicion de maximo comun divisor proporciona un algoritmo para calcularmcd(a, b): construir la lista de divisores de a y b y tomar el mayor de los comunes.Sin embargo, para grandes numeros, este algoritmo es, ciertamente, inaplicable.

El algoritmo de Euclides que estudiaremos para el calculo del maximo comun divisorse basa en la sencilla observacion siguiente:

d|a y d|b ⇐⇒ d|b y d|r,

siendo r el resto de la division de a por b. Esto quiere decir que los divisores comunesde 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 simplificar el calculo delmaximo comun divisor reduciendo el tamano de los enteros sin alterar su maximocomun divisor. Eliminando casos triviales, podemos suponer que a > b > 0. Seanr0 = a, r1 = b. Dividiendo, se tendra que r0 = q1r1 + r2 con 0 ≤ r2 < r1 = b.Si r2 = 0, entonces b|a, por lo que mcd(a, b) = b y hemos terminado. Si r2 6= 0,dividimos r1 entre r2 y escribimos r2 = q2r2 + r3 con 0 ≤ r3 < r2 y repetimosel proceso. Dado que la sucesion de restos es decreciente (r1 > r2 > r3 > ...), enalgun momento habremos de encontrar un resto rn+1 igual a 0. Los dos ultimospasos podemos escribirlos de la forma rn−2 = qn−1rn−1 + rn con 0 < rn < rn−1, yrn−1 = qnrn + rn+1 con rn+1 = 0.

Teorema 2.9 En el proceso anterior, rn es el maximo comun divisor de a y b.Ademas, el maximo comun divisor es unico.

1En el contexto informatico, eficiente 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 serıa objeto de la asignaturaComplejidad Computacional u otras.

Page 34: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

30 CAPITULO 2. DIVISIBILIDAD EN Z

Tras las consideraciones anteriores, podemos escribir el algoritmo de Euclides comosigue, donde rem(a, b) representa el resto de dividir a entre b:

Entrada : a, b ∈ Zmientras b 6= 0, hacer

t←− |a|a←− |b|b←− rem(t, a)

salida : a

Pseudo–codigo del algoritmo de Euclides.

Naturalmente, el algoritmo anterior puede extenderse al calculo del maximo comundivisor de mas de dos enteros. Supongamos dados t enteros positivos a1, . . . , at y seaR0 = (a1, . . . , at). Supongamos que i es el ındice de la coordenada mas pequena deR0. En este caso es facil ver que mcd(a1, . . . , at) es igual a

mcd(rem(a1, ai), . . . , rem(ai−1, ai), ai, rem(ai+1, ai), . . . , rem(at, ai))

Esta idea conduce al siguiente algoritmo.

entrada : (a1, a2, . . . , at) ∈ Zt

Inicializar A := (|a1|, |a2|, . . . , |at|)mientras A contenga, al menos, dos coordenadas no nulas hacer

Calcular el ındice i del menor entero no nulo de A

A←− (rem(a1, ai), . . . , rem(ai−1, ai), ai, rem(ai+1, ai), . . . , rem(at, ai))

salida : ai

Pseudo–codigo 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.

Page 35: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

2.2. ALGORITMO DE EUCLIDES. TEOREMA DE LAME 31

2.2.1. Teorema de Lame

Examinamos el algoritmo de Euclides sobre una entrada (a, b) tomando nota decocientes y de restos. Si r0 = a y r1 = b, se tiene:

r0 = q1r1 + r2

r1 = q2r2 + r3... (2.1)

rn−2 = qn−1rn−1 + rn

rn−1 = qnrn

Hemos probado con anterioridad que rn = mcd(a, b). Notemos, por otro lado, queel ultimo cociente, qn es mayor o igual que 2 (salvo que n = 1).

Denotemos por E(a, b) el numero de divisiones que realiza el algoritmo de Euclidessi el input es (a, b). El objetivo es probar una buena cota superior para E(a, b).Sea Fn el n–esimo numero de Fibonacci que, recordemos, esta definido por F0 = 0,F1 = 1 y Fn = Fn−1 + Fn−2 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 ≥ Fn+2 y b ≥ Fn+1

Demostracion.– Utilizaremos la notacion de 2.1 y probaremos que r0 ≥ Fn+2 yr1 ≥ Fn+1 por induccion en n.

El enunciado es cierto para n = 1. En este caso, el algoritmo de Euclides constade una unica division, r0 = q0r1 y puesto que r0 > r1, los menores enteros que loverifican son r1 = 1 = F2 y r0 = 2 = F3.

Supongamos ahora que el enunciado es cierto para i < n; queremos probarlo para n.El primer paso del algoritmo de Euclides es r0 = q1r1 +r2 y sabemos que E(r1, r2) =n− 1. Por lo tanto, r1 ≥ Fn+1 y r2 ≥ Fn. Por lo tanto, r0 ≥ r1 + r2 ≥ Fn+2.

A partir del Lema anterior y utilizando que

Fn =αn − βn

√5

,

donde α = 1+√

52

y β = 1−√

52

, se tiene

Corolario 2.12 Si a > b > 0, E(a, b) < c1 log(u) + c2 − 2 + c3u−1, donde c1 =

1log α

= 2,08, c2 = log√

5log α

= 1,67 y c3 = 1√5 log α

= 0,93. (log logaritmo natural). Si

se escribe la cota anterior en terminos de la talla binaria de a (es decir, log2 a) seobtiene, redondeando, que

E(a, b) ≤ 1,90 log2 a− 0,33

Page 36: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

32 CAPITULO 2. DIVISIBILIDAD EN Z

Demostracion.– Supongamos que E(a, b) = n. Por el lema 2.11, sabemos que, en esecaso, a ≥ Fn+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 quelog(x+ 1) = log x+ log

(1 + 1

x

)y la estimacion log

(1 + 1

x

)< 1

xpara 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 efi-ciencia de los algoritmos introducidos. Sin embargo, deje el lector que se le ofrezcaun resultado que demuestra bien a las claras las posibilidades del Algoritmo de Eu-clides. A partir del resultado anterior se puede probar que el numero de operacionesbinarias necesarias para calcular el mcd usando Euclides es

k · (log2 a)(log2 b)

Olvidandonos de la constante k, si los enteros a y b tienen talla binaria 10000 (aprox-imadamente 3000 dıgitos en base 10), habra que realizar, mas o menos, cien millonesde operaciones binarias. Dado que, por ejemplo, los primeros procesadores Pentiumrealizaban entre 100 y 112 millones de operaciones binarias por segundo, un orde-nador equipado con uno de dichos procesadores, nos darıa la respuesta en algo menosde un segundo.

Por otro lado, si usamos la factorizacion en producto de primos para calcular elmaximo comun divisor, la situacion no es, ni mucho menos, tan boyante. En lapractica, el mejor de los algoritmos de factorizacion conocidos (que utiliza tecnicasmatematicas ciertamente sofisticadas) no puede factorizar, ni aun usando el Super-Computer de IBM, enteros de varios cientos de dıgitos (aunque nadie ha probadoaun que nunca pueda encontrarse un algoritmo eficiente). Esta dificultad de la fac-torizacion es una de las ideas claves por la que el sistema criptografico RSA queestudiaremos mas adelante se haya convertido en el sistema criptografico de usocomun.

Por ultimo, senalemos que la falta de una prueba que demuestre que no es posibleencontrar un algoritmo eficiente para la factorizacion esta estrechamente ligada auno de los problemas centrales de la Informatica como es la Conjetura de Cook2.

2 En la pagina http://www.claymath.org/prizeproblems/pvsnp.htm del Clay MathematicsInstitute existe informacion (sencilla descripcion del problema, artıculo mas profundo sobre elasunto e incluso un vıdeo de una charla divulgativa) sobre esta conjetura. De hecho, el InstitutoClay ofrece un millon de dolares a quien sea capaz de resolver esta conjetura.

Page 37: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

2.3. IDENTIDAD DE BEZOUT. ALGORITMO EXTENDIDO DE EUCLIDES33

2.3. Identidad de Bezout. Algoritmo extendido de

Euclides

Definicion 2.14 Dados enteros a y b y su maximo comun 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 Fundamentalde la Aritmetica, es el demostrar que siempre existen tales enteros x e y y encontrarun algoritmo para su calculo. Pero antes, veamos un ejemplo. Aplicando el algoritmode 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, encontrarenteros 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 implicarıa que para resolver una identidad de Bezout,habrıamos de aplicar el algoritmo de Euclides (tomando nota de restos y cocientes)

Page 38: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

34 CAPITULO 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, usaremoslos cocientes para construir xk e yk tales que:

axk + byk = rk (0 ≤ k ≤ n).

De este modo, si k = n, tendrıamos resuelto nuestro problema.Para k = 0, basta tomar x0 = 1 e y0 = 0 y si k = 1, x1 = 0 e y1 = 1. Ahorasupongamos que hemos encontrado xk e yk para todo ındice 0 ≤ k ≤ s y queremoscalcular xs+1 e ys+1. Se tendrıa:

rs+1 = rs−1 − rsqs = axs−1 + bys−1 − qs(axs + bys) = a(xs−1 − qsxs) + b(ys−1 − qsys)

Lo que hemos visto es que las sucesiones de enteros definidas por:

x0 = 1, x1 = 0, xk+1 = xk−1 − qkxk

y0 = 0, y1 = 1, yk+1 = yk−1 − qkyk

verifican

axk + byk = rk (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 xe y tales que se verifica 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 queax+ by = 1.

Interpretacion matricial del Algoritmo extendido de Euclides

Llamemos, al igual que antes, r0 = a y r1 = b. Asimismo, consideremos las matrices

R0 =

(x0 x1

y0 y1

)= I S0 =

r0 r1x0 x1

y0 y1

Observese que det(R0) = 1. El primer paso en el algoritmo de Euclides extendidoconsiste en dividir r0 por r1, r0 = r1q1 + r2, sustituir el par (r0, r1) por (r1, r2) y

Page 39: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

2.3. IDENTIDAD DE BEZOUT. ALGORITMO EXTENDIDO DE EUCLIDES35

calcular x2 = x0 − x1q1 e y2 = y0 − y1q1. En consecuencia, podemos pensar que sillamamos Q1 a la matriz

Q1 =

(0 11 −q1

),

se tiene

R1 =

(x1 x2

y1 y2

)= R0Q1 y S1 =

r1 r2x1 x2

y1 y2

= S0Q1

Ademas, es facil ver que este producto por Q1 consiste, en realidad, en restar a laprimera columna de S0 la segunda multiplicada por q1 e intercambiar las columnasde S0. Por otro lado, se tiene que det(R1) = −1, es decir, x1y2 − x2y1 = −1 lo queimplica que mcd(x2, y2) = 1. Este proceso se continua obteniendo matrices

Rk =

(xk xk+1

yk yk+1

)= Rk−1Qk = R0Q1 · · ·Qk

y

Sk =

rk rk+1

xk xk+1

yk yk+1

= Sk−1Qk = S0Q1 · · ·Qk

que verifican

det(Rk) = (−1)k, axk + byk = rk, axk+1 + bxk+1 = rk+1,

lo que, en particular, implica que mcd(xk, yk) = 1. El algoritmo sigue hasta que enel lugar (1, 2) de una de las matrices Sk aparezca un cero. De este modo, si en elalgoritmo extendido de Euclides se realizan n divisiones, se tendra

Rn =

(xn xn+1

yn yn+1

)= Rn−1Qn y S1 =

rn 0xn xn+1

yn yn+1

= Sn−1Qn,

con lo que se tiene:

axn + byn = mcd(a, b), axn+1 + byn+1 = 0, mcd(xn, yn) = mcd(xn+1, yn+1) = 1.

La ultima de las igualdades se obtiene de det(Rn) = (−1)n. En particular se tendra,si b 6= 0, que la fraccion yn+1

xn+1es reducida e igual a −a

b. Dicho de otra manera,

|xn+1| =|b|

mcd(a, b)e |yn+1| =

|a|mcd(a, b)

Page 40: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

36 CAPITULO 2. DIVISIBILIDAD EN Z

De hecho, la construccion anterior no solo proporciona una prueba del Teorema sinoque nos da un algoritmo para su calculo.3 En la forma en la que aparece descrito acontinuacion, coc(A,B) denota el cociente de la division euclıdea de A por B.

Input : a, b ∈ ZInicializar :

S :=

a b1 00 1

while s12 6= 0, do

Q←(

0 11 −coc(s11, s12)

)S ← S ·Q

endwhileOutput : s11, x = s21, y = s31

Algoritmo Extendido de Euclides.

Observese que como subproducto del algoritmo anterior, se obtienen xn+1 e yn+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 numero 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 primoy p|ab, entonces p|a o p|b.

Demostracion.– Gracias a la identidad de Bezout sabemos que existen enteros x ey tales que ax + by = 1. Multiplicando por c se tiene c = cax + cby, con lo que adivide 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|a1 · · · ak, entonces p divide a algun ai

Todas estas disquisiciones realizadas sobre la relacion entre numeros primos y di-visibilidad nos ponen en condiciones de probar la unicidad, ya anunciada, de laexpresion de un numero entero como producto de ±1 y numeros primos.

3 En clase de problemas veremos como extender este algoritmo para mas de dos enteros.

Page 41: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

2.4. ECUACIONES DIOFANTICAS LINEALES 37

Teorema 2.17 (Teorema fundamental de la aritmetica) Todo entero positi-vopuede expresarse como producto de potencias no triviales de numeros primos

n = pα11 p

α22 · · · p

αkk

y, salvo, reordenacion de los factores, esta factorizacion es unica.

Demostracion del Teorema Fundamental de la Aritmetica.– La existencia de la fac-torizacion 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 vacıo. Por la buenaordenacion de N, sabemos que, en ese caso, el conjunto S admite mınimo, digamosn. Se tendran dos factorizaciones distintas de n:

n = pα11 p

α22 · · · p

αkk y

n = qβ1

1 qβ2

2 · · · qβss .

Es claro que p1 divide a qβ1

1 qβ2

2 · · · qβss y, por lo tanto, a alguno de los qβi

i . Aun mas, setendra que p1 divide a alguno de los qi lo que implica que es igual a alguno de los qi.Reordenando los qi, podemos suponer que p1 = q1. En consecuencia, se tendra que

n

p1

= pα1−11 pα2

2 · · · pαkk = qβ1−1

1 qβ2

2 · · · qβss .

Puesto que las factorizaciones de n consideradas eran distintas, tenemos dos facto-rizaciones distintas del entero positivo n

p1< n, lo que contradice el hecho de que n

sea el mınimo de S.

2.4. Ecuaciones diofanticas lineales

Se llaman ecuaciones diofanticas a aquellas de las que nos interesan las solucionesenteras. 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 ningun interes, supondremos que (a, b) 6= (0, 0).

Utilizando el Algoritmo de Euclides extendido, sabemos encontrar una solucion sic = mcd(a, b). Del mismo modo, es obvio encontrar una solucion si mcd(a, b) divide ac. Dicho de otra manera, la ecuacion diofantica tiene solucion si c divide a mcd(a, b).

Page 42: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

38 CAPITULO 2. DIVISIBILIDAD EN Z

¿Y si mcd(a, b) no divide a c? En este caso, no puede haber solucion: si existiesenenteros x e y tales que

ax+ by = c,

se tendrıa que todo factor comun de a y de b tambien lo serıa de c. En particular,el maximo comun divisor de a y de b dividirıa 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 x0 e y0 tales queax0 + by0 = mcd(a, b). Es claro que ( c

mcd(a,b)x0,

cmcd(a,b)

y0) es solucion de 2.7. Sinembargo, hasta ahora no nos hemos preocupado por saber si hay mas de una soluciony, en el caso de que haya mas de una, saber cuales son todas las soluciones. Paraanalizar este problema, estudiemos la ecuacion diofantica

aX + bY = 0 (2.8)

por cuanto si (x1, y1) es solucion cualquiera de la ecuacion diofantica 2.7 y (x0, y0)solucion de 2.8, es facil ver que (x1 + x0, y1 + y0) es solucion de 2.7. Una solucionobvia ( y la mas “pequena”) 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 (x1, y1) es solucion cualquiera de 2.7 el conjunto

{(x1 +

b

mcd(a, b)t, y1 −

a

mcd(a, b)t

): t ∈ Z},

es un conjunto de infinitas soluciones de 2.7. ¿Hay mas? Para verlo, sea (x, y) unasolucion de 2.7. Por lo tanto,

ax1 + by1 = c y

ax+ by = c.

Restando, se tiene a(x− x1) + b(y − y1) = 0 y, dividiendo por mcd(a, b),

a

mcd(a, b)(x− x1) +

b

mcd(a, b)(y − y1) = 0. (2.9)

Page 43: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

2.5. MINIMO COMUN MULTIPLO 39

Ahora, supongamos que b 6= 0 (si b = 0 y a 6= 0, harıamos el mismo argumento quesigue con a). Como

mcd

(a

mcd(a, b),

b

mcd(a, b)

)= 1

y bmcd(a,b)

divide a (x− x1)a

mcd(a,b), se tiene que b

mcd(a,b)divide a (x− x1), es decir,

x− x1 = tb

mcd(a, b), para algun t ∈ Z.

Sustituyendo en 2.9, se obtiene que

y − y1 = −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 tieneinfinitas, dadas por

{(x1 +

b

mcd(a, b)t, y1 −

a

mcd(a, b)t

): t ∈ Z},

donde (x1, y1) es una solucion particular cualquiera.

De hecho, hemos encontrado un algoritmo para resolver ecuaciones diofanticas dela forma 2.7, ya que basta encontrar una solucion particular cualquiera y, para ellopodemos utilizar el algoritmo extendido de Euclides.

2.5. Mınimo comun multiplo

Definicion 2.19 Si a y b son dos enteros, un multiplo comun de a y b es un enteroc tal que a|c y b|c. Si a y b son ambos no nulos, existen multiplos comunes positivos(por ejemplo |ab|), por lo que la buena ordenacion de N nos asegura la existen-cia de un mınimo comun multiplo, es decir, el menor multiplo comun positivo.Normalmente, se escribe mcm(a, b).

De hecho, se tiene que el mınimo comun multiplo de a y b es el unico entero positivom que verifica:

1) a|m y b|m (por ser multiplo comun)

Page 44: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

40 CAPITULO 2. DIVISIBILIDAD EN Z

2) Si c es un entero que verifica a|c y b|c, entonces, m|c (por ser el menor de losmultiplos comunes).

El mınimo comun multiplo esta estrechamente ligado al maximo comun divisor. Estaligazon 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 mınimo comun multiplo de a y b, es decir, que verifica las dos propiedadesanteriores.

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 multiplo comun de a y b, esdecir,

c = au para algun entero u y c = bv para algun entero v.

Se tiene, entonces que

a

mcd(a, b)u =

b

mcd(a, b)v

y, como amcd(a,b)

y bmcd(a,b)

son primos entre sı, que amcd(a,b)

divide a v, es decir,

v = ka

mcd(a, b)para algun entero k.

Finalmente, se tendra

c = bv = kab

mcd(a, b)para algun entero k.

Page 45: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

2.6. PROBLEMAS PROPUESTOS 41

2.6. Problemas propuestos

Problema 2.1 .- (Expresion de numeros natural en bases distintas de la decimal)Demostrar que, dado un natural q > 0, todo numero natural n puede expresarse demanera unica en la forma

akqk + ak−1q

k−1 + · · ·+ a1q + a0,

con 0 ≤ ak < q, donde k el unico natural para el que se verifica qk ≤ n < qk+1.

Problema 2.2 .- Sea

akak−1 . . . a1a0, ai ∈ {0, 1}

la expresion en base 2 (binaria) de un cierto numero natural. Expresar, en base 2,cociente y resto de la division por 2 de dicho numero.

Problema 2.3 .- Si (A,+, ·) es un anillo conmutativo con elemento unidad, unsubconjunto I se llama ideal si

a+ b ∈ I para todo a, b ∈ I

x ∈ A y a ∈ I =⇒ xa ∈ I.

(1) Probar que si a1, . . . , an son elementos cualesquiera del anillo A, el conjunto

(a1, . . . , an) = {a1x1 + a2x2 + . . .+ anxn : xi ∈ A}

es un ideal de A. Todo ideal que se puede expresar de esta forma, se dicefinitamente generado. Si n = 1, se denomina principal.

(2) Probar que en Z todo ideal es principal. Un anillo sin divisores de cero y queverifica esta propiedad se dice dominio de ideales principales.

(3) Sean ahora, (a) y (b) dos ideales de Z. ¿Quien es el menor ideal que contienea 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αii , a = ±

n∏i=1

pβi

i , αi, βi ≥ 0.

donde los pi son todos los primos que dividen a ab. Comprobar que

mcd(a, b) =n∏

i=1

pmin{αi,βi}i y mcm(a, b) =

n∏i=1

pmax{αi,βi}i

Page 46: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

42 CAPITULO 2. DIVISIBILIDAD EN Z

Problema 2.5 .- Para cada uno de los pares de enteros siguientes, calcular elmaximo comun 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 rapidosi permitimos restos negativos en la forma que sigue

ri−1 = riqi + ri+1 con − |ri/2| < ri+1 ≤ |ri/2|.

Por ejemplo, si aplicamos este metodo para calcular el maximo comun divisor de 59y 49, se tiene

mcd(59, 49) = mcd(49, 10) = mcd(10,−1) = mcd(−1, 0) = 1.

Utilizar este algoritmo, conocido como del mınimo resto, para calcular los maximoscomunes divisores del ejercicio anterior y resolver las correspondientes identidadesde Bezout.

Problema 2.7 .- Demostrar las siguientes propiedades del maximo comun 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

(a2, 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 comun divisor de dos enteros realizando unicamente divisiones por 2. (Nota:Este algoritmo se conoce como algoritmo binario para el calculo del mcd y es debidoa J. Stein que publico su resultado en 1967).

Problema 2.8 .- Considerese la siguiente variante del algoritmo binario para elcomputo 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+b2, a−b

2

).

Page 47: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

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 comomcd(a, b) el otro numero en valor absoluto. Por ejemplo,para calcular mcd(15, 6) utilizando este algoritmo, se tendrıa:

(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) = a2+b2

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(Fn−1, Fn) = 1 para n ≥ 1

El mayor natural menor que Fn+2/Fn+1 (escrito bFn+2/Fn+1c) es 1.

El resto de la division de Fn+1 por Fn es Fn−1.

Problema 2.10 .- Descomponer de todas las formas posibles el numero racional100/273 en suma de dos fracciones positivas con denominadores 21 y 13.

Problema 2.11 .- (Algoritmo extendido de Euclides para t enteros) Basandose enla interpretacion matricial del algoritmo extendido de Euclides, disenar un algoritmopara calcular, dados enteros a1, . . . , at, una identidad de Bezout del tipo

a1x1 + a2x2 + · · ·+ atxt = mcd(a1, . . . , at).

Aplicar dicho algoritmo a la resolucion de ecuaciones diofanticas de la forma

a1X1 + a2X2 + · · ·+ anXn = b.

Problema 2.12 .- Para cada una de las ecuaciones diofanticas siguientes, estudiarsi 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.

Page 48: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

44 CAPITULO 2. DIVISIBILIDAD EN Z

Problema 2.13 .- Resolver el sistema de ecuaciones diofanticas lineales:{11X + 3Y + 5Z = 203X + 7Y + 10Z = 10

Problema 2.14 .- Supongamos que el maximo comun divisor de a y b es un primop. ¿Cuales son los posibles valores del maximo comun divisor de a2 y b? ¿Y delmaximo comun divisor de a3 y b? Si m.c.d(a, b) = p, ¿cuanto vale m.c.d(a3, b3)?

Problema 2.15 .- Una empresa alemana esta replanteandose sus planes de ac-tividad. Tiene una fabrica en Espana con un millar de empleados espanoles y uncentenar de ejecutivos alemanes y esta estudiando una reestructuracion de plantilla.Obviamente sin informar a los sindicatos; aunque estos sospechan que va a haberalgun 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 dıas de vacacionesen Parıs, 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 formasposibles puede hacer el cambio si necesita para su estancia en Cracovia, al menos,3000 zlotys?

Problema 2.17 .- Sean dados dos numeros naturales no nulos a y b. ¿Es posible es-cribir el numero racional 1

m.c.m.(a,b)como suma de dos racionales de denominadores

a y b? En caso de respuesta afirmativa, esbozar un algoritmo para el calculo dedichos racionales.

Problema 2.18 .- Una cierta empresa fabrica tres productos A, B y C que vende a590, 410 y 300 euros respectivamente. Calcular cuantas unidades de cada productose vendieron en un dıa 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 numero 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 formasdistintas pueden comprarse un total de trescientas aves (gallos, gallinas y pollos) sidisponemos de quinientas monedas? Escribir cada una de estas formas posibles.

Page 49: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

2.6. PROBLEMAS PROPUESTOS 45

Problema 2.20 .- Una companıa aerea ofrece tres tipos de billetes en sus vuelosde Madrid a Parıs. Los billetes de clase preferente cuestan 150 euros, los de claseturista con derecho a comida 110 y el resto 67. Si, en un vuelo concreto un totalde 100 pasajeros pagaron un total de 10766 euros, ¿cuantos billetes de cada tipo sevendieron?

Problema 2.21 .- Probar que para cada numero natural n, existen siempre nnumeros compuestos consecutivos.

Problema 2.22 .- Si mn es un cuadrado perfecto y mcd(m,n) = 1, demostrar quem y n son tambien cuadrados perfectos.

Problema 2.23 .- (Numeros de Fermat)

i) Demostrar que si 2m + 1 es primo, m es una potencia de 2, es decir, m = 2n

para algun natural n.

Nota. Los numeros de la forma 22n+ 1 se llaman numeros de Fermat y si

son primos, se les dice primos de Fermat. Pierre de Fermat (1601-1665) con-jeturo que todos los numeros de la forma 22n

+ 1 eran primos, pues pudocomprobar 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 232 + 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 numeros de Fermat distintos son siempre primos entre sı.

Problema 2.24 .- Un primo de Mersenne es un numero primo de la forma 2n− 1.Demostrar que si 2n − 1 es primo, n ha de ser primo.

Nota. En 1644, Mersenne conjeturo que 2p − 1 era primo para p = 2, 3, 5, 7, 13,17, 19, 31, 67, 127, 257 y para ningun otro primo menor que 257. En la lista deMersenne, habıa errores por cuanto los numeros correspondientes a 67 y 257 no sonprimos y le faltaban los correspondientes a 61 y 89. A fecha de hoy, solo se conocen38 primos de Fermat, el mayor de los cuales es 26972593−1, numero este que tiene masde 2 millones de dıgitos decimales. Una lista de los primos de Mersenne conocidospuede verse en http://www.utm.edu/research/primes/mersenne.shtml#known.

Problema 2.25 .- Dado un entero positivo n, sea σ(n) =∑d|nd la suma de todos

sus divisores positivos. Por ejemplo, σ(27) = 1 + 3 + 9 + 27 = 40. Demostrar que simcd(m,n) = 1, σ(nm) = σ(n)σ(m) y encontrar una formula para calcular σ(n) apartir de la descomposicion de n en factores primos.

Page 50: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

46 CAPITULO 2. DIVISIBILIDAD EN Z

Problema 2.26 .- Un numero perfecto es un entero positivo que es igual a lasuma de sus divisores distintos de el mismo (p.e., 6 es perfecto pues 6 = 1 + 2 +3). Demostrar que los numeros perfectos pares son exactamente los de la forma2k−1(2k−1), con 2k−1 un primo de Mersenne. (Indicacion: Para ver que un numeroperfecto par tiene esa forma, escrıbelo primero en la forma 2k−1n0 con n0 impar,demostrar que n0 es divisible por 2k − 1 y comprueba que n0 tiene que ser primoestudiando σ(n0)).

Nota: No se sabe si existen numeros perfectos impares. Por otro lado, los primerosnumeros perfectos son: 6 = 21(22 − 1), 28 = 22(23 − 1), 496 = 24 · (25 − 1), 8128 =26 · (27 − 1), 33550336 = 212(213 − 1),...

Problema 2.27 .- Sean a y b numeros positivos coprimos. Demostrar que paratodo entero positivo n > ab, existen numeros enteros positivos x e y tales que

n = ax+ by

A partir de lo anterior, deducir que todo numero entero > 11 puede escribirse comosuma de dos numeros compuestos.

Page 51: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

Capıtulo 3

Congruencias

3.1. Aritmetica modular. Teorema chino de los

restos

3.1.1. Aritmetica modular

Empezamos recordando la relacion de equivalencia

a ≡ b (mod n) ⇐⇒ a− b es multiplo de n,

siendo n, un numero entero positivo.

Es facil ver que esta relacion de equivalencia puede reescribirse en la forma

a ≡ b (mod n) ⇐⇒ el resto de la division euclıdea de a y de b por n es el mismo.

De esta forma, es claro que se tienen n clases de equivalencia en el conjunto cocienteque suele escribirse en la forma Z/nZ o Zn, cada una de ellas correspondiente a unode los posibles restos, es decir, 0, 1,. . ., n− 1. Es, de hecho, habitual identificar lasclases de equivalencia con los citados numeros.

En el conjunto Zn se pueden definir dos operaciones, suma y producto, de la manerasiguiente:

Si a y b son dos clases de equivalencia, se define a+ b = a+ b.

Si a y b son dos clases de equivalencia, se define a · b = a · b.

Tal y como hemos definido suma y producto, parece que dependen del representanteelegido en cada clase. Sin embargo, esto no es cierto:

Proposicion 3.1 Las operaciones suma y producto en Zn estan bien definidas ydotan a Zn de estructura de anillo conmutativo con elemento identidad.

47

Page 52: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

48 CAPITULO 3. CONGRUENCIAS

Observacion 3.2 Una aplicacion sencilla de las congruencias es la obtencion decriterios de divisibilidad. Ası, por ejemplo, podemos obtener un criterio para sabersi un entero n es divisible por 11, sin realizar la division.

Sea x = xnxn−1 . . . x2x1x0 un numero natural escrito en base diez, es decir,

x = xn · 10n + xn−1 · 10n−1 + · · ·+ x1 · 10 + x0 y 0 ≤ xj ≤ 9, ∀ j ∈ {0, . . . , n}

Como 10 ≡ −1 (mod 11), se tendra que xi · 10i ≡ (−1)ixi (mod 11) y, por lo tanto,

x ≡n∑

i=0

(−1)ixi (mod 11).

En consecuencia, x es divisible por 11 si, y solo si,n∑

i=0

(−1)ixi ≡ 0 (mod 11), es

decir, si la suma de los dıgitos que ocupan un lugar par menos la suma de los queocupan un lugar impar es multiplo de 11.

3.1.2. Teorema chino de los restos

Usando el algoritmo extendido de Euclides es facil resolver congruencias del tipo

ax ≡ b (mod n),

ya que dicha congruencia tiene solucion si, y solo si, la ecuacion diofantica

ax+ ny = b

tiene solucion. De hecho, se tiene:

Proposicion 3.3 La congruencia ax ≡ b (mod n) tiene solucion si, y solo si,d = mcd(a, n) divide a b. Ademas, si existe solucion, esta es unica modulo n/d.

Demostracion.– Lo unico que debemos probar es que la solucion es unica modulo nd.

Esto se deduce del hecho de que las soluciones de la ecuacion diofantica ax+ny = bson de la forma:

x = x0 + ndt

y = y0 − adt,

con t cualquier numero entero y (x0, y0) una solucion cualquiera de ax+ ny = b.

¿Que ocurre si no tengo una unica congruencia, sino varias? La respuesta a estapregunta viene dada por el conocido como Teorema Chino de los Restos y su poste-rior extension. El nombre del Teorema deriva del texto Suan–ching ( “Aritmetica”)

Page 53: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

3.1. ARITMETICA MODULAR. TEOREMA CHINO DE LOS RESTOS 49

escrito por el matematico chino Sun–Tsu. Dentro de ese texto aparece la resoluciondel ejercicio siguiente:

¿Cual es el numero entero positivo mas pequeno tal que el resto de dividirlo por 11es 2, el resto de dividirlo por 5 es 3 y el resto de dividirlo por 7 es 2?

El problema, trasladado al lenguaje de congruencias, es el de encontrar el menorentero positivo a tal que:

a ≡ 2 (mod 11), a ≡ 3 (mod 5), a ≡ 2 (mod 7).

Resolvamos el problema de Sun–Tsu. Si a ≡ 2 (mod 11), entonces a tiene la forma

a = 2 + 11t1 para algun entero t1.

Si exigimos que a ≡ 3 (mod 5), tendremos que 2 + 11t1 ≡ 3 (mod 5), es decir,t1 ≡ 1 (mod 5). Dicho de otra manera, t1 = 1 + 5t2 para algun entero t2, por lo quea tiene la forma

a = 13 + 55t2 para algun entero t2.

Finalmente, a debe verificar a ≡ 2 (mod 7), es decir, 13 + 55t2 ≡ 2 (mod 7). Porlo tanto, 6t2 ≡ 3 (mod 7) y, resolviendo esta congruencia, se tiene que t2 = 4 + 7t3para algun entero t3. En definitiva, a debe tener la forma

a = 233 + 385t3 para algun entero t3.

El menor de los enteros que verifican las congruencias es 233, que es la respuesta alejercicio planteado por Sun–Tsu.

Para un caso general, se tiene:

Teorema 3.4 (Teorema chino de los restos) Sean m1, . . . ,mn numeros enterospositivos coprimos dos a dos, es decir, mcd(mi,mj) = 1 si i 6= j, y sean b1, . . . , bnenteros cualesquiera. Entonces, el sistema de congruencias

x ≡ b1 (mod m1), . . . , x ≡ bn (mod mn)

posee una unica solucion entera entre 0 y m1 · · ·mn−1, es decir, una unica solucionentera modulo m1 · · ·mn.

Demostracion.– Supongamos que somos capaces de encontrar enteros Ek (uno paracada k entre 1 y n) tales que:

Ek ≡{

0 (mod mj), si j 6= k1 (mod mk).

(3.1)

Page 54: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

50 CAPITULO 3. CONGRUENCIAS

Si existen tales Ek, x =n∑

k=1

Ekbk es solucion de nuestro problema.

Para encontrar los Ek, sean M = m1 · · ·mn y Mk = Mmk

para k = 1, . . . , n. Puesto

que los mi son coprimos dos a dos, se tiene que mcd(mk,Mk) = 1 y, por lo tanto,que existen enteros tk y sk tales que

skMk + tkmk = 1, k = 1, . . . , n

Es facil ver que los enteros Ek = skMk verifican 3.1. Claramente, Ek es multiplo demj si j 6= k y, por construccion, congruente con 1 modulo mk.

Para concluir la demostracion, queda ver que la solucion es unica modulo M . Su-pongamos dos soluciones x e y. Se tiene, entonces, que

x− y ≡ 0 (mod mi) ∀ i ∈ {1, 2, . . . , n},

es decir, x − y es multiplo de todos los mi y, en consecuencia, del mınimo comunmultiplo de m1,m2, . . . ,mn que, al ser coprimos dos a dos es, justamente, M . Porlo tanto, x ≡ y (mod M).

Observacion 3.5 Aplicacion del Teorema Chino a la aritmetica modular.Una de las aplicaciones mas importantes del Teorema Chino de los Restos es la dereducir calculos modulo M a calculos modulo mk (mantenemos la misma notacionque en la demostracion del Teorema). Puede arguirse, con razon, que la gananciapuede ser pırrica por cuanto el computo de los correspondientes Ek involucra la mul-tiplicacion de numeros casi del mismo tamano que M . Pero una vez que calculadoslos Ek se puede disponer de ellos de una vez para siempre y si han de hacerse muchoscalculos modulo M , la ganancia puede ser sustancial.

Ejercicio: Manteniendo la notacion de la demostracion del Teorema Chino de losrestos, probar que EjEk ≡ 0 (mod M) si j 6= k y E2

k ≡ 1 (mod M). Probar que,para todo entero a, si a ≡ ak (mod mk), se tiene

a ≡m∑

k=1

Ekak (mod M).

Ahora, llamemos a los coeficientes ak coordenadas de a. Probar que si b tiene coorde-nadas bk, entonces ak±bk y akbk son las coordenadas de a±b y de ab, respectivamente.

Observacion 3.6 Veamos como podemos interpretar el Teorema Chino de los restosy el ejercicio anterior. En primer lugar, el Teorema Chino de los Restos estableceuna biyeccion entre ZM y Zm1×· · ·×Zmn. Por otro lado, consideremos la aplicacionψ dada por:

Page 55: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

3.1. ARITMETICA MODULAR. TEOREMA CHINO DE LOS RESTOS 51

ψ : ZM → Zm1 × · · · × Zmn , ψ(a)→ (a1, . . . , an),

donde los ak son las coordenadas de a como se han definido en el Ejercicio. Elteorema Chino de los Restos me dice como construir ψ−1.

Por otro lado, recordemos que podemos dotar a Zm1×· · ·×Zmn de estructura de anillo(conmutativo y con elemento identidad) definiendo suma y producto componente acomponente. Lo que nos dice el ejercicio es que ψ(a+ b) = ψ(a) + ψ(b) y ψ(a · b) =ψ(a) ·ψ(b), es decir, que ψ es un homomorfismo de anillos y, al ser biyectivo, es unisomorfo de anillos.

En el Teorema Chino de los Restos, se supone que los modulos son siempre cop-rimos dos a dos. En esas condiciones, el correspondiente sistema de congruenciastiene solucion y sabemos encontrarla. ¿Que se puede decir si los modulos no sonnecesariamente coprimos dos a dos? La respuesta esta en el siguiente Teorema.

Teorema 3.7 El sistema de congruencias

x ≡ b1 (mod m1), . . . , x ≡ bn (mod mn)

tiene solucion si, y solo si, bi ≡ bj (mod mcd(mi,mj)) para todo i 6= j. Si existesolucion, es unica modulo mcm(m1,m2, . . . ,mn).

Demostracion.– Supongamos, en primer lugar, que existe solucion del sistema decongruencias. Si x es una solucion, x ≡ bi (mod mi) y x ≡ bj (mod mj). Enconsecuencia, x ≡ bi (mod mcd(mi,mj)) y x ≡ bj (mod mcd(mi,mj)), de donde sededuce que bj ≡ bi (mod mcd(mi,mj)).

La unicidad modulo mcm(m1,m2, . . . ,mn) se sigue por identicos argumentos al casodel Teorema Chino de los Restos.

Para completar la prueba, habra que mostrar que existe una solucion si se verifica lacondicion del Teorema. Para ello, generalizaremos el argumento dado para resolverel problema de Sun-Tsu que, recordemos, se basa en la reduccion de un par decongruencias a una sola1. Supongamos, pues, que debemos resolver

x ≡ b1 (mod m1)

x ≡ b2 (mod m2).

Entonces, x = b1 + tm1 para algun t ∈ Z. Por lo tanto, b1 + tm1 ≡ b2 (mod m2)y, en consecuencia, tm1 ≡ b2 − b1 (mod m2). Ahora, puesto que, por hipotesis,d = mcd(m1,m2) divide a b2 − b1, la congruencia

1Esta construccion es debida a C.F. Gauss

Page 56: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

52 CAPITULO 3. CONGRUENCIAS

tm1

d≡ b2 − b1

d(mod m2/d)

tiene una unica solucion t ≡ a (mod m2/d). Esto es, t = a+t1m2

dpara algun t1 ∈ Z.

Sustituyendo esta expresion en a = b1 + tm1 se tiene

x = b1 + am1 + t1m1m2

d.

De hecho, x ≡ b1 + am1 (mod mcm(m1,m2)). Repitiendo esta construccion n − 1veces, se obtiene una solucion del sistema de congruencias

Ejemplo 3.8 Resolver el sistema de congruenciasx ≡ 2 (mod 27)x ≡ 11 (mod 18)x ≡ 3 (mod 4)

La primera congruencia implica que

x = 2 + 27t1

para algun entero t1. Sustituyendo la citada expresion en la segunda congruencia,se tendra que 2 + 27t1 ≡ 11 (mod 18), es decir, 27t1 ≡ 9 (mod 18). Dividiendo por9 = mcd(27, 18), se tiene 3t1 ≡ 1 (mod 2), por lo que t1 tiene que ser congruente a1 modulo 2, es decir, t1 = 1 + 2t2. En consecuencia,

x = 29 + 54t2 para algun t2

Ahora, si sustituimos en la tercera congruencia, se tiene que 54t2 ≡ −26 (mod 4).De nuevo, puesto que 2 = mcd(54, 4), se tiene que t2 debe verificar la congruencia27t2 ≡ −13 (mod 2), es decir, t2 ≡ 1 (mod 2) o, lo que es lo mismo, t2 = 1 + 2t3. Enconsecuencia,

{x = 83 + 108t3 : t3 ∈ Z}

es el conjunto de soluciones del sistema de congruencias.

Observacion 3.9 A partir del enunciado del Teorema anterior y de su prueba,llamando M = mcm(m1, . . . ,mn), se puede demostrar que es posible decidir si unsistema de congruencias del tipo analizado en el Teorema tiene solucion en tiempoO((log2M)2). Si tiene solucion, se puede encontrar la unica solucion modulo M entiempo O((log2M)2).

Page 57: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

3.1. ARITMETICA MODULAR. TEOREMA CHINO DE LOS RESTOS 53

3.1.3. El grupo multiplicativo Z∗mEn su momento, se probo que el conjunto de unidades de un anillo forma un grupomultiplicativo (vease Problema 1.14). En el caso que nos ocupa, puesto que Zm esun anillo conmutativo con elemento unidad, sabemos que Z∗

m es un grupo abeliano.La primera pregunta es, pues, cuales son los elementos de Z∗

m. La respuesta a estapregunta no es demasiado complicada:

Dado a ∈ Zm posee inverso si, y solo si, existe x tal que ax ≡ 1(mod m), es decir,si, y solo si, ax +my = 1 para algun entero y. Dicho de otro modo, a es inversibleen Zm, si, y solo si, la ecuacion diofantica

ax+my = 1 (3.2)

tiene solucion. Pero eso, es equivalente a mcd(a,m) = 1. En consecuencia, se tiene:

Proposicion 3.10 Un elemento a ∈ Zm es unidad si, y solo si, mcd(a,m) = 1, esdecir, Z∗

m = {a ∈ Zm : mcd(a,m) = 1}

Por otro lado, es claro, en virtud de lo anterior, que:

Teorema 3.11 El anillo Zm es cuerpo si, y solo si, m es primo.

Por otro lado, como grupo multiplicativo Z∗p (con p primo) tiene una forma muy

particular. Tomemos, por ejemplo, p = 7. En Z7, se tiene que

31 = 3, 32 = 2, 33 = 6, 34 = 4, 35 = 5 y 36 = 1,

es decir, todos los elementos de Z∗7 pueden expresarse como potencias de 3. La

pregunta natural, ahora, es : ¿esta propiedad se verifica para cualquier primo? Dichode otra manera: dado p primo, ¿existe a ∈ Zp tal que Z∗

p = {a, a2, a3, . . . , ap−1}?La respuesta a la pregunta es afirmativa, pero la demostracion requiere un ciertotrabajo previo. En particular, debemos introducir alguna terminologıa y asumircomo ciertos (ya los probaremos en su momento) tanto el Teorema de Euler-Fermat,como el Pequeno Teorema de Fermat (veanse los Teoremas 3.24 y 3.26). Asimismo,los lemas que siguen (lemas 3.13 a 3.19 ) pueden considerarse como una preparacionpara el resultado.

Respecto al Teorema de Euler-Fermat, por el momento solo nos interesa el hecho deque si a es una unidad en Zm, existe siempre un natural n tal que an ≡ 1 (mod m).Es este hecho el que garantiza que la siguiente definicion es correcta.

Definicion 3.12 Si a es un elemento de Z∗m, se llama orden de a en Z∗

m, y se escribeordm(a), al menor entero positivo d que verifica ad ≡ 1 (mod m).

Page 58: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

54 CAPITULO 3. CONGRUENCIAS

Por ejemplo, ord(3) = 6 en Z∗7. Observese que ademas, por otro lado, ordp(a) ≤ p−1

asumiendo la veracidad del Pequeno Teorema de Fermat (Teorema 3.26).

Lema 3.13 Si an ≡ 1 (mod m), entonces ordm(a) divide a n.

Demostracion.– Sea n con an ≡ 1 (mod m) y llamemos d a ordm(a). Es claro que, pordefinicion de orden, n ≥ d. Consideremos la division euclıdea de n por d: n = qd+ rcon q ≥ 1 y 0 ≤ r < d. En Zm se verifica:

1 = an = aqd+r = aqd · ar =(ad)q · ar = ar,

de donde se concluye, por definicion de orden, que r = 0.

Lema 3.14 Sea a un entero con mcd(a,m) = 1. Si ae ≡ af ≡ 1 (mod m), entoncesad ≡ 1 (mod m), donde d = mcd(e, f).

Demostracion.– Si d = mcd(e, f), existen enteros x e y tales que d = ex + fy. Ental caso, se tiene que

ad ≡ aex+fy ≡ aex · afy ≡ (ae)x ·(af)y ≡ 1 (mod m)

Lema 3.15 Sea f(x) = xd +ad−1xd−1 + · · ·+a1x+a0 un polinomio con coeficientes

enteros. Entonces, la ecuacion f(x) ≡ 0 (mod p) tiene, a lo sumo, d soluciones enZp.

Demostracion.– Procederemos por induccion en el grado del polinomio d. Para d = 1la afirmacion es obvia. Si d > 1 y haciendo uso de la identidad

Xn − Y n = (X − Y )(Xn−1 +Xn−2Y + · · ·+XY n−2 + Y n−1)

valida para cualesquiera numeros enteros (de hecho, para cualesquiera numerosreales), se puede ver que existe un polinomio g(x) de grado d − 1 y coeficientedirector (coeficiente de la maxima potencia de x) 1 que verifica:

f(x) = (x− a)g(x) + f(a) para todo x ∈ Z.Si f(a) ≡ 0 (mod p), se tiene que f(x) ≡ (x − a)g(x) (mod p) para todo enterox. Puesto que p es primo, f(x) es cero modulo p si, y solo si, x − a o g(x) soncero modulo p. En consecuencia, como, por hipotesis de induccion, la congruenciag(x) ≡ 0 (mod p) tiene, a lo mas, d− 1 soluciones modulo p, la congruencia f(x) ≡0 (mod p) tendra, a lo sumo, d soluciones modulo p.

Page 59: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

3.1. ARITMETICA MODULAR. TEOREMA CHINO DE LOS RESTOS 55

Observacion 3.16 Es importante senalar que el Lema anterior no es cierto, engeneral, si eliminamos la condicion de primalidad. Por ejemplo, x2 ≡ 1 (mod 8)tiene cuatro soluciones modulo 8; a saber, 1, 3, 5 y 7.

Lema 3.17 La congruencia Xp−1 ≡ 1 (mod p) tiene, exactamente, p−1 solucionesen Zp.

Demostracion.– Por el Pequeno Teorema de Fermat (Teorema 3.26), sabemos que1, 2, 3, . . . , p − 1 son soluciones de la ecuacion. Ademas, el Lema anterior garantizaque no hay mas.

Lema 3.18 Si d|(p − 1), la congruencia xd ≡ 1 (mod p) tiene, exactamente, dsoluciones en Zp.

Demostracion.– Por el Lema 3.15 sabemos que la congruencia tiene, a lo mas, dsoluciones. Sea k el cociente resultante de dividir p−1 entre d, es decir, p−1 = d ·k,y consideremos la identidad

xk − 1 = (x− 1)(xk−1 + · · ·+ x+ 1).

Sustituyendo en dicha identidad x por xd, se tiene:

xp−1 − 1 = (xd − 1)(xp−d−1 + · · ·+ xd + 1).

Por lo tanto, si la congruencia xd ≡ 1 (mod p) no tuviese exactamente d solucionesla congruencia xp−1 ≡ 1 (mod p) no podrıa tener exactamente p − 1 soluciones,contradiciendo el Lema 3.18.

Lema 3.19 Sean a y b enteros con ordp(a) = m y ordp(b) = n en Z∗p. Si m y n son

coprimos, el orden de ab en Z∗p es igual a mn.

Demostracion.– Llamemos d a ordp(ab). En primer lugar, es claro que (ab)mn ≡1 (mod p), por lo que, en virtud del Lema 3.13, d divide a mn. Supongamos, ahora,que d 6= mn. En tal caso, existira un primo p1 que verifica (ab)mn/p1 ≡ 1 (mod p).Puesto que mcd(n,m) = 1, p1 dividira a m o a n, pero no a los dos al mismo tiempo.Supongamos que p1|m (si p1|n el argumento serıa analogo) y que p1 no divide a n.Se tendra:

1 ≡ (ab)mn/p1 ≡ amn/p1 (bn)m/p ≡ amn/p1 (mod p).

Ahora, teniendo en cuenta que mcd(mn/p1,m) = m/p1 aplicamos el Lema 3.14 ydeducimos que am/p1 ≡ 1 (mod p), lo que contradice que m sea el orden de a en Zp.En consecuencia, d = mn.

Page 60: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

56 CAPITULO 3. CONGRUENCIAS

Teorema 3.20 Si p es primo, existe a ∈ Z∗p tal que

Z∗p = {a, a2, a3, · · · , ap−1}.

En terminos de teorıa de grupos, se dice que Z∗p es un grupo cıclico y que a es un

generador de Z∗p.

Demostracion.– Sean∏

i=1

peii la factorizacion en primos de p − 1. Por el Lema 3.17,

la congruencia xpeii ≡ 1 tiene exactamente pei

i soluciones modulo p, mientras que la

congruencia xpei−1i ≡ 1 tiene pei−1

i soluciones modulo p. Por lo tanto, existe gi que

verifica gp

eii

i = 1, pero gp

ei−1i

i 6= 1 en Zp. Es claro que el orden de gi en Zp es igual a

peii . Si g =

n∏i=1

gi, el Lema 3.19 garantiza que el orden de g en Zp es p− 1.

Sabemos que para p primo, el grupo Z∗p es cıclico. Cabe preguntarse si existen otros

enteros positivos m para los que Z∗m sea cıclico. La respuesta esta contenida en el

siguiente Teorema debido a C.F. Gauss que apareciera publicado por primera vezen el libro Disquisitiones Arithmeticae del propio Gauss publicado en 1801.

Teorema 3.21 El grupo Z∗m es cıclico si y, solo si, m = 2, 4, pk, 2pk con p > 2

primo.

Funcion de Euler

Definicion 3.22 Para un numero entero positivo m, sea ϕ(m) el numero de enterosentre 0 y m que son primos con m. La funcion ϕ recibe el nombre de Funcion deEuler. Por lo tanto,

ϕ(m) = #(Z∗m).

Ası por ejemplo, ϕ(7) = 6, ϕ(51) = 32 o ϕ(48) = 16.

¿Que valores toma la funcion de Euler y como podemos calcularla? En primer lugar,el caso mas sencillo: si p es primo, es obvio que ϕ(p) = p − 1 por cuanto todos losenteros positivos menores que p son coprimos con p. Es algo mas complicado, aunqueno deje de ser sencillo, calcular ϕ(q) con q = pα. Los enteros positivos no coprimoscon pα son p, 2p, 3p, . . . , pα. En consecuencia, tenemos pα−1 numeros enteros positivosmenores que q no coprimos con el y, por lo tanto,

ϕ(q) = q − pα−1 = q

(1− 1

p

)si q = pα (p primo)

Page 61: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

3.2. TEOREMA DE EULER-FERMAT 57

Naturalmente, no todo numero natural es primario (primario ≡ potencia de primo),aunque sı es producto de primarios. De esta manera, si suponemos que la funcion ϕverifica

ϕ(m1 ·m2) = ϕ(m1) · ϕ(m2), si mcd(m1,m2) = 1 y que

m =n∏

k=1

pαkk ,

podrıamos calcular ϕ(n) de manera sencilla, pues

ϕ(m) =n∏

k=1

ϕ (pαkk ) =

n∏k=1

pαkk

(1− 1

pk

)= m

n∏k=1

(1− 1

pk

).

Para demostrar que la formula anterior es correcta bastara ver que:

Teorema 3.23 La funcion ϕ verifica

ϕ(m1 ·m2) = ϕ(m1) · ϕ(m2), si mcd(m1,m2) = 1

Demostracion.– Retomando la notacion introducida en la Subseccion 3.1.2 (masconcretamente en la Observacion 3.6) y la definicion de ϕ bastara probar que

a ∈ Z∗m1m2

⇐⇒ ψ(a) ∈ Z∗m1× Z∗

m2

o, lo que es lo mismo, que

mcd(a,m1m2) = 1 ⇐⇒ mcd(a,m1) = 1 y mcd(a,m2) = 1

y, esta ultima afirmacion es cierta al ser m1 y m2 coprimos.

3.2. Teorema de Euler-Fermat

Teorema 3.24 (Euler-Fermat) Si a y n son coprimos,

aϕ(n) ≡ 1 (mod n).

Demostracion.– Sean k = ϕ(n) y m1,m2, . . . ,mk los enteros positivos menores quen y primos con n. Consideremos ahora los numeros

am1, am2, . . . , amk.

Page 62: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

58 CAPITULO 3. CONGRUENCIAS

Se tiene que todos ellos son coprimos con n y, ademas, son todos distintos modulon. En efecto, si ami ≡ amj (mod n), n dividirıa a a(mi − mj) y eso implicarıa,puesto que mcd(a, n) = 1, que mi ≡ mj (mod n). En consecuencia,

{m1, . . . ,mk} = {am1, . . . , amk}.

De esta ultima observacion se deduce que

akm1 · · ·mk ≡ m1 · · ·mk (mod n)

y, como, los mi son inversibles en Zn, que ak ≡ 1 (mod n).

Observacion 3.25 El Teorema anterior es util, entre otras cosas, si tratamos congrandes potencias de numeros enteros. Supongamos, por ejemplo que queremos cal-cular el resto de la division euclıdea de 21010 por 23. Como 23 es primo, sabemosque 222 ≡ 1 (mod 23), y como 1010 = 45 · 22 + 20, se tiene:

21010 ≡ (222)45220 ≡ 220 ≡ (25)4 ≡ (92)2 ≡ 122 ≡ 6 (mod 23).

Corolario 3.26 (Pequeno Teorema de Fermat) Si p es primo,

ap ≡ a (mod p)

Observacion 3.27 El Teorema 3.26 es consecuencia inmediata del Teorema deEuler-Fermat, sin mas que tener en cuenta que ϕ(p) = p− 1 y que si a ≡ 0 (mod p)es obvio que ap ≡ a (mod p).

Corolario 3.28 (Teorema de Wilson)

p es primo ⇐⇒ (p− 1)! ≡ −1 (mod p)

Demostracion.– Como la ecuacion xp−1−1 ≡ 0 (mod p) tiene como unicas soluciones1, 2, . . . , p− 1, se tiene

xp−1 − 1 ≡ (x− 1)(x− 2) · · · (x− p+ 1) (mod p).

Poniendo x = 0, se sigue el resultado.

Page 63: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

3.3. UN TEST DE PRIMALIDAD EFICIENTE 59

3.3. Un test de primalidad eficiente

Uno de los problemas fundamentales cuando se trata de enteros, es el de decidirsi un numero dado es primo o no. Desde un punto de vista meramente teorico, elTeorema de Wilson (Teorema 3.28) resuelve el problema de decidir la primalidadde un entero positivo dado n: bastarıa calcular el factorial (n − 1)! y estudiar sies, o no, congruente con −1 modulo n. Sin embargo, en la practica, el calculo delfactorial es un problema complicado desde el punto de vista computacional. Dicho deforma sencilla, incluso para numeros no demasiado grandes, el calculo del factorialrequerirıa demasiado tiempo de ejecucion y demasiado espacio de memoria.2

El objetivo de esta Seccion sera el de dar un test de primalidad eficiente, si bien detipo probabilıstico: el test de Miller-Rabin. De todas formas, no lo justificaremos ynos limitaremos a describirlo.3

El algoritmo de Miller-Rabin se basa, entre otras cosas, en la facilidad para el calculode potencias. De demostrar esta ultima afirmacion nos ocupamos en la siguienteSubseccion.

3.3.1. Algoritmo binario para el calculo de potencias

Supongamos que necesitamos calcular la potencia trigesimo septima de un entero a.La manera mas ingenua de hacerlo es calcular las potencias sucesivas,

a, a2, a3, . . . , a36, a37,

lo que implica realizar 36 productos.

Sin embargo,

a37 = a · a36 = a · (a2)18 = a · (a4)9 = a · a4 · (a4)8 = a · a4 · a32.

¿Cuantas productos necesito si actuo de esta manera? En primer lugar, 5 productospara calcular a4 y a32 haciendo (cada flecha significa elevar al cuadrado):

a→ a2 → a4 → a8 → a16 → a32.

Con otros dos productos mas, calculo a37. En total, 7 productos frente a los 36 porel metodo ingenuo.

2Siendo mas precisos, lo unico que podemos afirmar es que, a fecha de hoy, nadie sabe calcularde forma eficiente el factorial, aunque tampoco nadie haya sido capaz de probar que no sea posible.Observese, por otro lado, la analogıa entre esta situacion y la ya comentada para la factorizacionde enteros.

3El fundamento de este test de primalidad, ası como su complejidad computacional, puedeconsultarse en el libro Algorithmic Number Theory. Volume I: Efficient Algorithms de Eric Bachy Jeffrey Shallit (MIT Press, 1996).

Page 64: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

60 CAPITULO 3. CONGRUENCIAS

En realidad, ¿que hemos hecho? Simplemente, calcular la representacion binaria delexponente, en este caso, 37 = 1 + 22 + 25 (37 = (100101)2). Este razonamientoes facilmente extensible a cualquier otro exponente: si quiero calcular aα y α =2k + αk−12

k−1 + · · ·+ α222 + α12 + α0, se tendra que:

aα = aα0 · aα12 · aα222 · · · aαk−12k−1 · a2k

.

¿Cuantas multiplicaciones necesito realizar? En primer lugar, k multiplicaciones paracalcular a2, a4, . . . , a2k

y, despues, tantas como unos tenga la expresion binaria delexponente menos una. En el caso peor (todos los αi iguales a uno), 2k o dicho deotra manera, 2(blog2 αc).

El siguiente algoritmo recoge como calcular una potencia de un entero, utilizandoel esquema anterior que, recordemos, consiste en calcular la expresion binaria delexponente.

Entrada: a, αt←− 1f ←− amientras α 6= 0, hacer

si (α = 1 modulo 2)entonces t← tf

α← bα/2cf ← f 2

Salida: t

Por otro lado, lo anterior es aplicable siempre que se tenga un producto: para calcularpotencias de matrices, polinomios, enteros modulo m,... Consideremos, por ejemplo,el computo de los numeros de Fibonacci. Si se usa el hecho de que Fk+1 = Fk +Fk−1,se necesitaran realizar k adiciones para obtener Fk+1. Sin embargo, utilizando que(

1 11 0

)k

=

(Fk+1 Fk

Fk Fk−1

), (3.3)

se necesitaran unicamente 2 log2 k productos de matrices 2 × 2. La forma usual demultiplicar matrices 2 × 2 exige 8 productos y 4 sumas, luego en total 12 opera-ciones aritmeticas. En consecuencia, para calcular Fk+1, Fk y Fk−1 de una tacada senecesitaran, unicamente, 24 · blog2 kc operaciones aritmeticas. En realidad, no sonnecesarias tantas operaciones como se demuestra en el Problema 3.25.

3.3.2. Test de Miller-Rabin

Visto el algoritmo binario, volvamos al objetivo principal de la Seccion, es decir,la determinacion de la primalidad, o no, de un numero natural dado. Una primera

Page 65: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

3.3. UN TEST DE PRIMALIDAD EFICIENTE 61

idea, ya barajada y desechada en estas notas, es el uso del Teorema de Wilson. Otraposible idea serıa el uso del Pequeno Teorema de Fermat (Teorema 3.26): Si existeun entero a tal que an 6≡ a (mod) n, el entero n sera compuesto. Lamentablemente,el recıproco del Teorema de Fermat es falso, es decir, existen numeros compuestosque verifican que an ≡ a para todo a < n. A estos, se les denomina numeros deCarmichael, de los que el mas pequeno es 561.

Existen diversos metodos para saber si un numero dado es primo o no, de los queel mas eficiente es el metodo de Adleman-Huang. Sin embargo, el fundamento de lamayorıa de ellos excede con mucho el alcance del curso. Proponemos uno de ellosque, sin ser el mejor, sı que ofrece como ventaja la facilidad de implementacion:el algoritmo de Miller-Rabin. Es un metodo de tipo probabilıstico, basado en elTeorema de Fermat y que evita los numeros de Carmichael con gran probabilidadde acierto. En estas notas, nos limitaremos a describirlo:

Input: n un numero entero impar.

(1) Escoger, aleatoriamente, a en {1, . . . , n− 1}.(2) Expresar n− 1 = 2s · d, con d impar y s ≥ 1.

(3) Calcular sucesivamente

a0 ≡ ad (mod n), a1 ≡ a20 (mod n), . . . , ak ≡ a2

k−1 (mod n)

hasta que (k = s o ak ≡ 1 (mod n).)

(4) Si (k = s) y ak 6≡ 1 devolver compuesto

si no, si (k = 0) entonces devolver primo

si no, si (ak−1 6≡ −1) devolver compuesto

si no, devolver primo

Test de Miller–Rabin.

Ya hemos anunciado que este algoritmo es de tipo probabilıstico, es decir, paraalgunos casos existe una cierta probabilidad de responder de manera erronea. ¿Paraque casos? ¿Con que probabilidad? La respuesta a estas preguntas se encuentra enel resultado que sigue:

Teorema 3.29 (Caracterısticas del test de Miller-Rabin) El test de Miller-Rabin verifica las siguientes propiedades :

1. Si n ∈ N es un numero primo impar, el algoritmo siempre produce primo.

2. Si n ∈ N es un numero compuesto, el algoritmo produce compuesto para, almenos, 3/4 de los a.

De esta forma, la probabilidad de error del algoritmo de Miller-Rabin esta aco-tada superiormente por 1/4. Por otro lado, el algoritmo utiliza un numero deoperaciones binarias proporcional a (log2 n)3.

Page 66: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

62 CAPITULO 3. CONGRUENCIAS

3.4. Sistema criptografico de clave publica RSA

El objetivo que nos planteamos en esta Seccion es el de la descripcion de un sistemacriptografico conocido como RSA.4. La idea de este sistema, como la de cualquierotro sistema criptografico, es la de transmitir mensajes por canales “inseguros”(estoes, accesibles a individuos distintos del emisor y del receptor) sin que estos puedanser comprendidos mas que por el emisor y el receptor del mensaje. Logicamente,esto exige un proceso de codificacion del mensaje y una posterior decodificacion delmismo.

Para explicar el funcionamiento del sistema RSA, asumimos que todos los mensajesque enviamos son numeros. De esta forma, cada individuo de una red de clave publicaselecciona los siguientes elementos :

1. Dos numeros primos grandes p y q.

2. Halla n = pq, ϕ(n) := (p− 1)(q − 1).

3. Elige un entero e tal que , 1 < e < ϕ(n) y mcd(e, φ(n)) = 1. El numero e puedeser elegido como el resto de la division de n por φ(n). Obviamente, el maximocomun divisor de n y φ(n) es 1 en este caso. Para evitar los casos triviales, elnumero e ha de verificar 2e > pq. Ahora, observese que e = p+ q − 1.

4. Halla d = e−1 (el inverso de e en Z∗ϕ(n)).

5. Define clave Publica como (n,e) y se guarda, como clave privada, d.

Codificacion de un mensaje: Alicia (con clave publica (nA, eA) y privada dA)quiere enviar un mensaje M a Benito (con clave publica (nB, eB) y privada dB) yhace como sigue:

Puesto que Alicia conoce la clave publica de Benito, puede calcular el crip-tograma C := M eB (mod nB) y esto es lo que envıa por el canal, de tal formaque todo el mundo puede leerlo.

Decodificacion de un mensaje : Llegado el criptograma C a Benito, este lo lee.Para decodificarlo, hace :

Calcula el criptograma CdB (mod nB) utilizando su clave privada dB conocidaunicamente por el. Como, por otro lado,

CdB ≡ (M eB)dB ≡M (mod nB)

es capaz de leer el mensaje.

4El acronimo RSA contiene las iniciales de los creadores, en 1978, de este sistema: R.L. Rivest,A. Shamir y L.A. Adleman

Page 67: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

3.4. SISTEMA CRIPTOGRAFICO DE CLAVE PUBLICA RSA 63

Observacion 3.30 (Vulnerabilidad de RSA.) La seguridad del sistema RSA sefundamenta en la carencia de algoritmos eficientes de factorizacion de numeros en-teros. Para romper un sistema criptografico del tipo RSA, habrıa que factorizarpreviamente n, ya que no hay ninguna otra manera de calcular ϕ(n), para, posteri-ormente, utilizar e con el animo de calcular la clave privada d. El conocimiento dela clave privada permitirıa la posterior decodificacion de todos los mensajes enviadospor un individuo con clave publica (n, e). En estos momentos, claves publicas de 1024bits (esto es, p y q se escriben con 155 cifras decimales cada uno cifras cada uno)son invulnerables con la algorıtmica actual y las potencias de calculo disponibles

Senalemos, finalmente, que todos los calculos que conlleva RSA (calculo de poten-cias, inversos modulares,...) se pueden realizar de forma eficiente con el uso de losalgoritmos que hemos desarrollado a lo largo del tema, excepto el encontrar los pri-mos grandes.

Page 68: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

64 CAPITULO 3. CONGRUENCIAS

3.5. Problemas propuestos

Problema 3.1 .- Demostrar las siguientes propiedades de las congruencias:

a ≡ b (mod n) y d|n =⇒ a ≡ b (mod d).

ka ≡ kb (mod n) y k 6= 0 ⇐⇒ a ≡ b (mod nmcd(n,k)

).

a ≡ b (mod n) y a ≡ b (mod m) ⇐⇒ a ≡ b (mod mcm(m,n)).

Problema 3.2 .- Encontrar todos los numeros naturales n que verifiquen

97 ≡ 287 (mod n).

Problema 3.3 .- Demostrar que si p es primo y a2 ≡ b2 (mod p), se tiene quep|(a+ b) o p|(a− b). ¿Puede decirse lo mismo si p no es primo?

Problema 3.4 .- Estudiar la existencia de solucion de las ecuaciones que siguen y,en el caso de que tengan solucion, calcular todas las soluciones enteras.

(a) 24X ≡ 7 (mod 40) (b) 13X ≡ 7 (mod 10) (c) 525X ≡ 237 (mod 423)(d) 1215X ≡ 560 (mod 2755) (e) 2X ≡ 1 (mod 3) (f) 234X ≡ 3 (mod 244)(g) 20X ≡ 30 (mod 4) (h) 20X ≡ 4 (mod 30) (i) 3X ≡ 2 (mod 7)

Problema 3.5 .- Encontrar las soluciones enteras de los sistemas siguientes:

(a)

{3x+ 6y ≡ 2 (mod 8)5x+ 3y ≡ 0 (mod 8)

(b)

{11x+ 3y ≡ 5 (mod 7)3x+ 7y ≡ 3 (mod 7)

Problema 3.6 .- Estudiar la existencia de solucion y, en su caso, resolver:

(a)

x ≡ 3 (mod 4)x ≡ 5 (mod 7)x ≡ 6 (mod 9)

(b)

x ≡ 1 (mod 7)x ≡ 0 (mod 5)x ≡ 1 (mod 3)

(c)

x ≡ 5 (mod 8)x ≡ 1 (mod 20)x ≡ 3 (mod 7)

(d)

x ≡ 2 (mod 5)x ≡ 4 (mod 10)x ≡ 38 (mod 47)

(e)

x ≡ 1 (mod 3)x ≡ 0 (mod 5)x ≡ 4 (mod 7)x ≡ 5 (mod 27)x ≡ 6 (mod 1233)

Page 69: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

3.5. PROBLEMAS PROPUESTOS 65

Problema 3.7 .- Estudia para que numeros enteros positivos a el sistema de con-gruencias

x ≡ 1 (mod 7)x ≡ 2 (mod 54)x ≡ a (mod 189)

tiene solucion y resuelvelo para el menor de todos ellos.

Problema 3.8 .- ¿Queda unıvocamente determinado un numero positivo sabiendoque es estrictamente menor que 1106 y conociendo el resto de dividirlo por 23, 16 y3?

Problema 3.9 .- Demostrar, usando unicamente congruencias, que para todo na-tural n, el numero

32n+5 + 24n+1

es multiplo de 7.

Problema 3.10 .- Encontrar las tres ultimas cifras decimales de 31234.

Problema 3.11 .- Calcular el resto de la division de 16541255 por 23. Hacer lomismo con 31767 y 29.

Problema 3.12 .- Dados numeros natural n y b, denotemos por (ak · · · a1a0)b larepresentacion de n en base b (n = akb

k + ak−1bk−1 + · · ·+ a1b+ a0). Demostrar que

se verifica:

Si d es un divisor de b y j y k son enteros positivos con j < k, (ak · · · a1a0)b esdivisible por dj si, y solo si, (aj−1 · · · a1a0)b es divisible por dj.

Problema 3.13 .- Encontrar todos los numeros enteros positivos x que verificanlas siguientes condiciones:

a) 6x ≡ 4 (mod 10)

b) El resto de dividir x por 8 es igual a y + 5, con

y ≡ (1843)138648568243871569 (mod 11)

y 0 ≤ y < 11.

Page 70: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

66 CAPITULO 3. CONGRUENCIAS

Problema 3.14 .- Un sistema de congruenciasx ≡ a1 (mod b1)x ≡ a2 (mod b2)

......

x ≡ an (mod bn)

con los modulos bi distintos y mayores que uno, se dice completo si todo numeroentero satisface, al menos, una de las congruencias. Demostrar que el sistema decongruencias

x ≡ 0 (mod 2)x ≡ 0 (mod 3)x ≡ 1 (mod 4)x ≡ 1 (mod 6)x ≡ 11 (mod 12)

es completo.

Problema 3.15 .- Un barco pirata naufraga y doce de sus tripulantes consiguenllegar a una isla desierta. Su primera tarea es la de dedicarse a recoger cocos queacumulan en una pila para repartırselos equitativamente a la manana siguiente.Aunque ninguno dice nada, todos los piratas se dan cuenta de que si se hace elreparto equitativo sobrarıan 3 cocos, ası que a lo largo de la noche se levantantodos ellos y se comen 3 cocos sin que el resto se entere. Esa misma noche muerendos piratas y el resto decide repartirse los cocos, descubriendo que esta vez sobrancinco. Explicar por que se desencadena una trifulca entre los piratas sobrevivientesy encontrar el mınimo numero de cocos recogidos por los piratas sabiendo que eranmas de quinientos.

Problema 3.16 .- Una anciana va al mercado y un caballo pisa su bolsa y rompelos huevos que llevaba en ella. El jinete se ofrece a repararle los danos y le preguntaa la anciana cuantos huevos llevaba. Ella no recuerda el numero exacto, pero sı quesi los sacaba de dos en dos, finalmente le quedaba uno en la bolsa y lo mismo leocurrıa si los sacaba de tres en tres, de cuatro en cuatro, de cinco en cinco y de seisen seis. Sin embargo, si los sacaba de siete en siete, la bolsa quedaba vacıa. ¿Cuales el menor numero de huevos que llevaba la anciana en su bolsa? 5

Problema 3.17 .- Tres agricultores se dividen una cierta cantidad de arroz enpartes iguales obteniendo cada uno una cantidad natural de kilos. Cada uno de losagricultores vende su propio arroz en mercados distintos que utilizan pesos de 100kilos, 45 kilos y 31 kilos y solo compran multiplos enteros de estos pesos. ¿Cual esla menor cantidad de arroz que se han divido los agricultores si regresan a casa con60, 25 y 15 kilos de arroz respectivamente?

5Este problema fue propuesto y resuelto por el matematico indio Brahmagupta (nacido alrede-dor del ano 598).

Page 71: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

3.5. PROBLEMAS PROPUESTOS 67

Problema 3.18 .- Responder las dos preguntas siguientes:

i) ¿Existe algun numero entero b ∈ Z que verifique 14 b ≡ 5 (mod 294)?

ii) Sea a un numero natural tal que 0 ≤ a < 500 y tal que las tres ultimas cifrasdecimales de 17a son 001. ¿Quien es a?

Problema 3.19 .- (Residuos cuadraticos ) Un entero a se dice residuo cuadraticomodulo n si mcd(a, n) = 1 y la ecuacion

x2 ≡ a (mod n)

posee solucion. Por ejemplo, en Z11, los residuos cuadraticos son 1, 3, 4, 5 y 9.

i) Sea n = 2, 4, pk, 2pk (p primo impar). Demostrar que a es residuo cuadraticosi, y solo si, aϕ(n)/2 ≡ 1 (mod n).

ii) Sea p un primo impar y mcd(a, p) = 1. Demostrar que a es residuo cuadratico

modulo p si ap−12 ≡ 1 (mod p) y que a no es residuo cuadratico modulo p si

ap−12 ≡ −1 (mod p).

iii) Demostrar que en Zp (p primo impar) hay tantos residuos cuadraticos comono residuos cuadraticos.

iv) Demostrar que la ecuacion X2 + 1 ≡ 0 (mod p) tiene solucion si, y solo si,p = 2 o p ≡ 1 (mod 4).

Problema 3.20 .- Demostrar que las ecuaciones X2 +Y 2 = 5Z2 y X2 +Y 2 = 13Z2

tienen soluciones enteras no triviales (es decir, distintas de X = 0, Y = 0, Z = 0).Demostrar que las ecuaciones X2+Y 2 = 3Z2 y X2+Y 2 = 11Z2 no tienen solucionesenteras distintas de la trivial.

Problema 3.21 .- En este ejercicio vamos a probar que 2 es residuo cuadraticomodulo un primo impar p si, y solo si, p ≡ ±1 (mod 8).6

Consideremos los conjuntos

C = {1, 2, . . . , p− 1

2},

2C = {2, 4, . . . , p− 1},

A = {a1, a2, . . . , ar} = {x ∈ 2C : x >p− 1

2},

6El argumento que vamos a utilizar es debido a Gauss.

Page 72: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

68 CAPITULO 3. CONGRUENCIAS

B = {b1, b2, . . . , bt} = {x ∈ 2C : x ≤ p− 1

2}

yD = {p− a1, . . . , p− ar, b1, . . . , bt}.

Si denotamos π(T ) el producto de los elementos de un conjunto T , demostrarque

(−1)rπ(C) ≡ 2p−12 π(C) (mod p)

y deducir que 2 es residuo cuadratico modulo p si r es par y no es residuocuadratico si r es impar.

Si denotamos por |T | la suma de los elementos de un conjunto T demostrarque:

2|C| = |A|+ |B| y |C| = pr − |A|+ |B|.

Usando el apartado anterior y estas identidades, concluir el enunciado delejercicio.

Problema 3.22 .- Lo hecho en el Ejercicio anterior puede aplicarse al estudio dela primalidad de los numeros de Mersenne. Demostrar que si q es un factor primode 2p − 1, se tiene:

q ≡ 1 (mod p) y q ≡ ±1 (mod 8).

Usar este resultado para probar que 213−1 y 217−1 son primos. Encontrar tambienfactores no triviales de 223 − 1, 229 − 1, 237 − 1 y 243 − 1.

Problema 3.23 .- Sea r un natural con 1 ≤ r ≤ 9 y considerese la sucesion denumeros enteros (dados en base 10):

r, rr, rrr, rrrr, rrrrr, ...

(p.e., si r = 1, la sucesion es 1, 11, 111, 1111, . . .). Estudiar para que primos y paraque enteros r (1 ≤ r ≤ 9) es cierta la afirmacion:

p divide a infinitos terminos de la sucesion r, rr, rrr, rrrr, rrrrr, ...

Indicacion: Estudiar por separado los casos p = 2, 3, 5.

Problema 3.24 .- Probar las siguientes propiedades de la sucesion de Fibonacci:

i) (−1)k = Fk−1Fk+2 − FkFk+1. (k ≥ 1)

ii) Fn+k+1 = FnFk + Fn+1Fk+1. (k, n ≥ 0)

Page 73: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

3.5. PROBLEMAS PROPUESTOS 69

iii) Si k ≥ 1, Fk divide a Fnk para cualquier natural n ≥ 1.

iv) Si Fn es primo, entonces n es primo (salvo n = 4.) (Nota: El recıproco no escierto. Por ejemplo, F19 = 4181 = 37 ∗ 113).

Indicacion: Empleese la ecuacion (3.3) de los apuntes.

Problema 3.25 .- Probar que se puede calcular el k-esimo numero de Fibonaccirealizando, unicamente, 6 · blog2 kc sumas y 6 · blog2 kc productos.

Problema 3.26 .- Comprobar que el millonesimo numero de Fibonacci es divisiblepor 7.

Page 74: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

70 CAPITULO 3. CONGRUENCIAS

Page 75: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

Capıtulo 4

El anillo de polinomios K[x]

Notacion: A lo largo del Capıtulo, K denotara siempre un cuerpo.

4.1. Polinomios y divisibilidad

Definicion 4.1 (Anillo de polinomios) El anillo de polinomios con coeficientesen un cuerpo K, es el conjunto

K[X] = {a0 + a1X + · · ·+ anXn : ai ∈ K}

junto con las operaciones suma y producto de polinomios definidos en la forma usual.

Todo polinomio no nulo puede escribirse en la forma f(X) =d∑

i=0

aiXi con ad 6= 0

para algun d ≥ 0. En este caso, el numero natural d se dice grado del polinomio y lodenotaremos por gr(f). De esta forma, las llamadas constantes (los elementos de K)son los polinomios de grado cero. Asimismo, se define gr(0) = −∞. Con respecto alas propiedades aritmeticas, el grado verifica:

1. gr(f · g) = gr(f) + gr(g)

2. gr(f + g) = max{gr(f), gr(g)}

En lo referente a la divisibilidad, el anillo de polinomios tiene un comportamientoanalogo al anillo de los numeros enteros. Esto es debido a que es un dominio deintegridad y que posee division euclıdea (el papel del valor absoluto lo juega ahorael grado).

71

Page 76: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

72 CAPITULO 4. EL ANILLO DE POLINOMIOS K[X]

4.1.1. Division euclıdea

Si en el caso de los enteros se tenıa una aplicacion:

| · | : Z −→ N

y que dados cualesquiera a y b, existıan q y r enteros tales que:

a = q · b+ r, con r positivo y r < |b|,

en el caso del anillo de polinomios el papel de esa aplicacion lo juega la aplicaciongrado :

gr(·) : K[X] −→ N

y se tiene que, para cualesquiera polinomios f(X) y g(X), existen polinomios q(X)y r(X) tales que:

f(X) = g(X)q(X) + r(X), gr(r) < gr(g)

Unidades: De las propiedades del grado, se deduce que los unicos elementos in-versibles en el anillo K[X] son las constantes.

Polinomios monicos: Se llaman polinomios monicos a aquellos cuyo coeficientedirector (es decir, el coeficiente de la potencia mayor de X) es 1. Estos polinomiosmonicos juegan el papel que, en el caso del anillo de los enteros, jugaban los numerospositivos. Del mismo modo que en Z, todo entero podıa escribirse como el productode una unidad (±1) por un entero positivo, en este caso todo polinomio puedeescribirse como una unidad en K[X] por un polinomio monico. En efecto, cualquier

polinomio f(X) =d∑

i=0

aiXi, lo podemos escribir, ya que ad 6= 0, en la forma:

f(X) = ad

(Xd +

ad−1

ad

Xd−1 +ad−2

ad

Xd−2 + · · ·+ a1

ad

X +a0

ad

)

Primos: Un polinomio monico no constante se dice primo (o irreducible) si losunicos polinomios monicos que lo dividen son el 1 y el propio polinomio. Usandoel mismo argumento que en el caso de los enteros, se puede demostrar que existeninfinitos (vease el Teorema 2.5 y su demostracion). Es evidente que los polinomiosmonicos de grado uno son todos primos, independientemente de K. En general, laforma de los polinomios primos depende del cuerpo de coeficientes. Ası, se tiene:

K = Q. Existen polinomios primos de cualquier grado. Por ejemplo, Xn +p esirreducible para cualquier entero primo p (si no fuese primo, tampoco lo serıap).

Page 77: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

4.1. POLINOMIOS Y DIVISIBILIDAD 73

K = R. Los polinomios primos en este caso son de dos tipos:

• X − α, para cualquier numero real α y

• (X − α)2 + β2, con α ∈ R y β ∈ R \ {0}.

K = C. Los unicos polinomios primos son los monicos de grado uno. (TeoremaFundamental del Algebra)

K = Zp. Existen polinomios primos de cualquier grado.

Teorema 4.2 (Criterio de Einsenstein) Sea f(x) = a0 + a1x+ · · · anxn ∈ Z[x].

Maximo comun divisor, Algoritmo de Euclides, Identidad de Bezout.Todo lo que sabemos de Z con respecto al maximo comun divisor, identidad deBezout, factorizacion unica en primos, ecuaciones diofanticas lineales,... funcionaexactamente igual en el caso de los anillos de polinomios K[X], incluido lo referentea los algoritmos de Euclides y Euclides extendido.

Ejemplo 4.3 Encontrar una identidad de Bezout para los polinomios g(X) = X3+1y f(X) = X4 +X3 + 2X2 +X + 1 de Q[X]: X4 +X3 + 2X2 +X + 1 X3 + 1

1 00 1

Dado que f(X) = g(X)(X + 1) + 2X2, sustituimos la matriz anterior por 2X2 X3 + 1

1 0−(X + 1) 1

Ahora, como X3 + 1 = 1

2X · 2X2 + 1, se llega a la matriz: 2X2 1

1 −12X

−(X + 1) 12X2 + 1

2X + 1

,

de donde se deduce que los polinomios son coprimos y la siguiente identidad deBezout:

1 =

(−1

2X

)f(X) +

(1

2X2 +

1

2X + 1

)g(X)

Congruencias. Al igual que en el caso de los enteros, podemos definir la relacionde equivalencia ser congruente modulo un polinomio monico f(X) ∈ K[X]:

Page 78: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

74 CAPITULO 4. EL ANILLO DE POLINOMIOS K[X]

Dos polinomios g(X) y h(X) en K[X] se dicen congruentes modulo unpolinomio monico f(X) si, y solo si, f(X) divide a g(X)− h(X).

Del mismo modo que en el caso de los enteros, se puede dotar al conjunto cocienteresultante de la relacion de equivalencia anterior de estructura de anillo. Habitual-mente, este anillo se denota por:

K[X]/(f(X)).

Se tiene:

Teorema 4.4 El anillo K[X]/(f(X)) es un cuerpo si, y solo si, f(X) es un poli-nomio irreducible.

4.2. Cuerpos finitos

En todo lo estudiado hasta ahora solo nos hemos encontrado con un unico tipo decuerpos de cardenal finito de elementos: el cuerpo formado por los enteros moduloun primo Zp. ¿Hay mas?

El Teorema 4.4 nos permite responder afirmativamente a la pregunta anterior:

Supongamos dado un polinomio irreducible f(X) de grado α en Zp[X]. El Teoremacitado garantiza que Zp[X]/(f(X)) es un cuerpo que tiene, exactamente, pα elemen-tos. Ası pues, dado que en Zp[X] existen polinomios irreducibles de cualquier grado,sabemos que para cada numero primario pα, existe un cuerpo con exactamente

Ejemplo 4.5 Construir un cuerpo con exactamente 27 elementos.

Puesto que 27 = 33, si p(x) es un polinomio irreducible en Z3[x] de grado 3,Z3[x]/(p(x)) tiene estructura de cuerpo y 27 elementos. Por lo tanto, para construirun cuerpo con 27 elementos, unicamente hay que encontrar un polinomio irreduciblede grado 3 en Z3[x]. Puesto que el grado es 3, esto es equivalente a encontrar unpolinomio de grado 3 en Z3[x], sin raıces en Z3. Como x3 = x para todo x ∈ Z3,podemos tomar p(x) = x3 − x+ 1. Esto es,

Z3[x]/(x3 − x+ 1)

es un cuerpo con 27 elementos.

Page 79: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

Capıtulo 5

Matrices y sistemas de ecuacioneslineales

5.1. Matrices sobre un cuerpo. Definiciones y no-

tacion

Esta primera Seccion esta dedicada a la introduccion de la terminologıa usual aso-ciada a las matrices. En primer lugar, definimos el propio concepto de matriz sobreun cuerpo K.

Definicion 5.1 Dados numeros naturales n y m, se dice matriz m × n sobre K aun cuadro de elementos de la forma:

A =

a11 · · · a1n... · · · ...am1 · · · amn

Habitualmente, escribiremos:

A =

a11 · · · a1n... · · · ...am1 · · · amn

Cuando m = n, se dira que la matriz es cuadrada de orden n. Por otro lado, demanera abreviada escribiremos A = (aij).

Notacion: El conjunto de matrices m × n sobre un cuerpo K habitualmente sedenota por Mm×n(K), mientras que el conjunto de matrices cuadradas de orden nse denota por Mn(K).

Una matriz m× n esta formada por m n−tuplas, conocidas por el nombre de filas,a saber:

75

Page 80: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

76 CAPITULO 5. MATRICES Y SISTEMAS DE ECUACIONES LINEALES

A1 = (a11 . . . a1n)...

An = (am1 . . . amn)

De manera similar, podemos considerarla formada por n m−tuplas, llamadas colum-nas de la matriz:

A1 =

a11...am1

· · · An =

a1n...

amn

Definicion 5.2 Dada una matriz A m × n sobre K, se dice traspuesta de A a lamatriz n×m cuyo termino (i, j) es el termino (j, i) de A. Se escribe At.

Definicion 5.3 Una matriz cuadrada se dice simetrica si At = A y se dice anti-simetrica si aij = −aji.

Definicion 5.4 Sea A = (aij) una matriz m× n sobre un cuerpo K.

1. Se llama diagonal principal de A a la familia (a11, . . . , ass) donde s es igual ala cantidad mın{m,n}.

2. La matriz A se dice triangular superior si m = 1 o aij = 0, ∀ i > j. Es decir,si todos los elementos por debajo de su diagonal principal son cero.

3. La matriz A se dice triangular inferior si n = 1 o aij = 0, ∀ i < j. Es decir,si todos los elementos por encima de su diagonal principal son cero.

4. Una matriz cuadrada se dice diagonal si aij = 0 ∀ i 6= j. En tal caso, escribire-mos diag[a11, . . . , ann].

5. Una matriz se dice escalar si es diagonal y a11 = . . . = ann.

6. Se llama matriz identidad de orden n, y se escribe In, a la matriz escalar cuyosterminos diagonales son todos iguales a 1K.

7. Se dice matriz cero a la matriz cuyos terminos son todos nulos. Se escribe (0).

Page 81: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

5.2. RANGO DE UNA FAMILIA DE VECTORES DE KN 77

5.1.1. Operaciones con matrices

Repasamos, a continuacion, las operaciones usuales que se pueden realizar entre ycon matrices.

Definicion 5.5 (Operaciones con matrices) Se definen :

1. Suma de matrices: Si A = (aij) y B = (bij) son dos matrices de Mm×n(K),se define

A+B := (aij + bij)1≤i≤m,1≤j≤n .

2. Producto de una matriz por una constante: Si A = (aij) es una matrizde Mm×n(K) y λ ∈ K,

λA := (λaij)1≤i≤m,1≤j≤n .

3. Producto de dos matrices: Dadas matrices A ∈Mm×n(K) y B ∈Mn×t(K),A ·B es la matriz m× t con coeficientes en K definida por:

A ·B :=

(n∑

k=1

aikbkj

)1≤i≤m,1≤j≤t

.

Si consideramos el conjunto Mn(K) junto a las operaciones suma y producto quehemos definido anteriormente, se puede probar que estas dotan al conjunto de estruc-tura de anillo (no conmutativo) con elemento identidad. En este caso, las unidadesdel anillo reciben un nombre especial: se les llama matrices regulares.

5.2. Rango de una familia de vectores de Kn

Una solucion de un sistema de ecuaciones lineales m×n es una n–tupla de elementosde K. Por otro lado, una matriz se puede interpretar como un conjunto de vectores,es decir, elementos de algun Kn (fila o columna). Conviene pues, estudiar algunasnociones en torno a los vectores de Kn. Empecemos, pues, por el principio.

Los elementos de Kn se denominan vectores y los de K escalares. Vectores notablesson:

(0) = (0, 0, . . . , 0) (vector nulo)e1 = (1, 0, . . . , 0)e2 = (0, 1, . . . , 0)...

......

en = (0, 0, . . . , 1)

Tales vectores se suman y multiplican por escalares (es decir, elementos del cuerpoK) en la manera conocida.

Page 82: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

78 CAPITULO 5. MATRICES Y SISTEMAS DE ECUACIONES LINEALES

El objetivo final de la Seccion es el de definir el concepto de rango de una familia devectores en Kn y disenar un algoritmo para su calculo. Pero antes, una definicion:

Definicion 5.6 Una familia {v1, . . . , vm} de vectores de Kn se dice:

1. libre si

t1v1 + · · ·+ tnvn = (0) =⇒ t1 = . . . = tn = 0,

2. y ligada si no es libre.

Ejemplo 5.7 1. La familia {(1, 2), (3, 2)} de vectores de R2 es una familia libre.

2. La familia {(1, 2, 3), (2, 1, 0), (1,−1,−3)} es una familia ligada, pues se verifica(1,−1,−3) = −(1, 2, 3) + (2, 1, 0).

3. Cualquier familia que contenga al vector nulo es ligada.

4. Cualquier familia que contenga vectores repetidos es ligada.

El siguiente Lema tecnico, cuya prueba dejamos como ejercicio, lo utilizaremos enel resultado principal de esta Seccion (Proposicion 5.11).

Lema 5.8 Si {v, v1, . . . , vm} es ligada y {v1, . . . , vm} es libre, existen escalares titales que v = t1v1 + . . .+ tmvm.

Llegados a este punto, podemos definir el concepto de rango que es clave en eldesarrollo del resto del Capıtulo.

Definicion 5.9 (Rango de una familia de vectores) Dada una familia de vec-tores de Kn, se dice rango al maximo tamano de sus subfamilias libres.

Ejemplo 5.10 El rango de la familia {(0, 0, 0), (1, 2, 3), (π,√

2, 1), (1, 2, 3)} ⊆ R3 es2, pues cualquier familia con mayor numero de elementos contendra al vector nuloo dos vectores repetidos y la subfamilia {(1, 2, 3), (π,

√2, 1)} es libre.

Aunque en el ejemplo anterior nos ha sido sencillo el calculo del rango, en general,esta no es una tarea sencilla utilizando como unica herramienta la definicion. Elalgoritmo que estudiaremos para el calculo del rango esta basado en el concepto deoperacion elemental que se presenta en la siguiente Proposicion:

Proposicion 5.11 (Operaciones elementales de vectores) Dada una familiade vectores de Kn, V := {v1, . . . , vm}, las siguientes operaciones no alteran el rangode la misma:

1. Intercambiar el orden de dos vectores.

Page 83: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

5.2. RANGO DE UNA FAMILIA DE VECTORES DE KN 79

2. Sustituir un vector por el mas un multiplo de otro.

3. Multiplicar un vector por un escalar no nulo.

Las operaciones anteriores las llamaremos operaciones de tipo 1, 2 y 3 respectiva-mente.

Demostracion.– Siendo evidente que las operaciones de tipo 1 no alteran el rango,estudiaremos que es lo que ocurre con las de tipo 2 y de tipo 3, empezando por estasultimas. Supongamos la operacion de tipo 3

{v1, v2, . . . , vn} −→ {sv1, v2, . . . , vn} (5.1)

y veamos que no varıa el rango. Sea r el rango de V y veamos que

rang({sv1, . . . , vn}) ≥ r.

Si existe una familia libre de V con r vectores que no contenga a v1, ha de sersubfamilia libre de {sv1, v2, . . . , vn} y, por lo tanto, se verifica la desigualdad (5.1).Si no, sea {v1, vi2 , . . . , vir} la familia libre que debe existir; entonces es claro que{sv1, vi1 , . . . , vir} es subfamilia libre de V y, tambien en este caso, se verifica (5.1)Por otro lado,

rang({sv1, v2, . . . , vn}) ≤ rang({s−1sv1, v2, . . . , vn}) = rang(V) (5.2)

Uniendo las desigualdades (5.1) y (5.2) se concluye que

rang({sv1, v2, . . . , vn}) = rang(V).

Para las operaciones de tipo 2 podemos suponer que la operacion es:

{v1, v2, . . . , vn} −→ {v1 + tv2, v2, . . . , vn}Probaremos, como hicimos antes, que

r = rang(V) ≤ rang({v1 + tv2, v2, . . . , vn}).Si existe una subfamilia libre de V que no contenga a v1, nada habrıa que probar.En caso contrario, sea {v1, vi2 , . . . , vir} la familia libre que debe existir; entonces{v2, vi2 , . . . , vir} es ligada y, segun el Lema 5.8 v2 = t2vi2 + · · ·+ trvir . Ahora, es facilver que {v1 + tv2, vi2 , . . . , vir} es una subfamilia libre de {v1 + tv2, v2, . . . , vn}.Por otro lado,

rang({v1 + tv2, v2, . . . , vn}) ≤ rang({v1 + tv2 − tv2, v2, . . . , vn}) = rang(V).

Page 84: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

80 CAPITULO 5. MATRICES Y SISTEMAS DE ECUACIONES LINEALES

5.3. Rango por filas y por columnas de una matriz

Las definiciones de rango por filas y por columnas de una matriz A ∈Mm×n son lasesperables, es decir, el rango por filas de A, escrito rf (A), es el rango de las filas deA vistas como vectores de Kn, mientras que el rango por columnas, escrito rc(A) esel rango de las columnas de A vistas como vectores de Km.

Definicion 5.12 Una matriz m× n sobre K se dice escalonada por filas si m = 1o:

Sus filas cero son las ultimas.

El primer elemento no nulo de cada fila no nula, denominado pivote, esta a laderecha del pivote de la fila superior.

En virtud de la definicion, las matrices escalonadas por filas tienen la siguienteforma:

0 · · · 0 a1j a1j+1 · · · · · · · · · · · · · · · a1n

0 · · · · · · · · · · · · 0 a2h · · · · · · · · · a2n... · · · · · · · · · · · · · · · · · · · · · · · · · · · ...

0 · · · · · · · · · · · · · · · · · · 0 ars · · ·...

0 · · · · · · · · · · · · · · · · · · · · · · · · · · · 0... · · · · · · · · · · · · · · · · · · · · · · · · · · · ...0 · · · · · · · · · · · · · · · · · · · · · · · · · · · 0

Definicion 5.13 Una matriz A m × n sobre K se dice reducida por filas si esescalonada por filas y ademas:

1. Sus pivotes son todos 1.

2. En la columna que ocupa cada pivote, los elementos anteriores a este son todoscero.

Definicion 5.14 Una matriz A m × n sobre K se dice reducida (respectivamenteescalonada) por columnas si su traspuesta lo es por filas.

Ejemplo 5.15 1.- La matriz 4× 52 3 4 5 00 2 1 3 00 0 0 1 20 0 0 0 1

es escalonada por filas pero no reducida.

Page 85: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

5.3. RANGO POR FILAS Y POR COLUMNAS DE UNA MATRIZ 81

2.- La matriz

2 3 4 5 00 0 0 2 00 0 1 2 30 0 0 0 1

es triangular superior, pero no escalonada por filas.

3.- La matriz 1 3 0 0 00 0 1 0 00 0 0 1 00 0 0 0 1

es reducida por filas.

Observacion 5.16 El interes de las matrices escalonadas reside en el hecho de surango por filas se lee directamente (basta contar el numero de filas no nulas). Elinteres de las matrices reducidas es que se corresponden con sistemas facilmenteresolubles.

En virtud de lo discutido hasta ahora,

Teorema 5.17 Sea A ∈Mm×n(K). Son equivalentes:

i) rf (A) = r

ii) Existe un numero finito de operaciones elementales (de tipo 1 y 2) en las filasde A que conducen a una matriz escalonada por filas con, exactamente, lasm− r ultimas filas nulas.

iii) Existe un numero finito de operaciones elementales en las filas de A que con-ducen a una matriz reducida por filas con, exactamente, las m−r ultimas filasnulas.

Demostracion.– Para probar que ii) implica iii), sea F la matriz obtenido en ii) yci el pivote de la fila i. Multiplicando la fila por c−1

i hacemos que el pivote sea 1.Ahora, haciendo operaciones elementales en las filas, es facil conseguir que todos loselementos por encima de cada pivote sean cero.

Es tambien claro que iii) implica i) (ya que las operaciones elementales no varıanel rango por filas). Por lo tanto, unicamente queda ver que i) implica ii). Paraprobarlo, razonaremos por induccion en m (numero de filas) construyendo, de paso,un algoritmo para el calculo del rango por filas.

Si m = 1 la implicacion es obvia, pues estarıamos ante una matriz fila.

Page 86: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

82 CAPITULO 5. MATRICES Y SISTEMAS DE ECUACIONES LINEALES

Supongamos que m > 1; si la matriz es la matriz nula, nada habrıa que hacer. Sila matriz no es nula, sea Aj la primera columna no cero y aij el primer termino nonulo de dicha columna. Entonces, permutando la fila i y la fila 1, si i 6= 1, podemossituar aij en el lugar (1, j):

A =

0 · · · 0 0 · · · a1n...

. . ....

......

0 · · · 0 aij · · · ain...

. . ....

......

0 · · · 0 amj · · · amn

−→ A1 =

0 · · · 0 aij · · · ain...

. . ....

......

0 · · · 0 0 · · · a1n...

. . ....

......

0 · · · 0 amj · · · amn

Ahora, mediante operaciones elementales en las filas de A1 (restandole a la filak−esima, la primera multiplicada por akj/aij)) podemos hacer ceros en la columnaj por debajo del pivote de la primera fila. Llegamos ası a una matriz B de la forma

B =

0 · · · 0 aij · · · ain...

. . ....

......

0 · · · 0 0 · · · a1n...

. . ....

......

0 · · · 0 0 · · · amn

Si llamamos C a la submatriz de B formada por las filas 2, . . . ,m y por las columnasj+1, . . . , n, es claro que esta tiene rango r− 1. Aplicando la hipotesis de induccion,existiran un numero finito de operaciones elementales en las filas de C que conducena una matriz E escalonada por filas con las m − r ultimas filas nulas. Ahora, lamatriz:

F =

0 · · · 0 aij aij+1 · · · ain

0 · · · · · · 0... · · · · · · ...0 · · · · · · 0

E

es escalonada por filas. Basta notar, para acabar, que hacer operaciones elementalesen C equivale a hacer operaciones en B.

Para comprender como funciona el algoritmo subyacente a la demostracion de laProposicion inmediatamente anterior, apliquemoslo a un ejemplo concreto:

Ejemplo 5.18 Calculese el rango por filas de la matriz racional:

A =

1 2 3 02 4 3 23 2 1 36 8 7 5

Page 87: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

5.3. RANGO POR FILAS Y POR COLUMNAS DE UNA MATRIZ 83

En este caso, la primera columna no nula es la primera y el primer elemento de lamisma es tambien el primero. Debemos hacer ceros por debajo del elemento (1, 1)de la matriz. Para ello, a la segunda fila le restamos la primera multiplicada por 2,a la tercera la primera multiplicada por 3 y a la cuarta la primera multiplicada por6, llegando a la matriz:

A1 =

1 2 3 00 0 −3 20 −4 −8 30 −4 −11 5

Ahora, la primera columna no nula de la submatriz

C =

0 −3 2−4 −8 3−4 −11 5

es la primera cuyo primer elemento no nulo es el segundo. Ası debemos intercambiarlas filas primera y segunda de la submatriz C o, lo que es lo mismo, las filas segunday tercera de A1. Llegamos ası a la matriz

A2 =

1 2 3 00 −4 −8 30 0 −3 20 −4 −11 5

Ahora restando a la cuarta fila de A2 la segunda, llegamos a

A3 =

1 2 3 00 −4 −8 30 0 −3 20 0 −3 2

Por ultimo, restando a la cuarta fila de A3 la tercera, llegamos a la matriz escalonadapor filas

1 2 3 00 −4 −8 30 0 −3 20 0 0 0

,

luego el rango por filas de A es 3.

Observacion 5.19 Mutatis mutandi, todo lo dicho hasta ahora para el rango porfilas, puede decirse igualmente para el rango por columnas. Por ejemplo, el Teorema5.17 anterior y su demostracion se trasladan al caso de columnas cambiando lapalabra fila por la palabra columna.

Page 88: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

84 CAPITULO 5. MATRICES Y SISTEMAS DE ECUACIONES LINEALES

En otro orden de cosas es facil probar, a partir del Teorema 5.17 los dos corolariossiguientes (que pueden ser escritos igualmente en terminos de columnas):

Corolario 5.20 Si rf (A) = r y A es escalonada por filas, un numero finito deoperaciones elementales en las columnas de A conducen a la matriz(

Ir 00 0

),

que denotaremos por [Ir, 0].

Ahora, juntando el Teorema 5.17 con el Corolario inmediatamente anterior se tiene:

Corolario 5.21 Si rf (A) = r, existe un numero finito de operaciones elementalesen filas y columnas de A que conducen a la matriz [Ir, 0].

5.4. Rango de una matriz. Matrices elementales

En esta Seccion trataremos de mostrar que los rangos por fila y por columna intro-ducidos en la Seccion anterior son iguales. Para llegar a ello, en primer lugar veremoscomo ”simular”mediante productos de matrices las operaciones elementales tanto enfilas como en columnas. Con este fin, se introducen las conocidas como matrices e-lementales.

5.4.1. Matrices elementales

Empecemos definiendo las ya anunciadas matrices elementales:

Definicion 5.22 (Matrices elementales) Se dice matriz elemental de orden n:

1. de tipo 1, Pij, a la matriz que resulta de permutar en la matriz identidad (In)las filas i y j;

2. de tipo 2, Pij(t) (i 6= j), a la matriz que resulta de sumarle a la fila i de lamatriz identidad (In), la fila j multiplicada por t;

3. de tipo 3, Qi(s), a la matriz que resulta de multiplicar la fila i de la matrizidentidad (In) por un escalar s distinto de cero.

Estas matrices elementales, simulan, como ya hemos adelantado las operacioneselementales:1

1La demostracion de la Proposicion 5.23 no aporta gran cosa, luego asumiremos su veracidad.Sin embargo, resulta de interes que uno se convenza de su veracidad, verificandola en ejemplosconcretos.

Page 89: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

5.4. RANGO DE UNA MATRIZ. MATRICES ELEMENTALES 85

Proposicion 5.23 Sea A una matriz m× n sobre K. Entonces,

i) PijA es la matriz que resulta de permutar en A las filas i y j.

ii) APij es la matriz que resulta de permutar en A las columnas i y j.

iii) Pij(t)A es la matriz que resulta de sumarle a la fila i de A la fila j multiplicadapor t.

iv) APij(t) es la matriz que resulta de sumarle a la columna j de A la columna imultiplicada por t.

v) Qi(s)A es la matriz que resulta de multiplicar la fila i de A por s.

vi) AQi(s) es la matriz que resulta de multiplicar la columna i de A por s.

Por otro lado, puesto que toda operacion elemental es reversible, se tiene:

Corolario 5.24 Las matrices elementales son regulares. En concreto,

i) PijPji = In.

ii) Pij(t)Pij(−t) = In.

iii) Qi(s)Qi(s−1) = In.

Rescribiendo los resultados obtenidos en la Seccion anterior ( Teorema 5.17 y loscorolarios subsiguientes) con el nuevo lenguaje introducido, se tiene:

Corolario 5.25 Sea A ∈Mm×n(K) de rango por filas r. Entonces,

i) Existen matrices elementales P1, . . . , Ps tales que

Pt · · ·P1A = F es escalonada por filas.

ii) Existe una matriz regular P tal que

PA = F es escalonada por filas.

iii) Existen matrices elementales P1, . . . , Ps, Q1 . . . , Qs tales que

Pt · · ·P1AQ1 · · · , Qs = [Ir, 0].

iii) Existen matrices regulares P y Q tales que

PAQ = [Ir, 0].

Observacion 5.26 Al igual que ocurrıa con la seccion anterior, lo dicho para elrango por filas en el resultado anterior, se traslada, de forma inmediata, al rangopor columnas.

Page 90: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

86 CAPITULO 5. MATRICES Y SISTEMAS DE ECUACIONES LINEALES

5.4.2. Rango de una matriz

El resultado contenido en el Corolario 5.25 es la clave para probar que rango porfilas y por columnas son iguales.

Teorema 5.27 Sea A una matriz de Mm×n(K). Entonces, el rango por filas y elrango por columnas de A coinciden. A esta cantidad se le conoce como rango de Ay lo denotaremos por rg(A). En particular, se tiene que rg(A) = rg(At).

Demostracion.– Llamemos r al rango por filas de A. Entonces, existe una matrizregular P tal que PA = F es escalonada por filas con las ultimas m − r filasnulas. Si tomamos las columnas de F en las que se encuentran los pivotes, estas sonlinealmente independientes, luego se tiene r ≤ rc(F ).

Por otro lado, sea s = rc(F ) y F j1 , . . . , F js s columnas de F que forman familialibre. En tal caso, puesto que A = P−1F , la columna j−esima de A, Aj, es igual aAj = P−1F j. En consecuencia,

s∑k=0

ckAjk = (0) =⇒

s∑k=0

ckFjk = (0) =⇒ c1 = c2 = . . . = ck = 0.

De lo anterior se deduce que rc(F ) = s ≤ rc(A); luego, por lo tanto, rf (A) ≤ rc(A).Ahora, aplicando esta desigualdad a la matriz transpuesta, se concluye que rc(A) ≤rf (A) y, finalmente, la igualdad de rangos por fila y por columna.

El Teorema 5.27 nos permite deducir algunos resultados de interes, que enunciamosa continuacion.

Corolario 5.28 El rango de cualquier familia de Kn es menor o igual que n.

Corolario 5.29 Una matriz A ∈Mn(K) es regular si, y solo si, rg(A) = n.

Demostracion.– Supongamos, en primer lugar, que la matriz es regular y sea

t1A1 + t2A

2 + · · ·+ tnAn

una combinacion lineal de sus columnas. Si se iguala esta combinacion al vectornulo, se tendra que

A

t1t2...tn

= (0),

de donde, multiplicando la igualdad por A−1, se tiene que t1 = . . . = tn = 0. Enconsecuencia, las columnas de A forman una familia libre y, por lo tanto, rg(A) = n.

Page 91: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

5.4. RANGO DE UNA MATRIZ. MATRICES ELEMENTALES 87

Recıprocamente, si suponemos que el rango de A es n, existiran, por el Corolario5.25, matrices regulares P y Q tales que PAQ = In. De esta igualdad se deduce queA = P−1Q−1. Por lo tanto, A es regular.

De mas facil prueba es el ultimo resultado que presentaremos en esta Seccion:

Corolario 5.30

i) Hacer operaciones elementales en las filas y/o las columnas de una matriz novarıa su rango.

ii) Una matriz cuadrada es regular si, y solo si, es producto de matrices elemen-tales.

iii) Si P y Q son matrices regulares y A es otra matriz rg(PA) = rg(A) =rg(AQ) = rg(PAQ); es decir, el producto por matrices regulares no alterael rango.

5.4.3. Aplicacion al calculo de inversas de matrices regulares

Los resultados anteriores son utiles para calcular la inversa de una matriz regular.Si A es regular, es producto de matrices elementales:

A = P1 . . . Pr,

luego

In = P−1r . . . P−1

1 A.

Ası pues,

A−1 = P−1r . . . P−1

1 = P−1r . . . P−1

1 In

y dado que la inversa de una matriz elemental es elemental (vease Corolario 5.24),haciendo operaciones elementales en las filas de A es posible obtener la matriz ele-mental. Realizando exactamente las mismas operaciones sobre la matriz identidad,se obtiene la inversa de A.

Los calculos puede efectuarse al mismo tiempo de la siguiente forma:(A | In

)∼(Qr . . . Q1A = In | Qr . . . Q1In = A−1

)Ejemplo 5.31 Calcular la inversa de

A =

2 3 45 6 63 1 2

Page 92: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

88 CAPITULO 5. MATRICES Y SISTEMAS DE ECUACIONES LINEALES

2 3 4 | 1 0 05 6 6 | 0 1 03 1 2 | 0 0 1

P31(−3/2)P21(−5/2)∼

2 3 4 | 1 0 00 −3/2 −4 | −5/2 1 00 −7/2 −4 | −3/2 0 1

P32(−7/3)∼

2 3 4 | 1 0 00 −3/2 −4 | −5/2 1 00 0 16/3 | 13/3 −7/3 1

P23(3/4)∼ 2 3 4 | 1 0 0

0 −3/2 0 | 3/4 −3/4 3/40 0 16/3 | 13/3 −7/3 1

P13(−3/4)∼ 2 3 0 | −9/4 7/4 −3/4

0 −3/2 0 | 3/4 −3/4 3/40 0 16/3 | 13/3 −7/3 1

P12(2)∼

2 0 0 | −3/4 1/4 3/40 −3/2 0 | 3/4 −3/4 3/40 0 16/3 | 13/3 −7/3 1

Q3(3/16)Q2(−2/3)Q1(1/2)∼ 1 0 0 | −3/8 1/8 3/8

0 1 0 | −1/2 1/2 −1/20 0 1 | 13/16 −7/16 3/16

Por lo tanto,

A−1 =

−3/8 1/8 3/8−1/2 1/2 −1/213/16 −7/16 3/16

5.5. Combinacion lineal. Variedades lineales

Lo que resta de Capıtulo esta dedicado a la resolucion de sistemas de ecuacioneslineales. Pensemos, pues, en un sistema lineal de m ecuaciones y n incognitas:

a11x1 + · · ·+ a1nxn = b1

......

......

am1x1 + · · ·+ amnxn = bm

(5.3)

Usando la terminologıa habitual en estos casos, llamaremos matriz de coeficientesa la matriz A = (aij) y vector de terminos independientes a la matriz columnab = (b1, . . . , bm)t. De esta forma, podemos escribir, denotando X = (x1, . . . , xn)t, elsistema en la forma AX = b.

Page 93: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

5.5. COMBINACION LINEAL. VARIEDADES LINEALES 89

El sistema (5.3) tiene solucion si, y solo si, existen escalares t1, . . . , tn tales que b1...bm

= t1

a11...am1

+ · · ·+ tn

an1...

amn

.

De esta observacion casi trivial surge el concepto de combinacion lineal de vectores:

Definicion 5.32 Dada una familia de vectores {v1, . . . , vn} en Km, diremos que elvector v es combinacion lineal de la familia si existen escalares t1, . . . , tn tales que:

v = t1v1 + . . .+ tnvn.

Con este nuevo lenguaje, el sistema (5.3) tiene solucion si, y solo si, el vector determinos independientes es c.l.2 de las columnas de la matriz de coeficientes.

Definicion 5.33 Se dice variedad lineal a un subconjunto S de Km para el que ex-isten vectores {v1, . . . , vn} cuyo conjunto de combinaciones lineales es justamenteS. Se escribe S = K < v1, . . . , vn > y se dice que {v1, . . . , vn} es un sistema gener-ador de S. Si el sistema generador es una familia libre, se le denomina base. Porconvenio, ∅ es la unica base de (0).

Un resultado de utilidad es el siguiente:

Proposicion 5.34

u ∈ K < v1, . . . , vn >⇐⇒ rg(v1, . . . , vn) = rg(v1, . . . , vn, u)

Demostracion.– Supongamos, en primer lugar, que u ∈ K < v1, . . . , vm >. Entonces,haciendo operaciones elementales podemos transformar la familia {v1, . . . , vn, u} enla familia {v1, . . . , vn, 0}, de donde se sigue la igualdad de rangos.

Recıprocamente, sea r el rango comun de ambas familias y sea {vi1 , . . . , vir} unafamilia libre de {v1, . . . , vn}. Como {vi1 , . . . , vir , u} es ligada, aplicando el Lema 5.8,se sigue que u es c.l. de los vectores vi1 , . . . , vir .

Reinterpretando el resultado anterior en terminos de sistemas de ecuaciones, se tieneque un sistema AX = b tiene solucion si, y solo si, el rango de la matriz (A|b) esigual al rango de A.

Proposicion 5.35 Dos bases cualesquiera de una variedad lineal S tienen la mismacantidad de vectores. A esta cantidad se le dice dimension de la variedad lineal y seescribe dimS.

2A partir de ahora, la abreviacion c.l. significara combinacion lineal

Page 94: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

90 CAPITULO 5. MATRICES Y SISTEMAS DE ECUACIONES LINEALES

Corolario 5.36 Dada una familia de vectores, sea r su rango y S la variedad linealque generan. Entonces:

1. Existe una subfamilia r de vectores que es base de S.

2. Toda familia libre de S posee a lo sumo r vectores.

3. Toda familia libre de S con r vectores es base.

Nota: El escalonamiento por filas proporciona un algoritmo para el calculo de unabase de una variedad lineal S a partir de un sistema generador: se construye unamatriz cuyas filas sean los vectores dados y se escalona por filas; las filas no nulasde la matriz escalonada por filas forman una base de S.

5.6. Sistemas de ecuaciones lineales.

5.6.1. Nulidad de una matriz

En la resolucion de sistemas de ecuaciones lineales, aparecen dos variedades linealesclaves asociadas a la matriz de coeficientes. En primer lugar, la variedad generadapor las columnas de dicha matriz (ya que la pertenencia, o no, a dicha variedadlineal del vector de terminos independientes marca la existencia, o no, de solucion)y la variedad lineal conocida como nulidad o subespacio nulo.

Definicion 5.37 Se dice nulidad o subespacio nulo de una matriz A ∈ Mm×n(K)al conjunto de soluciones del sistema homogeneo AX = (0). Se escribe N (A).

Teorema 5.38 Si A ∈Mm×n(K) es una matriz de rango r, N (A) es una variedadlineal de dimension n− r. Ademas, si N es una matriz regular tal que

AN = [B,

n−r︷ ︸︸ ︷0, . . . , 0],

sus ultimas n− r columnas constituyen una base de la nulidad de N (A).

Demostracion.– Sean P y Q matrices regulares tales que PAQ = [Ir, 0]. Es claro,por lo tanto, que las columnas Qr+1, . . . , Qn de Q forman una familia libre de N (A)y que en consecuencia K < Qr+1, . . . , Qn >⊆ N (A).

Por otro lado, sea S ∈ N (A). Como las columnas de Q son base de Kn, podemosescribir S como c.l. de estas, es decir,

S = t1Q1 + . . .+ tnQ

n.

Multiplicando a la izquierda la igualdad por A se obtiene

Page 95: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

5.6. SISTEMAS DE ECUACIONES LINEALES. 91

(0) = t1AQ1 + . . .+ tnAQ

n,

lo que implica, multiplicando ahora a la izquierda por P que

(0) =n∑

j=1

tjPAQj =⇒

r∑j=1

tjej = (0) =⇒ tj = 0 , j = 1, . . . , r.

Es decir, que S es c.l. de Qr+1, . . . , Qn, con lo que S ∈ K < Qr+1, . . . , Qn > com-pletando la demostracion.

Observacion 5.39 Basados en el Teorema anterior, podemos disenar una algorit-mo para calcular una base de la nulidad de una matriz dada A ∈Mm×n(K):

Construida la matriz A−−In

,

la escalonamos por columnas llegando a una matriz de la forma G−−N

,

siendo G escalonada por columnas. Si r es el numero de columnas no nulas de G,las ultimas n− r columnas de N forman una base de la nulidad de A

Ejemplo 5.40 : Calcular una base de la nulidad de la matriz racional:

A =

1 1 2 02 2 1 31 3 0 2

Siguiendo el algoritmo propuesto, construimos la matriz

A−−In

:

y la escalonamos por columnas:

1 1 2 02 2 1 31 3 0 2

1 0 0 00 1 0 00 0 1 00 0 0 1

P12(−1)P13(−2)

1 0 0 02 0 −3 31 2 −2 2

1 −1 −2 00 1 0 00 0 1 00 0 0 1

∼P32

1 0 0 02 −3 0 31 −2 2 2

1 −2 −1 00 0 1 00 1 0 00 0 0 1

P24(1)

Page 96: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

92 CAPITULO 5. MATRICES Y SISTEMAS DE ECUACIONES LINEALES

∼P24(1)

1 0 0 02 −3 0 01 −2 2 0

1 −2 −1 −20 0 1 00 1 0 10 0 0 1

Por lo tanto, N (A) = Q < (−2, 0, 1, 1) >.

Tras el resultado fundamental sobre la nulidad, estamos en condiciones de discutircompletamente la existencia y unicidad de solucion de los sistemas de ecuacioneslineales:

Teorema 5.41 (Rouche-Frobenius) Sea AX = b un sistema de m ecuacioneslineales con m incognitas. Entonces,

i) El sistema tiene solucion si, y solo si, rg(A) = rg(A|b).

ii) Si (s1, . . . , sn) es una solucion, el conjunto de soluciones es:

{(t1, . . . , tn) : (t1, . . . , tn)− (s1, . . . , sn) ∈ N (A)},

es decir, dos soluciones cualesquiera del sistema se diferencian en un elementode la nulidad de la matriz de coeficientes.

iii) Si existe solucion, es unica si, y solo si, rg(A) = n.

Observacion 5.42 A partir del Teorema de Rouche-Frobenius, podemos expresarel conjunto de soluciones de un sistema AX = b en la forma

(t1, . . . , tn) +N (A),

donde (t1, . . . , tn) es una solucion particular cualquiera del sistema.

5.6.2. Resolucion de sistemas lineales

Si AX = B es un sistema compatible de n incognitas con rango de A igual a r, elmetodo de resolucion que propondremos aquı consiste en la resolucion de n− r + 1sistemas en los que la matriz de coeficientes es triangular superior y regular. Parallegar a esto, antes una pequena observacion:

Page 97: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

5.6. SISTEMAS DE ECUACIONES LINEALES. 93

Observacion 5.43 Si AX = b es un sistema y realizamos operaciones elementalesen las filas de (A|b) obteniendo una matriz (C|d), el conjunto de soluciones de lossistemas AX = b y CX = d es el mismo, como no es difıcil comprobar.

El objetivo primero sera, en consecuencia, intentar simplificar el sistema sin mo-dificar el conjunto de soluciones y, en un segundo termino, encontrar una solucionparticular y una base de la nulidad de A. Antes de explicar como haremos esto,un pequeno ejemplo: supongamos dado el siguiente sistema sobre el cuerpo de losnumeros racionales

x + y + 2z + t + w = 02x + 2y + z + t + 3w = 3x + 3y + t + 2w = 2

Aplicando el proceso de escalonamiento por filas se llega al sistema equivalente3:x + y + 2z + t + w = 0

2y − 2z + w = 2− 3z − t + w = 3

¿Como calcular ahora una solucion particular? ¿Como hallar una base de la nulidadde la matriz de coeficientes?

Si en el ultimo de los sistemas, hacemos t = 0 y w = 0, es decir, escogemos lascolumnas correspondientes a los pivotes, nos quedamos con el sistema:

x + y + 2z = 02y − 2z = 2− 3z = 3

que es un sistema cuadrado, triangular superior, compatible y determinado cuyasolucion es: x = 2, y = 0, z = −1. En consecuencia, (2, 0,−1, 0, 0) es una solucionparticular del sistema inicial. No queda mas que encontrar una base de la nulidad,es decir, una base del conjunto de soluciones del sistema:

x + y + 2z + t + w = 0

2y − 2z + w = 0− 3z − t + w = 0

(5.4)

Una solucion la podemos encontrar haciendo t = 0 y w = 1 y resolviendo el sistema:x + y + 2z = −1

2y − 2z = −1− 3z = −1

3Dos sistemas se dicen equivalentes si su conjunto de soluciones es el mismo

Page 98: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

94 CAPITULO 5. MATRICES Y SISTEMAS DE ECUACIONES LINEALES

cuya unica solucion es x = −3/2, y = −1/6, z = 1/3. En consecuencia, el vectorV1 = (−3/2,−1/6, 1/3, 0, 1) es un vector de la nulidad de la matriz de coeficientes.Como la dimension de esta nulidad es dos (el numero de incognitas es 5 mientrasque el rango de la matriz de coeficientes es 3), necesitamos otra solucion, V2, queforme familia libre con V1. Para ello hacemos t = 1 y w = 0 en (5.4) obteniendo :

x + y + 2z = −12y − 2z = 0− 3z = 1

cuya unica solucion es x = 0, y = −1/3 ,z = −1/3. Ası pues, podemos tomarV2 = (0,−1/3,−1/3, 1, 0).De esta forma, la solucion es:

(2, 0,−1, 0, 0) + Q < (−3/2,−1/6, 1/3, 0, 1), (0,−1/3,−1/3, 1, 0) >=

= (2, 0,−1, 0, 0) + Q < (−9,−1, 2, 0, 6), (0,−1,−1, 3, 0) >

o, dicho de otro modo,x = 2− 9λy = −λ− µz = −1 + 2λ− µt = 3µw = 6λ

λ, µ ∈ Q

El metodo aplicado en el ejemplo es extensible a cualquier sistema de ecuacioneslineales dando lugar al algoritmo que exponemos a continuacion:

Algoritmo de resolucion de sistemas de ecuaciones lineales

Sea AX = b con A ∈ m× n(K). Se hace:

1. Reducir por filas la matriz ampliada (A|b) llegando a una matriz (C|d).

2. a) Si rg(C|d) 6= rg(C), el sistema no tiene solucion.

b) Si rg(C|d) = rg(C) = n, el sistema tiene una unica solucion y, ademas,CX = d es un sistema triangular superior, resoluble yendo “de abajo aarriba”.

c) Si rg(C|d) = rg(C) = r < n, el sistema posee infinitas soluciones quepodemos describir en la forma (t1, . . . , tn) + N (A) con (t1, . . . , tn) unasolucion cualquiera del sistema y dim N (A) = n− r.1) Para calcular la solucion particular, sean xi1 , . . . xir las incognitas

correspondientes a las r columnas que contienen los pivotes. Haciendocero el resto de incognitas y resolviendo el sistema triangular inferiorregular que nos queda, obtenemos una solucion particular.

Page 99: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

5.6. SISTEMAS DE ECUACIONES LINEALES. 95

2) Para obtener n − r soluciones linealmente independientes de AX =(0) procedemos de la siguiente forma:Sean xj1 , . . . xjn−r las incognitas correspondientes a las columnas noocupadas por los pivotes. Para cada k, resolvemos el sistema quese obtiene al hacer xjk

= 1 y el resto de las incognitas cero enAX = (0). Es facil ver que las n−r soluciones del sistema homogeneoası obtenidas son linealmente independientes.

Ejemplo 5.44 Discutir y resolver, sobre el cuerpo de los numeros reales, el sistema(a+ 2)x + y + z = a− 1

ax + (a− 1)y + z = a− 1(a+ 1)x + (a+ 1)z = a− 1

La matriz ampliada es a+ 2 1 1a a− 1 1

a+ 1 0 a+ 1

a− 1a− 1a− 1

Para obtener un 1 en el lugar (1, 1) de la matriz, intercambiamos las columnasprimera y segunda, tomando nota del cambio de orden introducido de esta maneraen las incognitas:

y x z 1 a+ 2 1 (a− 1)a− 1 a 1 (a− 1)

0 a+ 1 a+ 1 a− 1

(5.5)

Restandole a la segunda fila la primera multiplicada por a− 1 se llega a

y x z 1 a+ 2 1 (a− 1)0 −(a+ 3)(a− 2) 2− a (a− 1)(2− a)0 a+ 1 a+ 1 a− 1

(5.6)

Llegados a este punto distinguimos dos casos:Caso 1: a = −1.- En este caso, la matriz del paso anterior (5.6) es 1 1 1 −2

0 6 3 −60 0 0 −2

luego en este caso el sistema es incompatible.

Page 100: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

96 CAPITULO 5. MATRICES Y SISTEMAS DE ECUACIONES LINEALES

Caso 2: a 6= −1.- Si a 6= −1, podemos dividir la tercera fila por a+1 e intercambiarposteriormente las filas segunda y tercera para obtener:

y x z 1 a+ 2 1 a− 10 1 1 a−1

a+1

0 −(a+ 3)(a− 2) 2− a (a− 1)(2− a)

y, sumandole a la tercera fila la segunda multiplicada por (a + 3)(a − 2) se llega ala matriz:

y x z1 a+ 2 1 a− 1

0 1 1 a−1a+1

0 0 (a+ 2)(a− 2) −2(a−1)(a−2)a+1

Page 101: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

5.7. PROBLEMAS PROPUESTOS 97

5.7. Problemas propuestos

Problema 5.1 .- Probar que:

(AB)t = BtAt

(AB)−1 = B−1A−1

(At)−1 = (A−1)t

Problema 5.2 .- Probar que las unicas matrices cuadradas que conmutan con todaslas demas son las matrices escalares, es decir, las matrices diagonales con el mismoelemento en la diagonal.

Problema 5.3 .- Probar que el producto de matrices triangulares superiores (re-spectivamente, inferiores) es una matriz triangular superior (respectivamente, infe-rior). Asimismo, demostrar que la inversa de una matriz tringular superior (respec-tivamente, inferior) regular es triangular superior (respectivamente, inferior).

Problema 5.4 .- Calcula B−1, sabiendo que se cumple que(

12(B − I)

)2= 1

2(B −

I).

Problema 5.5 .- Dada la matriz A =

(2 −11 3

)encontrar todas las matrices B

tales que AB = BA.

Problema 5.6 .- Demostrar que la relacion definida en el conjunto de matricesMn(K) por:

A y B son equivalentes ⇐⇒ ∃ matrices regulares P y Q tales que PAQ = B

es una relacion de equivalencia. Describir el conjunto cociente.

Problema 5.7 .- Calcular el rango de las siguientes matrices tanto sobre el cuerpode los numeros racionales como sobre Z5:

1 2 3 02 4 3 23 2 1 36 8 7 5

0 2 3 4

2 3 5 44 8 13 12

Problema 5.8 .- Segun los valores de a y de b, discutir el rango de las matricesracionales:

a+ 2 1 1 a− 1a a− 1 1 a− 1

a+ 1 0 a+ 1 a− 1

1 b a b a+ b+ 12 3b a 2b 3a+ 2b+ 11 b 2a 2b 2b+ 21 2b 0 2b a+ 2b

Page 102: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

98 CAPITULO 5. MATRICES Y SISTEMAS DE ECUACIONES LINEALES

Problema 5.9 .- En clase de teorıa se ha demostrado que, dada una matriz A ∈Mm×n(K) con rango r, existen matrices regulares P y Q tales que:

PAQ = [Ir, 0].

Dar una algoritmo para el calculo de tales matrices P y Q.

Problema 5.10 (Factorizacion LU) .- Demostrar que, dada una matriz A ∈Mm×n(K), existen matrices L ∈ Mm(K) triangular inferior con 1K en la diago-nal principal, U ∈Mm×n(K) triangular superior y P matriz permutacion4 tales quePA = LU . Dar un algoritmo para el calculo de dichas matrices L y U .

(Indicacion: Tengase en cuenta que las matrices escalonadas por filas son triangu-lares superiores.)

Problema 5.11 .- Calcular las inversas de las matrices racionales

2 3 45 6 63 1 2

2 3 4 15 6 6 03 1 2 23 5 6 7

Problema 5.12 .- Discutir, en funcion de los parametros a y b, si las matrices decoeficientes reales a 2a 1

3a −1 a+ 2−3 0 3

a 2b a+ b4a 5b 2a+ 2b7a 8b 2a+ 2b

son regulares y, en su caso, calcular la inversa.

Problema 5.13 .- En el conjunto de matrices simetricas de Mn(R) se considera lasiguiente relacion:

A es congruente con B ⇐⇒ ∃P regular tal que PAP t = B

i) Demostrar que la relacion anterior es una relacion de equivalencia. Asimis-mo demostrar que dos matrices congruentes tienen, necesariamente, el mismorango.

ii) Se puede probar que toda matriz simetrica A en Mn(R) es congruente a unadiagonal. Dando por hecho que la afirmacion anterior es cierta, probar quetoda matriz simetrica en Mn(R) es congruente a una matriz diagonal D de laforma:

D = diag[1, . . . , 1,−1, . . . ,−1, 0 . . . , 0],

donde el numero total de elementos no nulos de D es igual al rango de A.

4Una matriz permutacion es una matriz producto de matrices elementales de tipo 1.

Page 103: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

5.7. PROBLEMAS PROPUESTOS 99

Problema 5.14 .- Calcular los siguientes determinantes:

∣∣∣∣∣∣∣∣∣∣∣

0 1 1 · · · 11 0 1 · · · 11 1 0 · · · 1... · · · · · · . . .

...1 1 1 · · · 0

∣∣∣∣∣∣∣∣∣∣∣

∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣

n n− 1 n− 2 · · · 3 2 11 n n− 1 · · · 4 3 22 1 n · · · 5 4 3... · · · · · · . . . · · · · · · ...... · · · · · · · · · . . . · · · ...... · · · · · · · · · · · · . . .

...n− 1 n− 2 n− 3 · · · 2 1 n

∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣∣1 + x 1 · · · 1

1 1 + x · · · 1... · · · . . .

...1 1 · · · 1 + x

∣∣∣∣∣∣∣∣∣

∣∣∣∣∣∣∣∣∣1 a1 a2

1 · · · an−11

1 a2 a22 · · · an−1

2... · · · · · · · · · ...1 an a2

n · · · an−1n

∣∣∣∣∣∣∣∣∣Problema 5.15 .- Dada la matriz cuadrada de talla n cuyo termino (i, j) es 2 sii 6= j e i si i = j, calcular su determinante.

Problema 5.16 .- Hacer lo mismo que en el ejercicio anterior con la matriz cuadra-da de talla n cuyo cuyo termino (i, j) es a si i 6= j y t si i = j.

Problema 5.17 .- Probar, usando el Teorema de Rouche–Frobenius, que la inversade una matriz regular es unica. (Nota: Interpretese la ecuacion matricial como unconjunto de sistemas de ecuaciones lineales).

Problema 5.18 .- Un sistema de ecuaciones lineales se dice sobredeterminadosi posee mas ecuaciones que incognitas y se dice infradeterminado si posee menosecuaciones que incognitas. Dar un ejemplo de sistema sobredeterminado con solu-cion unica. ¿Podemos encontrar un sistema infradeterminado con solucion unica?Explicar la respuesta.

Problema 5.19 .- Discutir y resolver, en su caso, los siguientes sistemas sobre elcuerpo de los numeros racionales:

x+ y + z + t = 0x− y − z + t = 0−x− y + z + t = 0x− 3y + 5z + 9t = 0

4x− y + 2z + t = 02x+ 3y − z − 2t = 07y − 4z − 5t = 02x− 11y + 7z + 8t = 0

Page 104: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

100 CAPITULO 5. MATRICES Y SISTEMAS DE ECUACIONES LINEALES

Problema 5.20 .- Idem sobre el cuerpo de los numeros reales.{ 2x−my + 4z = 0x+ y + 7z = 0mx− y + 13z = 0

{mx+ y + z + t = mx+my + z = 1x+ y +mz = 1

(m+ 2)x+ (m+ 2)y + (m+ 1)z = 2m+ 2x+my + z = 1mx+ y + (m− 1)z = mx+ y + z = m+ 1

(m+ 2)x+ (2m+ 4)y + (3m+ 6)z = 0(m+ 2)x+ (m+ 2)y + (3m+ 6)z = −(m+ 2)(m+ 2)x+ (3m+ 6)y + (3m+ 6)z = m+ 2(m+ 2)x+ (3m+ 6)y + (4m+ 5)z = 4m+ 2

Problema 5.21 .- Idem segun los valores de a sobre el cuerpo de los numerosracionales.

2x+ y − 4z = a+ 1−x+ 5y − z = a− 12x+ 6y − 5z = a+ 22x− 4y + 5z = aax+ y + z + t = ax+ ay + z + t = ax+ y + az + t = ax+ y + z + at = a (a+ 2)x+ y + z = a− 1

ax+ (a− 1)y + z = a− 1(a+ 1)x+ (a+ 1)z = a− 1 (4− a)x+ 2y + z = 0

2x+ (4− a)y + 2z = 02x+ 4y + (8− a)z = 0

(4a+ 12)x+ (2a+ 13)y + (2a+ 6)z = 7− a(2a+ 6)x+ (4a+ 5)y + (a+ 3)z = 4a(2a+ 6)x+ (2a+ 6)y + (a+ 3)z = a+ 3(3a+ 6)x+ (2a+ 6)y + (a+ 3)z = 0

Problema 5.22 .- Discutir y resolver, en su caso, los sistemas sobre Z5:{x− y + z = 35x− 2y − z = 5−3x− 4y + 3z = 1{x+ 2y − 5z + 4t = 5

2x− 3y + 2z + 3t = 04x− 7y + z − 6t = −5

Page 105: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

Capıtulo 6

Diagonalizacion de matrices

6.1. Introduccion

6.1.1. Un ejemplo preliminar

Antes de plantearlo de manera general, estudiaremos un ejemplo que servira parasituar el problema.

Supongamos que, en una ciudad, conviven tres fabricas de pan que controlan elmercado de la venta de pan en regimen de oligopolio. A lo largo del tiempo, algunosconsumidores cambian de fabrica por diversas razones: publicidad, precio u otras.Queremos modelizar y analizar el movimiento del mercado, asumiendo, para simpli-ficar el modelo, que la misma fraccion de consumidores cambia de una empresa aotra durante cada perıodo de tiempo (un mes, por ejemplo).

Supongamos que, al inicio del estudio, las tres empresas, que llamaremos 1, 2 y 3,controlan las fracciones x0, y0 y z0 del mercado respectivamente. Dada la situacionde oligopolio, se tendra:

x0 + y0 + z0 = 1

Supongamos ahora que despues de un mes, la empresa 1 ha conseguido manteneruna fraccion a11 de los consumidores que tenıa, atrayendo, ademas, una fraccion a12

de los clientes de la empresa 2 y una fraccion a13 de los clientes de la empresa 3. Siel numero de consumidores es fijo, digamos N , podemos escribir, donde x1 denotala fraccion del mercado controlada por 1 despues del primer mes:

x1N = a11(x0N) + a12(y0N) + a13(z0N)

Similares ecuaciones se obtendran para las fracciones de mercado y1 y z1 controladaspor las empresas 2 y 3 respectivamente, ası que, dividiendo dichas ecuaciones porN , se tendra

101

Page 106: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

102 CAPITULO 6. DIAGONALIZACION DE MATRICES

x1 = a11x0 + a12y0 + a13z0

y1 = a21x0 + a22y0 + a23z0

z1 = a31x0 + a32y0 + a33z0

donde aii representa la fraccion de los consumidores de la empresa i mantenidos pori y aij la fraccion de los consumidores de la empresa j atraıdos por la empresa i. Enterminos matriciales, tenemos

X1 = AX0, donde X1 =

x1

y1

z1

X0 =

x0

y0

z0

A = (aij)

Sobre la matriz A se puede decir:

0 ≤ aij ≤ 1

La suma de los elementos de cada columna es igual a 1, es decir, a1i+a2i+a3i =1 para i = 1, 2 y 3.

Si, como asumimos al principio, las fracciones de clientes que cambian de una em-presa a otra cada mes se mantienen constantes, y llamamos xr, yr y zr las fraccionescontroladas por 1, 2 y 3 en el mes r desde el comienzo del estudio, se tiene:xr+1

yr+1

zr+1

= A

xr

yr

zr

y, en consecuencia, xr+1

yr+1

zr+1

= Ar+1

x0

y0

z0

Es claro, intuitivamente que para cualquier r, xr + yr + zr = 1, propiedad queprobaremos por induccion sobre r. Para r = 0, la propiedad es cierta. Si la propiedades cierta para r, se tiene:

( 1 1 1 )

xr+1

yr+1

zr+1

= ( 1 1 1 )A

xr

yr

zr

= ( 1 1 1 )

xr

yr

zr

= 1

donde la ultima igualdad es cierta por la hipotesis de induccion.

Resumiendo lo visto anteriormente, el analisis de este mercado implica el calculo depotencias (posiblemente, grandes) de A.

Page 107: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

6.1. INTRODUCCION 103

Ejemplo 6.1 Como matriz A del modelo anterior tomemos

A =

45

15

110

110

710

310

110

110

35

y supongamos que queremos saber cual sera la fraccion de mercado controlada porcada empresa dentro de veinte anos. Esto implicarıa el calculo de A240. El calculode dicha potencia se simplifica enormemente sabiendo que las matrices

P =

1 −1 9

7

−2 1 1

1 0 47

y D =

12

0 0

0 35

0

0 0 1

verifican que A = PDP−1, ya que A240 = PD240P−1 y

D240 =

(

12

)2400 0

0(

35

)2400

0 0 1

.

6.1.2. Planteamiento general del problema

El ejemplo anterior pone de manifiesto la necesidad de calcular grandes potenciasde matrices. Del mismo modo, queda claro que dicha labor se simplifica supuesta laexistencia de una matriz regular P que convierte a la matriz dada en diagonal. Enconsecuencia, se define:

Definicion 6.2 Dada una matriz cuadrada A ∈ Mn(K), se dice diagonalizablesi existen una matriz diagonal, D = diag[d1, . . . , dn], y una matriz regular, P ∈Mn(K), tales que:

A = PDP−1.

Habitualmente, se dice que dos matrices A y B en Mn(K) son semejantes si, ysolo si, existe una matriz regular tal que P−1AP = B. De este modo, se tiene queuna matriz cuadrada es diagonalizable si, y solo si, es semejante a una diagonal.

A partir de este momento, estudiaremos como saber si una matriz es diagonalizabley, en su caso, como calcular las matrices diagonal y regular correspondientes.

Page 108: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

104 CAPITULO 6. DIAGONALIZACION DE MATRICES

6.2. Algoritmo de diagonalizacion

Supongamos dada una matriz diagonalizable A y sean D = diag[d1, . . . , dn] y Pregular tales que P−1AP = D. En este caso, podemos reescribir esta igualdad en laforma:

AP = Pdiag[d1, . . . , dn].

Ası pues, la columna j−esima de P debe ser una solucion del sistema homogeneo

(diI − A)X = (0), (6.1)

lo que, por otro lado, implica det(diI − A) = 0. Como la matriz P es regular, suscolumnas forman una base de Kn formada por soluciones de sistemas de la forma6.1. Estas consideraciones previas nos llevan a introducir los conceptos recogidos enla siguiente definicion:

Definicion 6.3 Sea A una matriz de talla n sobre K.

i) Se dice polinomio caracterıstico de A al polinomio pA(λ) = det(λIn − A).

ii) Se llama valor propio a cualquiera de las raıces del polinomio caracterıstico.

iii) Se dice vector propio asociado al valor propio λ a un vector no nulo v queverifique Av = tv; es decir, un vector de la nulidad de la matriz tI − A.

La traduccion de la discusion anterior al nuevo lenguaje introducido nos permiteenunciar el siguiente resultado:

Proposicion 6.4 Una matriz cuadrada es diagonalizable sobre K si, y solo si, existeuna base de Kn formada por vectores propios de A.

Ejemplo 6.5 Sea A la matriz dada por

A =

1 0 00 3 10 4 2

Su polinomio caracterıstico es λ3 − 6λ2 + 7λ− 2 cuyas raıces son:

λ1 = 1, λ2 =1

2

(5 +√

17), λ3 =

1

2

(5−√

17).

Resolviendo los correspondientes sistemas, se obtiene que una base de vectores pro-pios viene dada por:

Page 109: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

6.2. ALGORITMO DE DIAGONALIZACION 105

v1 = (1, 0, 0), v2 =

(0, 1,

1

2

(−1 +

√17))

v3 =

(0, 1,

1

2

(−1−

√17))

siendo el vector vi vector propio asociado a λi para i = 1, 2, 3.En consecuencia, si

D =

1 0 0

0 12

(5 +√

17)

0

0 0 12

(5−√

17) y P =

1 0 00 1 1

0 −12

+√

172−1

2−

√172

se tiene A = PDP−1.

El ejemplo anterior pone de manifiesto que el hecho de que una matriz sea diago-nalizable depende fuertemente del cuerpo sobre el que se trabaje. Ası, la matriz delejemplo es diagonalizable sobre R pero no sobre Q. Del mismo modo, la matriz(

0 −11 0

)es diagonalizable sobre C pero no sobre R.

Proposicion 6.6 Dos matrices semejantes poseen el mismo polinomio caracterısti-co.

Demostracion.– Sean dadas dos matrices semejantes A y B, y sea P una matrizregular P tal que B = P−1AP . Entonces,

pB(λ) = det(λIn −B) = det(λIn − P−1AP ) = det(P (λIn − P−1AP )P−1) =

= det(λIn − A) = pA(λ).

Observacion 6.7 El recıproco a la Proposicion anterior no es, en general, cierto

como lo el hecho de que las matrices

(1 10 1

)e I2 tengan el mismo polinomio

caracterıstico, pero que no sean semejantes.

De la discusiones anteriores, y en particular de la Proposicion 6.4, para saber siuna matriz es diagonalizable, buscaremos los valores propios, esto es, las raıces enK del polinomio caracterıstico, digamos, d1, . . . , dr y resolveremos los r sistemashomogeneos (diI − A)X = (0). Si podemos construir, por columnas, una matrizregular P , se tendra:

Page 110: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

106 CAPITULO 6. DIAGONALIZACION DE MATRICES

P−1AP = diag[d1, . . . , d1, . . . , dr, . . . , dr]

Naturalmente, puesto que la matriz P debe ser regular, sus columnas deben formaruna familia libre, por lo que las soluciones de los sistemas (diI − A)X = (0) debencumplir la misma condicion. El problema en la construccion de P , puede venir pordos razones:

1. Al yuxtaponer los vectores columnas obtenidos de dos sistemas distintos de laforma (diI − A)X = (0) resultan no ser linealmente independientes.

2. El numero de columnas obtenidas de esa manera es inferior a la talla de lamatriz inicial A.

La primera de las razones esgrimidas con anterioridad no es problema, como se en-carga de demostrar el siguiente resultado (que se puede parafrasear diciendo quevectores propios asociados a valores propios distintos son linealmente independi-entes):

Proposicion 6.8 Sean {d1, . . . , dr} los valores propios de A y para cada i, sea Si

un vector propio asociado a di. Entonces, la familia {S1 . . . , Sr} es una familia libre.

Demostracion.– Razonaremos por induccion sobre r (el numero de valores propiosdistintos), siendo el caso r = 1 obvio.Supongamos, ahora, r ≥ 2 y sea la c.l.

t1S1 + · · ·+ trS

r = (0) (6.2)

Multiplicando por A, se tiene

t1S1 + · · ·+ trS

r = (0) (6.3)

Del mismo modo, multiplicando 6.2 por dr se obtiene

t1drS1 + · · ·+ trdrS

r = (0) (6.4)

Restando las igualdades 6.3 y 6.4

t1(d1 − dr)S1 + · · ·+ tr−1(dr−1 − dr)S

r−1 = (0)

Ahora, dado que dj 6= dr, los vectores (dj−dr)Sj son soluciones de (djI−A)X = (0)

y, por hipotesis de induccion, son linealmente independientes. Por lo tanto, t1 = · · · =tr−1 = 0K y sustituyendo en 6.2, se tiene que tambien tr = 0K .

Page 111: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

6.2. ALGORITMO DE DIAGONALIZACION 107

Observacion 6.9 Dada una matriz A y un valor propio de la misma, d, designare-mos por S(d) a la nulidad de la matriz dI − A.

Se tiene, por lo tanto:

Corolario 6.10 Sea {d1, . . . , dr} el conjunto de valores propios de una matriz A ∈Mn(K). Entonces,

r∑i=1

dimS(dj) ≤ n

Corolario 6.11 Sea A una matriz cuadrada de talla n sobre K y {d1, . . . , dr} elconjunto de valores propios de A. Entonces, son equivalentes:

i) A es diagonalizable

ii)r∑

i=1

dimS(dj) = n

iii)r∑

i=1

n− rg(djI − A) = n

Estamos en condiciones de dar un algoritmo para la diagonalizacion de una matrizcuadrada:

entrada : A ∈Mn(K)(1) Calcular las raıces del polinomio det(λIn − A).

Si no existen raıces, escribir la matriz A no es diagonalizable sobre K.FIN

Sean (d1, . . . , dr) las raıces en K de det(λIn − A).

(2) Para cada j calcular mj := n− rg(djIn − A).

(3) Sir∑

i=1

mj < n, escribir la matriz A no es diagonalizable sobre K. FIN

(4) Si no, para cada j calcular una base, P 1j , . . . , P

mj

j de la nulidad de la matrizdjIn − A.

(5) Devolver P = [P 11 , . . . , P

m11 , . . . , P 1

r , . . . , Pmrr ] yD = diag[d1, . . . , d1, . . . , dr, . . . , dr].

Algoritmo de diagonalizacion.

Page 112: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

108 CAPITULO 6. DIAGONALIZACION DE MATRICES

6.3. Problemas propuestos

Problema 6.1 .- Demostrar que la relacion de semejanza entre matrices de Mn(K)es una relacion de equivalencia.

Problema 6.2 .- Sea A = (aij) ∈Mn(K) una matriz que verifica que

n∑i=1

aij = 1

para todo j ∈ {1, . . . , n}. Demostrar que 1 es valor propio de A.

Problema 6.3 .- Probar que si t es valor propio de A, tk lo es de Ak.

Problema 6.4 .- Probar:

a) A y At poseen mismo polinomio caracterıstico.

b) Sea A una matriz antisimetrica. Entonces, se tiene que λ es valor propio de Asi, y solo si, −λ es valor propio de −A.

c) A es regular si, y solo si, 0 es valor propio de A.

d) Si A es antisimetrica y de orden impar, 0 es valor propio de A

Problema 6.5 .- Sea A la matriz real

A =

3 −2 a−1 a 1

1 2 3

.

Probar que la matriz posee un valor propio real independientemente del valor delparametro a.

Problema 6.6 .- Sea

A =

4 1 2−2 1 −2−2 −1 0

.

¿Es diagonalizable A sobre Z5? En caso de respuesta afirmativa, diagonalizarla.

Problema 6.7 .- Calcular los vectores y valores propios de la matriz de orden ncuyos terminos son 1K , salvo los de la diagonal principal que valen 0K . Probar queA es diagonalizable y diagonalizarla, es decir, encontrar una matriz P regular talque P−1AP es diagonal.

Page 113: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

6.3. PROBLEMAS PROPUESTOS 109

Problema 6.8 .- ¿Se puede diagonalizar la matriz real(cos α −sen αsen α cos α

)0 ≤ α < π?

¿Y vista como matriz compleja? En los casos de respuesta afirmativa, diagonalizarla.

Problema 6.9 .- Sea A ∈ Mn(K). Probar que si posee n valores propios distintos(en K) es diagonalizable sobre K.

Problema 6.10 .- Probar que si A y B son matrices cuadradas, AB y BA poseenlos mismo valores propios.

Problema 6.11 .- Consideremos la matriz racional

A =

0 a 1 b0 1 0 10 0 −1 a2

0 0 0 3

a) Explicar, sin hacer ninguna cuenta, por que la matriz A es siempre diag-

onalizable sobre Q, independientemente de los valores de los parametros a yb.

b) Diagonalizar A.

Problema 6.12 .- Estudiar si las siguientes matrices son diagonalizables sobre Ry, en su caso, diagonalizarlas:

A =

12 10 010 8 01 1 3

, B =

1 −9 8 20 3 −1 00 0 2 0−1 −8 7 4

C =

−2 12 −151 5 50 0 1

, D =

2 1/9 −30 2/3 00 1/18 1/2

Problema 6.13 .- Estudiar si las matrices del ejercicio anterior son diagonalizablessobre C y sobre Z5.

Problema 6.14 .- Estudiar en funcion de los parametros a, b, c si las matricessiguientes son diagonalizables:

A =

1 0 0a b 01 c b

, B =

0 0 0 0a 0 0 00 b 0 00 0 c 0

Page 114: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

110 CAPITULO 6. DIAGONALIZACION DE MATRICES

C =

2a− 1 1− a 1− aa− 1 1 1− aa− 1 1− a 1

, D =

1 0 0a 1 0b c 2

Problema 6.15 .- Calcular, usando diagonalizacion de matrices, el termino generalde la sucesion recurrente definida por{

u0 = 1, u1 = 2,un+1 = 3un − 2un−1, si n ≥ 1.

Problema 6.16 .- Resolver cada uno de los sistemas de ecuaciones diferencialesordinarias lineales que tienen por matriz de coeficientes las matrices del Ejercicio6.12 que sean diagonalizables sobre los reales.

Page 115: Ingenier´ıa en Inform´atica Universidad de Alcal´a · no sean ni el vac´ıo, ni el propio conjunto. Por ejemplo, el conjunto de los numero´ s naturales pares es un subconjunto

Capıtulo 7

Espacios vectoriales y aplicacioneslineales

7.1. Espacios vectoriales

Definicion 7.1 Se dice espacio vectorial sobre un cuerpo K1 a un grupo abeliano(V,+) dotado de una operacion externa:

K × V −→ V(t, v) 7−→ tv

que verifica:

i) t(v + w) = tv + tw, ∀t ∈ K ∀v, w ∈ V .

ii) (t+ s)v = tv + sv ∀t, s ∈ K ∀v ∈ V

iii) t(sv) = (ts)v ∀t, s ∈ K ∀v ∈ V

iv) 1Kv = v ∀v ∈ V

7.2. Aplicaciones lineales

7.3. Codigos correctores de errores

7.4. Problemas propuestos

1tambien llamado K−espacio vectorial.

111