You are on page 1of 311

algebra lineal con aplicaciones y

python
Ernesto Aranda
Ttulo:

Algebra lineal con aplicaciones y Python
Primera Edicion, 2011
CC
Ernesto Aranda Ortega, 2011
Impreso por Lulu.com
Composicion realizada con L
A
T
E
X

Indice general
1. N umeros complejos 7
1.1. El cuerpo de los n umeros complejos . . . . . . . . . . . . . . . . . . . 7
1.2. Representaci on geometrica: modulo y argumento . . . . . . . . . . . . 10
1.3. Forma trigonometrica y forma polar . . . . . . . . . . . . . . . . . . . 13
1.4. Potencia y raz n-esima de un n umero complejo . . . . . . . . . . . . . 14
1.5. C alculo con Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.5.1. Operaciones b asicas . . . . . . . . . . . . . . . . . . . . . . . . 16
1.5.2. Operaciones avanzadas . . . . . . . . . . . . . . . . . . . . . . . 18
1.6. Una breve incursi on en el mundo fractal . . . . . . . . . . . . . . . . . 19
1.6.1. Generaci on del conjunto de Mandelbrot con Python . . . . . . 21
1.7. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2. Matrices y Determinantes 27
2.1. Matrices: primeras deniciones . . . . . . . . . . . . . . . . . . . . . . 27
2.2. Inversa de una matriz . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.3. Sistemas de ecuaciones lineales . . . . . . . . . . . . . . . . . . . . . . 36
2.4. C alculo de la inversa mediante operaciones elementales . . . . . . . . . 41
2.5. Determinante de una matriz: propiedades . . . . . . . . . . . . . . . . 44
2.6. Rango de una matriz . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
2.7. Aplicaci on de los determinantes al c alculo de la inversa . . . . . . . . . 57
2.8. C alculo con Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
2.9. Breve introducci on a la Teora de Grafos . . . . . . . . . . . . . . . . . 63
2.10. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
3. Sistemas de ecuaciones lineales 71
3.1. Sistemas de ecuaciones lineales: primeras deniciones . . . . . . . . . . 71
3.2. Teorema de Rouche-Frobenius . . . . . . . . . . . . . . . . . . . . . . . 76
3.3.

Algebra Lineal Numerica . . . . . . . . . . . . . . . . . . . . . . . . . . 79
3.3.1. Metodos directos . . . . . . . . . . . . . . . . . . . . . . . . . . 81
3.3.2. Sistemas mal condicionados . . . . . . . . . . . . . . . . . . . . 88
3.3.3. Metodos iterativos . . . . . . . . . . . . . . . . . . . . . . . . . 90
3.4. C alculo con Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
3.5. Aplicaci on: resoluci on de ecuaciones diferenciales . . . . . . . . . . . . 98
3.6. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
3
4. Espacios vectoriales 107
4.1. La estructura de espacio vectorial . . . . . . . . . . . . . . . . . . . . . 107
4.2. Independencia lineal . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
4.3. Bases y dimensi on de un espacio vectorial . . . . . . . . . . . . . . . . 115
4.4. Cambios de base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
4.5. Subespacios vectoriales . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
4.5.1. Operaciones con subespacios . . . . . . . . . . . . . . . . . . . 133
4.6. C alculo con Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
4.7. Aplicaci on: Lights Out!, primera parte . . . . . . . . . . . . . . . . . . 141
4.8. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
5. Aplicaciones lineales 149
5.1. Conceptos previos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
5.2. Aplicaciones lineales entre espacios vectoriales . . . . . . . . . . . . . . 151
5.2.1. Propiedades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
5.3. Matriz de una aplicaci on lineal. . . . . . . . . . . . . . . . . . . . . . . 153
5.4. Operaciones entre aplicaciones lineales . . . . . . . . . . . . . . . . . . 157
5.5. Cambio de base en una aplicaci on lineal . . . . . . . . . . . . . . . . . 160
5.6. N ucleo y rango de una aplicaci on lineal . . . . . . . . . . . . . . . . . 163
5.7. C alculos con Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
5.8. Aplicaci on a la Criptografa . . . . . . . . . . . . . . . . . . . . . . . . 168
5.9. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
6. Diagonalizacion 179
6.1. Valores y vectores propias . . . . . . . . . . . . . . . . . . . . . . . . . 180
6.2. Polinomio caracterstico . . . . . . . . . . . . . . . . . . . . . . . . . . 184
6.3. Forma can onica de Jordan . . . . . . . . . . . . . . . . . . . . . . . . . 193
6.3.1. Forma de Jordan real . . . . . . . . . . . . . . . . . . . . . . . 209
6.3.2. C alculo de potencias de matrices . . . . . . . . . . . . . . . . . 211
6.4. C alculo con Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
6.5. Aplicaci on: osciladores acoplados . . . . . . . . . . . . . . . . . . . . . 218
7. Ecuaciones lineales en diferencias 225
7.1. Introducci on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
7.2. Ecuaciones y sistemas lineales de primer orden con coecientes constantes227
7.3. Ecuaciones en diferencias lineales de orden superior . . . . . . . . . . . 231
7.3.1. Ecuaciones no homogeneas . . . . . . . . . . . . . . . . . . . . 232
7.4. Cadenas de Markov . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235
7.5. Aplicaci on: modelos biol ogicos . . . . . . . . . . . . . . . . . . . . . . . 240
7.6. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
8. Espacio vectorial eucldeo 245
8.1. Producto escalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
8.1.1. Matriz de un producto escalar . . . . . . . . . . . . . . . . . . 248
8.2. Ortogonalidad. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250
8.2.1. Bases ortonormales . . . . . . . . . . . . . . . . . . . . . . . . . 251
8.2.2. Subespacios ortogonales . . . . . . . . . . . . . . . . . . . . . . 256
8.2.3. Proyecci on ortogonal . . . . . . . . . . . . . . . . . . . . . . . . 260
8.3. Metodo de los mnimos cuadrados. . . . . . . . . . . . . . . . . . . . . 266
8.3.1. Ajuste de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . 268
8.4. C alculo con Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268
8.5. Aplicaci on: Lights Out!, segunda parte . . . . . . . . . . . . . . . . . . 271
8.6. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
9. Espacio afn 277
9.1. Espacio afn y espacio metrico . . . . . . . . . . . . . . . . . . . . . . . 277
9.1.1. Sistema de referencia y coordenadas . . . . . . . . . . . . . . . 278
9.1.2. Cambio de sistema de referencia . . . . . . . . . . . . . . . . . 279
9.1.3. Espacio afn eucldeo . . . . . . . . . . . . . . . . . . . . . . . . 279
9.2. Variedades anes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280
9.2.1. Posici on relativa de variedades anes . . . . . . . . . . . . . . . 282
9.3. Problemas metricos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
9.4. Aplicaciones anes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
9.4.1. Matriz de una aplicaci on lineal . . . . . . . . . . . . . . . . . . 287
9.5. C alculo con Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
9.6. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
A. Conceptos generales 293
A.1. Teora de conjuntos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293
A.2. Estructuras algebraicas . . . . . . . . . . . . . . . . . . . . . . . . . . 295
A.3. Principio de inducci on . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
B. Introducci on a Python 299
B.1. Instalaci on de Python . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
B.1.1. Primeros pasos . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
B.1.2. La consola iPython . . . . . . . . . . . . . . . . . . . . . . . . . 301
B.2. Aspectos b asicos del lenguaje . . . . . . . . . . . . . . . . . . . . . . . 302
B.2.1. Variables y tipos de datos . . . . . . . . . . . . . . . . . . . . . 302
B.2.2. Operadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
B.3. Bucles y condicionales . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
B.4. M odulos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
B.4.1. Funciones, metodos y atributos . . . . . . . . . . . . . . . . . . 308
B.4.2. El m odulo NumPy . . . . . . . . . . . . . . . . . . . . . . . . . 308
B.4.3. El m odulo SymPy . . . . . . . . . . . . . . . . . . . . . . . . . 310
1 N umeros complejos
Este tema est a dedicado a introducir un nuevo conjunto de n umeros: los n umeros
complejos, habitualmente denotado como C, y que ser a necesario usar en determinados
momentos a lo largo de este texto. Se pretende dar una introducci on r apida a las
operaciones algebraicas con n umeros complejos, su representaci on gr aca y el c alculo
de potencias y races. Adem as veremos un resultado central, conocido como el Teorema
Fundamental del

Algebra, que nos ser a de especial utilidad en el tema 6. Dedicaremos
tambien una seccion a la realizacion de c alculos con Python y veremos c omo los
n umeros complejos permiten denir objetos interesantes como los fractales.
1 1
EL CUERPO DE LOS N

UMEROS COMPLEJOS
El conjunto de n umeros complejos surge de forma parecida al resto de conjuntos
numericos. El lector debe conocer que el conjunto de n umeros enteros (denotado por
Z) se necesita para poder realizar la operaci on diferencia en el conjunto de n umeros
naturales (N), mientras que el conjunto de n umeros racionales (Q) es introducido para
permitir la divisi on entre n umeros enteros. En la misma lnea, el conjunto de n umeros
complejos viene a cubrir la imposibilidad en el conjunto de n umeros reales (R) de
obtener la raz de un n umero negativo.
1
Recordemos que la resoluci on de una ecuaci on de segundo grado en R depende del
signo del discriminante
ax
2
+bx +c = 0 x =
b

b
2
4ac
2a
de modo que:
(i) si b
2
4ac > 0 tenemos dos soluciones,
(ii) si b
2
4ac = 0 hay una unica soluci on (doble),
(iii) si b
2
4ac < 0 no hay soluci on (real).
1
El termino n umero complejo fue introducido por el aleman Carl Friedrich Gauss hacia
1831 aunque ya en los trabajos de matematicos griegos surge la primera referencia conocida
a races cuadradas de n umeros negativos como resultado de una imposible secci on de una
piramide. Mucho mas tarde, el matematico italiano Gerolamo Cardano se dio cuenta de que
podan manejarse cantidades m as generales que los n umeros reales cuando intentaba encontrar
una formula para resolver ecuaciones c ubicas, en torno al a no 1540.
7
8 Tema 1 N umeros complejos
El conjunto de n umeros complejos se introduce con la nalidad de evitar la
discusi on anterior. Para ello comenzamos con la siguiente denici on:
Denici on 1.1 Se dene la unidad imaginaria como i =

1, o de forma equiva-
lente, i
2
= 1.
Con esta denici on, si b
2
4ac < 0 (b
2
4ac) > 0 y
x =
b

b
2
4ac
2a
=
b

1
_
(b
2
4ac)
2a
=
b i

b
2
+ 4ac
2a
Observemos que i es un nuevo n umero,
2
aquel cuyo cuadrado es 1, que permite salvar
la imposibilidad existente en R de realizar operaciones que involucren races negativas.
A partir de este nuevo n umero, denimos los n umeros complejos del siguiente modo:
Denici on 1.2 Un n umero complejo es una expresi on de la forma z = +i, donde
, R. es denominada la parte real, Re(z), mientras que es la parte compleja
o imaginaria, Im(z). Esta expresi on se conoce como forma binomial o cartesiana del
n umero complejo.
As, dos n umeros complejos ser an iguales si sus partes reales e imaginarias respec-
tivas son iguales.
Nota 1.1 Si = 0 z = R; es decir, los n umeros reales forman un subconjunto
de los n umeros complejos, aquellos cuya parte imaginaria es nula. Si = 0 el n umero
complejo z = i se denomina imaginario puro.
Operaciones con n umeros complejos
La suma, resta y multiplicaci on de n umeros complejos
3
se realiza siguiendo las
operaciones algebraicas habituales para binomios, es decir,
(
1
+i
1
) (
2
+i
2
) = (
1

2
) +i(
1

2
)
(
1
+i
1
)(
2
+i
2
) =
1

2
+i
1

2
+i
2

1
+i
2

2
= (
1

2
) +i(
1

2
+
2

1
)
N otese c omo se ha usado que i
2
= 1.
2
La notacion se debe al suizo Leonhard Euler, que la introdujo en 1777, aunque la adopcion
por parte de Gauss en 1801 fue la que lo hizo un smbolo habitual. En ingeniera electrica,
electronica y areas relacionados, la unidad imaginaria es a menudo escrita como j para evitar
la confusion con la intensidad de corriente electrica, tradicionalmente denotada por i.
3
Las reglas para estas operaciones fueron desarrolladas por el matematico italiano Rafael
Bombelli en un tratado de

Algebra publicado en 1572.
1.1 El cuerpo de los n umeros complejos 1.1 El cuerpo de los n umeros complejos 9
Ejemplo 1.1
(2 + 3i) + (5 2i) = 7 i, (1 +i) (2 + 5i) = 1 4i,
(3 + 2i) + (5 2i) = 8, (1 +i) (1 + 2i) = i,
(2 + 3i)(5 2i) = 16 + 11i, (1 +i)(2 + 5i) = 3 + 7i,
(3 + 2i)(5 2i) = 19 + 4i, (1 +i)(1 + 2i) = 1 + 3i.

Para efectuar la divisi on de n umeros enteros necesitamos la siguiente denici on:


Denici on 1.3 Si z = +i C, se dene el conjugado de z, y se denotar a por z,
como el n umero complejo z = i.
Es decir, el conjugado de un n umero complejo no es m as que un nuevo n umero
complejo que tiene la misma parte real, y su parte imaginaria es la opuesta. La
operacion de conjugaci on posee las siguientes propiedades:
Proposici on 1.1 Si z, w C se verica:
(i) z = z.
(ii) z +w = z +w.
(iii) z = z z es real.
(iv) z = z z es imaginario puro.
(v) Si z = +i, entonces zz =
2
+
2
R
+
= |x R : x > 0.
La demostracion se deja como ejercicio al lector (ejercicio 3).
La divisi on entre n umeros complejos se basa en usar adecuadamente la propiedad
(v). En concreto,
+i
+i
=
( +i)( +i)
( +i)( +i)
=
( +) +i( +)

2
+
2
=
+

2
+
2
+i

2
+
2
La expresi on anterior nos proporciona la forma de dividir n umeros complejos: se trata
de multiplicar numerador y denominador por el conjugado del denominador y realizar
las operaciones correspondientes.
Ejemplo 1.2
2 + 3i
5 2i
=
(2 + 3i)(5 + 2i)
(5 2i)(5 + 2i)
=
4 + 19i
29
=
4
29
+
19
29
i
1 +i
1 + 2i
=
(1 +i)(1 2i)
(1 + 2i)(1 2i)
=
3 i
5
=
3
5

1
5
i
i
2 i
=
i(2 +i)
(2 i)(2 +i)
=
1 + 2i
5
=
1
5
+
2
5
i
10 Tema 1 N umeros complejos

Nota 1.2 Las operaciones suma y producto de n umeros complejos satisfacen las pro-
piedades habituales de asociatividad, conmutatividad, existencia de elemento neutro,
elemento simetrico (el opuesto en el caso de la suma y el inverso en el caso del produc-
to) y propiedad distributiva del producto respecto de la suma (vease el apendice A).
Como consecuencia C, al igual que R o Q tiene estructura de cuerpo conmutativo.
Sin embargo es importante notar que, si bien R y Q son cuerpos ordenados (con la
relaci on de orden ), C no lo es, es decir, no tiene sentido la expresi on z
1
z
2
para
z
1
, z
2
C (salvo que sean n umeros reales).
1 2
REPRESENTACI

ON GEOM

ETRICA: M

ODULO Y ARGUMENTO
Un n umero complejo z = + i puede considerarse como un par ordenado de
n umeros reales (, ). Estamos acostumbrados a representar geometricamente un par
de este tipo como puntos en el plano cartesiano, siendo la abscisa y la ordenada.
As pues, la identicaci on entre el n umero complejo z y el par (Re(z), Im(z)) nos
permite representar geometricamente un n umero complejo como un punto del plano,
que denominaremos plano complejo,
4
en el que el eje de abscisas pasa a llamarse
eje real y el eje de ordenadas eje imaginario (ver gura 1.1a).
eje real
e
j
e
i
m
a
g
i
n
a
r
i
o

z = + i
(a)
|
z
|

z = + i

(b)
Figura 1.1: Representacion graca de un n umero complejo
Alternativamente, podemos representar tambien los n umeros complejos como vec-
tores en el plano, de manera que el n umero complejo z = + i puede identicarse
con el vector que une los puntos (0, 0) con (, ) en el plano (ver gura 1.1b). Esta
4
Tambien conocido como plano de Argand, aunque en realidad fue el noruego Caspar Wessel
en 1796 el primero que mostraba esta representacion geometrica de los n umeros complejos.
1.2 Representaci on geom etrica: m odulo y argumento 1.2 Representaci on geom etrica: m odulo y argumento 11
otra representaci on permite identicar elementos importantes de un n umero complejo
como son su m odulo y su argumento.
Denici on 1.4 Dado un n umero complejo z = + i se dene su m odulo, que se
notar a como [z[, por
[z[ =

zz =
_

2
+
2
Como se puede observar, el m odulo de un n umero complejo coincide con el m odulo
del vector (la longitud) que lo representa (ver gura 1.1b), y es igual a la distancia
entre el punto del plano correspondiente al n umero complejo y el origen, siendo por
tanto un n umero real positivo salvo en el origen, cuyo m odulo, obviamente, es cero.
Nota 1.3 Si z R, entonces su m odulo coincide con su valor absoluto, de ah que la
notaci on empleada sea la misma.
Las principales propiedades del m odulo se resumen en el siguiente resultado:
Proposici on 1.2
(i) [z[ = [z[ = [ z[, z C.
(ii) [z
1
z
2
[ = [z
1
[ [z
2
[, z
1
, z
2
C.
(iii) Re(z) [ Re(z)[ [z[.
(iv) Im(z) [ Im(z)[ [z[.
(v) Desigualdad triangular: [z
1
+z
2
[ [z
1
[ +[z
2
[, z
1
, z
2
C.
(vi) [z
1
z
2
[ [[z
1
[ [z
2
[[, z
1
, z
2
C.
Para la demostracion veanse los ejercicios 4 y 5.
Atendiendo a la gura 1.1b, para cada n umero complejo z C\|0 tambien
podemos considerar el angulo que forma el vector que dene z con el semieje real
positivo. Este angulo se toma en radianes y se usa el criterio habitual de signos, que
considera angulos positivos los recorridos en sentido antihorario y angulos negativos
los del sentido horario. Entonces, la conocidas relaciones trigonometricas conducen a
Re(z) = [z[ cos , Im(z) = [z[ sen (1.1)
Debido a la periodicidad de las funciones reales trigonometricas, la igualdad anterior
sigue siendo v alida para + 2k, para cada k Z. Teniendo esto presente podemos
dar la siguiente denici on:
Denici on 1.5 Dado un n umero complejo z = + i ,= 0 se dene el argumento
de z, y se notar a por arg(z). al conjunto
arg(z) = | R : = [z[ cos , = [z[ sen
12 Tema 1 N umeros complejos
El argumento de 0 no est a denido.
Se denomina argumento principal de z C\|0, y se notar a por Arg(z), al unico
n umero arg(z) tal que < .
Es importante resaltar el car acter no unvoco del argumento de un n umero comple-
jo. Es decir, el argumento no es un unico valor, sino un conjunto de ellos. Este hecho
tiene importantes consecuencias en la denici on de ciertas funciones complejas (que
no ser an tratadas en este texto) y en el c alculo de races que veremos en la secci on 1.4.
Nota 1.4 Gracias a la representaci on graca, la operaci on de conjugaci on puede verse
de forma sencilla en terminos del m odulo y el argumento. M as concretamente, el
conjugado de un n umero complejo corresponde a un vector simetrico respecto del
eje real, por lo tanto posee el mismo m odulo y opuesto argumento, es decir,
[z[ = [z[, arg(z) = arg(z)
Ejemplo 1.3 Representemos en el plano complejo los n umeros 3,

3
2

1
2
i y 2 + 2i
(vease la gura 1.2). El m odulo de cada uno de ellos es [3[ = 3, [

3
2
+
1
2
i[ = 1 y
2 + 2i
3

3
2
+
1
2
i
Figura 1.2: Representacion de n umeros complejos del ejemplo 1.3
[ 2 + 2i[ =

8 y sus argumentos principales:


Arg(3) = 0, Arg(

3
2
+
1
2
i) =

6
, Arg(2 + 2i) =
3
4

1 3
1.4 Forma trigonom etrica y forma polar 1.4 Forma trigonom etrica y forma polar 13
FORMA TRIGONOM

ETRICA Y FORMA POLAR


Si z ,= 0 es un n umero complejo, para cada arg(z), en virtud de (1.1), podemos
escribir
z = [z[(cos +i sen ) (1.2)
De hecho, tambien es cierto si z = 0, para cualquier R.
Denici on 1.6 A la expresi on (1.2) se le denomina forma trigonometrica de un
n umero complejo.
Denici on 1.7 Dado R, se dene e
i
= cos + i sen , que se conoce como
f ormula de Euler.
Si ahora usamos (1.2) se tiene
z = [z[e
i
, arg(z) (1.3)
Denici on 1.8 A la expresi on (1.3) se le denomina forma polar de un n umero
complejo.
Las forma polar de los n umeros complejos facilita la multiplicaci on y divisi on de
los mismos gracias a las propiedades de la exponencial. As, si z
1
= r
1
e
i
1
y z
2
= r
2
e
i
2
entonces
z
1
z
2
= r
1
r
2
e
i(
1
+
2
)
,
z
1
z
2
=
r
1
r
2
e
i(
1

2
)
Esto nos permite representar gracamente el producto y el cociente de n umeros
complejos. As, el producto de dos n umeros complejos tiene como m odulo, el producto
de los m odulos, y como argumento, la suma de los argumentos. Es decir, si z, w C\|0
entonces
arg(zw) = arg(z) + arg(w)
No obstante es importante resaltar que la igualdad anterior es una igualdad entre
conjuntos.
5
Es decir, se verica que
arg(z
2
) = arg(z) + arg(z)
pero este hecho no es cierto para los argumentos principales. Por ejemplo, Arg((i)
2
) =
Arg(1) = pero Arg(i) + Arg(i) = .
5
Dados dos conjuntos A y B, se dene la suma A + B como el conjunto A + B = {a + b :
a A, b B}
14 Tema 1 N umeros complejos
(a) z
5
= 1 (b) z
8
= 1
Figura 1.3: Races de la unidad
1 4
POTENCIA Y RA

IZ N-

ESIMA DE UN N

UMERO COMPLEJO
La potencia natural de un n umero complejo se calcula f acilmente usando la forma
polar; si n N,
z = re
i
z
n
= r
n
e
in
Usando la forma trigonometrica se puede deducir la conocida como f ormula de De
Moivre
6
cos(n) +i sen(n) = (cos +i sen )
n
(1.4)
Por otro lado, dados w C y n N, se dene la raz n-esima de w como el n umero
complejo z tal que z
n
= w. Usando la forma polar, podemos calcular las n races n-
esimas que posee todo n umero complejo (excepto el 0): si w = re
i
= re
i(+2k)
,
z
n
= w z =
n

re
i
+2k
n
, k = 0, 1, . . . , n 1 (1.5)
gener andose as n n umeros distintos. Atendiendo a los argumentos de estos se observa
que las races n-esimas forma un polgono regular de n lados centrado en el origen y
de radio
n

r (vease la gura 1.3).


Ejemplo 1.4 Calculemos los n umeros complejos tales que z
8
= 1 (gura 1.3b). Algunos
de estos son f aciles de calcular, pues
z
8
= 1 z
4
= 1

z
2
= 1 z = 1
z
2
= 1 z = i
6
Denominada as por el matematico frances Abraham de Moivre. La formula aparece
publicada en un artculo suyo en 1722.
1.5 Potencia y raz n- esima de un n umero complejo 1.5 Potencia y raz n- esima de un n umero complejo 15
Sin embargo hemos perdido algunas races por el camino. Por eso, la mejor forma de
llevar a cabo este c alculo es usar (1.5):
z
8
= 1 = e
i2k
z = e
i
2k
8
, k = 0, . . . , 7
que corresponde a
e
i0
= 1, e
i

4
=

2
2
+

2
2
i, e
i

2
= i, e
i
3
4
=

2
2
+

2
2
i,
e
i
= 1, e
5
4
=

2
2

2
2
i, e
3
2
= i, e
i
7
4
=

2
2

2
2
i.

Ejemplo 1.5 C uales de los siguientes n umeros complejos 1 +i, 1 +i, 1 i y 1 i


son races decimas de 32i?
Si escribimos cada uno de estos n umeros en forma polar,
1 +i =

2e
i

4
, 1 +i =

2e
i
3
4
, 1 i =

2e
i
3
4
, 1 i =

2e
i

4
calcular su potencia decima es f acil:
(1 +i)
10
= 32e
i
5
2
= 32i, (1 +i)
10
= 32e
i
15
2
= 32i,
(1 i)
10
= 32e
i
15
2
= 32i, (1 i)
10
= 32e
i
5
4
= 32i.

Para nalizar, daremos un resultado que ser a de vital importancia en el tema 6 y


que arma que C es un cuerpo algebraicamente cerrado, es decir, que todo polinomio
en C tiene al menos una raz. Por ejemplo, es facil ver que R no es algebraicamente
cerrado, pues el polinomio x
2
+1 no tiene races reales. Este resultado, conocido como
Teorema fundamental del

Algebra, arma lo siguiente:
Teorema 1.1 (Teorema fundamental del

Algebra)
Si p(x) = a
0
+a
1
x + +a
n
x
n
es un polinomio con coecientes complejos (esto es,
a
i
C, i), entonces la ecuacion p(x) = 0 tiene n races contando sus multiplicidades.
Aunque existe una f acil demostraci on de este resultado, la maquinaria empleada
para la misma excede los objetivos de este curso.
7
El interes principal que para nosotros tiene este resultado ocurre cuando el polino-
mio tiene coecientes reales (es decir, a
i
R, i). En tal caso, el polinomio tendr a n
races (reales o complejas), y adem as, si z es una raz compleja de p, entonces z tambien
es raz de p (vease el ejercicio 14).
7
El primer matematico en enunciar un resultado parecido (que todas las ecuaciones de
grado n tienen n races) fue el frances Albert Girard en 1629, aunque no menciona que
tales soluciones puedan ser complejas. El resultado se acepto como un hecho evidente por la
comunidad matematica. El primer intento serio de demostraci on se debi o al tambien frances
Jean Le Rond dAlambert en 1746, pero la prueba tiene algunos puntos negros. Aunque
es aceptado que la primera demostracion del resultado es debida a Gauss en 1799 en su
tesis doctoral, la prueba no es completamente rigurosa seg un los est andares actuales. Gauss
dio otras tres pruebas del resultado a lo largo de su vida; la ultima aparecio en 1849, en el
ultimo artculo que escribi o, cincuenta a nos despues de su primera demostracion.
16 Tema 1 N umeros complejos
1 5
C

ALCULO CON PYTHON


En esta secci on mostraremos c omo usar Python para operar con n umeros comple-
jos, a la vez que profundizaremos en el empleo del m odulo SymPy presentado en el
apendice B. Es esencial que el lector posea un mnimo de conocimientos del lenguaje
(que exponemos en el citado apendice). Por otra parte, es muy conveniente que el lec-
tor realice los ejemplos que exponemos aqu para habituarse al interprete Python. En
ese sentido, hemos numerado de forma consecutiva las lneas de ordenes introducidas
en el interprete, simulando una determinada sesi on interactiva, por lo que de un ejem-
plo al siguiente se conservan las importaciones de los m odulos realizadas previamente.
Cuando los n umeros de lnea comienzan de nuevo, signica que hemos abierto una
nueva sesi on, y por tanto debemos volver a cargar ciertas funciones.
1 5 1 Operaciones basicas
Comenzaremos con ejemplos de operaciones algebraicas sencillas con Python.
Como se ve en la secci on B.2, los n umeros complejos est an accesibles en Python y
operar con ellos es f acil. Realicemos las siguientes operaciones:
(2 i) (6 + 2i) = 4 3i
(3 + 2i)(1 5i) = 13 13
1 +i
1 + 2i
=
3
5

1
5
i
1 >>> 2-1j-(6+2j)
2 (-4-3j)
3 >>> (3+2j)*(1-5j)
4 (13-13j)
5 >>> (1+1j)/(1+2j)
6 (0.59999999999999998 -0.20000000000000001j)
Como ocurre con las calculadoras, en el momento en el que aparecen n umeros racionales
el calculo se vuelve engorroso. Afortunadamente tenemos el m odulo SymPy para operar
de forma exacta. En este m odulo tenemos denida la unidad imaginaria como I, pero
hemos de usar el operador de multiplicaci on (a diferencia del uso con j): por ejemplo,
1 +i
1 + 2i
=
3
5

1
5
i
7 >>> from sympy import I,simplify
8 >>> (1+I)/(1+2*I)
9 (1 + I)/(1 + 2*I)
10 >>> simplify(_)
11 3/5 - I/5
Como podemos observar, la operacion
1+i
1+2i
no se realiza al momento (es tratada como
una expresi on simb olica), por lo que debemos simplicarla. N otese el uso del gui on
bajo (o underscore) para referirnos al ultimo c alculo realizado. N otese tambien que
1.5 C alculo con Python 1.5 C alculo con Python 17
solo hemos importado las funciones del m odulo que necesitamos. Podramos haber
escrito directamente
12 >>> simplify (6/(2-I))
13 12/5 + 6*I/5
que equivale a
6
2 i
=
12
5
+
6
5
i
El m odulo SymPy tambien dispone de funciones para calcular el conjugado, el
m odulo y el argumento de un n umero complejo:
1 >>> from sympy import arg ,abs ,conjugate ,sqrt ,I
2 >>> a=sqrt (3)+I
3 >>> conjugate(a)
4 3**(1/2) - I
5 >>> abs(a)
6 2
7 >>> arg(a)
8 pi/6
que realiza el c alculo

3 +i =

3 i

3 +i

= 2 arg(

3 +i) =

6
Observemos que hemos importado del m odulo SymPy, adem as de las funciones
que vamos a usar, tambien la funci on sqrt (raz cuadrada). Recordamos aqu que
esta funci on no viene por defecto con el n ucleo de Python y es necesario importarla.
Que hubiera ocurrido si, en lugar de usar la funci on sqrt de SymPy, usamos la del
m odulo math:
1 >>> from sympy import conjugate ,I
2 >>> from math import sqrt
3 >>> a=sqrt (2)+I
4 >>> conjugate(a)
5 1.73205080756888 - I
Insistimos en la ventaja de hacer las operaciones con funciones de SymPy, que,
en la medida de lo posible, realizara las operaciones exactas. Como hemos visto en
el ejemplo anterior, SymPy es capaz de reconocer ciertos angulos habituales, pero
obviamente, no hace milagros:
1 >>> from sympy import arg ,abs ,sqrt ,I
2 >>> a=sqrt (2)+I
3 >>> abs(a)
4 3**(1/2)
5 >>> arg(a)
6 atan (2**(1/2) /2)
que interpretamos como

2 +i

3 arg(

2 +i) = arctan

2
2
18 Tema 1 N umeros complejos
Si necesitamos el valor real de alguna de las operaciones efectuadas con SymPy,
podemos usar el metodo evalf
7 >>> arg(a).evalf ()
8 0.615479708670387
esto es,
arctan

2
2
= 0.615479708670387
que al ser un metodo y no una funci on, no precisa importaci on.
1 5 2 Operaciones avanzadas
El m odulo SymPy permite realizar c alculos m as sosticados con los n umeros
complejos: por ejemplo, reconoce la f ormula de Euler, y es capaz de simplicar
operaciones trigonometricas:
1 >>> from sympy import Symbol ,E,I,re
2 >>> x=Symbol(x,real=True)
3 >>> a=E*(I*x)
4 >>> b=a.expand(complex=True)
5 >>> b
6 I*sin(x) + cos(x)
7 >>> c=a**3
8 >>> d=c.expand(complex=True).expand(trig=True)
9 >>> d
10 -3*cos(x) - I*sin(x) + 4*I*cos(x)**2* sin(x)
11 + 4*cos(x)**3
12 >>> re(d)
13 -3*cos(x) + 4*cos(x)**3
14 >>> f=c.expand(complex=True)
15 >>> re(f)
16 cos(3*x)
17 >>> (re(f)-re(d)).expand(trig=True)
18 0
N otese el uso de la etiqueta adicional real=True en la funcion Symbol, cuyo signicado
es evidente: asume que la variable simb olica x es real. El n umero e viene dado por E
y la parte real es re. El metodo expand sirve para desarrollar expresiones, y admite
etiquetas adicionales para usar desarrollos con complejos o trigonometricos (admite
otras varias como logartmos, potencias, etc.).
Los c alculos prueban la f ormula:
cos(3x) = 3 cos(x) + 4 cos
3
(x)
Puede el lector encontrar una f ormula an aloga para sen(3x)?
El m odulo SymPy tambien permite encontrar las races complejas de polinomios.
La funci on solve nos proporciona las races de una ecuaci on del siguiente modo:
1 >>> from sympy import Symbol ,solve
2 >>> x=Symbol(x)
1.6 Una breve incursi on en el mundo fractal 1.6 Una breve incursi on en el mundo fractal 19
3 >>> solve(x**4-1,x)
4 [1, -1, -I, I]
esto es,
x
4
1 = 0 x = 1, 1, i, i
Si el resultado esperado es amplio podemos guardarlo en una lista
1 >>> from sympy import I
2 >>> a=solve(x**4-I,x)
3 >>> a
4 [-sin(pi/8) + I*cos(pi/8),
5 -I*cos(pi/8) + sin(pi/8),
6 -cos(pi/8) - I*sin(pi/8),
7 I*sin(pi/8) + cos(pi/8)]
y luego podemos usar un bucle para, por ejemplo, obtener los valores numericos de
cada una de las soluciones:
1 >>> for b in a:
2 ... b.evalf()
3 ...
4 -0.38268343236509 + 0.923879532511287*I
5 0.38268343236509 - 0.923879532511287*I
6 -0.923879532511287 - 0.38268343236509*I
7 0.923879532511287 + 0.38268343236509*I
1 6
UNA BREVE INCURSI

ON EN EL MUNDO FRACTAL
Los fractales
8
son objetos geometricos cuya estructura, generalmente muy irregu-
lar, se repite en diferentes escalas. Esencialmente podramos decir que un fractal es un
objeto de dimensi on fraccionaria, aunque sera necesario dar una denici on concreta
del concepto de dimension al que nos referimos.
Los primeros ejemplos de fractales ya aparecen a nales del siglo XIX, con la
funci on de Weierstrass descubierta en 1872, que es una funci on continua en todos sus
puntos pero que no es derivable en ninguno. El grafo de esta funci on es un objeto
fractal. Posteriormente aparecieron otros objetos, como la curva de Koch
9
(vease la
gura 1.4), que se trata de una curva continua que no posee tangentes (es decir, que no
es derivable) obtenida mediante un procedimiento recursivo bastante simple: dado un
segmento, se divide en tres partes, y la parte central se sustituye por dos segmentos de
igual longitud a los anteriores formando un tri angulo sin la base (vease la gura 1.4a).
El proceso se repite para cada uno de los segmentos de la nueva gura, y el objeto
obtenido en el lmite es la mencionada curva.
8
El termino fue acu nado por el matematico frances de origen polaco Benot Mandelbrot,
en un artculo publicado en 1967 por la revista Science titulado Cu anto mide la costa de
Gran Breta na?
9
Descubierta por el matematico sueco Helge von Koch en 1904.
20 Tema 1 N umeros complejos
(a) Iteraciones de la curva de Koch
Figura 1.4: Curva de Koch
Es f acil darse cuenta de que la longitud de esta curva es innita, pues en cada
iteraci on estamos incrementando su longitud: por ejemplo, si el segmento inicial (el de
la izquierda en la gura 1.4a) tiene longitud 1, la primera iteraci on tendr a longitud
4
3
,
la segunda
16
9
, la tercera
_
4
3
_
3
, . . . , y en la n-esima iteraci on, la longitud ser a de
_
4
3
_
n
,
de modo que la longitud lmite ser a innita. Este hecho nos invita a pensar que, de
alg un modo, este objeto no es unidimensional. Usando la denici on oportuna se puede
encontrar la dimensi on fractal de este objeto que es
ln 4
ln 3
= 1.261 . . .
Este tipo de objetos fueron considerados durante cierto tiempo por la comunidad
matem atica como anomalas articiales
10
y apenas recibieron atenci on. Tras el naci-
miento de la Teora del Caos,
11
el interes por estos objetos se renueva, ya que los
fractales aparecen vinculados a la evoluci on de sistemas complejos. Posteriormente, y
en especial a partir de la publicaci on del libro de Mandelbrot, La Geometra Fractal de
la Naturaleza (1982), los fractales son usados para describir la complejidad de ciertas
formas en la naturaleza, desde las nubes hasta las redes neuronales del cerebro.
Que relaci on hay entre los n umeros complejos y los fractales? Uno de los fractales
m as conocidos, el denominado conjunto de Mandelbrot,
12
es un objeto del plano
complejo que se genera de forma sencilla. Se considera un n umero complejo cualquiera
c, y se construye una sucesi on por recurrencia del siguiente modo:
z
0
= 0, z
n+1
= z
2
n
+c, n 0
En funci on del n umero c escogido, esta sucesi on puede o no estar acotada. Por ejemplo,
si c = 2, la sucesi on que se genera es 0, 2, 6, 38, . . . que es claramente no acotada; pero
10
Una galera de monstruos, como los denomin o el matem atico frances Henri Poincare.
11
Surgida a partir del estudio de un modelo climatico por el matem atico estadounidense
Edward Lorenz en 1963.
12
Las primeras im agenes del mismo se obtuvieron en 1978 por Robert Brook y Peter
Matelski, pero fueron el matem atico frances Adrien Douady y su discpulo John H. Hubbard
quienes demostraron muchas propiedades fundamentales y lo nombraron as en honor a
Mandelbrot.
1.6 Una breve incursi on en el mundo fractal 1.6 Una breve incursi on en el mundo fractal 21
si c = 1, la sucesi on queda 0, 1, 0, 1, . . . que s est a acotada. El conjunto de
Mandelbrot est a formado por los n umeros complejos c tales que la sucesi on anterior
permanece acotada. Es decir, 1 es un punto que est a en el conjunto de Mandelbrot,
pero 2 no pertenece a dicho conjunto. Si analizamos el comportamiento de la sucesion
con todos los puntos del plano complejo obtenemos la gura 1.5a, en la que se aprecia
el aspecto general del conjunto de Mandelbrot. Las Figuras 1.5b y 1.5c muestran
aproximaciones (las indicadas en los recuadros) con m as detalle. Podemos ver la
autosimilitud caracterstica de los fractales (se repiten en escalas cada vez m as
peque nas) y el orden dentro del caos que subyace en los mismos.
13
1 6 1 Generacion del conjunto de Mandelbrot con Python
Adjuntamos aqu un breve programa en Python con el que obtener los gr acos
aqu mostrados. Para su funcionamiento se precisa del modulo matplotlib
14
para
poder generar gr acos con Python.
1 #! /usr/bin/python
2
3 from numpy import array ,zeros
4 from matplotlib.pyplot import imshow ,xticks ,yticks ,show
5
6 def mandelplot(size , limit , xint , yint):
7
8 img = zeros([size , size], int)
9
10 xamp=xint[1]-xint [0]
11 yamp=yint[1]-yint [0]
12
13 for y in range(size):
14 for x in range(size):
15 c = complex(x/float(size)*xamp +
xint[0],y/float(size)*yamp + yint
[0])
16 z = c
17 for i in range(limit):
18 z = z**2 + c
19 img[y,x] += 1
20 if abs(z) > 2:
21 break
22 else:
23 img[y,x] = 0
24
25 img = array(img/float(img.max()))
26
13
Precisamente esta caracterstica de los fractales, la aparicion de cierta regularidad dentro
del caos, fue lo que llamo la atencion de Mandelbrot cuando intentaba descifrar la causa
de la existencia de determinado ruido en las lneas telef onicas que usaban para transmitir
informacion en la red de ordenadores de la compa na IBM, en la cual trabajaba.
14
Se puede descargar desde http://matplotlib.sourceforge.net/.
22 Tema 1 N umeros complejos
27 asp=yamp/xamp
28
29 imshow(img ,interpolation=bilinear ,origin=lower ,
cmap=binary ,aspect=asp)
30
31 xticks ([])
32 yticks ([])
33 show()
34
35 return
36
37
38 puntos = 1000
39 limite = 250
40 xint =[-2. ,1.]
41 yint =[ -1.5 ,1.5]
42
43 mandelplot(puntos ,limite ,xint ,yint)
El funcionamiento del programa consiste en, dado un determinado conjunto de
puntos del plano complejo, analizar las iteraciones de la sucesi on que dene al conjunto,
en cada uno de esos puntos. Si en alg un momento de la iteracion el m odulo es mayor
que 2, autom aticamente sabemos que ese n umero complejo no va a pertenecer al
conjunto de Mandelbrot. Por el contrario, si despues de haber realizado un cierto
n umero de iteraciones, el m odulo sigue siendo menor que 2, consideramos que ese
punto est a dentro del conjunto.
Analicemos con m as detenimiento el c odigo: La lnea 1 es el shebang comentado en
la secci on B.1.1. Las lneas 3 y 4 cargan las funciones a usar desde los m odulos. Entre
las lneas 6 y 35 denimos una funci on que hace todo el trabajo y que invocamos en
la lnea 43.
Las funciones son trozos de c odigo que realizan una determinada tarea. Vienen
denidas por la orden def y a continuaci on el nombre que las dene (en nuestro
caso mandelplot). Siguiendo la sintaxis propia de Python, el c odigo de la funci on
est a sangrado. La funci on naliza con la orden return.
La principal caracterstica de las funciones es que permiten pasarles argumentos
de manera que la tarea que realizan cambia en funci on de dichos argumentos. En este
caso se les pasa los argumentos size, limit, xint e yint que son denidos en las
lneas 38 a 41 (notese que se pueden denir con nombres distintos, lo que importa es el
orden en el que se llaman). Estos dos ultimos son dos listas que se reeren al dominio
en el que se van a realizar los c alculos: xint nos da la cota inferior y superior para la
parte real de los n umeros complejos a considerar, e yint dene las cotas para la parte
imaginaria. El parametro size dene el n umero de subdivisiones que vamos a realizar
en cada intervalo xint e yint. El par ametro limit se reere al n umero m aximo de
veces que vamos a realizar la iteraci on que dene al conjunto.
La funci on, una vez introducidos los par ametros, crea una matriz de ceros de
tama no sizesize (lnea 8); en las lneas 10 y 11 calcula la amplitud de la regi on a
dibujar y entre las lneas 13 y 23 est a el doble bucle que recorre cada uno de los puntos
c de la regi on a considerar (denidos en la lnea 15).
1.6 Una breve incursi on en el mundo fractal 1.6 Una breve incursi on en el mundo fractal 23
(a) Rectangulo [2, 1] [
3
2
,
3
2
]
(b) Rectangulo [
3
2
, 1] [0,
1
2
] (c)
Figura 1.5: El conjunto de Mandelbrot
24 Tema 1 N umeros complejos
Para cada punto, se entra en un bucle for-else (lneas 1723) en el que se analiza
si el punto est a o no en el conjunto de Mandelbrot. Para ello se van construyendo
los elementos de la sucesi on (lnea 18) hasta la iteraci on limit (como m aximo). Si
en alg un elemento de la sucesi on el m odulo es mayor que 2 entonces se interrumpe el
bucle (lneas 2021) y se pasa a analizar el siguiente punto. N otese que el elemento
correspondiente a la matriz img va sumando 1 cada vez que se construye un elemento
de la sucesi on (lnea 19). As, si interrumpimos el bucle en un punto porque el m odulo
es mayor que 2, habremos asignado a la matriz el ndice de la sucesi on en el que se ha
obtenido la condici on de salida.
Por el contrario, si el bucle for naliza sin un break (es decir, los elementos de la
sucesi on se mantienen todos con m odulo menor o igual que 2), entonces se ejecuta el
bloque else (n otese el sangrado), poniendo el elemento de la matriz a 0 (lnea 23).
Al nalizar el doble bucle (lneas 1723), el programa habr a construido una matriz
en la que cada elemento guarda un ndice entero para cada punto del rect angulo del
plano complejo analizado. Estendice vale 0 si el punto est a en el conjunto, y es distinto
de 0 si no lo est a.

Indices altos indican que ha costado decidir si el punto esta o no en el


conjunto, mientras que ndices bajos corresponden a puntos que r apidamente han sido
descartados por su pertenencia al conjunto. Este rango de ndices nos va a permitir
dar color al dibujo. Si solo hubieramos indicado la pertenencia al conjunto con un 1 o
un 0 apreciaramos menos detalles en el dibujo. El lector puede probar con distintos
valores del par ametro limit para corroborar esto.
La lnea 25 normaliza los valores de la matriz img dividiendo por el mayor valor de
esta (lo que se obtiene con img.max()). Observese tambien la necesidad de convertir
a un n umero real con float. La matriz ahora tendr a valores reales entre 0 y 1.
Finalmente, la funci on imshow de matplotlib crea un dibujo a partir de la matriz
coloreando cada pixel en funcion del valor (el coloreado usado en este caso ha sido
binary). Las funciones xtick e ytick eliminan la informaci on sobre los ejes y show()
muestra el resultado.
El c odigo de la funci on (lneas 635) no se ejecuta hasta que la funci on no es
llamada en la lnea 43. Las lneas 3841 denen los par ametros con los que se ha
obtenido la gura 1.5a. El lector puede probar modicando estos valores para obtener
distintas partes del conjunto, con diferentes niveles de aproximaci on.
1 7
EJERCICIOS
1. Realizar las siguientes operaciones con n umeros complejos:
(2 + 5i)(3 +i) (1 +i)(1 i) 2i (5 + 5i)(3 6i)
1 + 3i
2 5i
4 7i
3 + 5i
i
2 i
2. Probar que para cada z C,
Re(z) =
z +z
2
, Im(z) =
z z
2i
3. Demostrar la Proposici on 1.1.
4. Probar (i)(iv) de la Proposici on 1.2.
1.7 Ejercicios 1.7 Ejercicios 25
5. En este ejercicio se pretende demostrar la desigualdad triangular (vease (v) de la
Proposicion 1.2). Para ello:
(a) Probar que 2
2
+
2
, , R.
(b) Usar (a) para probar que
1

2
+
1

2

_
(
2
1
+
2
1
)(
2
2
+
2
2
),
1
,
2
,
1
,
2

R.
(c) Usar (b) para probar que z
1
z
2
+z
1
z
2
2[z
1
[ [z
2
[, z
1
, z
2
C.
(d) Deducir de (c) la desigualdad triangular y (vi) de la Proposici on 1.2.
6. Escribir en forma polar los n umeros 2, i, 2 2i y representarlos en el plano
complejo.
7. Escribir en forma cartesiana los n umeros e
i7
, 3e
i

4
, 2e
i
3
4
y representarlos en el
plano complejo.
8. Escribir en forma cartesiana los n umeros
(1 +

3i)
3
(

3 +i)
2
, i
501
+i
600
.
9. Encontrar el lugar geometrico descrito por la ecuaci on

z+1
z1

= 2.
10. Sea z C tal que z
6
= 64, Re(z) < 0 y Im(z) < 0. Calcular z
4
.
11. Calcular w = (1 i)
12
z
1
, donde z es tal que z
4
+ 1 = 0, Re(z) > 0 y Im(z) > 0.
12. Decidir si las siguientes armaciones son verdaderas o falsas:
(a) Los puntos z, w, z y w forman un cuadrado si y s olo si
z
w
es imaginario
puro.
(b) Los puntos z, w y 0 est an alineados si y s olo si
z
w
es imaginario puro.
(c) Los puntos z, w y 0 est an alineados si y solo si
z
w
es real.
(d) z = 2w Im(
z
w
) = 2

z
w

.
13. Sean z
k
, k = 0, . . . , n 1 las races n-esimas de la unidad. Probar que
n1

k=0
Re(z
k
) = 0
Indicaci on: usar que
n

k=0
a
k
=
1 a
n+1
1 a
14. Probar que si p(x) = a
0
+a
1
x + +a
n
x
n
es un polinomio con coecientes reales
(esto es, a
i
R, i) y z
0
es una raz de p entonces z
0
tambien es raz de p. Es
cierto esto si alg un a
i
C?
15. Resolver las siguientes ecuaciones en C:
z
2
+ 5 = 0; z
2
+z + 1 = 0; z
3
+z
2
+z = 0;
z
2
+ 5z + 2 = 0; z
3
3z
2
+ 5z = 15; z
3
+ 2z
2
+ 4z = 3.
26 Tema 1 N umeros complejos
16. Los Conjuntos de Julia
15
son fractales que se generan de forma similar al conjunto
de Mandelbrot: se considera un n umero complejo jo, y para cada c C se
construye la sucesion
z
0
= c z
n+1
= z
2
n
+, n 0
El conjunto de Julia generado por es el conjunto de n umeros complejos c para
los que la sucesi on anterior permanece acotada. Adaptar el c odigo en Python
de la secci on 1.6.1 para dibujar los conjuntos de Julia para = 0.720.196i y
= 0.1 + 0.87i.
15
Llamados as en honor al matematico frances Gaston Julia.
2 Matrices y Determinantes
Introducimos en este tema una de las herramientas fundamentales del

Algebra,
las matrices, con las que trabajaremos a lo largo de todo el texto. Es probable
que el lector haya tenido ya un contacto previo con estos objetos, as como con
los determinantes, por lo que este tema consistir a esencialmente en un repaso de
tales contenidos, aunque con un enfoque m as abstracto. B asicamente recordaremos
las operaciones entre matrices, el metodo de Gauss y el c alculo de determinantes,
esperando que el lector adquiera una adecuada soltura operacional con ellos.
Puesto que el c alculo matricial es sin duda tedioso, principalmente cuando el ta-
ma no de las matrices aumenta, incluimos tambien una secci on dedicada a la realizaci on
de estas operaciones con Python. De este modo el lector tendra la oportunidad de rea-
lizar los numerosos c alculos que involucren matrices a lo largo del texto con rapidez.
No obstante, es importante resaltar la importancia de saber realizar tales operaciones
sin la necesidad del ordenador. Por ultimo, hacemos una peque na incursi on en una de
las m ultiples aplicaciones donde aparecen las matrices: la teora de grafos.
2 1
MATRICES: PRIMERAS DEFINICIONES
En todos los temas que siguen trabajaremos con conjuntos numericos con los que
ser a necesario realizar cierto tipo de operaciones. M as concretamente, necesitaremos
que tales conjuntos tengan estructura de cuerpo conmutativo (vease el apendice A,
que denotaremos genericamente por K, y que en la pr actica puede ser Q, R o C. En
los casos en los que sea necesario precisar el cuerpo concreto con el que trabajar lo
diremos expresamente.
A los elementos del cuerpo los denominaremos escalares y se denotar an habitual-
mente con letras griegas: , , , etc. Tambien usaremos la notaci on K
n
para referirnos
al producto cartesiano K
n
K, es decir el conjunto de n-uplas (
1
, . . . ,
n
), donde
cada
i
K.
Denici on 2.1 Una ordenacion rectangular

a
11
a
12
a
1n
a
21
a
22
a
2n
.
.
.
.
.
.
.
.
.
.
.
.
a
m1
a
m2
a
mn

27
28 Tema 2 Matrices y Determinantes
se denomina matriz
1
de orden mn (m las y n columnas), donde cada a
ij
K. Los
elementos a
i1
, a
i2
, . . . a
in
forman la la i-esima, que denotaremos por F
i
, mientras que
los elementos a
1j
, a
2j
, . . . , a
mj
conforman la columna j-esima, denotada por C
j
. El
conjunto de matrices de orden mn con coecientes en K se denota por /
mn
(K).
Para simplicar la escritura es frecuente notar a las matrices por A = (a
ij
)
1im
1jn
o simplemente A = (a
ij
), donde el primer ndice siempre denotar a las las, y el
segundo las columnas.
Una matriz A /
1n
(K) se dir a matriz la y si A /
m1
(K) se dir a matriz
columna.
Denici on 2.2 Dos matrices A, B /
mn
(K) son iguales si los elementos corres-
pondientes son iguales, es decir, a
ij
= b
ij
, 1 i m, 1 j n.
Las matrices aparecen en multitud de situaciones por tratarse de objetos ecaces
para tratar informaci on de una manera ordenada. El siguiente ejemplo es una muestra
de ello.
Ejemplo 2.1 Una empresa fabrica pilas electricas en tres tama nos: A, B y C, y dos
voltajes: V
1
y V
2
. El n umero de piezas fabricadas cada da (en miles de unidades) viene
dada por la matriz F, y el precio (en centimos por unidad) en la matriz P:
F =

A B C
V
1
20 19 18
V
2
22 19 21

P =
_
V
1
V
2
A 70 120
B 45 65
C 60 50
_
Como se puede observar, las matrices anteriores contienen la informaci on sobre la
produccion diaria de cada tipo de pila y sus precios. A partir de estas matrices podemos
extraer informaci on implcitamente contenida en ellas. Por ejemplo, la suma de todos
los elementos de la matriz F nos proporciona la cantidad total de pilas fabricadas de
todos los tipos. Si sumamos los elementos de cada columna obtendremos la cantidad
de pilas fabricadas de los tipos A, B y C tanto en el voltaje V
1
como en V
2
. Si por
el contrario sumamos los elementos de cada la, obtendremos la cantidad de pilas
fabricadas por voltaje, de todos los tipos.

Denici on 2.3 Una matriz se dice cuadrada si m = n. El conjunto de matrices


cuadradas de orden n con coecientes en K se notar a por /
n
(K).
Una matriz cuadrada se dice simetrica si a
ij
= a
ji
, i, j.
1
El termino fue acu nado por el matem atico ingles James Joseph Sylvester en 1848, aunque
ordenaciones de este tipo son conocidas desde la antig uedad; por ejemplo, hay constancia de
la aparicion de cuadrados magicos en la literatura china hacia el 650 a.C.
2.1 Matrices: primeras deniciones 2.1 Matrices: primeras deniciones 29
Se denomina matriz traspuesta (o transpuesta) de A = (a
ij
) a la matriz A
T
=
(a
ji
), es decir, la que resulta al intercambiar sus las por sus columnas.
Una matriz se dir a simetrica si es igual a su traspuesta.
Denici on 2.4 Los elementos a
ii
, 1 i mn|m, n son denominados elementos
diagonales, y conforman la llamada diagonal principal de la matriz.
Una matriz con ceros por debajo de la diagonal principal se denomina triangular
superior. Si los ceros est an por encima se dir a triangular inferior. Si hay ceros por
encima y por debajo de la diagonal principal se llamar a matriz diagonal.
Nota 2.1 Observese que la trasposici on de una matriz corresponde a una simetra
respecto de la diagonal principal. De este modo, una matriz simetrica es aquella que
al trasponerla, no cambia.
Ejemplo 2.2 Las traspuestas de las matrices del ejemplo 2.1 son
F
T
=

20 22
19 19
18 21

P
T
=

70 45 60
120 65 50


Operaciones con matrices
2
Las operaciones m as simples que podemos realizar con matrices son la suma y el
producto por un escalar, que se denen del siguiente modo:
Denici on 2.5 Dadas A, B /
mn
(K), con A = (a
ij
) y B = (b
ij
), y K, se
denen:
(i) la suma de A y B como la matriz A+B /
mn
(K) donde (A+B)
ij
=
(a
ij
+b
ij
).
(ii) el producto por escalar de K y A como la matriz A /
mn
(K)
dada por (A)
ij
= a
ij
.
Es decir, podemos sumar matrices siempre que ambas tengan el mismo orden, y
la matriz suma se obtiene sumando los elementos que est an en la misma posici on. Por
otro lado, el producto de una matriz por un n umero es otra matriz en la que cada
elemento est a multiplicado por ese n umero.
2
Fueron introducidas por el matem atico ingles Arthur Cayley en 1857.
30 Tema 2 Matrices y Determinantes
Ejemplo 2.3 Dadas las matrices
A =

1 0
1 1
0 2

, B =

0 0
1 0
0 1

/
32
(R)
entonces
A+B =

1 0
2 1
0 3

, 2A =

2 0
2 2
0 4


Los siguientes dos resultados establecen propiedades elementales de la suma y del
producto por un escalar. Las demostraciones de estos resultados son consecuencia
inmediata de la denicion y de las correspondientes propiedades del cuerpo K.
Proposici on 2.1 (Propiedades de la suma de matrices) Si A, B, C
/
mn
(K), se verican las siguientes propiedades:
(i) Conmutativa: A+B = B +A
(ii) Asociativa: A+ (B +C) = (A+B) +C
(iii) Elemento neutro: existe una unica matriz 0 /
mn
(K) tal que
A + 0 = A, A /
mn
(K), que se denomina matriz nula y cuyos elementos son
todos cero.
(iv) Elemento opuesto o simetrico: para cada matriz A /
mn
(K) existe
una unica matriz D tal que A+D = 0. Se notar a D = A.
Proposici on 2.2 (Propiedades del producto por un escalar) Si , K y
A, B /
mn
(K) entonces
(i) Pseudoasociativa: (A) = ()A
(ii) Distributiva respecto de la suma de escalares: ( +)A = A+A
(iii) Distributiva respecto de la suma de matrices: (A+B) = A+B
Una vez vista la operaci on suma de matrices, parecera bastante natural denir el
producto de matrices de forma an aloga, es decir, multiplicando los elementos que se
hayan en la misma posici on. Lamentablemente, el producto de matrices no se dene
de ese modo, sino de una forma un poco m as enrevesada:
Denici on 2.6 Dadas dos matrices A /
mn
(K) y B /
np
(K), con A = (a
ik
)
y B = (b
kj
) se dene el producto de A por B como la matriz AB /
mp
(K) cuyos
elementos vienen dados por
(AB)
ij
=
n

k=1
a
ik
b
kj
2.1 Matrices: primeras deniciones 2.1 Matrices: primeras deniciones 31
a
11
a
12
. . . a
1n
a
21
a
22
. . . a
2n
.
.
.
.
.
.
.
.
.
.
.
.
a
m1
a
m2
. . . a
mn
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
A: m las n columnas
b
11
b
12
. . . b
1p
b
21
b
22
. . . b
2p
.
.
.
.
.
.
.
.
.
.
.
.
b
n1
b
n2
. . . b
np
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
B: n las p columnas
c
11
c
12
. . . c
1p
c
21
c
22
. . . c
2p
.
.
.
.
.
.
.
.
.
.
.
.
c
m1
c
m2
. . . c
mp
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
a
2
1

b
1
2
a
2
2

b
2
2
a
2
n

b
n
2
+
+
.
.
.
+
C = AB: m las p columnas
Figura 2.1: Ilustracion del producto de matrices
La Figura 2.1 ilustra el proceso de multiplicaci on. Para obtener el elemento c
ij
de
la matriz producto AB (el c
22
en la Figura 2.1) debemos multiplicar cada uno de los
elementos de la la i de la matriz A (la 2 en la Figura 2.1) por el correspondiente
elemento de la columna j de la matriz B (columna 2 en la Figura 2.1), y calcular la
suma de todos esos productos.
Por otra parte, hay que resaltar que para poder realizar el producto de dos matrices
A y B, los ordenes de las matrices deben guardar una relaci on: en concreto, el n umero
de columnas de A debe ser igual al n umero de las de B (para efectuar el producto
AB).
Es muy importante observar que el producto de matrices no es conmutativo!
En algunos casos simplemente no es posible hacer el producto en ambos sentidos, pues
los ordenes no coinciden. Cuando s es posible hacer el producto en ambos sentidos,
tampoco tiene por que ser conmutativo, como se muestra en el Ejemplo 2.4
32 Tema 2 Matrices y Determinantes
Ejemplo 2.4 Dadas las matrices
A =

1 0
1 1
0 2

/
32
(R), B =

1 1
2 1

, C =

0 2
0 1

/
22
(R)
entonces
AB =

1 1
3 2
4 2

, BA no es posible, BC =

0 3
0 5

, CB =

4 2
2 1


Denici on 2.7 La matriz I
n
/
n
(K), dada por
I
n
=

1 0 0
0 1 0
.
.
.
.
.
.
.
.
.
.
.
.
0 0 1

o abreviadamente (I
n
)
ij
=
ij
, 1 i, j n, donde
ij
es el smbolo de Kronecker
3
,
se denomina matriz identidad.
El producto de matrices verica las siguientes propiedades:
Proposici on 2.3 (Propiedades del producto de matrices)
Se verican las siguientes propiedades (siempre que los productos sean posibles):
(i) Asociativa: A(BC) = (AB)C
(ii) Distributiva respecto de la suma:
(por la izquierda): (B +C)A = BA+CA;
(por la derecha): A(B +C) = AB +AC .
(iii) Distributiva respecto del producto por escalar: (A)B = A(B) =
(AB).
(iv) Elemento neutro: se verica I
m
A = A, AI
n
= A, A /
mn
(K),
donde las matrices I
n
, I
m
son las matrices identidad de ordenes n y m, respectiva-
mente.
3
El smbolo o delta de Kronecker viene denido por

ij
=

1 si i = j
0 si i = j
y le debe su nombre al matematico aleman Leopold Kronecker.
2.1 Matrices: primeras deniciones 2.1 Matrices: primeras deniciones 33
La demostraci on de estas propiedades se basa exclusivamente en las deniciones
de las operaciones correspondientes, aunque resulta un poco tediosa. A modo de
ilustraci on, probaremos la asociatividad.
Demostraci on:
(i) Denotemos por A = (a
ij
)
1im
1jn
, B = (b
jk
)
1jn
1kp
y C = (c
kl
)
1kp
1lq
. Notese
que los ordenes de las matrices deben ser los adecuados, pues en caso contrario no se
podran realizar los productos. Veamos que el elemento il de la matriz A(BC) es igual
al elemento il de la matriz (AB)C.
Observemos que el elemento il de A(BC) se obtiene al multiplicar la la i de A
por la columna l de BC. As pues, concentremonos en BC. Sus elementos (BC)
jl
se
obtienen (por denicion) como:
(BC)
jl
=
p

k=1
b
ik
c
kl
Si ahora calculamos A(BC),
((A(BC))
il
=
n

j=1
a
ij
(BC)
jl
=
n

j=1
a
ij

k=1
b
ik
c
kl

=
n

j=1
p

k=1
a
ij
b
ik
c
kl
Ahora hagamos lo mismo con (AB)C. Los elementos de AB son:
(AB)
ik
=
n

j=1
a
ij
b
jk
y por tanto:
((AB)C)
il
=
p

k=1
(AB)
ik
c
kl
=
p

k=1
_
n

j=1
a
ij
b
jk
_
c
kl
=
p

k=1
n

j=1
a
ij
b
jk
c
kl
Puesto que los sumatorios son intercambiables, se obtiene el resultado.
Ejemplo 2.5 Multipliquemos las matrices F y P del ejemplo 2.1:
FP =

20 70 + 19 45 + 18 60 20 120 + 19 65 + 18 50
22 70 + 19 45 + 21 60 22 120 + 19 65 + 21 50

3335 4535
3655 4925

Que signicado tienen las entradas de la diagonal de la matriz producto? Por ejemplo,
el elemento (FP)
11
corresponde a la multiplicacion del n umero de pilas fabricadas de
los modelos de voltaje V
1
por su precio correspondiente, de modo que el valor 3335 nos
da el benecio por la venta de todas las pilas de voltaje V
1
. An alogamente el elemento
(FP)
22
nos proporciona el benecio de la venta de todas las pilas de voltaje V
2
.
34 Tema 2 Matrices y Determinantes
Puede el lector averiguar el signicado de los elementos diagonales de la matriz
PF?

Terminamos esta apartado sobre operaciones con matrices viendo c omo afecta la
trasposicion a la suma y el producto de matrices.
Proposici on 2.4 (Propiedades de la trasposici on de matrices) Si A, B son
matrices y un escalar, entonces
(i) (A
T
)
T
= A.
(ii) (A)
T
= A
T
.
(iii) (A+B)
T
= A
T
+B
T
.
(iv) (AB)
T
= B
T
A
T
.
Demostraci on:
La demostraci on de (i)(iii) es muy sencilla y se deja como ejercicio al lector. Para
probar (iv) supongamos que A es una matriz de orden mn con elementos (a
ij
) y B
una matriz de orden n p con entradas b
jl
. Denotando por a
T
ji
y b
T
lj
las entradas de
A
T
y B
T
, respectivamente, est a claro que a
ij
= a
T
ji
y b
lj
= b
T
jl
.
Si ahora denotamos por c
il
a las entradas de la matriz AB, entonces sabemos que
c
il
=
n

j=1
a
ij
b
jl
Denotando por c
T
li
las entradas de (AB)
T
, entonces
c
T
li
= c
il
=
n

j=1
a
ij
b
jl
=
n

j=1
b
T
lj
a
T
ji
= (B
T
A
T
)
li
2 2
INVERSA DE UNA MATRIZ
Es sabido que el inverso de un escalar es otro escalar tal que, al multiplicar por
este, se obtiene el elemento neutro de la multiplicaci on, es decir, el uno. De forma
similar podemos denir la inversa de una matriz, teniendo presente que el elemento
neutro del producto es la matriz identidad (vease (iv) de la Proposici on 2.3).
Denici on 2.8 Dada una matriz cuadrada A /
n
(K), se dice que la matriz
B /
n
(K) es su inversa si AB = BA = I
n
, donde I
n
/
n
(K) es la matriz
identidad. Se notar a B = A
1
.
Si existe una tal matriz se dir a que A es regular o invertible. En caso contrario
se dir a que A es singular.
2.2 Inversa de una matriz 2.2 Inversa de una matriz 35
N otese que la inversa solo est a denida para matrices cuadradas, y como muestra
el siguiente ejemplo, no siempre existe.
Ejemplo 2.6
(i) Las matrices
A =

2 3
2 2

y B =

1
3
2
1 1

verican que AB = BA = I
2
(el lector puede comprobarlo f acilmente), de manera que
B = A
1
(o tambien A = B
1
).
(ii) Sin embargo, la matriz A =

1 0
0 0

no posee inversa, pues si existiera una


tal matriz B =

a b
c d

, se debera vericar
I
2
= AB =

1 0
0 0

a b
c d

a b
0 0

lo que es imposible.

Teorema 2.1
Si una matriz tiene inversa, entonces esta es unica.
Demostraci on:
Supongamos que B y C son dos inversas de A, es decir, BA = AC = I
n
. Entonces,
B = BI
n
= B(AC) = (BA)C = I
n
C = C
La siguiente proposici on nos permite relajar ligeramente la denici on de inversa,
no siendo necesario comprobar la conmutatividad del producto.
Proposici on 2.5 Si A, B /
n
(K) y verican que AB = I
n
, entonces BA = I
n
y
por tanto B = A
1
.
A pesar de que puede parecer evidente el resultado, la demostraci on requiere un
cierto esfuerzo, por lo que la omitiremos.
El siguiente resultado nos muestra como funciona la inversion con el producto y la
trasposicion de matrices.
36 Tema 2 Matrices y Determinantes
Proposici on 2.6 Si A, B /
n
(K), entonces
(i) Si A y B son invertibles, entonces AB es invertible y (AB)
1
=
B
1
A
1
.
(ii) Si A es invertible, entonces A
T
es invertible y (A
T
)
1
= (A
1
)
T
.
Demostraci on:
(i) Bastar a ver que (AB)(B
1
A
1
) = I
n
, lo cual es evidente usando la propiedad
asociativa del producto de matrices.
(ii) Si A es invertible, sabemos que AA
1
= I
n
, de modo que calculando tras-
puestas
(AA
1
)
T
= I
T
n
= I
n
Por otro lado, (AA
1
)
T
= (A
1
)
T
A
T
como vimos en (iv) de la Proposici on 2.4. Es
decir, el producto de A
T
con (A
1
)
T
es la matriz identidad, por tanto una es la inversa
de la otra.
El paso siguiente consiste en encontrar una forma de calcular inversas de matrices.
El primer metodo que vamos a ver, el metodo de Gauss, probablemente es ya cono-
cido por el lector. Para recordarlo, haremos una breve incursi on en los sistemas de
ecuaciones lineales, que retomaremos en el tema siguiente.
2 3
SISTEMAS DE ECUACIONES LINEALES
Posiblemente, el ejemplo m as habitual del uso de matrices est a en la representaci on
de sistemas de ecuaciones lineales, cuya denici on damos a continuaci on.
Denici on 2.9 Se denomina sistema de ecuaciones lineal de m ecuaciones con n
inc ognitas a una expresi on del tipo siguiente:
a
11
x
1
+a
12
x
2
+ +a
1n
x
n
= b
1
a
21
x
1
+a
22
x
2
+ +a
2n
x
n
= b
2
.
.
.
a
m1
x
1
+a
m2
x
2
+ +a
mn
x
n
= b
m
_

_
(2.1)
donde los a
ij
son denominados coecientes, x
i
son las inc ognitas y b
i
el termino
independiente.
Los sistemas de ecuaciones lineales aparecen frecuentemente en la resolucion
numerica de ecuaciones en derivadas parciales, en el planteamiento de problemas que
2.3 Sistemas de ecuaciones lineales 2.3 Sistemas de ecuaciones lineales 37
provienen de la Fsica, la Economa, etc. En el Tema 3 abordaremos cuestiones relacio-
nadas con la resoluci on de este tipo de sistemas. De momento nos bastar a con denir
que entendemos por soluci on de un sistema.
Denici on 2.10 Se denomina soluci on del sistema (2.1) a toda n-upla
( x
1
, . . . , x
n
) K
n
que convierte la expresi on (2.1) en una identidad.
Las matrices son muy adecuadas para simplicar la escritura de un sistema. As,
si consideramos las matrices
A =

a
11
a
1n
a
21
a
2n
.
.
.
.
.
.
.
.
.
a
m1
a
mn

/
mn
(K), x =

x
1
x
2
.
.
.
x
n

/
n1
(K),
b =

b
1
b
2
.
.
.
b
m

/
m1
(K)
el producto de matrices nos permite escribir el sistema de forma simple como Ax = b.
El lector seguramente conocer a el metodo de eliminacion habitualmente empleado
para resolver sistemas lineales. El metodo est a basado en las siguientes propiedades:
Proposici on 2.7 Se verican las siguientes propiedades:
(i) Si multiplicamos una ecuaci on por un escalar distinto de cero, las
soluciones de (2.1) no varan.
(ii) Si intercambiamos dos ecuaciones en el sistema (2.1), las soluciones del
mismo no cambian.
(iii) Si sumamos o restamos un m ultiplo de una ecuacion a otra, las solu-
ciones del sistema (2.1) no varan.
La demostracion es muy sencilla y se deja al lector.
Estas propiedades nos permiten poner en marcha un metodo simple y directo para
resolver sistemas lineales.
Metodo de Gauss
4
El objetivo de este metodo es la transformaci on del sistema original en uno m as f acil
de resolver, mediante la aplicacion de las propiedades descritas en la Proposici on 2.7.
4
Este metodo ya aparece en un libro de matematicas chino titulado Jiuzhang suanshu o
Nueve captulos del arte matem atico cuyo origen algunos historiadores marcan alrededor del
a no 200 a.C.
38 Tema 2 Matrices y Determinantes
Lo veremos directamente a traves de un ejemplo.
Ejemplo 2.7 Resolver mediante el metodo de Gauss el siguiente sistema:
x + 2y + 3z = 7
x 3y + 2z = 5
x +y +z = 3
_

_
Realizaremos las siguientes operaciones con las ecuaciones del sistema:
x + 2y + 3z = 7
x 3y + 2z = 5
x +y +z = 3
_

_
2
a
1
a
3
a
1
a

x + 2y + 3z = 7
5y z = 2
y 2z = 4
_

_
1
a
2
a

x + 2y + 3z = 7
y 2z = 4
5y z = 2
_

_
52
a
3
a

x + 2y + 3z = 7
y 2z = 4
9z = 18
_

_
En cada transformaci on del sistema hemos usado alguna de las propiedades de la Pro-
posicion 2.7. En concreto, en la primera transformaci on hemos sustituido la segunda
ecuaci on por la diferencia entre la segunda y la primera ecuaci on, y hemos hecho lo
propio entre la tercera y la primera. De esta forma hemos eliminado la variable x en
las dos ultimas ecuaciones. En la segunda transformaci on simplemente hemos inter-
cambiado las ecuaciones segunda y tercera con objeto de simplicar el siguiente paso.
Finalmente hemos llegado a un sistema en el que han desaparecido las dos primeras
variables de la ultima ecuaci on y la primera variable en la segunda ecuaci on. El sistema
resultante (denominado sistema triangular) es muy facil de resolver. Empezamos por
resolver la ultima ecuaci on (z = 2), y su valor lo sustituimos en la anterior, de manera
que esta es tambien f acil de resolver (y = 0). Sucesivamente, sustituimos los valores
obtenidos en la ecuaci on anterior para obtener la soluci on de la primera inc ognita
(x = 1). A este metodo de resolver un sistema triangular se le llama una subida.

Como hemos visto, el metodo de Gauss consiste en triangular el sistema dado, de


manera que pueda resolverse f acilmente mediante una subida. Es importante observar
que el papel de las inc ognitas es superuo.

Unicamente son necesarios los coecientes
de las mismas en el sistema, as como el termino independiente, es decir, podemos
trabajar f acilmente con matrices, como vemos en el siguiente ejemplo.
Ejemplo 2.8 Resolver el sistema mediante el metodo de Gauss:
x + 3y +z = 3
3x + 9y + 4z = 7
2x y +z = 6
_

_
En forma matricial,
2.3 Sistemas de ecuaciones lineales 2.3 Sistemas de ecuaciones lineales 39

1 3 1 3
3 9 4 7
2 1 1 6

F
2
3F
1
F
3
2F
1

1 3 1 3
0 0 1 2
0 7 1 12

F
2
F
3

1 3 1 3
0 7 1 12
0 0 1 2

Resolvemos mediante una subida y obtenemos z = 2, y = 2 y x = 1. La terna


(1, 2, 2) es soluci on de este sistema.

Nota 2.2 Es habitual marcar con una lnea la separaci on entre la matriz de los
coecientes del sistema y los terminos independientes. Por otra parte, hemos operado
con las ecuaciones a traves de las las de la matriz, convenientemente notadas como
F
i
. Es muy aconsejable anotar en cada paso las operaciones realizadas.
Observese adem as que la matriz resultante es una matriz triangular superior.
Las operaciones llevadas a cabo en el metodo de Gauss se conocen como opera-
ciones elementales y pueden ser interpretadas mediante multiplicaci on de matrices
elementales.
Matrices elementales
Denici on 2.11 Se denen las siguientes matrices elementales:
(i) E
ij
es la matriz que se obtiene de la identidad cuando intercambiamos
la la i con la la j, es decir:
E
ij
=
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
1
.
.
.
0 1 Fila i
.
.
.
.
.
.
.
.
.
1 0 Fila j
.
.
.
1
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
(ii) E
i
() es la matriz obtenida al multiplicar la la i por en la matriz
identidad, es decir:
E
i
() =
_
_
_
_
_
_
_
_
_
_
_
_
_
_
1
.
.
.
1
Fila i
1
.
.
.
1
_
_
_
_
_
_
_
_
_
_
_
_
_
_
40 Tema 2 Matrices y Determinantes
(iii) E
ij
() es la matriz obtenida de la matriz identidad al sumar a la la
j, la la i previamente multiplicada por , esto es:
Col.
i

Col.
j

E
ij
() =
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
1
.
.
.
1 Fila i
.
.
.
.
.
.
1 Fila j
.
.
.
1
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
El siguiente resultado nos dice c omo funciona el metodo de Gauss a traves de las
operaciones con matrices elementales.
Proposici on 2.8 Sea A /
mn
(K), sean E y F matrices elementales de orden
m y n, respectivamente. Entonces el producto EA es la matriz que se obtiene de A
cuando aplicamos a sus las la misma transformaci on que aplicamos a la identidad
para obtener E.
An alogamente, AF es la matriz que se obtiene de A cuando aplicamos a sus
columnas la misma transformacion que aplicamos a la identidad para obtener F.
Demostraci on:
Probemos solamente que el resultado es cierto para la matriz elemental E = E
ij
().
El resto de las pruebas es similar y se deja al lector.
En primer lugar observemos que si denotamos por e
kl
los coecientes de la matriz
E, entonces
e
kl
=
_
_
_
1 si k = l,
si k = j y l = i,
0 en el resto.
1 k, l m
La matriz producto EA tiene como elementos
(EA)
kp
=
m

l=1
e
kl
a
lp
, 1 k m, 1 p n
Si k ,= j, el unico elemento e
kl
con 1 l m no nulo es e
kk
(es decir, el unico elemento
de la la k no nulo es el de la diagonal), luego (EA)
kp
= a
kp
. Esto es, todas las las
(salvo la j-esima) de la matriz producto son iguales a A.
En la la j, s olo hay dos elementos no nulos, e
ji
= y e
jj
= 1, luego
(EA)
jp
= a
ip
+a
jp
, 1 p n
2.4 C alculo de la inversa mediante operaciones elementales 2.4 C alculo de la inversa mediante operaciones elementales 41
luego la la j-esima del producto EA corresponde a la suma de los elementos de la la
i de A multiplicados por , m as los elementos de la la j. Esto prueba el resultado.
Ejemplo 2.9 Consideremos la matriz A =

1 3 4
2 1 0
2 1 1

(i) Multipliquemos por la izquierda por la matriz


E
3
(2) =

1 0 0
0 1 0
0 0 2

E
3
(2)A =

1 3 4
2 1 0
4 2 2

La operaci on realizada equivale a multiplicar por 2 la tercera la de A.


(ii) Multipliquemos a la izquierda por la matriz
E
13
(2) =

1 0 0
0 1 0
2 0 1

E
13
(2)A =

1 3 4
2 1 0
4 7 9

El producto es equivalente a multiplicar por 2 la primera la A y sumarla a la tercera.


(iii) Multiplicar a la derecha por la matriz
E
23
=

1 0 0
0 0 1
0 1 0

AE
23
=

1 4 3
2 0 1
2 1 1

lo que equivale a intercambiar entre s las columnas segunda y tercera de A.

Gracias a estas matrices elementales, es evidente que el metodo de Gauss no su-


pone m as que una multiplicaci on sucesiva de matrices elementales. En la secci on 3.3.1
usaremos esta propiedad con m as detalle para resolver sistemas de una forma particu-
lar.
2 4
C

ALCULO DE LA INVERSA MEDIANTE OPERACIONES ELEMENTALES


En esta secci on vamos a usar el metodo de Gauss para calcular la matriz inversa
de una matriz cuadrada. Comencemos con un ejemplo sencillo.
Ejemplo 2.10 Consideremos la matriz A =

2 1
4 3

y calculemos su inversa. Para


ello debemos buscar una matriz B /
22
tal que AB = I
2
. Si ponemos,
B =

x
1
x
2
x
3
x
4

42 Tema 2 Matrices y Determinantes


entonces
AB = I
2

2 1
4 3

x
1
x
2
x
3
x
4

1 0
0 1

lo cual equivale a resolver el sistema


2x
1
+x
3
= 1
2x
2
+x
3
= 0
4x
1
+ 3x
3
= 0
4x
2
+ 3x
4
= 1
_

_
Antes de resolver este sistema por el metodo de Gauss podemos observar que dicho
sistema est a desacoplado, es decir, podemos resolver independientemente las ecuaciones
primera y tercera, por un lado, y la segunda y la cuarta por otro. En forma matricial,

2 1 1
4 3 0

F
2
2F
1

2 1 1
0 1 2

de donde x
3
= 2 y x
1
=
3
2
, despues de resolver mediante una subida. No obstante,
existe una alternativa a la resoluci on mediante una subida para resolver el sistema:
podemos diagonalizar la matriz de los coecientes siguiendo el esquema descrito por el
metodo de Gauss, es decir, haciendo ceros ahora por encima de la diagonal principal:

2 1 1
0 1 2

F
1
F
2

2 0 3
0 1 2

1
2
F
1

_
1 0
3
2
0 1 2
_
De hecho, hemos dado un peque no paso m as; una vez diagonalizada la matriz hemos
multiplicamos adecuadamente cada la para que en la diagonal de la matriz de los
coecientes obtengamos un 1. De este modo se observa que el termino independiente
muestra exactamente la soluci on de sistema, mientras que la matriz de los coecientes
se ha transformado en la matriz identidad.
Procedemos del mismo modo con el otro par de ecuaciones para encontrar x
2
y x
4
:

2 1 0
4 3 1

F
2
2F
1

2 1 0
0 1 1

F
1
F
2

2 0 1
0 1 1

1
2
F
1

_
1 0
1
2
0 1 1
_
de donde deducimos que x
2
=
1
2
y x
4
= 1. As pues, la inversa de A viene dada por
A
1
=
_
3
2

1
2
2 1
_
No obstante, es interesante observar que los dos sistemas desacoplados, cuya soluci on
nos ha permitido obtener la matriz inversa, tienen la misma matriz de coecientes
(igual a la matriz A), por lo que la aplicaci on del metodo de Gauss realiza exactamente
2.4 C alculo de la inversa mediante operaciones elementales 2.4 C alculo de la inversa mediante operaciones elementales 43
las mismas operaciones en ambos. Por tanto, es posible resolver ambos sistemas
simult aneamente si escribimos juntos los dos terminos independientes:

2 1 1 0
4 3 0 1

F
2
2F
2
F
1
F
2
1
2
F
1

_
1 0
3
2

1
2
0 1 2 1
_
Vemos que la matriz de inicio esta formada por la uni on de la matriz A e I
2
, mientras
que la matriz nal est a formada por I
2
y A
1
. Dicho de otro modo, las operaciones
elementales que nos conducen desde la matriz A a la matriz identidad, son las que nos
llevan desde la matriz identidad a A
1
.

Como hemos podido ver en este ejemplo, el c alculo de la inversa de una matriz
A /
n
(K) por el metodo de Gauss consiste en diagonalizar la matriz (A [ I
n
) hasta
conseguir la identidad mediante transformaciones elementales. La matriz resultante en
la derecha es la inversa de la dada.
Ejemplo 2.11 Encontrar la inversa de la matriz
A =

1 2 0
0 1 3
2 1 8

Escribimos la matriz junto con la identidad de orden 3:


A =

1 2 0 1 0 0
0 1 3 0 1 0
2 1 8 0 0 1

F
3
2F
1

1 2 0 1 0 0
0 1 3 0 1 0
0 5 8 2 0 1

F
3
+5F
2

1 2 0 1 0 0
0 1 3 0 1 0
0 0 7 2 5 1

1
7
F
3

1 2 0 1 0 0
0 1 3 0 1 0
0 0 1
2
7
5
7
1
7

F
2
3F
3

1 2 0 1 0 0
0 1 0
6
7

8
7

3
7
0 0 1
2
7
5
7
1
7

F
1
2F
2

1 0 0
5
7
16
7
6
7
0 1 0
6
7

8
7

3
7
0 0 1
2
7
5
7
1
7

Luego,
A
1
=

5
7
16
7
6
7
6
7

8
7

3
7

2
7
5
7
1
7

El lector puede comprobar que en efecto AA


1
= I
3
.

44 Tema 2 Matrices y Determinantes


Ejemplo 2.12 Calcular la inversa de A =

2 4
3 6

Procediendo como en los ejemplos anteriores:

2 4 1 0
3 6 0 1

1
2
F
1

_
1 2
1
2
0
3 6 0 1
_
F
2
3F
1

_
1 2
1
2
0
0 0
3
2
1
_
Podemos observar en este caso que no hay forma alguna de obtener la matriz identidad
mediante transformaciones elementales de A. Esto signica que no existe A
1
.

En denitiva, mediante el metodo de Gauss tenemos un metodo para, mediante


operaciones elementales, obtener una matriz triangular superior. Si los elementos
diagonales de esta matriz son todos distintos de cero, es posible realizar nuevas
operaciones que nos conduzcan a una matriz diagonal, y por tanto, aplicando (i) de la
Proposicion 2.7 llegar a la matriz identidad mediante operaciones elementales.
Puesto que la aplicaci on de operaciones elementales equivalen a multiplicar por
matrices elementales, podemos escribir:
E
k
E
2
E
1
A = I A = (E
k
E
2
E
1
)
1
= E
1
1
E
1
2
E
1
k
donde E
1
, . . . , E
k
son las matrices elementales correspondientes a las operaciones
realizadas. Por ejemplo, en el Ejemplo 2.12, las matrices elementales usadas son:
E
1
= E
13
(2), E
2
= E
23
(5), E
3
= E
3
(
1
7
), E
4
= E
32
(3), E
5
= E
21
(2)
Es facil demostrar que las matrices elementales son invertibles, y su inversa es un
matriz elemental.
5
De este modo se tiene el siguiente resultado.
Teorema 2.2
Una matriz es invertible si y s olo si es producto de matrices elementales.
Nota 2.3 Aplicaci on de la inversa a la resoluci on de sistemas
Como ya hemos visto, la denici on del producto de matrices nos permite ver el
sistema (2.1) de forma matricial como Ax = b. Si resulta que este sistema es cuadrado,
esto es, tiene el mismo n umero de ecuaciones que de inc ognitas (m = n), y adem as la
matriz de los coecientes es invertible, multiplicando por A
1
a la izquierda obtenemos
A
1
Ax = A
1
b. Puesto que A
1
A = I
n
e I
n
x = x, se sigue que x = A
1
b.
2 5
DETERMINANTE DE UNA MATRIZ: PROPIEDADES
El concepto de determinante
6
se va a denir de manera inductiva. Para una visi on
general del metodo de inducci on matem atica, que sera usado con frecuencia en las
demostraciones de esta seccion, nos remitimos al Apendice ??.
5
Basta observar que para llegar a la identidad desde una matriz elemental debemos realizar
la operaci on elemental inversa.
6
Los determinantes aparecen con anterioridad a las matrices. El de orden dos ya aparece en
la obra de Cardano en 1545, en relacion con la soluci on de sistemas lineales de dos ecuaciones
2.5 Determinante de una matriz: propiedades 2.5 Determinante de una matriz: propiedades 45
Comenzaremos con un par de deniciones previas.
Denici on 2.12 Se denomina submatriz de una matriz A /
mn
(K) dada, a
cualquier matriz obtenida de A eliminando un conjunto determinado de las y/o
columnas.
Denici on 2.13 Se denomina matriz adjunta del elemento ij de una matriz A, y
se denotar a por A
ij
, a la submatriz obtenida al eliminar la la i y la columna j de
dicha matriz.
a
11
a
12
. . . a
1n
a
21
a
22
. . . a
2n
.
.
.
.
.
.
.
.
.
.
.
.
a
m1
a
m2
. . . a
mn

A =
A
22
=
a
11
a
13
. . . a
1n
a
31
a
33
. . . a
3n
.
.
.
.
.
.
.
.
.
.
.
.
a
m1
a
m3
. . . a
mn

Figura 2.2: Matriz adjunta del elemento 2 2
N otese que la matriz adjunta tiene siempre un orden menos que la matriz inicial.
Denici on 2.14 Sea A /
n
(K). Se dene el determinante de A, que denotaremos
por det A o [A[, del siguiente modo:
Si n = 1, [A[ = a
11
.
Si n > 1,
[A[ = a
11
[A
11
[ a
21
[A
21
[ + + (1)
n+1
a
n1
[A
n1
[ =
n

i=1
(1)
i+1
a
i1
[A
i1
[
donde [A
i1
[ es el determinante de la matriz adjunta del elemento ij, que
corresponde a una matriz cuadrada de orden n 1.
Ejemplo 2.13
con dos incognitas. Los de orden superior aparecen casi simultaneamente en las obras del
japones Kowa Seki y el aleman Gottfried Wilhelm von Leibniz alrededor del a no 1680. Pero
es el frances Augustin Louis Cauchy el que en 1812 comienza a usar los determinantes en el
sentido actual, probando varias de sus propiedades.
46 Tema 2 Matrices y Determinantes
(i) Si n = 2, A =

a
11
a
12
a
21
a
22

, entonces
[A[ = a
11
[A
11
[ a
21
[A
21
[ = a
11
a
22
a
21
a
12
(ii) Si n = 3, A =

a
11
a
12
a
13
a
21
a
22
a
23
a
31
a
32
a
33

, entonces
[A[ = a
11
[A
11
[ a
21
[A
21
[ +a
31
[A
31
[ = a
11
a22 a
21
a
12
= a
11

a
22
a
23
a
32
a
33

a
21

a
12
a
13
a
32
a
33

+a
31

a
12
a
13
a
22
a
23

= a
11
a
22
a
33
a
11
a
32
a
23
a
21
a
12
a
33
+a
21
a
32
a
13
+a
31
a
12
a
23
a
31
a
22
a
13
Como se puede observar, el determinante de una matriz es un n umero que se calcula
mediante sumas y productos de sus coecientes. El determinante de una matriz de
orden dos tiene una expresi on f acil de recordar, pues se trata de calcular el producto
de los elementos de la diagonal principal y restarle el producto de los elementos de la
diagonal opuesta (vease la Figura 2.3a)
a
11
a
12
a
21
a
22
+

(a) Orden dos


a
11
a
12
a
13
a
21
a
22
a
23
a
31
a
32
a
33
a
11
a
12
a
13
a
21
a
22
a
13
+
+
+

(b) Regla de Sarrus


Figura 2.3: Formulas para los determinantes de orden dos y tres
Sin embargo, para el determinante de orden tres aparecen seis productos, que
dicultan la memorizacion de la f ormula que proporciona su valor. No obstante, existe
una sencilla regla mnemotecnica para recordar la expresi on del determinante de una
2.5 Determinante de una matriz: propiedades 2.5 Determinante de una matriz: propiedades 47
matriz de orden tres, la conocida como regla de Sarrus,
7
que nos indica cu ales son los
productos con signo positivo y cu ales los de signo negativo (vease la Figura 2.3b).

Es importante resaltar que estas reglas (que parecen tener un cierto parecido)
no son extensibles a determinantes de orden superior. En particular, la regla de
Sarrus s olo es v alida para determinantes de orden tres! Por otra parte, aunque la
regla tiene un cierto encanto que la hace muy popular entre los estudiantes, veremos
m as adelante que es preferible calcular determinantes de orden tres empleando alguna
de las propiedades que siguen. Al n y al cabo, la regla de Sarrus obliga al c alculo de
seis productos, que pueden hacerse un tanto engorrosos.
El resto de la secci on est a dedicada a presentar una serie de propiedades que nos
permitiran simplicar el c alculo de determinantes.
Proposici on 2.9 Si una matriz cuadrada A tiene una la completa de ceros, enton-
ces su determinante es nulo.
Demostraci on:
Procederemos por inducci on en el orden de la matriz. Si n = 1 el resultado es
evidente. Supongamos ahora que el resultado es cierto para las matrices de orden
n 1, y probemoslo para orden n. Supongamos adem as que la la j-esima es nula, es
decir a
j1
= = a
jn
= 0. Entonces, por denici on,
[A[ =
n

i=1
(1)
i+1
a
i1
[A
i1
[
Ahora bien, cada matriz A
i1
tiene orden n 1 (pues es la adjunta de una matriz
de orden n) y todas, salvo A
j1
, tienen una la completa de ceros. Por hip otesis de
inducci on, [A
i1
[ = 0 i ,= j. Luego
[A[ =
n

i=1
(1)
i+1
a
i1
[A
i1
[ = (1)
j+1
a
j1
[A
j1
[
pero este ultimo sumando tambien es nulo, pues a
j1
= 0 (ya que esta en la la j); de
aqu se tiene el resultado.
Proposici on 2.10 Se verica:

a
11
a
1n
.
.
.
.
.
.
.
.
.
a
i1
+b
i1
a
in
+b
in
.
.
.
.
.
.
.
.
.
a
n1
a
nn

a
11
a
1n
.
.
.
.
.
.
.
.
.
a
i1
a
in
.
.
.
.
.
.
.
.
.
a
n1
a
nn

a
11
a
1n
.
.
.
.
.
.
.
.
.
b
i1
b
in
.
.
.
.
.
.
.
.
.
a
n1
a
nn

(2.2)
7
Introducida por el matematico frances Pierre Frederic Sarrus en 1833.
48 Tema 2 Matrices y Determinantes
Demostraci on:
Nuevamente procedemos por inducci on en n. Al igual que antes, para n = 1
el resultado es trivial. Supongamos ahora el resultado cierto para el orden n 1 y
probemoslo para n. Denotaremos por C a la matriz del primer miembro de la igualdad
en (2.2) y por A y B a las de la derecha, respectivamente. Queremos probar que
[C[ = [A[ +[B[.
Por denici on,
[C[ = a
11
[C
11
[ + + (1)
i+1
(a
i1
+b
i1
)[C
i1
[ + + (1)
n+1
a
n1
[C
n1
[
observemos ahora que cada matriz C
j1
con j ,= i es de orden n 1 y mantiene la
misma estructura que C, por tanto podemos usar la hip otesis de inducci on y asegurar
que [C
j1
[ = [A
j1
[ +[B
j1
[, si j ,= i. As pues,
[C[ = a
11
([A
11
[ +[B
11
[) + + (1)
i+1
(a
i1
+b
i1
)[C
i1
[
+ + (1)
n+1
a
n1
([A
n1
[ +[B
n1
[)
Finalmente, basta observar que C
i1
= A
i1
= B
i1
(pues todas las matrices tienen las
mismas las excepto la i-esima) y aplicar la denici on de determinante para obtener
lo deseado.
Proposici on 2.11 Si B es la matriz obtenida al multiplicar los elementos de una
la de la matriz A por un escalar K, entonces [B[ = [A[.
Demostraci on:
Nuevamente el resultado es trivial para n = 1. Para probar el caso n, supuesto que
se satisface el caso n 1, vemos que si
A =

a
11
a
1n
.
.
.
.
.
.
.
.
.
a
i1
a
in
.
.
.
.
.
.
.
.
.
a
n1
a
nn

entonces B =

a
11
a
1n
.
.
.
.
.
.
.
.
.
a
i1
a
in
.
.
.
.
.
.
.
.
.
a
n1
a
nn

Por tanto,
[B[ = a
11
[B
11
[ + + (1)
i+1
a
i1
[B
i1
[ + + (1)
n+1
a
n1
[B
n1
[
Como en la demostraci on anterior, cada matriz B
j1
, con j ,= i, tiene orden n 1 y la
misma estructura que B. Por hip otesis de inducci on, [B
j1
[ = [A
j1
[. Por otra parte,
B
i1
= A
i1
; sustituyendo en la ecuacion anterior
[B[ = a
11
[A
11
[ + + (1)
i+1
a
i1
[A
i1
[ + + (1)
n+1
a
n1
[A
n1
[ = [A[
2.5 Determinante de una matriz: propiedades 2.5 Determinante de una matriz: propiedades 49
Proposici on 2.12 Si B es la matriz que se obtiene de A intercambiando dos de sus
las, entonces [B[ = [A[.
Demostraci on:
Como antes procederemos por inducci on en el orden de la matriz. Comenzamos
probando el caso n = 2 (pues el caso n = 1 no adquiere signicado en esta situaci on).
Es claro que

a
11
a
12
a
21
a
22

= a
11
a
22
a
12
a
21
= (a
21
a
12
a
11
a
22
) =

a
21
a
22
a
11
a
12

Para probar el caso n, supuesto que se verica el caso n 1, empezaremos probando


que el resultado es cierto si intercambiamos dos las consecutivas.
Sea A = (a
ij
) y sea B la matriz obtenida al intercambiar dos las consecutivas,
i 1 e i. Entonces:
B =

a
11
a
1n
.
.
.
.
.
.
.
.
.
a
i1
a
in
Fila i 1
a
i1,1
a
i1,n
Fila i
.
.
.
.
.
.
.
.
.
a
n1
a
nn

Usando la denici on de determinante,


[B[ = a
11
[B
11
[ + + (1)
i
a
i1
[B
i1,1
[ + (1)
i+1
a
i1,1
[B
i1
[ + + (1)
n+1
a
n1
[B
n1
[
(2.3)
Ahora usamos la hip otesis de inducci on en cada matriz B
j1
, j ,= i 1, i. Puesto que
son matrices de orden n 1 obtenidas al intercambiar dos las consecutivas de las
correspondientes matrices A
j1
, entonces [B
j1
[ = [A
j1
[, si j ,= i 1, i.
Por otro lado, es f acil darse cuenta que B
i1,1
= A
i1
y que B
i1
= A
i1,1
.
Finalmente, sustituyendo en (2.3)
[B[ = a
11
[A
11
[ + + (1)
i
a
i1
[A
i1
[ + (1)
i+1
a
i1,1
[A
i1,1
[
+ + (1)
n+1
a
n1
[A
n1
[ = [A[
Para probar el caso general, es decir, cuando intercambiamos dos las no necesa-
riamente consecutivas, es suciente observar que el intercambio de la la i con la la j
equivale a realizar 2k 1 cambios consecutivos, donde k = [i j[. Por tanto, el signo
se altera 2k 1 veces, que al ser un n umero impar, supone un cambio de signo en el
valor del determinante.
Proposici on 2.13 Si una matriz tiene dos las iguales su determinante es nulo.
50 Tema 2 Matrices y Determinantes
Demostraci on:
La demostraci on es consecuencia inmediata de la proposici on anterior, puesto que
si intercambiamos dos las iguales, el determinante de la matriz debe cambiar de signo,
aunque la matriz es la misma, por lo que [A[ = [A[ [A[ = 0.
Proposici on 2.14 Si B es la matriz obtenida de A al sumar a una la de A, un
m ultiplo de otra la de la matriz, entonces [B[ = [A[.
Demostraci on:
En efecto, si
[B[ =

a
11
a
1n
.
.
.
.
.
.
.
.
.
a
j1
a
jn
.
.
.
.
.
.
.
.
.
a
i1
+a
j1
a
in
+a
jn
.
.
.
.
.
.
.
.
.
a
n1
a
nn

usando las Proposiciones 2.10 y 2.11,


[B[ =

a
11
a
1n
.
.
.
.
.
.
.
.
.
a
j1
a
jn
.
.
.
.
.
.
.
.
.
a
i1
a
in
.
.
.
.
.
.
.
.
.
a
n1
a
nn

a
11
a
1n
.
.
.
.
.
.
.
.
.
a
j1
a
jn
.
.
.
.
.
.
.
.
.
a
j1
a
jn
.
.
.
.
.
.
.
.
.
a
n1
a
nn

y este ultimo determinante es nulo puesto que tiene dos las iguales (Proposici on 2.13).
Proposici on 2.15 A es una matriz regular si y s olo si [A[ ,= 0.
Demostraci on:
Observemos en primer lugar que las Proposiciones 2.11, 2.12 y 2.14 arman que los
determinantes de las matrices elementales [E
ij
[ = 1, E
i
() = y E
ij
() = 1, pues
tales matrices han sido obtenidas de la identidad mediante las operaciones se naladas
2.5 Determinante de una matriz: propiedades 2.5 Determinante de una matriz: propiedades 51
en los resultados mencionados, y es f acil ver que el determinante de la matriz identidad
(de cualquier orden) es 1. Por tanto, se deduce que
det(EA) = det(E) det(A)
para cualquier matriz elemental E. De aqu se deduce f acilmente que
det(E
1
E
k
A) = det(E
1
) det(E
k
) det(A)
para cualesquiera matrices elementales E
1
, . . . , E
k
. Como por el Teorema 2.2, A es
regular si y s olo si es producto de matrices elementales, es decir, A = E

1
E

k
, se
tendr a que
det(A) = det(E

1
E

k
) = det(E

1
) det(E

k
) ,= 0
Proposici on 2.16 Si A, B /
n
(K) entonces det(AB) = det(A) det(B).
Demostraci on:
Si det(A) = 0 o det(B) = 0 entonces A o B es singular, y por tanto tambien lo es
AB (vease Proposici on 2.6), luego det(AB) = 0 (por la Proposici on 2.15).
Si det(A) y det(B) no son nulos, ambas son matrices invertibles y por tanto ser an
producto de matrices elementales. La demostraci on de la Proposici on 2.15 nos da el
resultado.
Proposici on 2.17 det(A) = det(A
T
)
La prueba es identica a la de la Proposici on 2.16 y se deja al lector.
Como consecuencia de este ultimo resultado, las Proposiciones 2.92.14, que enun-
cian propiedades por las, pueden ser tambien enunciadas por columnas. De hecho se
tiene:
Teorema 2.3 (Desarrollo por las o columnas)
Si A = (a
ij
) entonces
[A[ =
n

j=1
(1)
i+j
a
ij
[A
ij
[
y tambien
[A[ =
n

i=1
(1)
i+j
a
ij
[A
ij
[
En denitiva, podemos desarrollar el determinante mediante los adjuntos de cual-
quier la o columna.
52 Tema 2 Matrices y Determinantes
En el siguiente ejemplo veremos como aplicar algunas de las propiedades anteriores
para obtener el valor de los determinantes.
Ejemplo 2.14 Calcular el valor de los siguientes determinantes:
(i)

3 5 1
15 25 5
1 0 7

(ii)

2 4 1
7 5 2
11 13 4

(iii)

1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16

(i) Observemos que

3 5 1
15 25 5
1 0 7

= 5

3 5 1
3 5 1
1 0 7

= 5 0 = 0
donde hemos aplicado la Proposici on 2.11 a la segunda la y luego la Proposici on 2.13
a las las uno y dos.
(ii) Si aplicamos la Proposici on 2.14 a las las dos y tres,

2 4 1
7 5 2
11 13 4

F
3
F
2
=

2 4 1
7 5 2
4 8 2

vemos que el determinante resultante tiene las las una y dos proporcionales, luego
por las Proposiciones 2.11 y 2.13, el determinate es nulo.
(iii) Aplicando la Proposici on 2.14 obtenemos un determinate con dos columnas
iguales,

1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16

C
2
C
1
C
4
C
3
=

1 1 3 1
5 1 7 1
9 1 11 1
13 1 15 1

= 0

En todos los casos anteriores hemos llegado a determinantes que tienen dos las o
columnas identicas, lo que hace que el valor del determinante sea nulo. Obviamente, eso
no va a ocurrir en general, pero en ocasiones merece la pena perder un poco de tiempo
realizando operaciones sencillas en el determinante para ver si es posible obtener este
hecho. Cuando esto no ocurre, la mejor forma de calcular un determinante es seguir
los pasos que comentamos en el siguiente ejemplo.
Ejemplo 2.15 Calcular el valor del determinante:

1 4 3 2
3 1 0 5
2 1 1 3
2 1 1 1

2.6 Rango de una matriz 2.6 Rango de una matriz 53


En lugar de proceder directamente desarrollando por una la o columna, haremos uso
de los resultados anteriores a n de lograr el mayor n umero de ceros en una misma la
o columna, de manera que al usar el resultado correspondiente, todos los sumandos
correspondientes a un elemento nulo valgan cero. As pues, trataremos de hacer ceros
en la tercera columna (pues ya hay uno y los calculos son m as sencillos):

1 4 3 2
3 1 0 5
2 1 1 3
2 1 1 1

F
3
+F
4
F
1
3F
4
=

7 1 0 5
3 1 0 5
4 2 0 4
2 1 1 1

desarrollando por la tercera columna


=

7 1 5
3 1 5
4 2 4

F
2
F
1
F
3
2F
1
=

7 1 5
4 0 10
18 0 14

4 10
18 14

= 2 2

2 5
9 7

= 124.

Nota 2.4 Es muy importante observar que en todas las transformaciones que hemos
realizado en el ejemplo anterior, la la o columna que transformamos no se multiplica
por ning un n umero, pues de hacerlo, el determinante quedara multiplicado por dicho
n umero.
En las dos siguientes secciones usaremos el c alculo de determinantes para obtener
el rango de una matriz y su matriz inversa.
2 6
RANGO DE UNA MATRIZ
Una de las principales aplicaciones de los determinantes reside en el c alculo de
rangos,
8
que ser an de mucha utilidad a lo largo de todo este texto. Es por ello que el
metodo que vamos a ver en esta secci on adquiere especial importancia.
Denici on 2.15 Se denomina menor de orden k de una matriz A /
mn
(K) al
determinante de una submatriz cuadrada de A de orden k.
Denici on 2.16 Se llama rango de una matriz A /
mn
(K) al mayor orden de
entre todos los menores de A no nulos.
Es decir, si rango(A) = r, toda submatriz cuadrada de A de orden mayor que
r tiene determinante nulo, y al menos existe una submatriz cuadrada de orden r
8
Denido por primera vez por el matematico aleman Ferdinand Georg Frobenius en 1878.
54 Tema 2 Matrices y Determinantes
con determinante no nulo. N otese que es inmediato que si A /
mn
(K) entonces
rango(A) mn|m, n
Se dice que un menor es b asico si es distinto de cero. A las las y columnas de A
que conforman ese menor se les denomina las y columnas b asicas.
Teorema 2.4
El rango de una matriz no se altera si:
(i) Intercambiamos entre s dos las (o dos columnas).
(ii) Transponemos una la con una columna (esto es, intercambiar la la i
con la columna i).
(iii) Multiplicamos los elementos de una la (o columna) por un escalar
distinto de cero.
(iv) Sumamos a una la (o columna) los elementos de otra la (o columna)
multiplicados por un escalar.
La demostraci on de este resultado se deduce directamente de las propiedades de
los determinantes.
Calculo del rango de una matriz: metodo del orlado.
La denici on de rango nos indica una forma de proceder con su c alculo: encontrar
el mayor orden de entre todos los menores no nulos. Para ello, podramos considerar
todos los menores de una matriz y calcular sus determinantes, sin embargo, el siguiente
metodo, conocido como metodo del orlado, nos proporciona un procedimiento en el que
no es necesario obtener todos los menores de la matriz.
Para calcular el rango de una matriz se procede como sigue:
(i) Se suprimen todas las las o columnas completamente nulas. Si todas las las
de una matriz son nulas entonces rango(A) = 0.
(ii) Tomamos una la donde exista un menor de orden uno no nulo. La la y
columna correspondientes a ese menor se consideran como b asicas.
(iii) Orlamos, esto es, a nadimos a la la y columna b asicas una nueva la y una
nueva columna, para formar un menor de orden dos. Si este menor es nulo, orlamos con
la misma la y una nueva columna, hasta encontrar un menor de orden dos distinto
de cero.
Si todos los menores de orden dos obtenidos al orlar con la misma la y todas las
posibles columnas son nulos, podemos eliminar la la en cuestion (puesto que no aporta
rango a la matriz), y proceder con la siguiente, repitiendo el mismo procedimiento.
(iv) Una vez encontrado un menor de orden dos distinto de cero, consideramos
como b asicas las las y columnas que la componen y orlamos para encontrar un menor
de orden tres no nulo, repitiendo el procedimiento anterior.
(v) Si al orlar un menor de orden k con todas las las y columnas disponibles no
encontramos un menor de orden k + 1 distinto de cero, entonces rango(A) = k.
2.6 Rango de una matriz 2.6 Rango de una matriz 55
Ejemplo 2.16 Calcular el rango de la matriz
A =
_
_
_
_
_
_
_
_
_
_
0 1 0 1 3
0 3 0 4 1
0 2 0 5 4
0 0 0 0 0
1 1 1 1 1
1 1 1 1 1
_
_
_
_
_
_
_
_
_
_
/
65
(R)
Est a claro que el rango m aximo de esta matriz es 5, puesto que no es posible construir
un menor de orden 6. Puesto que la cuarta la es completa de ceros, podemos eliminarla
y proseguir sin ella. En la matriz resultante buscamos un menor de orden uno distinto
de cero; por ejemplo, el formado por la la 1, columna 2, que a partir de ahora, son
consideradas basicas.
9
_
_
_
_
_
_
_
_
0 1 0 1 3
0 3 0 4 1
0 2 0 5 4
1 1 1 1 1
1 1 1 1 1
_
_
_
_
_
_
_
_
/
55
(R)
Orlamos este menor hasta encontrar uno distinto de cero. Es f acil ver que orlando con
la segunda la y la cuarta columna, el menor

1 1
3 4

,= 0
Las las b asicas son ahora |1, 2, y las columnas b asicas |2, 4. A continuaci on orlamos
con la tercera la y la quinta columna (es inmediato ver que, orlando con la primera
o la tercera columna no podemos conseguir un menor distinto de cero). El menor

1 1 3
3 4 1
2 5 4

= 0
De este modo, orlando con la tercera la no hay forma de obtener un menor distinto
de cero, por lo que podemos eliminar dicha la.
Orlamos con la cuarta la y la columna primera; el menor

0 1 1
0 3 4
1 1 1

,= 0
9
Obviamente, si se considera cualquier otro menor de orden uno distinto de cero, las las
y columnas b asicas seran otras. El procedimiento que lleva a cabo el metodo del orlado no es
unico.
56 Tema 2 Matrices y Determinantes
Luego las las b asicas son ahora |1, 2, 4 y las columnas b asicas |1, 2, 4.
Orlamos con la quinta la y la tercera columna,

0 1 0 1
0 3 0 4
1 1 1 1
1 1 1 1

= 0
Por tanto podemos eliminar la columna tercera. Finalmente, orlando con la quinta
columna:

0 1 0 3
0 3 4 1
1 1 5 1
1 1 1 1

,= 0
Puesto que no quedan m as las por orlar, el rango(A) = 4.
Es importante resaltar que, en todo el procedimiento, una vez que conseguimos un
menor b asico de un cierto orden, no lo perdemos, es decir, a la hora de buscar menores
b asicos de orden superior usamos siempre el menor que ya tenemos complet andolo con
m as las y columnas, esto es, orl andolo.

Calculo del rango mediante el metodo de Gauss


Existe una alternativa para el calculo del rango de una matriz usando el metodo
de Gauss descrito en la secci on 2.3. Dado que las operaciones involucradas en el
metodo de Gauss no modican el rango (como consecuencia de las propiedades de los
determinantes), para realizar este c alculo procedemos a triangular la matriz del mismo
modo que hacemos con un sistema, es decir, haciendo nulos todos los elementos que
quedan debajo de la diagonal principal. El rango de la matriz resultar a igual al n umero
de las no nulas que resulten tras la triangulaci on.
Ejemplo 2.17 Calcular el rango de la matriz
A =
_
_
_
_
_
_
_
_
1 6 11 16
2 7 12 17
3 8 13 18
4 9 14 19
5 10 15 20
_
_
_
_
_
_
_
_
/
54
(R)
Triangulamos mediante el metodo de Gauss:
_
_
_
_
_
_
_
_
1 6 11 16
2 7 12 17
3 8 13 18
4 9 14 19
5 10 15 20
_
_
_
_
_
_
_
_
F
2
2F
1
F
3
3F
1
F
4
4F
1
F
5
5F
1

_
_
_
_
_
_
_
_
1 6 11 16
0 5 10 15
0 10 20 30
0 15 30 45
0 20 40 60
_
_
_
_
_
_
_
_
2.7 Aplicaci on de los determinantes al c alculo de la inversa 2.7 Aplicaci on de los determinantes al c alculo de la inversa 57
F
3
2F
2
F
4
3F
2
F
5
4F
2

_
_
_
_
_
_
_
_
1 6 11 16
0 5 10 15
0 0 0 0
0 0 0 0
0 0 0 0
_
_
_
_
_
_
_
_
Dado que la matriz obtenida es triangular y que el n umero de las no nulas es dos, el
rango de la matriz A es 2.

2 7
APLICACI

ON DE LOS DETERMINANTES AL C

ALCULO DE LA INVERSA
Finalmente, veamos c omo se usan los determinantes para calcular la inversa de
una matriz.
Denici on 2.17 Dada una matriz cuadrada A, se denomina adjunta de una matriz
(o matriz de cofactores) de A a la matriz adj(A) /
n
(K) dada por
(adj A)
ij
= (1)
i+j
[A
ij
[
Es decir, la adjunta de una matriz es una nueva matriz en la que cada elemento
ij es igual al determinante de la matriz adjunta de ese elemento, multiplicada por
(1)
i+j
, es decir, con un determinado signo, que depender a de la posici on de ese
elemento. A partir de la matriz de cofactores se obtiene la inversa de una matriz, seg un
muestra el siguiente resultado.
Teorema 2.5 (Inversa de una matriz)
Sea A /
n
(K) una matriz invertible. Entonces
A
1
=
1
det A
adj(A)
T
Demostraci on:
Denotemos por c
ij
= (adj(A))
ij
. Entonces,
Aadj(A)
T
=

a
11
a
1n
.
.
.
.
.
.
.
.
.
a
n1
a
nn

c
11
c
n1
.
.
.
.
.
.
.
.
.
c
1n
c
nn

58 Tema 2 Matrices y Determinantes


=
_

_
(Aadj(A)
T
)
jj
=
n

k=1
a
jk
c
jk
si j = i
(Aadj(A)
T
)
ij
=
n

k=1
a
ik
c
jk
si j ,= i
Ahora bien, por la denici on de la adjunta y el Teorema 2.3
(Aadj(A)
T
)
jj
=
n

k=1
a
jk
c
jk
=
n

k=1
(1)
j+k
a
jk
[A
jk
[ = [A[ (2.4)
Por otra parte, si B es la matriz siguiente, en la que las las i y j son iguales,
B =
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
a
11
a
1n
.
.
.
.
.
.
.
.
.
a
i1
a
in
Fila i
.
.
.
.
.
.
.
.
.
a
i1
a
in
Fila j
.
.
.
.
.
.
.
.
.
a
n1
a
nn
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
y desarrollamos su determinante por la la j, entonces
[B[ =
n

k=1
a
ik
c
jk
= 0 (2.5)
pues B tiene dos las iguales. De (2.4) y (2.5) se sigue el resultado.
Nota 2.5 Observese que el resultado anterior solo tiene sentido si [A[ , = 0, que es,
precisamente, la condici on de no singularidad obtenida en la Proposici on 2.15.
Ejemplo 2.18 Calcular la inversa de la matriz
A =

1 2 0
1 1 2
0 1 3

En primer lugar calculamos [A[ = 7. Puesto que este no es cero, procedemos a calcular
la matriz adjunta,
adj(A) =

1 3 1
6 3 1
4 3 3

2.8 C alculo con Python 2.8 C alculo con Python 59


y nalmente,
A
1
=
1
7

1 6 4
3 3 3
1 1 3


2 8
C

ALCULO CON PYTHON


En este tema hemos introducido las matrices, con las que vamos a realizar mul-
titud de c alculos a lo largo de todo el texto, y en esta seccion nos centraremos en
mostrar c omo se pueden llevar a cabo estos con Python. No obstante, insistimos enca-
recidamente en la importancia que tiene saber hacer realizar todas estas operaciones
a mano, sin necesidad de usar el ordenador.
En el apendice B introdujimos los m odulos NumPy y SymPy, gracias a los cuales
es posible trabajar f acilmente con matrices:
1 >>> from numpy import matrix
2 >>> a=matrix (1. 2 ; 3 4)
3 >>> a
4 matrix ([[ 1., 2.],
5 [ 3., 4.]])
Las operaciones m as comunes se realizan de forma natural: por ejemplo:
3

1 2
3 4

3 6
9 12

1 2
3 4

3 2
1 4

4 4
4 8

1 2
3 4

3 2
1 4

5 10
13 22

1 2
3 4

2
=

7 10
15 22

se puede realizar con el siguiente c odigo:


6 >>> b=matrix (3. 2; 1 4)
7 >>> 3*a
8 matrix ([[ 3., 6.],
9 [ 9., 12.]])
10 >>> a+b
11 matrix ([[ 4., 4.],
12 [ 4., 8.]])
13 >>> a*b
14 matrix ([[ 5., 10.],
15 [ 13., 22.]])
16 >>> a**2
17 matrix ([[ 7., 10.],
18 [ 15., 22.]])
60 Tema 2 Matrices y Determinantes
Tambien tenemos atributos sencillos con los que construir la matriz traspuesta y
la inversa:
19 >>> a.T
20 matrix ([[ 1., 3.],
21 [ 2., 4.]])
22 >>> a.I
23 matrix ([[ -2. , 1. ],
24 [ 1.5, -0.5]])
es decir,

1 2
3 4

T
=

1 3
2 4

1 2
3 4

1
=

2 1
3
2

1
2

Recordemos que el m odulo NumPy trabaja con n umeros reales, por lo que en
determinados momentos nos encontraremos con resultados como estos:
25 >>> c=matrix(1 1; 4 1)
26 >>> c.I
27 matrix ([[ -0.33333333 , 0.33333333] ,
28 [ 1.33333333 , -0.33333333]])
Si queremos c alculos exactos, debemos usar el m odulo SymPy:
29 >>> from sympy import Matrix
30 >>> C=Matrix(c)
31 >>> C.inv()
32 [-1/3, 1/3]
33 [ 4/3, -1/3]
N otese que la funci on para denir matrices en SymPy no es la misma que en
NumPy. En la lnea 30, usamos la funci on Matrix para convertir una matriz de NumPy
en una de SymPy. El c alculo de la matriz inversa ahora no es posible con el atributo I,
pues no est a denido para objetos de SymPy. Es por eso que debemos usar el metodo
inv() (lnea 31).
El orden de la matriz se obtiene a traves del atributo shape, y el acceso a las las
o columnas de la matriz se obtiene r apidamente mediante slicing, recordando que los
ndices en Python comienzan en 0:
34 >>> a.shape
35 (2, 2)
36 >>> a[0,:]
37 matrix ([[ 1., 2.]])
38 >>> a[:,1]
39 matrix ([[ 2.],
40 [ 4.]])
El operador de slicing proporciona el entorno adecuado para realizar las operacio-
nes involucradas en el metodo de Gauss: el siguiente c odigo
2.8 C alculo con Python 2.8 C alculo con Python 61
41 >>> a=matrix(1 2 0 1; 1 1 2 0; 1 0 2 1)
42 >>> A=Matrix(a)
43 >>> A[1 ,:]=A[1,:]-A[0,:]
44 >>> A[2 ,:]=A[2,:]-A[0,:]
45 >>> A
46 [1, 2, 0, 1]
47 [0, -1, 2, -1]
48 [0, -2, 2, 0]
49 >>> A[2 ,:]=A[2,:]-2*A[1,:]
50 >>> A
51 [1, 2, 0, 1]
52 [0, -1, 2, -1]
53 [0, 0, -2, 2]
corresponde a

1 2 0 1
1 1 2 0
1 0 2 1

F
2
F
1
F
3
F
1

1 2 0 1
0 1 2 1
0 2 2 0

F
3
2F
2

1 2 0 1
0 1 2 1
0 0 2 2

Observese que hemos trabajado con el objeto de SymPy para obtener resultados
exactos, aunque tambien se podra haber hecho igual con el objeto de Numpy.
El slicing tambien es util para extraer submatrices de una matriz:
54 >>> A
55 [1, 2, 0, 1]
56 [1, 1, 2, 0]
57 [1, 0, 2, 1]
58 >>> B=A[: ,0:3]
59 >>> B
60 [1, 2, 0]
61 [1, 1, 2]
62 [1, 0, 2]
63 >>> C=A[:,3]
64 >>> C
65 [1]
66 [0]
67 [1]
Prestar atenci on al manejo de los ndices en Python. La operaci on A[:,0:3] extrae
las tres primeras columnas de A (es decir, hace variar el segundo ndice entre 0 y 3, sin
llegar a este ultimo).
Los m odulos NumPy y SymPy tambien permiten calcular el determinante de
matrices cuadradas, pero cada uno lo hace de forma distinta:
62 Tema 2 Matrices y Determinantes
1 >>> from numpy import linalg ,matrix
2 >>> from sympy import Matrix
3 >>> a=matrix(1 3 5; 2 3 1; -1 1 1)
4 >>> b=Matrix ([[2,5,1],[2,1,-1],[0,-2,2]])
5 >>> linalg.det(a)
6 18.0
7 >>> b.det()
8 -24

1 3 5
2 3 1
1 1 1

= 18

2 5 1
2 1 1
0 2 2

= 24
Lamentablemente, ninguno de los dos m odulos posee una funci on para calcular
el rango de una matriz de forma directa, aunque se puede obtener por otros medios.
En concreto, en SymPy encontramos el metodo rref() que nos proporciona el rango
de una matriz de forma indirecta. Este metodo equivale a realizar operaciones ele-
mentales en la matriz similares a las hechas en el Ejemplo 2.10 (es decir, tratando de
diagonalizar la matriz mediante el metodo de Gauss). Por ejemplo,
9 >>> a=Matrix ([[1,6,11,16],[2,7,12,17],
10 [3 ,8 ,13 ,18] ,[4 ,9 ,14 ,19] ,[5 ,10 ,15 ,20]])
11 >>> a.rref()
12 ([1, 0, -1, -2]
13 [0, 1, 2, 3]
14 [0, 0, 0, 0]
15 [0, 0, 0, 0]
16 [0, 0, 0, 0], [0, 1])
equivale a
_
_
_
_
_
_
_
_
1 6 11 16
2 7 12 17
3 8 13 18
4 9 14 19
5 10 15 20
_
_
_
_
_
_
_
_

_
_
_
_
_
_
_
_
1 0 1 2
0 1 2 3
0 0 0 0
0 0 0 0
0 0 0 0
_
_
_
_
_
_
_
_
Observamos que el resultado de esta operaci on nos da una matriz que primero
ha sido triangulada mediante el metodo de Gauss (como en el Ejemplo 2.17), y
posteriormente se han calculado ceros sobre la diagonal principal y se han hecho unos
en la diagonal, all donde esto ha sido posible. Dado que esta matriz tiene dos las no
nulas, su rango es dos.
2.9 Breve introducci on a la Teora de Grafos 2.9 Breve introducci on a la Teora de Grafos 63
2 9
BREVE INTRODUCCI

ON A LA TEOR

IA DE GRAFOS
La teora de grafos es una rama de las Matem aticas que ha recibido gran atenci on
debido a sus m ultiples aplicaciones en campos tan variados como la Ingeniera, la
Fsica, la Psicologa o la Sociologa, entre otros. Tiene su origen en el problema de los
siete puentes de K onigsberg,
10
que fue resuelto por Euler en 1736, y que consista en
averiguar si es posible dar un paseo por todos los puentes que conectan la ciudad con
la isla que forma el ro Pregolya al atravesarla, de manera que se cruce cada puente
una sola vez y se vuelva al punto de partida (vease la Figura 2.4a).
Este problema admite una representaci on esquem atica en forma de grafo. Un grafo
es un objeto formado por un conjunto de puntos denominados vertices y un conjunto
de pares de vertices llamados aristas. Esquem aticamente un grafo se representa por
una gr aca como la de la Figura 2.4b, que corresponde al esquema de conexiones en el
problema de los puentes de K onigsberg. En este ejemplo, cada vertice representa cada
una de las zonas terrestres que quedan divididas por el ro, y las aristas corresponden
a los puentes que las conectan. La informaci on que nos proporciona el graco es la de
las conexiones entre sus vertices: por ejemplo, el vertice v
1
est a conectado con el v
2
mediante dos aristas, y con el v
4
s olo mediante una. Como podemos apreciar, en lo
que se reere al problema, la informaci on del grafo es equivalente a la del mapa que
muestra la situacion de los puentes.
Podemos representar la informaci on que proporciona este grafo mediante una
matriz, denominada matriz de adyacencia que nos da el n umero de conexiones en
el grafo, de tal modo que el elemento a
ij
de la matriz es igual al n umero de aristas que
conecta el vertice i con el vertice j. De este modo, la matriz del grafo de la Figura 2.4b
es

0 2 0 1
2 0 2 1
0 2 0 1
1 1 1 0

(2.6)
Las sucesivas potencias de la matriz de adyacencia de un grafo tienen un signicado
peculiar. Por ejemplo, para la matriz A de (2.6) se tiene que
B = A
2
=

5 1 5 2
1 9 1 4
5 1 5 2
2 4 2 3

Que signica que el elemento b


12
= 1, o que b
14
= 4? En este caso, el hecho de
que b
12
= 1 signica que hay un unico camino de longitud 2 (es decir, que se ha de
recorrer en dos etapas) que une el vertice v
1
con v
2
(el que une v
1
v
4
v
2
, vease
la gura 2.5); es lo que se denomina un 2-camino. Que b
24
= 4 signica que podemos
unir los vertices v
1
y v
4
mediante 2-caminos de cuatro modos diferentes. Puede el
lector encontrarlos?
10
Actual Kaliningrado.
64 Tema 2 Matrices y Determinantes
(a) Situacion de los puentes
v
1
v
2
v
3
v
4
(b) Grafo que representa el problema
Figura 2.4: El problema de los siete puentes de Konigsberg
v
1
v
2
v
3
v
4
Figura 2.5: Camino v
1
v
4
v
2
En denitiva, la entrada b
ij
de la matriz B = A
2
nos dan el n umero de 2-caminos
que unen los vertices v
i
con v
j
. El signicado de los sucesivas potencias de A es an alogo:
las entradas de la potencia n de A nos proporcionan el n umero de n-caminos que unen
los correspondientes vertices.
Los grafos tambien pueden ser dirigidos. Por ejemplo, supongamos que tenemos
una serie de lugares (vertices) unidos por caminos (aristas) pero que alguno de estos
solo puede ser recorrido en una unica direcci on (vease la Figura 2.6a). La matriz de
adyacencia en este caso sera
C =
_
_
_
_
_
_
_
_
0 1 0 1 0
1 0 0 1 0
1 0 0 0 1
0 0 1 0 1
1 0 1 0 0
_
_
_
_
_
_
_
_
2.9 Breve introducci on a la Teora de Grafos 2.9 Breve introducci on a la Teora de Grafos 65
v
1
v
2
v
3
v
4
v
5
(a) Grafo dirigido
v
1
v
3
v
4
v
2
v
5
(b) Grafo no conexo
Figura 2.6: Grafos
que, a diferencia con el ejemplo anterior, no es simetrica
La potencia n de esta matriz tambien nos proporciona el n umero de n-caminos
que conectan el vertice i con el j, pero en este caso, respetando la direccionalidad. Por
ejemplo,
C
2
=
_
_
_
_
_
_
_
_
1 0 1 1 1
0 1 1 1 1
1 1 1 1 0
2 0 1 0 1
1 1 0 1 1
_
_
_
_
_
_
_
_
N otese que hay dos 2-caminos que unen el vertice v
4
con v
1
, pero solo un 2-camino
que une v
1
con v
4
.
En todo grafo de k vertices, est a claro que cualquier trayectoria que una un vertice
v
i
con v
j
tendr a como m aximo longitud k 1, de manera que si A es su matriz de
adyacencia se verica que la matriz
A+A
2
+ +A
k1
tiene un cero en la posici on ij si y solo si no existe ninguna trayectoria (de cualquier
longitud) que una el vertice v
i
con el v
j
.
Por ejemplo, la matriz de adyacencia del grafo de la Figura 2.6b es
D =
_
_
_
_
_
_
_
_
0 0 1 0 0
0 0 1 0 0
1 1 0 0 0
0 0 0 0 1
0 0 0 1 0
_
_
_
_
_
_
_
_
66 Tema 2 Matrices y Determinantes
Es evidente que en ese grafo no hay forma de llegar desde los vertices v
1
, v
2
o v
3
hasta
los vertices v
4
o v
5
, hecho que se puede comprobar calculando las posiciones de los
ceros de la matriz
D +D
2
+D
3
+D
4
=
_
_
_
_
_
_
_
_
3 3 3 0 0
3 3 3 0 0
3 3 6 0 0
0 0 0 2 2
0 0 0 2 2
_
_
_
_
_
_
_
_
Estamos ante lo que se denomina un grafo no conexo,
11
pues hay pares de vertices que
no se pueden unir mediante ninguna trayectoria, lo que queda reejado por la matriz
anterior.
2 10
EJERCICIOS
1. Los precios en euros de las entradas a un parque tem atico para adultos (AD) y Ni nos
y Jubilados (NJ) en Temporada Alta (TA), Temporada Media (TM) y Temporada
Baja (TB) vienen dados por la matriz P. El n umero de asistentes (en miles) a dicho
parque a lo largo de un a no viene dado por la matriz N:
P =

TA TM TB
AD 25 20 14
NJ 20 15 7

N =
_
AD NJ
TA 500 600
TM 350 300
TB 125 100
_
Se pide:
(a) Obtener, si es posible, las matrices: R
1
= NP y R
2
= PN.
(b) A cu antos euros asciende la recaudaci on total correspondiente a los ni nos y
jubilados?. Y la correspondiente a temporada baja?
(c) Que elemento de R
1
o R
2
nos proporciona informaci on sobre la recaudaci on
total correspondiente a los adultos?
(d) A cu antos euros asciende la recaudaci on total?
2. Hallar la matriz cuadrada de segundo orden que expresa la suma X
2
+Y
2
, siendo
X e Y dos matrices, tambien de segundo orden, que satisfacen el sistema:
5X + 3Y = A
3X + 2Y = B

donde A =

2 0
4 15

B =

1 1
2 9

.
11
Intuitivamente, el concepto de conexidad signica que el grafo puede ser separado en
subgrafos que no estan conectados por ninguna arista.
2.10 Ejercicios 2.10 Ejercicios 67
3. Realizar las siguientes operaciones:
A+ 2B; iA5B; AB; BA; A

B;
donde
A =

3 i 5 i
1 i i 1 + 2i
1 0 3 +i

, B =

1 i 1 +i 3i
3 +i i 1
3 5 2i 2i

4. Calcular todas las matrices de orden dos tales que:


(a) su cuadrado sea la matriz nula;
(b) sean idempotentes, es decir, A
2
= A.
5. Hallar todas las matrices B /
2
(R) que conmutan con la matriz
A =

1 3
5 2

6. Sean A, B /
n
(K) dos matrices simetricas. Probar que AB es simetrica si y s olo
si A y B conmutan.
7. Probar que si A /
n
(K) es una matriz simetrica, entonces A
k
es simetrica para
todo k N.
8. Se dice que A /
n
(K) es antisimetrica si A = A
T
. Probar que dada cualquier
matriz cuadrada M /
n
(K), esta se puede escribir como suma de una matriz
simetrica y otra antisimetrica.
9. Sean A /
n
(K) una matriz regular tal que AB = 0, donde B /
np
(K). Probar
que B = 0.
10. Una matriz A /
n
(K) se dice nilpotente si existe k N tal que A
k
= 0. Probar
que si A es nilpotente, entonces I A es invertible y su inversa es
(I A)
1
= I +A+A
2
+ +A
k1
11. Encontrar la inversa de las siguientes matrices usando el metodo de Gauss:
(a)

1 0 0
2 1 1
3 1 4

(b)

1 2 3 4
1 3 2 6
2 2 6 0
1 4 1 7

12. Escribid las matrices del Ejercicio 11 como producto de matrices elementales.
13. Demostrar, sin necesidad de calcularlos, que los siguientes determinantes son nulos:
(a)

1 2 3 4 5
2 3 4 5 6
3 4 5 6 7
4 5 6 7 8
5 6 7 8 9

(b)

1 2
2
3
2
4
2
2
2
3
2
4
2
5
2
3
2
4
2
5
2
6
2
4
2
5
2
6
2
7
2

68 Tema 2 Matrices y Determinantes


14. Sabiendo que los n umeros 58786, 30628, 80743, 12831 y 16016, son m ultiplos de 13,
probar que el siguiente determinante tambien lo es:

5 8 7 8 6
3 0 6 2 8
1 2 8 3 1
8 0 7 4 3
1 6 0 1 6

15. Demostrar que el conocido como determinate de Vandermonde tiene por valor:

1 1 1 1
x
1
x
2
x
3
x
n
x
2
1
x
2
2
x
2
3
x
2
n
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
x
n1
1
x
n1
2
x
n1
3
x
n1
n

1i<jn
(x
j
x
i
)
16. Evaluar los siguientes determinantes:
(a)

1 2 3 n
1 x + 1 3 n
1 2 x + 1 n
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1 2 3 x + 1

(b)

1 2 3 n 1 n
1 3 3 n 1 n
1 2 5 n 1 n
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1 2 3 2n 3 n
1 2 3 n 1 2n 1

(c)

1 n n n
n 2 n n
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
n n n n

17. Probar que:


(a)

x +a
1
a
2
a
3
a
n
a
1
x +a
2
a
3
a
n
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
a
1
a
2
a
3
x +a
n

= x
n1
_
x +

n
i=1
a
i
_
(b)

2 1 0 0 0
1 2 1 0 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0 0 0 0 2

= n + 1
2.10 Ejercicios 2.10 Ejercicios 69
18. Calcular el rango de las siguientes matrices:
(a)

1 3 7 4
6 5 1 2
7 2 6 1

(b)

2 3 1 4 2
1 2 1 2 3
2 3 0 2 1
1 2 0 2 1

19. Encontrar el rango de la matrices


(a)

1 a 1 2
2 1 a 5
1 10 6 1

(b)

a 1 0
1 a
2
1 +a
2
2 2 2 + 2a

seg un los valores de a.


20. Halla el rango de la matriz

1 1 1 a
1 1 +a 1 2a
b 1 1 +a 0

en funci on de los valores a y b.


21. Hallar la inversa de las siguientes matrices:
(a)

1 1 1 1 1
0 1 1 1 1
0 0 1 1 1
0 0 0 1 1
0 0 0 0 1

(b)

1 2 0 0 0
0 1 1 0 0
0 0 1 1 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0 0 0 0 1

(c)

1 +x 1 1 1
1 1 +x 1 1
1 1 1 +x 1
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1 1 1 1 +x

3 Sistemas de ecuaciones lineales


En el tema anterior se introdujeron los sistemas de ecuaciones lineales como uno
de los usos habituales de las matrices y en este vamos a recordar resultados, como
la Regla de Cramer o el Teorema de Rouche-Frobenius, que el lector habr a tenido
la oportunidad de ver en cursos anteriores. Tambien introduciremos algunos aspectos
nuevos relacionados con en el

Algebra Lineal Numerica, estudiando algunos metodos
computacionales dise nados para resolver sistemas de ecuaciones. Veremos c omo usar
Python tanto en la resoluci on de sistemas como en la programaci on de metodos
numericos y nalizaremos mostrando una aplicacion de la aparici on de sistemas lineales
en la resoluci on de ecuaciones diferenciales ordinarias.
3 1
SISTEMAS DE ECUACIONES LINEALES: PRIMERAS DEFINICIONES
Recordemos que un sistema de ecuaciones lineal es una expresi on de la forma
a
11
x
1
+a
12
x
2
+ +a
1n
x
n
= b
1
a
21
x
1
+a
22
x
2
+ +a
2n
x
n
= b
2
.
.
.
a
m1
x
1
+a
m2
x
2
+ +a
mn
x
n
= b
m
_

_
(3.1)
en el que los elementos que intervienen ya fueron denidos en las Denici on 2.9. El
concepto de soluci on dado en la Denicion 2.10, junto con la denici on de compatibi-
lidad que presentamos a continuaci on, conforman pr acticamente todos los elementos
necesarios para trabajar con sistemas de ecuaciones lineales.
Denici on 3.1 Un sistema se dice compatible si posee soluci on, e incompatible si no
posee soluci on. Un sistema compatible se dice determinado si su soluci on es unica.
En caso contrario se dir a indeterminado.
La Proposici on 2.7 permite poner en marcha el metodo de Gauss, que ya hemos
visto en el tema anterior (vease la p ag. 38), y que de manera simple y directa
nos proporcina una forma eciente de resolver los sistemas lineales. Recordamos el
funcionamiento del metodo de Gauss con nuevos ejemplos:
Ejemplo 3.1 Resolver mediante el metodo de Gauss los siguientes sistemas:
71
72 Tema 3 Sistemas de ecuaciones lineales
(i)
x
1
x
2
+x
3
= 1
x
1
+x
2
+x
3
= 0
2x
1
2x
2
+ 2x
3
= 3
_

_
Recordemos que el metodo de Gauss consiste en triangular el sistema mediante
transformaciones entre sus ecuaciones que lleven a un sistema equivalente que se
resuelve mediante una sencillo proceso de subida. Reescribiendo el sistema en forma
matricial, las operaraciones conducentes a la triangulaci on son en este caso,

1 1 1 1
1 1 1 0
2 2 2 3

F
2
F
1
F
3
2F
1

1 1 1 1
0 2 0 1
0 0 0 1

Si ahora intentamos hacer una subida observamos que la ultima ecuaci on se escribe
0 = 1!!! Se trata por tanto de un sistema incompatible.
(ii)
x
1
+ 3x
2
x
3
+x
4
= 1
2x
1
+x
2
+ 2x
3
= 7
x
2
x
4
= 0
2x
1
+ 6x
2
2x
3
+ 2x
4
= 2
_

_
El metodo de Gauss resulta ahora:

1 3 1 1 1
2 1 2 0 7
0 1 0 1 0
2 6 2 2 2

F
2
+2F
1
F
4
2F
1

1 3 1 1 1
0 7 0 2 9
0 1 0 1 0
0 0 0 0 0

Podemos ver que la ultima ecuaci on es 0 = 0, con lo que no aporta informaci on


alguna al sistema y podemos eliminarla. Finalmente, intercambiando las las segunda
y tercera para simplicar los c alculos, se tiene

1 3 1 1 1
0 1 0 1 0
0 7 0 2 9

F
3
7F
1

1 3 1 1 1
0 1 0 1 0
0 0 0 9 9

con lo que el sistema queda triangulado. En este caso, al realizar el proceso de subida
obtenemos x
4
= 1, x
2
= 1, sin embargo la primera ecuaci on resulta x
1
= x
3
3.
Puesto que tenemos m as inc ognitas que ecuaciones, x
3
queda libre para tomar el valor
que uno desee, obteniendo as un valor para x
1
. Puesto que x
3
puede tomar innitos
valores, estamos ante un sistema compatible indeterminado. Un conjunto de soluciones
puede expresarse por (3, 1, , 1) con R. Como s olo tenemos una inc ognita libre
(a la que se denomina par ametro) se dice que el sistema tiene un grado de libertad.
N otese que el n umero de grados de libertad es la diferencia entre inc ognitas y n umero
de ecuaciones relevantes.
3.1 Sistemas de ecuaciones lineales: primeras deniciones 3.1 Sistemas de ecuaciones lineales: primeras deniciones 73
(iii)
3x
1
+x
2
x
3
+ 2x
4
= 7
2x
1
2x
2
+ 5x
3
7x
4
= 1
4x
1
+4x
2
+ 7x
3
11x
4
= 13
_

_
Observemos que este sistema no puede ser determinado, puesto que tenemos mas
inc ognitas que ecuaciones. Procediendo como antes,

3 1 1 2 7
2 2 5 7 1
4 4 7 11 13

1
3
F
1

1
1
3

1
3
2
3
7
3
2 2 5 7 1
4 4 7 11 13

F
2
2F
1
F
3
+4F
1

1
1
3

1
3
2
3
7
3
0
8
3
17
3

25
3

11
3
0
8
3
17
3

25
3

11
3

Si a la la tres le restamos la la dos (observese que son iguales) llegamos nuevamente


a un sistema triangular de dos ecuaciones con cuatro inc ognitas, por tanto se trata de
un sistema compatible indeterminado. En este caso tenemos dos grados de libertad,
lo cual signica que las soluciones del sistema quedan determinadas escogiendo dos
par ametros; en este caso dejamos libres x
3
y x
4
. La soluci on general puede expresarse
_
15
8
+
83
24

67
24
,
11
8
+
17
8

25
8
, ,
_
, , R

En denitiva, hemos visto a traves de ejemplos c omo el metodo de Gauss es capar


de reejar el car acter de un sistema, es decir, si es o no compatible, y el n umero de
grados de libertad que posee.
A continuaci on vamos a centrarnos en un tipo de sistemas que jugar a un papel
muy relevante a lo largo del texto.
Sistemas Homogeneos
Denici on 3.2 Un sistema de la forma (3.1) se dir a homogeneo, si el termino
independiente b
i
= 0, para todo i = 1, . . . , m.
Es inmediato comprobar que todo sistema homogeneo es compatible, pues la n-
upla (0, . . . , 0) es soluci on del mismo (com umnente denominada soluci on trivial ). Por
otra parte, la aplicaci on del metodo de Gauss a un sistema homogeneo basta realizarla
sobre la matriz de los coecientes, puesto que la columna correspondiente al termino
independiente se mantiene siempre nula. Si despues de la triangulaci on por Gauss y la
posterior eliminaci on de las nulas la matriz resultante es cuadrada (es decir, el n umero
de grados de libertad del sistema es cero), el sistema es compatible determinado, y su
unica soluci on es la trivial. En otro caso, el sistema ser a compatible indeterminado.
74 Tema 3 Sistemas de ecuaciones lineales
Proposici on 3.1
Dado el sistema homogeneo
a
11
x
1
+a
12
x
2
+ a
1n
x
n
= 0
a
21
x
1
+a
22
x
2
+ a
2n
x
n
= 0
.
.
.
a
m1
x
1
+a
m2
x
2
+ a
mn
x
n
= 0
_

_
(3.2)
si ( x
1
, . . . , x
n
) es soluci on, entonces ( x
1
, . . . , x
n
) tambien es soluci on del sistema,
R.
Del mismo modo, si ( x
1
, . . . , x
n
) e ( y
1
, . . . , y
n
) son soluciones de (3.2), entonces
la n-upla ( x
1
+ y
1
, . . . , x
n
+ y
n
) tambien es soluci on de (3.2).
La demostraci on de este resultado es trivial y se deja como ejercicio al lector.
Observese que la tesis del resultado es cierta con independencia de que el sistema sea
o no determinado.
Las soluciones de un sistema homogeneo son relevantes en relaci on con las solucio-
nes de uno no homogeneo, como pone de maniesto el siguiente resultado.
Proposici on 3.2
Si ( x
1
, . . . , x
n
) es soluci on del sistema (3.1), entonces todas sus restantes soluciones
se escriben de la forma ( x
1
+
1
, . . . , x
n
+
n
), donde (
1
, . . . ,
n
) es soluci on de
(3.2), su sistema homogeneo asociado.
Demostracion:
Si (x

1
, . . . , x

n
) es cualquier otra soluci on de (3.1) entonces podemos escribir
(x

1
, . . . , x

n
) = ( x
1
, . . . , x
n
) + (x

1
x
1
, . . . , x

n
x
n
).
Si ahora ponemos (
1
, . . . ,
n
) = (x

1
x
1
, . . . , x

n
x
n
), es inmediato comprobar
que esta n-upla es soluci on de (3.2). De manera que hemos podido escribir cualquier
soluci on del sistema no homogeneo como suma de una soluci on dada, lo que se conoce
como soluci on particular, m as una soluci on del sistema homogeneo asociado.
Como consecuencia de este resultado podemos armar que si el sistema (3.1)
es compatible, entonces tiene tantas soluciones como su correspondiente sistema ho-
mogeneo (3.2).
Regla de Cramer
La regla de Cramer
1
nos da la soluci on directa de un sistema cuadrado compatible
determinado mediante el c alculo de ciertos determinantes. Tiene su utilidad pues nos
1
Debe su nombre al matem atico suizo Gabriel Cramer que la publico y popularizo en 1750,
aunque el resultado ya haba sido publicado dos a nos antes por el escoces Colin McLaurin.
3.1 Sistemas de ecuaciones lineales: primeras deniciones 3.1 Sistemas de ecuaciones lineales: primeras deniciones 75
proporciona una expresi on cerrada de la soluci on del sistema, aunque en la pr actica
no posee tanta utilidad pues obliga al c alculo de determinantes de tama no excesivo.
Teorema 3.1 (Regla de Cramer)
Si A /
n
(K) es regular y x, b /
n1
(K), el sistema Ax = b es compatible
determinado y
x
j
=
[A
j
[
[A[
, 1 j n
donde A
j
es la matriz
A
j
=

a
11
b
1
a
1n
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
a
n1
b
n
a
nn

es decir, la matriz obtenida de A al sustituir la columna j por el segundo miembro


del sistema.
Demostraci on:
Como se vio en la Nota 2.3, como A es regular, la soluci on de Ax = b es x = A
1
b.
Usando el Teorema 2.5 x =
1
|A|
adj(A)
T
b. Siguiendo con la notacion empleada en la
demostraci on del Teorema 2.5, el producto matricial anterior puede escribirse por
x =
1
[A[

b
1
c
11
+ +b
n
c
1n
.
.
.
b
1
c
n1
+ +b
n
c
nn

Es decir,
x
j
=
1
[A[
(b
1
c
j1
+ +b
n
c
jn
),
expresi on que coincide con
[A
j
[
[A[
desarrollado por la j-esima columna.
Ejemplo 3.2 Resolver el siguiente sistema:
2x
1
+ 3x
2
= 8
x
1
+x
3
= 1
2x
2
x
4
= 1
x
1
+x
4
= 4
_

_
En este caso,
A =

2 3 0 0
1 0 1 0
0 2 0 1
1 0 0 1

b =

8
1
1
4

76 Tema 3 Sistemas de ecuaciones lineales


Desarrollando el determinante de A por la tercera columna obtenemos
[A[ =

2 3 0
0 2 1
1 0 1

= 1.
Puesto que [A[ , = 0 el sistema tiene soluci on unica. Calculando los determinantes de
las correspondientes matrices A
j
, 1 j 4 se tiene,
[A
1
[ =

8 3 0 0
1 0 1 0
1 2 0 1
4 0 0 1

8 3 0
1 2 1
4 0 1

= 1
[A
2
[ =

2 8 0 0
1 1 1 0
0 1 0 1
1 4 0 1

2 8 0
0 1 1
1 4 1

= 2
[A
3
[ =

2 3 8 0
1 0 1 0
0 2 1 1
1 0 4 1

C
3
C
2
=

2 3 6 0
1 0 0 0
0 2 1 1
1 0 3 1

3 6 0
2 1 1
0 3 1

= 0
[A
4
[ =

2 3 0 8
1 0 1 1
0 2 0 1
1 0 0 4

2 3 8
0 2 1
1 0 4

= 3
Por tanto, x
1
= 1, x
2
= 2, x
3
= 0 y x
4
= 3.

3 2
TEOREMA DE ROUCH

E-FROBENIUS
Teorema 3.2 (Teorema de Rouche-Frobenius
2
)
Consideremos el sistema lineal Ax = b, con A /
mn
(K), x /
n1
(K) y
b /
m1
(K). Denotemos por

A a la matriz ampliada del sistema, esto es la matriz
formada por A junto con el segundo miembro b. Entonces, el sistema es compatible
si y s olo si rango(A) = rango(

A).
M as aun, el sistema ser a determinado si rango(A) = n (n
o
de inc ognitas) e
indeterminado si rango(A) < n.
3.2 Teorema de Rouch e-Frobenius 3.2 Teorema de Rouch e-Frobenius 77
Demostraci on:
Por el momento s olo probaremos que la condici on es necesaria. La prueba de la
suciencia la postponemos hasta el tema siguiente (cf. Nota 4.1).
Si el sistema es compatible, entonces deben existir escalares x
1
, . . . , x
n
K tales
que Ax = b, donde, como es evidente, (x)
i
= x
i
. Consideremos ahora la matriz
ampliada

A /
m(n+1)
(la ultima columna corresponde a la matriz b), y sobre ella
efectuamos la operacion entre columnas siguiente:
C
n+1
x
1
C
1
x
n
C
n
Dicha operacion da como resultado la matriz
M =

a
11
a
1n
0
a
21
a
2n
0
.
.
.
.
.
.
.
.
.
.
.
.
a
m1
a
mn
0

y por la aplicaci on sucesiva de (iv) del Teorema 2.4 se tiene que rango(

A) = rango(M),
que trivialmente es igual al rango(A).
Ejemplo 3.3 Discutir la compatibilidad del siguiente sistema mediante el Teorema de
Rouche-Frobenius.
x
1
+ 2x
2
= 1
2x
1
+x
2
+ 3x
3
= 2
3x
1
+x
2
+ 5x
3
= 3
_

_
La matriz ampliada se escribe,

A =

1 1 0 1
2 1 3 2
3 1 5 3

Es f acil comprobar que rango(A) = 2, pues

1 2
2 1

,= 0 y

1 2 0
2 1 3
3 1 5

= 0
2
El nombre se debe al matem atico frances Eug`ene Rouche, que lo enuncio en 1875 y
al aleman Ferdinand Georg Frobenius. Poco despues de su publicacion, el frances Georges
Fontene se atribuyo la primera demostracion del mismo, y Frobenius, en 1905, acredito la
demostracion a Rouche y Fontene. Sin embargo, el nombre por el que se conoce el resultado
(especialmente en los pases de habla hispana) se debe al matem atico hispano-argentino Julio
Rey Pastor, que lo rerio de tal forma. En otros pases es conocido como Teorema de Rouche-
Fontene o Teorema de Kronecker-Capelli.
78 Tema 3 Sistemas de ecuaciones lineales
y rango(

A) = 2, pues

1 2 1
2 1 2
3 1 3

= 0.
3
Por tanto se trata de un sistema compatible indeterminado (rango(A) < n
o
de
inc ognitas).
Es importante prestar atenci on a la resoluci on de este tipo de sistemas. Puesto que
rango(A) = 2, esto nos indica que s olo dos ecuaciones y dos incognitas son relevantes en
la resoluci on del sistema, y por tanto el n umero de grados de libertad es uno (es decir,
el n umero de inc ognitas menos el n umero de ecuaciones relevantes). Por otra parte,
cu ales de estas inc ognitas y ecuaciones son las relevantes? La respuesta nos la da el
menor b asico: es decir, las ecuaciones e inc ognitas asociadas a las las y columnas del
menor b asico; en este caso, las dos primeras ecuaciones y las dos primeras inc ognitas.
Para resolver el sistema, consideramos el resto de inc ognitas como par ametros, esto
es
x
1
+ 2x
2
= 1
2x
1
+x
2
= 2 3

donde hemos puesto x


3
= . Ahora tenemos un sistema cuadrado cuya matriz de
coecientes tiene determinante no nulo (ya que se trata del menor b asico), as pues
podemos usar Cramer en su resoluci on obteniendo:
[A[ = 3, [A
1
[ =

1 2
2 3 1

= 6 3, [A
2
[ =

1 1
2 2 3

= 3
Luego las soluciones del sistema vienen dadas por (1 2, , ).

Ejemplo 3.4 Discutir el sistema


ax + 2z = 2
5x + 2y = 1
x 2y +bz = 3
_

_
en funci on de los valores de a y b y resolverlo cuando sea compatible indeterminado.
La matriz de coecientes y la matriz ampliada del sistema son
A =

a 0 2
5 2 0
1 2 b


A =

a 0 2 2
5 2 0 1
1 2 b 3

3
Notese que no es necesario comprobar el valor del determinante

1 0 1
1 3 2
1 5 3

puesto que no esta formado a partir de las y columnas basicas.


3.3

Algebra Lineal Num erica 3.3

Algebra Lineal Num erica 79
Para estudiar el rango de A vemos que las dos primeras las y las dos ultimas columnas
conforman un menor de orden dos distinto de cero (con independencia de los valores
de a y b), de modo que al menos el rango de A es dos. Estudiando
[A[ =

a 0 2
5 2 0
1 2 b

= 2ab 24
observamos que los valores de a y b que hacen que [A[ = 0 son los que verican ab = 12.
En conclusion, si ab = 12, rango(A) = 2 y en caso contrario rango(A) = 3.
Veamos ahora que pasa con

A: obviamente, si ab ,= 12, como

A no puede tener
rango cuatro, rango(

A) = 3 y el sistema ser a compatible determinado. Nos resta por
ver que pasa si ab = 12. Orlando el menor de orden dos de A con la ultima columna
de

A,

0 2 2
2 0 1
2 b 3

= 4b 16
De modo que, si b = 4 (y como ab = 12 eso signica que a = 3), entonces rango(

A) = 2
y el sistema es compatible indeterminado. Si b ,= 4, (y ab = 12) el sistema es
incompatible. Resumiendo
_

_
ab ,= 12 sistema compatible determinado
b = 4, a = 3 sistema compatible indeterminado
en otro caso sistema incompatible
Para a = 3 y b = 4 consideramos el menor de orden dos escogido previamente y
usamos la inc ognita correspondiente a la columna que no aporta rango como par ametro
(en este caso la primera, o sea, la variable x); pasando los par ametros al segundo
miembro,
2z = 2 3
2y = 1 5

La solucion es
_
,
15
2
,
23
2
_
.

3 3

ALGEBRA LINEAL NUM

ERICA
Es muy frecuente que un gran n umero de problemas matem aticos provenientes
de diversos campos precisen, en alg un momento de su resoluci on, tener que tratar
con sistemas lineales con un gran n umero de ecuaciones e inc ognitas. El tama no de
tales sistemas los vuelve imposibles de resolver a mano, por lo que es necesario acudir
a algoritmos numericos programados en un ordenador para obtener su soluci on. El

Algebra Lineal Numerica se encarga de estudiar y analizar metodos para resolver


estos sistemas computacionalmente.
80 Tema 3 Sistemas de ecuaciones lineales
B asicamente se distinguen dos tipos de metodos: directos e indirectos. Los primeros
tratan de obtener la soluci on del sistema tras un n umero nito de pasos, mientras que
los segundos construyen una sucesi on de valores que van convergiendo a la soluci on
del sistema. Antes de pasar a describir algoritmos de ambos metodos hemos de prestar
atenci on a la forma en la que los ordenadores trabajan con los n umeros, pues es crucial
en determinados aspectos de los metodos numericos.
Errores de redondeo
Los ordenadores trabajan con la denominada aritmetica de coma otante en la que
cada n umero es representado en la m aquina de una forma determinada que permite
almacenar n umeros reales extremadamente grandes y peque nos de forma compacta.
Para nosotros, lo m as importante de este hecho es que las m aquinas tienen que trabajar
con un n umero limitado de cifras decimales. Por ejemplo, una computadora no puede
4
tratar con el n umero
8
3
= 2.

6, pues dependiendo del n umero de cifras signicativas


que maneje la m aquina, el n umero se almacenar a s olo con una cantidad nita de
cifras, lo cual induce un determinado error. Estos errores se pueden producir, bien
por truncamiento, es decir, en lugar de considerar
8
3
consideramos 2.6666, (si nuestra
m aquina considerara s olo cuatro cifras signicativas) truncando la expansion decimal,
o bien por redondeo, en el que almacenaramos el dgito de cuatro cifras decimales
m as pr oximo al n umero en cuesti on, es decir, en este caso almacenaramos 2.6667. En
ambos casos hablamos de errores de redondeo.
Si bien los errores de redondeo no parecen ser importantes, m as aun cuando el
n umero de cifras signicativas con el que trabaja una computadora actualmente se
sit ua en 16 o 32, hay que tener cuidado con los mismos pues pueden aparecer diferencias
notables. Por ejemplo, si calculamos exactamente los valores
1
8
3
2.6666
= 15000,
1
8
3
2.6667
= 30000
la diferencia entre ambos valores es de 45000! (es lo que se denomina el error absoluto,
que corresponde al valor absoluto de la diferencia entre los valores). En este caso, tal
disparidad de valores se debe al hecho de que los denominadores de las fracciones
calculadas son muy peque nos. En tales casos, una peque na diferencia de valores en
los denominadores provoca diferencias enormes en los resultados. Uno de los retos del

Algebra Lineal Numerica es dise nar metodos que reduzcan en la medida de lo posible
los errores generados por el redondeo, as como tratar de estimar estos errores cuando
ocurren.
Medir el error cometido mediante los errores absolutos hace que perdamos pers-
pectiva. Por ejemplo, si estamos midiendo la longitud de un tornillo cuyo valor real
es de 5 mm., y el aparato de medici on nos proporciona 4 mm. estamos cometiendo un
error absoluto de 1 mm. Si la medici on es la de un campo de f utbol que tiene 100 m.
de largo, y nuestra medici on es de 99 m. estaremos cometiendo un error absoluto de
1 m. Es evidente que el error absoluto en el segundo caso es mucho mayor que en el
primero, pero cu al de las dos medidas es mejor? En el primer caso nos equivocamos
en 1 mm. de cada 5 mm., mientras que en el segundo, el error es de 1 m. de cada 100 m.
4
Esto no es totalmente cierto: hemos visto como el modulo SymPy de Python permite
trabajar con n umeros como si fueran smbolos, y por tanto es posible realizar ciertos c alculos
de forma exacta.
3.3

Algebra Lineal Num erica 3.3

Algebra Lineal Num erica 81
Es decir, es necesario relativizar el error en funci on del tama no de las cantidades con
las que estamos trabajando. Por eso se trabaja con el error relativo que corresponde
al cociente entre el error absoluto y la cantidad a aproximar. As pues, en la medici on
del tornillo estamos cometiendo un error de
1
5
= 0.2, mientras que al medir el campo
de f utbol hemos cometido un error relativo de
1
100
= 0.01 (bastante menor que el ante-
rior). Es habitual usar porcentajes cuando trabajamos con errores relativos, de modo
que, teniendo en cuenta que estos vienen dados en tantos por uno, multiplicamos por
100 para obtener el tanto por cien de error (un 20 % para el primer caso y un 1 % para
el segundo).
3 3 1 Metodos directos
El metodo directo m as conocido para la resoluci on de sistemas es el metodo de
Gauss que vimos en la Secci on 2.2. Con este metodo, tras un n umero nito de pasos
llegamos a la soluci on exacta del sistema, siempre y cuando no cometamos errores
de redondeo. Tales errores, tal y como acabamos de ver, pueden tener consecuencias
importantes, de ah que se hayan desarrollado estrategias encaminadas a minimizar
estos efectos no deseados.
Para ver de que manera afectan los errores de redondeo al metodo de Gauss, veamos
un ejemplo en el que los c alculos los haremos de forma similar a como los realiza un
computador. Para ello ser a necesario explicar de forma muy resumida c omo funciona
la aritmetica de la coma otante. B asicamente se trata de representar los n umeros
reales mediante una expresi on del tipo
x = m 10
e
donde m es la denominada mantisa y e es el exponente. La mantisa es de la forma
m = 0.d
1
d
2
d
k
con d
1
,= 0, mientras que k es el n umero de cifras signicativas. As,
si por ejemplo, el computador que estamos usando emplea 4 cifras signicativas, el
n umero 22.385 se representa por 0.2238 10
2
, mientras que 0.00023 se representa por
0.23 10
3
. La operaci on suma (o resta) de dos n umeros en coma otante es realizada
por los computadores de una forma peculiar: si queremos sumar x = m
1
10
e
1
con
y = m
2
10
e
2
, con e
1
> e
2
, haremos lo siguiente
x +y = m
1
10
e
1
+m
2
10
e
2
= (m
1
+m
2
10
e
2
e
1
) 10
e
1
Por ejemplo,
22.385 + 0.00023 = 0.2238 10
2
+ 0.23 10
3
= (0.2238 + 0.23 10
5
) 10
2
= 0.2238023 10
2
que con 4 cifras signicativas es 0.2238 10
2
.
Ejemplo 3.5 Consideremos el siguiente sistema:
0.0001x
1
+x
2
= 2
x
1
+x
2
= 3

cuya soluci on exacta es x


1
=
10000
9999
1.0001 y x
2
=
19997
9999
1.9999. Supongamos que
nuestro computador trabaja con aritmetica de coma otante con 4 cifras signicativas.
Las operaciones del metodo de Gauss son:
82 Tema 3 Sistemas de ecuaciones lineales

0.1 10
3
0.1 10 0.2 10
0.1 10 0.1 10 0.3 10

F
2
10
4
F
1

0.1 10
3
0.1 10 0.2 10
0 0.1 10
5
0.2 10
5

Resolviendo queda x
1
= 0 y x
2
= 2, de modo que la soluci on numerica para x
1
tiene
un error relativo aproximado del 100 %.
A que se debe esta enorme diferencia? Observemos que en este ejemplo, la unica
operacion que lleva a cabo el metodo de Gauss es F
2

1
0.0001
F
1
. Como podemos
apreciar, estamos dividiendo por un n umero cercano a cero, lo cual, en virtud del
comentario hecho antes, distorsiona los resultados.
Que ocurre si en lugar de resolver el sistema tal y como lo tenemos, lo resolvemos
intercambiando previamente las ecuaciones? En este caso

0.1 10 0.1 10 0.3 10


0.1 10
3
0.1 10 0.2 10

F
2
10
4
F
1

0.1 10 0.1 10 0.3 10


0 0.0999 10 0.1997 10

Ahora las soluciones son x


1
= 1.0009 y x
2
= 1.9990. Vemos ahora que el mayor error
relativo cometido no llega al 0.1 %.

Si revisamos con atenci on las operaciones que realiza el metodo de Gauss sobre
un sistema observamos que, en cada iteraci on, con objeto de triangular el sistema,
es preciso multiplicar por el cociente entre, el elemento de la columna que queremos
anular, y el elemento de la diagonal que usamos como referencia. Este elemento es el
denominado pivote. En el primer caso del Ejemplo 3.5, el pivote era 0.0001, que al ser
pr oximo a cero hace que las divisiones por este conlleven errores mayores de lo que
cabra esperar. Por el contrario, en el segundo caso del mismo ejemplo, al intercambiar
las ecuaciones entre s, el pivote es ahora 1, y no se producen distorsiones al dividir
por el.
Puesto que el intercambio de las en la matriz de un sistema no altera las soluciones
del mismo, el conocido como metodo de Gauss con estrategia de pivoteo parcial, consiste
sencillamente en intercambiar las ecuaciones de orden con objeto de que el pivote
resulte ser el de mayor valor absoluto de entre todos los posibles, que es lo que se ha
hecho en el Ejemplo 3.5. Ve amoslo en un nuevo ejemplo.
Ejemplo 3.6 Resolvamos el siguiente sistema usando el metodo de Gauss con y
sin estrategia de pivoteo parcial usando aritmetica de coma otante con 4 cifras
signicativas y comparemos resultados
2x + 4y 16z = 38
14x + 2y + 4z = 10
16x + 40y 4z = 55
_

_
N otese que la soluci on exacta es x = 2, y = 2.5, z = 3.25.
3.3

Algebra Lineal Num erica 3.3

Algebra Lineal Num erica 83
Sin estrategia de pivoteo,

2 4 16 38
14 2 4 10
16 40 4 55

F
2
+7F
1
F
3
+8F
1

0.2 10 0.4 10 0.16 10


2
0.38 10
2
0 0.3 10
2
0.108 10
3
0.276 10
3
0 0.72 10
2
0.132 10
3
0.249 10
3

F
3
2.4F
1

0.2 10 0.4 10 0.16 10


2
0.38 10
2
0 0.3 10
2
0.108 10
3
0.276 10
3
0 0 0.1272 10
3
0.413 10
3

Resolviendo obtenemos: x = 2.033, y = 2.4666 y z = 3.2468.


Procedamos ahora usando el metodo de Gauss con estratagia de pivoteo parcial.
En lugar de escoger como pivote el 2, usaremos el de mayor valor absoluto de la
primera columna, esto es 16, por lo que procedemos en primer lugar intercambiando
las las primera y tercera,

2 4 16 38
14 2 4 10
16 40 4 55

F
1
F
3

16 40 4 55
14 2 4 10
2 4 16 38

F
2
0.875F
1
F
3
+0.125F
1

0.16 10
2
0.4 10
2
0.4 10 0.55 10
2
0 0.33 10
2
0.75 10 0.5812 10
2
0 0.9 10 0.165 10
2
0.3112 10
2

El siguiente paso ser a elegir el pivote para la segunda columna. Debemos mirar cu al, de
entre los elementos de la segunda columna que quedan por debajo de la diagonal (no es
posible escoger como pivote el de la primera la, pues perderamos el cero ya obtenido),
tiene mayor valor absoluto. Observamos que ahora no es necesario intercambiar las
pues el pivote de mayor valor absoluto ya se encuentra en la segunda la. As:
F
3
+0.2727F
2

0.16 10
2
0.4 10
2
0.4 10 0.55 10
2
0 0.33 10
2
0.75 10 0.5812 10
2
0 0 0.1445 10
2
0.4696 10
2

y resolviendo obtenemos x = 1.9981, y = 2.4993 y z = 3.2498.


Vemos que la aproximaci on en el segundo caso es un poco mejor que en el primero.
Puede el lector calcular los errores relativos de las dos aproximaciones?

En denitiva, con la tecnica del pivoteo parcial se pretende que los errores de re-
dondeo cometidos de forma natural por las computadoras queden minimizados. Existe
84 Tema 3 Sistemas de ecuaciones lineales
una versi on similar al pivoteo parcial, denominada metodo de Gauss con estrategia de
pivoteo total que, en lugar de elegir como pivote el elemento de mayor valor absoluto
de la columna, selecciona el de mayor valor absoluto considerando todas las las y
columnas a partir del elemento diagonal que corresponda. Si bien computacionalmen-
te el pivoteo total proporciona mejores resultados, su implementaci on precisa de un
renombrado de variables (cuando nos vemos obligados a intercambiar columnas entre
s) que lo hacen menos popular que la tecnica del pivoteo parcial.
Factorizacion LU
Es frecuente en las aplicaciones que tengamos que resolver una cierta cantidad
de sistemas del tipo Ax = b en los que la matriz A permanece ja, pero el segundo
miembro cambia (vease la secci on 3.5). La factorizaci on LU consiste en escribir la
matriz A como el producto de dos matrices, una triangular inferior L y una triangular
superior U de manera que A = LU.
5
Si conocemos una factorizaci on de la matriz A de este tipo y queremos resolver el
sistema Ax = b, entonces podemos proceder del siguiente modo:
Ax = b LUx = b

Ly = b
Ux = y
Es decir, en primer lugar resolvemos un sistema con matriz L y segundo miembro b,
denotando por y su soluci on, y a continuaci on, resolvemos el sistema con matriz U y
segundo miembro y, cuya soluci on ser a x, la soluci on del sistema original.
Que ventaja supone resolver los sistemas Ly = b y luego Ux = y en lugar
del sistema original Ax = b? Si observamos las matrices de estos sistemas, L es una
matriz triangular inferior, de manera que la resoluci on de un sistema con esta matriz se
reduce a un sencillo y rapido proceso de subida. Por su parte, U es triangular superior
de manera que el sistema Ux = y se resuelve f acilmente mediante una bajada.
6
En
denitiva, una vez conocida la factorizaci on LU de una matriz A, cualquier sistema se
va a poder resolver realizando primero un proceso de subida y luego uno de bajada,
lo cual es enormemente ventajoso desde el punto de vista computacional.
El c alculo de la factorizaci on LU se lleva a cabo de forma sencilla a traves
del metodo de Gauss y de las matrices elementales introducidas en la Secci on 2.3.
Recordemos que las matrices elementales permiten expresar las transformaciones que
se llevan a cabo en el metodo de Gauss como producto de matrices. Por ejemplo si
aplicamos el metodo de Gauss a la matriz
A =

1 2 1
3 1 2
0 1 1

olvid andonos del segundo miembro, las operaciones elementales sobre esta matriz se
escriben,
5
El nombre proviene de las siglas en ingles L por lower (inferior) y U por upper (superior).
Aunque el metodo basico ya era conocido por Gauss, fue el norteamericano Myrick Hascall
Doolittle a nales del s.XIX quien lo formulo de manera algortmica.
6
Esto es lo analogo de una subida, solo que en lugar de empezar por la ultima ecuacion,
comenzamos por la primera.
3.3

Algebra Lineal Num erica 3.3

Algebra Lineal Num erica 85

1 2 1
3 1 2
0 1 1

F
2
3F
1

1 2 1
0 5 1
0 1 1

F
3
+
1
5
F
2

1 2 1
0 5 1
0 0
4
5

= U
N otese que la matriz nal es triangular superior y la denotamos por U. Cada una de
las operaciones realizadas tiene su correspondiente matriz elemental:
F
2
3F
1
E
12
(3) =

1 0 0
3 1 0
0 0 1

F
3
+
1
5
F
2
E
23
(
1
5
) =

1 0 0
0 1 0
0
1
5
1

Es decir, en terminos de matrices elementales, el metodo de Gauss ha realizado la


multiplicaci on
E
23
(
1
5
)E
12
(3)A = U
N otese adem as que cada una de las matrices elementales empleadas es triangular infe-
rior.
7
Adem as, el producto de matrices triangulares inferiores es una matriz triangular
inferior, y la inversa de una triangular inferior, tambien es triangular inferior. As pues,
la matriz E
23
(
1
5
)E
12
(3) y su inversa son matrices triangulares inferiores. Por tanto,
podemos escribir
A =
_
E
23
(
1
5
)E
12
(3)
_
1
U = (E
12
(3))
1
_
E
23
(
1
5
)
_
1
U
Denotando por L = (E
12
(3))
1
_
E
23
(
1
5
)
_
1
, que es una matriz triangular inferior,
obtenemos la factorizaci on LU de A. Es decir, hemos escrito A como un producto de
una matriz triangular inferior y una matriz triangular superior.
En realidad, para calcular la matriz L no es necesario calcular las inversas de las
matrices elementales y luego los productos entre las mismas, pues estas operaciones
se pueden hacer de forma m as simple. Por una parte, las inversas de las matrices
elementales son inmediatas; m as concretamente se tiene que
(E
ij
())
1
= E
ij
(), (E
i
())
1
= E
i
(
1

)
Es decir, las inversas de matrices elementales son tambien matrices elementales. Por
tanto, efectuar el producto de tales matrices equivale a realizar la correspondiente
operacion que representan sobre la matriz identidad (atenci on al orden de la multipli-
caci on). En el caso que nos ocupa:

1 0 0
0 1 0
0 0 1

E
23
(
1
5
)

1 0 0
0 1 0
0
1
5
1

E
12
(3)

1 0 0
3 1 0
0
1
5
1

= L
7
Este hecho se cumple para todas las matrices elementales de tipo (ii) y (iii), siempre que
i < k, pero no es cierto para las de tipo (i) (vease la Denicion 2.11).
86 Tema 3 Sistemas de ecuaciones lineales
M as aun, calcular la matriz L no requiere tener en cuenta todo lo anterior, sino
simplemente prestar atenci on a las operaciones llevadas a cabo en el metodo de Gauss.
Lo vemos en el siguiente ejemplo.
Ejemplo 3.7 Resolver mediante una factorizaci on LU el sistema siguiente:
x
1
x
2
+ 2x
3
= 2
2x
1
+x
2
+x
3
= 3
3x
1
x
2
+x
3
= 3
_

_
Llevaremos a cabo en primer lugar la factorizaci on LU de la matriz de coecientes:
A =

1 1 2
2 1 1
3 1 1

La operaciones a realizar son:

1 1 2
2 1 1
3 1 1

F
2
2F
1
F
3
3F
1

1 1 2
0 3 3
0 2 5

1
3
F
2

1 1 2
0 1 1
0 2 5

F
3
2F
2

1 1 2
0 1 1
0 0 3

= U
Para construir la matriz L simplemente coleccionamos las operaciones inversas de
las realizadas en la matriz identidad:

1 0 0
0 1 0
0 0 1

F
2
2F
1
F
3
3F
1

F
2
+2F
1
F
3
+3F
1

1 0 0
2 1 0
3 0 1

1
3
F
2

3F
2

1 0 0
2 3 0
3 0 1

F
3
2F
2

F
3
+2F
2

1 0 0
2 3 0
3 2 1

= L
Observese que hemos escrito encima la operaci on que marcaba el metodo de Gauss, y
debajo y en negrita, la operaci on inversa que hemos realizado.
Podemos comprobar f acilmente que LU = A. Para resolver ahora el sistema inicial
resolvemos primero el sistema Ly = b. Es decir,

1 0 0
2 3 0
3 2 1

y
1
y
2
y
3

2
3
3

3.3

Algebra Lineal Num erica 3.3

Algebra Lineal Num erica 87
cuya soluci on es y
1
= 2, y
2
=
1
3
, y
3
=
7
3
y luego resolvemos Ux = y, es decir,

1 1 2
0 1 1
0 0 3

x
1
x
2
x
3

1
3

7
3

con solucion x
1
=
8
9
, x
2
=
4
9
y x
3
=
7
9
.

Es importante resaltar el hecho de que la factorizaci on LU de una matriz no es


unica, puesto que el metodo de Gauss tampoco lo es. Por otra parte, hay que mencionar
que en determinados sistemas el proceso llevado a cabo no es posible. Por ejemplo, si
el elemento a
11
= 0, para aplicar el metodo de Gauss es preciso intercambiar las de
la matriz, lo cual lleva consigo la introducci on de una matriz elemental que ya no es
triangular, lo que nos conducira a una matriz L no triangular inferior. En realidad
esto no supone un problema grave, pues el remedio consiste en intercambiar desde
el principio el orden de las las de la matriz (es decir, intercambiar el orden de las
ecuaciones) para no tener que introducir matrices no triangulares en el proceso. En
tales casos, las matrices L y U obtenidas no son una factorizaci on de la matriz original,
sino de una matriz en la que se han intercambiado algunas de sus las. Ve amoslo en
el siguiente ejemplo.
Ejemplo 3.8 Encontrar la factorizaci on LU de la matriz
A =

0 2 5
2 4 3
2 1 1

Observemos c omo el primer pivote no nos sirve, lo cual nos obliga a cambiar el order
de las las de la matriz. As, aplicamos el metodo de Gauss a la matriz
A

2 4 3
0 2 5
2 1 1

F
3
F
1

2 4 3
0 2 5
0 3 2

F
3
+
3
2
F
2

2 4 3
0 2 5
0 0
11
2

= U
mientras que

1 0 0
0 1 0
0 0 1

F
3
F
1

F
3
+F
1

1 0 0
0 1 0
1 0 1

F
3
+
3
2
F
2

F
3

3
2
F
2

1 0 0
0 1 0
1
3
2
1

= L

Se tiene por tanto que LU = A

o tambien LU = PA donde P es la matriz


correspondiente al intercambio entre las las uno y dos, es decir
P =

0 1 0
1 0 0
0 0 1

Este tipo de matrices es conocido como matriz de permutaci on.


88 Tema 3 Sistemas de ecuaciones lineales
3 3 2 Sistemas mal condicionados
Hemos visto al comienzo de esta secci on que cuando tratamos de resolver un
sistema lineal numericamente es preciso tener en cuenta la aparici on de errores de
redondeo provocados por la aritmetica de coma otante con la que trabajan las
computadoras. Pero no son estos los unicos errores con los que debemos contar.
Es frecuente que en el planteamiento de un sistema lineal, la recogida de datos que
conduce al mismo este afectada por errores de precision, es decir, que en lugar de estar
resolviendo un sistema Ax = b, tenemos un sistema ligeramente distinto

A x =

b,
denominado generalmente sistema perturbado. La cuesti on en este caso es ver si el
hecho de que la diferencia entre el sistema original y el perturbado sea peque na conduce
a que la diferencia entre sus soluciones tambien lo sea. Veamos un ejemplo.
Ejemplo 3.9 Consideremos el sistema
2x + 3y = 5
(2 + 10
7
)x + 3y = 5

cuya soluci on es x = 0, y =
5
3
. Modicamos ligeramente el sistema anterior para tener:
2x + 3y = 5
(2 + 10
7
)x + 3y = 5 + 10
7

La soluci on exacta es ahora x = 1, y = 1. Observese que la modicaci on realizada al


sistema es mnima (estamos perturbando s olo el segundo miembro muy ligeramente),
sin embargo la solucion del sistema original es muy distinta a la del sistema perturbado.

El anterior es un tpico ejemplo de lo que se conoce como un sistema mal condi-


cionado, en oposici on a lo que se denomina un sistema bien condicionado, en el que
peque nas perturbaciones en los datos del sistema conducen a peque nas variaciones en
su soluci on. En lo que sigue veremos que el condicionamiento de un sistema depende
esencialmente de un par ametro denominado n umero de condici on.
Para hablar del n umero de condici on es preciso hablar antes de normas, concepto
que introduciremos detenidamente en el Tema 8. Por el momento nos bastar a tener
una idea intuitiva de lo que es una norma vectorial: esencialmente una norma es una
medida del tama no de un vector.
8
M as concretamente, se dene la norma de un
vector x, que se notara como |x|, como un n umero real que verica las siguientes
propiedades:
(i) |x| 0, y |x| = 0 si y s olo si x = 0.
(ii) |x| = [[ |x|, K.
(iii) |x +y| |x| +|y|.
Para vectores en K
n
, el ejemplo m as conocido es la norma eucldea o norma 2,
denida por
|x|
2
=
_
[x
1
[
2
+ +[x
n
[
2
, si x = (x
1
, . . . , x
n
)
8
Hablaremos de vectores a partir del tema siguiente, aunque seguramente el lector ya
este familiarizado con ellos.
3.3

Algebra Lineal Num erica 3.3

Algebra Lineal Num erica 89
Otras normas habituales son la norma 1:
|x|
1
= [x
1
[ + +[x
n
[
y la norma innito o norma del supremo:
|x|

= max|[x
1
[, . . . , [x
n
[
Denici on 3.3 Sean | |

y | |

dos normas vectoriales en K


m
y K
n
, respecti-
vamente. Se denomina norma matricial en /
mn
(K) inducida por dichas normas
vectoriales a
|A| = sup
x=0
|Ax|

|x|

En general, es habitual que las normas vectoriales consideradas sean la misma


(aunque en diferentes espacios) por lo que evitaremos los subndices en las normas
para no recargar la notaci on.
Es f acil, a partir de la denici on, probar que una norma matricial satisface las
propiedades (i)(iii) que denen una norma. Por otra parte, es inmediato comprobar
que
|Ax| |A| |x|, x K
n
(3.3)
Tambien se puede probar que si | | es una norma en /
n
(K) inducida por normas
vectoriales, entonces
|AB| |A| |B|, A, B /
n
(K)
Denici on 3.4 Sea A /
n
(K) regular y | | una norma matricial inducida por
una norma vectorial. Se dene el n umero de condici on de A como
(A) = |A| |A
1
|
Si A es singular, se dene (A) =
La denici on se puede extender para el caso de matrices no cuadradas, pero no
lo usaremos aqu. El n umero de condici on de una matriz nos da una medida del
condicionamiento del sistema: cuanto mayor es, peor es el condicionamiento. M as
concretamente, supongamos que tenemos un sistema cuadrado con matriz regular
Ax = b y el correspondiente sistema perturbado A x = b+b, en el que consideramos
una variaci on del segundo miembro peque na. La idea es analizar la diferencia entre
la soluci on del sistema original x y la del sistema perturbado x.
Restando ambos sistemas:
Ax = b
A x = b + b

=A( x x) = b
y puesto que A es invertible, multiplicando por A
1
y usando (3.3)
x x = A
1
b =| x x| |A
1
| |b|
90 Tema 3 Sistemas de ecuaciones lineales
Por otra parte (usando nuevamente (3.3)), |Ax| = |b| |x|
|b|
|A|
. Luego,
| x x|
|x|

|A
1
| |b|
|x|
|A
1
| |A|
|b|
|b|
= (A)
|b|
|b|
(3.4)
La cantidad | x x| es el error absoluto entre la soluci on del sistema original y la
soluci on del sistema perturbado, mientras que el cociente
xx
x
es el error relativo.
Por su parte,
b
b
es el error relativo de la perturbaci on que hacemos del sistema.
En consecuencia, lo que (3.4) pone de maniesto es que el error relativo al resolver un
sistema esta acotado por el n umero de condici on de la matriz multiplicado por el error
relativo de la perturbaci on. Si se supone que la perturbaci on es peque na y el n umero
de condici on tambien, el error cometido sera peque no. Si por el contrario, el n umero
de condici on es grande no podemos esperar a priori que el error cometido sea peque no
(aunque en alg un caso concreto s que lo pueda ser).
En el Ejemplo 3.9, lo que est a ocurriendo es que el n umero de condici on de la
matriz del mismo es grande. Nos remitimos a la secci on 3.4 en la que calculamos el
n umero de condici on para esta matriz.
3 3 3 Metodos iterativos
Hemos hablado ya de los metodos directos para resolver sistemas, que son aquellos
con los que se pretende llegar a su soluci on tras un n umero nito de pasos. En esta
secci on presentaremos un par de metodos iterativos que construyen una sucesi on de
valores que deben tender hacia la soluci on del sistema. Cuando esto ocurre diremos
que el metodo converge y en caso contrario que diverge. El funcionamiento de los
metodos iterativos es siempre el mismo, s olo cambia el modo en el que se construye
cada iteraci on. As, se parte de una aproximaci on inicial x
(0)
, donde el superndice
har a referencia al elemento de la sucesi on, a partir de la cual debemos poder construir
un nuevo elemento x
(1)
que se aproxime aun m as a la soluci on del sistema, reiterando
el procedimiento un determinado n umero de veces. Si el metodo converge, al cabo de
un cierto n umero de pasos el termino de la sucesi on obtenido debera ser una buena
aproximaci on a la soluci on buscada. Este tipo de metodos es bastante ecaz para
matrices grandes vacas, esto es, con una gran cantidad de ceros.
Metodo de Jacobi
9
Supongamos que tenemos el sistema de n ecuaciones con n inc ognitas siguiente
a
11
x
1
+a
12
x
2
+ +a
1n
x
n
= b
1
a
21
x
1
+a
22
x
2
+ +a
2n
x
n
= b
2
.
.
.
a
n1
x
1
+a
n2
x
2
+ +a
nn
x
n
= b
n
_

_
9
Introducido por el matematico aleman Carl Gustav Jakob Jacobi en 1845.
3.3

Algebra Lineal Num erica 3.3

Algebra Lineal Num erica 91
en el que todos los elementos diagonales a
ii
,= 0. Dada una aproximaci on x
(k)
, se
contruye x
(k+1)
del siguiente modo:
x
(k+1)
1
=
1
a
11

b
1
a
12
x
(k)
2
a
1n
x
(k)
n

x
(k+1)
2
=
1
a
22

b
2
a
21
x
(k)
1
a
2n
x
(k)
n

.
.
.
x
(k+1)
n
=
1
a
nn

b
n
a
n1
x
(k)
1
a
n2
x
(k)
2
a
n,n1
x
(k)
n1

(3.5)
Es decir, b asicamente obtenemos la componente i-esima de la nueva aproximaci on
resolviendo la ecuaci on i-esima en esa misma variable. Dicho de otro modo, en cada
iteraci on resolvemos n ecuaciones, cada una de ellas con una unica inc ognita.
Ejemplo 3.10 Aplicar el metodo de Jacobi al sistema
10x
1
x
2
+ 2x
3
= 6
x
1
+ 11x
2
x
3
+ 3x
4
= 25
2x
1
x
2
+ 10x
3
x
4
= 11
3x
2
x
3
+ 8x
4
= 15
_

_
(3.6)
Consideramos x
(0)
= (0, 0, 0, 0). La iteraciones del metodo son:
x
(k+1)
1
=
1
10

6 +x
(k)
2
2x
(k)
3

x
(k+1)
2
=
1
11

25 +x
(k)
1
+x
(k)
3
3x
(k)
4

x
(k+1)
3
=
1
10

11 2x
(k)
1
+x
(k)
2
+x
(k)
4

x
(k+1)
4
=
1
8

15 3x
(k)
2
+x
(k)
3

As, para calcular x


(1)
sustituimos los valores de las componentes de x
(0)
en el esquema
anterior, obteniendo x
(1)
= (0.6, 2.2727, 1.1, 1.875). A continuaci on, repetimos el
proceso sustituyendo los valores obtenidos de x
(1)
para calcular x
(2)
, etc.
x
(2)
= (1.0472, 1.7159, 0.8052, 0.8852),
x
(3)
= (0.9326, 2.0533, 1.0493, 1.1308),
. . .
Al cabo de diez iteraciones se tiene que x
(10)
= (1.0001, 1.9997, 0.9998, 0.9997).
N otese que la soluci on del sistema es (1, 2, 1, 1), lo que nos dice que el metodo
est a convergiendo.

92 Tema 3 Sistemas de ecuaciones lineales


Metodo de Gauss-Seidel
10
Si miramos el metodo de Jacobi con atenci on podemos observar que la construcci on
de cada componente de x
(k+1)
usa s olo la informaci on obtenida de x
(k)
; sin embargo, a
la hora de calcular x
(k+1)
i
ya conocemos los valores de x
(k+1)
j
para j < i. El metodo de
Gauss-Seidel simplemente aprovecha este hecho. As, al igual que antes comenzaramos
con una aproximaci on inicial dada x
(0)
, y en cada iteraci on, conocida la aproximaci on
x
(k)
calculamos x
(k+1)
mediante:
x
(k+1)
1
=
1
a
11

b
1
a
12
x
(k)
2
a
1n
x
(k)
n

x
(k+1)
2
=
1
a
22

b
2
a
21
x
(k+1)
1
a
2n
x
(k)
n

.
.
.
x
(k+1)
i
=
1
a
ii

b
i
a
i1
x
(k+1)
1
a
i,i1
x
(k+1)
i1
a
i,i+1
x
(k)
i+1
a
in
x
(k)
n

.
.
.
x
(k+1)
n
=
1
a
nn

b
n
a
n1
x
(k+1)
1
a
n2
x
(k+1)
2
a
n,n1
x
(k+1)
n1

(3.7)
Es de esperar que el metodo de Gauss-Seidel converja mas r apidamente que el
metodo de Jacobi, aunque no siempre es as. Lo que s se puede probar es que converge,
al menos, igual de r apido que el de Jacobi.
Ejemplo 3.11 Aplicamos el metodo de Gauss-Seidel al sistema (3.6). Iniciando desde
el mismo valor x
(0)
= (0, 0, 0, 0), la iteraci on a realizar es
x
(k+1)
1
=
1
10

6 +x
(k)
2
2x
(k)
3

x
(k+1)
2
=
1
11

25 +x
(k+1)
1
+x
(k)
3
3x
(k)
4

x
(k+1)
3
=
1
10

11 2x
(k+1)
1
+x
(k+1)
2
+x
(k)
4

x
(k+1)
4
=
1
8

15 3x
(k+1)
2
+x
(k+1)
3

Al igual que antes, para obtener x


(1)
1
sustituimos los valores de las componentes de
x
(0)
de las que partimos; pero para calcular x
(1)
2
, ya conocemos la componente x
(1)
1
, de
manera que la usamos, en lugar de x
(0)
1
. As, procedemos con las dem as componenetes
en cada iteraci on, obteniendose
x
(1)
= (0.6, 2.3272, 0.9872, 0.8788),
x
(2)
= (1.0301, 2.0369, 1.0144, 0.9843),
x
(3)
= (1.0065, 2.0035, 1.0025, 0.9983),
x
(4)
= (1.0008, 2.0002, 1.0003, 0.9998)
10
Introducido por el aleman Philipp Ludwig von Seidel en 1874.
3.4 C alculo con Python 3.4 C alculo con Python 93
Vemos que en este caso, con la mitad de iteraciones obtenemos una precisi on similar
a la obtenida con el metodo de Jacobi.

Por otra parte, es importante resaltar que la convergencia de ambos metodos


no est a asegurada. Se pueden dar condiciones sucientes para que ambos metodos
converjan. Una de las m as habituales es la diagonal dominancia.
Denici on 3.5 Se dice que una matriz A /
n
(K) es diagonal dominante (por
las) si
[a
ii
[

j=i
[a
ij
[, i
Es decir, en cada la, el elemento diagonal en m odulo (o valor absoluto) es mayor
que la suma de los m odulos del resto de elementos de esa la. El mismo concepto se
puede aplicar por columnas. Se puede probar que, si una matriz es diagonal dominante,
los metodos de Jacobi y Gauss-Seidel convergen.
3 4
C

ALCULO CON PYTHON


Como hemos comentado con anterioridad, la necesidad de resolver sistemas de
ecuaciones lineales de gran tama no di o lugar al

Algebra Lineal Numerica de la que
hemos descrito unas pinceladas en la secci on anterior. Python, como lenguaje de
programaci on que es, es un entorno adecuado para programar los diversos algoritmos
que hemos visto, sin embargo, no queremos dedicar nuestra atenci on en este texto
al aprendizaje de la programaci on (aunque se ver an algunos ejemplos) sino al uso de
algunas de las herramientas que Python tiene incorporadas para resolver sistemas de
ecuaciones.
La solucion de sistemas de ecuaciones desde NumPy es sencilla; basta invocar la
funci on linalg.solve con la matriz del sistema y el segundo miembro: por ejemplo,
el c odigo
1 >>> from numpy import matrix ,linalg
2 >>> a=matrix (2. 1 1; 1 2 1 ; 1 1 2 )
3 >>> b=matrix (1; 2; 3)
4 >>> linalg.solve(a,b)
5 matrix ([[ -0.5],
6 [ 0.5],
7 [ 1.5]])
resuelve el sistema

2 1 1
1 2 1
1 1 2

x
1
x
2
x
3

1
2
3

cuya soluci on es x
1
= 0.5, x
2
= 0.5 y x
3
= 1.5.
94 Tema 3 Sistemas de ecuaciones lineales
Si la matriz es no cuadrada o singular, obtendremos un error.
Por su parte, SymPy nos ofrece m as sosticaci on, permitiendo resolver sistemas
indeterminados, aunque su utilidad es escasa si el sistema es grande. Por ejemplo,
1 >>> from sympy import Matrix ,solve_linear_system
2 >>> from sympy.abc import x,y,z
3 >>> A=Matrix ([[-2,1,1,0],[1,-2,1,0],[1,1,-2,0]])
4 >>> solve_linear_system(A,x,y,z)
5 {x: z, y: z}
corresponde a la soluci on de
2x +y +z = 0
x 2y +z = 0
x +y 2z = 0
_

_
que es un sistema compatible indeterminado con solucion: (, , ).
Vemos que es necesario pasar como argumento la matriz ampliada del sistema y
los nombres de las variables que reciben la soluci on.
Otra opci on para resolver un sistema pasa por el uso del m odulo rref() de SymPy
que ya vimos en el tema anterior. Este m odulo permite hacer una reducci on tipo Gauss
de una matriz, y por tanto nos est a proporcionando de forma indirecta la soluci on de
un sistema.
1 >>> from sympy import Matrix
2 >>> a=Matrix ([[2,1,1,1],[1,2,1,2],[1,1,2,3]])
3 >>> a.rref()
4 ([1, 0, 0, -1/2]
5 [0, 1, 0, 1/2]
6 [0, 0, 1, 3/2], [0, 1, 2])
corresponde a

2 1 1 1
1 2 1 2
1 1 2 3

1 0 0
1
2
0 1 0
1
2
0 0 1
3
2

Si miramos la ultima columna de la matriz resultante, esta es precisamente la


soluci on del sistema. Como ya comentamos, rref() realiza una reducci on tipo Gauss,
hasta obtener una matriz diagonal, con unos en la diagonal (en este caso, la matriz
identidad). Luego el segundo miembro del sistema (la ultima columna) resulta la
soluci on (vease el Ejemplo 2.10).
La factorizaci on LU de un matriz tambien es posible, aunque no est a denida en
NumPy, sino en un m odulo habitual para el c alculo cientco conocido como SciPy.
11
1 >>> from numpy import matrix
2 >>> from scipy import linalg
3 >>> a=matrix (2. 1 1; 1 2 1 ; 1 1 2 )
11
www.scipy.org
3.4 C alculo con Python 3.4 C alculo con Python 95
4 >>> p,l,u=linalg.lu(a)
5 >>> p
6 array ([[ 1., 0., 0.],
7 [ 0., 1., 0.],
8 [ 0., 0., 1.]])
9 >>> l
10 array ([[ 1. , 0. , 0. ],
11 [ 0.5 , 1. , 0. ],
12 [ 0.5 , 0.33333333 , 1. ]])
13 >>> u
14 array ([[ 2. , 1. , 1. ],
15 [ 0. , 1.5 , 0.5 ],
16 [ 0. , 0. , 1.33333333]])
es decir,

2 1 1
1 2 1
1 1 2

1 0 0
1
2
1 0
1
2
1
3
1

2 1 1
0
3
2
1
2
0 0
4
3

Observese el tipo de llamada (lnea 4): la funci on lu proporciona tres resultados


(las matrices P, L y U, por ese orden), que son almacenadas en las variables p, l y u,
que, como ya hemos visto, corresponden a la matriz de permutaci on P y las matrices
L y U que verican PA = LU. N otese que en este caso P es la matriz identidad.
Si por el contrario escogemos el m odulo SymPy:
1 >>> from sympy import Matrix
2 >>> A=Matrix ([[0,3,2],[1,0,-3],[-2,1,-1]])
3 >>> l,u,p=A.LUdecomposition ()
4 >>> l
5 [ 1, 0, 0]
6 [ 0, 1, 0]
7 [-2, 1/3, 1]
8 >>> u
9 [1, 0, -3]
10 [0, 3, 2]
11 [0, 0, -23/3]
12 >>> p
13 [[1, 0]]
vemos que la llamada diere con respecto a la descomposici on LU de SciPy. En este
caso se obtienen L, U y P, en ese orden, teniendo en cuenta que P no viene dada en
forma de matriz, sino a traves de los ndices de las las que han permutado (en este
caso la primera con la segunda). En denitiva:

0 1 0
1 0 0
0 0 1

0 3 2
1 0 3
2 1 1

1 0 0
0 1 0
2
1
3
1

1 0 3
0 3 2
0 0
23
3

Por otra parte, NumPy tambien permite el c alculo del n umero de condici on de una
matriz:
96 Tema 3 Sistemas de ecuaciones lineales
1 >>> from numpy import matrix ,linalg
2 >>> a=matrix(2 3; 2+1e-7 3)
3 >>> a
4 matrix ([[ 2. , 3. ],
5 [ 2.0000001 , 3. ]])
6 >>> linalg.cond(a)
7 86666667.760877177
esto es,

2 3
2 + 10
7
3

86666667.76
indic andonos el mal condicionamiento de la matriz del Ejemplo 3.9.
Finalmente, veamos un peque no programa para realizar las iteraciones del metodo
de Jacobi mostrado en la seccion anterior. Con objeto de implementar el c odigo
eciente en Python hay que evitar, en la medida de lo posible, la aparici on de bucles,
pues estos ralentizan enormemente la ejecuci on de los programas. Para evitar bucles,
la mejor opci on es vectorizar las operaciones que involucran un arreglo o matriz,
pues estas se computan mucho m as r apidamente.
As pues, vamos a reinterpretar las operaciones del metodo de Jacobi del siguiente
modo. Si observamos el segundo miembro de (3.5) vemos que corresponde al producto
de los inversos de los elementos diagonales de la matriz A, por un parentesis que
corresponde a la diferencia entre b, menos el producto de la matriz A, sin los elementos
diagonales, por x.
Ve amoslo del siguiente modo: sea D la matriz diagonal, cuya diagonal es la misma
que la de la matriz A, y sea

A = AD. El sistema Ax = b se puede escribir como
(

A+D)x = b =Dx = b

Ax =x = D
1
b D
1

Ax
Observando el ultimo termino, vemos que corresponde exactamente con el segundo
miembro de (3.5). Por tanto, las iteraciones del metodo de Jacobi ahora son:
x
(k+1)
= D
1
b D
1

Ax
(k)
(3.8)
Denimos entonces una funcion en Python que, introducidas la matriz del sistema,
el segundo miembro, una aproximaci on inicial y el n umero de iteraciones a realizar,
devuelve el valor de la ultima iteraci on calculada:
1 from numpy import diagflat ,zeros ,linalg
2 from sys import exit
3 def jacobi(a,b,x0=None ,iter =10):
4
5 if a.shape [0]!=a.shape [1]:
6 exit(la matriz no es cuadrada )
7 elif (b.shape [1]!=1) or (b.shape [0]!=a.shape [0]):
8 exit(el segundo miembro no es correcto )
9 if x0 is None:
10 x0=zeros ((a.shape [0] ,1))
11 elif(b.shape!=x0.shape):
3.4 C alculo con Python 3.4 C alculo con Python 97
12 exit(dato inicial incorrecto )
13
14 d=diagflat(a.diagonal ())
15 if (linalg.det(d)==0):
16 exit(hay elementos diagonales nulos )
17 atd=d.I*(a-d)
18 c=d.I*b
19 for i in range(iter):
20 x=c-atd*x0
21 x0=x
22
23 return x0
Las dos primeras lneas realizan la importaci on de las funciones necesarias para el
programa. Destacamos en este c odigo la aparici on de la instrucci on exit() del m odulo
sys, que permite abandonar la ejecuci on del mismo. Dicha instruccion es usada entre
las lneas 58 en caso de que se cumpla alguna de las condiciones if expuestas. Estas
condiciones comprueban que los argumentos de entrada son correctos: en concreto, se
analiza si el dato a es una matriz cuadrada y si el dato b es una matriz columna con
la misma dimensi on que a. Si no se cumple alguna de estas condiciones la ejecuci on
del programa se detiene con la impresi on del mensaje correspondiente.
Otra novedad del c odigo es la aparici on de argumentos por defecto en la llamada a
la funci on (lnea 3). Puesto que es habitual que la aproximaci on inicial sea una matriz
de ceros, podemos omitir la aproximaci on inicial en la llamada a la funci on, y en ese
caso, el programa crea una aproximaci on inicial nula (lneas 910). En caso de que s se
haya introducido una aproximaci on inicial se comprueba que esta tiene las dimensiones
adecuadas.
La lnea 14 crea la matriz d correspondiente a la diagonal de la matriz del sistema.
Para ello se ha usado el atributo diagonal() con el que se obtiene una matriz la
correspondiente a la diagonal de la matriz a, y con la funci on diagflat se construye
una matriz diagonal, cuyos elementos diagonales son los de la matriz la usada como
argumento.
A continuaci on, en las lneas 17 y 18 se construyen los elementos para la iteraci on,
seg un hemos visto en (3.8). N otese tambien que comprobamos que la matriz d es
invertible calculando su determinante.
Llegados a este punto es interesante notar que, hasta el momento, no se han
realizado mas que peque nas comprobaciones y c alculos preparativos. Las iteraciones
del metodo de Jacobi se llevan a cabo en las lneas 1921. Observar tambien que
en cada iteraci on, actualizamos el valor de la aproximaci on, para poder calcular la
siguiente.
Para poder usar esta funci on precisamos los datos del sistema y cargarla pre-
viamente. Suponiendo que el c odigo anterior es guardado en un archivo de nombre
jaco.py, el siguiente c odigo muestra c omo resolver el Ejemplo 3.11
1 >>> from numpy import matrix
2 >>> from jaco import jacobi
3 >>> a=matrix (10 -1 2 0; -1 11 -1 3; 2 -1 10 -1; 0 3 -1 8)
4 >>> b=matrix (6; 25; -11; 15)
98 Tema 3 Sistemas de ecuaciones lineales
5 >>> jacobi(a,b)
6 matrix ([[ 1.0001186 ],
7 [ 1.99976795] ,
8 [ -0.99982814] ,
9 [ 0.99978598]])
En el Ejercicio 16 proponemos al lector la elaboraci on de un codigo similar para
el metodo de Gauss-Seidel.
3 5
APLICACI

ON: RESOLUCI

ON DE ECUACIONES DIFERENCIALES
Como hemos comentado anteriormente, los sistemas de ecuaciones lineales apare-
cen frecuentemente en muchas aplicaciones de las Matem aticas, y muy especialmente,
en la resoluci on de ecuaciones diferenciales. Aunque este es un tema que se escapa
de los conocimientos tpicos de los lectores a los que va dirigido este texto, creemos
importante mostrar c omo surgen sistemas de ecuaciones lineales con un gran n umero
de ecuaciones e inc ognitas a traves de un ejemplo sencillo.
No es nuestra intenci on entrar en profundidad en demasiados aspectos acerca de las
ecuaciones diferenciales; basta decir que se trata de ecuaciones en los que la inc ognita
es una funci on (y no simplemente un conjunto de valores), y que dicha funci on se
haya afectada bajo alguna operaci on que involucra la derivaci on. Un ejemplo tpico de
ecuaci on diferencial puede ser:
u

(x) = 0, x (0, 1)
Es decir, se tratara de buscar una funcion u denida en el intervalo (0, 1) de forma que
su segunda derivada sea cero, en cualquiera de sus puntos. Con unos conocimientos
b asicos de derivaci on podemos ver que cualquier funci on de la forma u(x) = ax + b,
para cualesquiera valores a y b, es una soluci on de dicha ecuaci on. Con objeto de
poder encontrar una unica soluci on de la ecuaci on, es habitual completarla con alguna
condici on adicional, como puede ser el valor de la funci on en los extremos del intervalo:
u(0) = 1, u(1) = 3
Con estas condiciones podemos determinar los valores de a y b resultando que a = 2 y
b = 1. As pues, la funci on que cumple la ecuaci on diferencial junto con las condiciones
en los extremos es la recta u(x) = 2x + 1.
Esta ecuaci on diferencial junto con las condiciones adicionales, denominadas con-
diciones de contorno, modelan, por ejemplo, la distribuci on de temperatura de una
varilla unidimensional de longitud 1 que no est a sometida a ninguna fuente de calor, y
en cuyos extremos existe una temperatura dada por los valores de las condiciones de
contorno. Si a nadimos una fuente de calor sobre la varilla, medida a traves de una fun-
ci on f(x), que se supone conocida, el modelo matem atico que nos proporciona c omo
se distribuye el calor en la varilla viene dado por:
u

(x) = f(x), x (0, 1)


u(0) = , u(1) =
(3.9)
donde y son las condiciones de contorno, que se suponen dadas.
3.5 Aplicaci on: resoluci on de ecuaciones diferenciales 3.5 Aplicaci on: resoluci on de ecuaciones diferenciales 99
Para ciertas funciones f es posible calcular analticamente la soluci on de esta
ecuaci on diferencial (integrando dos veces f), pero en general puede ser difcil, o
incluso imposible, encontrar una expresion explcita para u. En estos casos es necesario
acudir al An alisis Numerico. En primer lugar hemos de rebajar nuestra pretensi on de
encontrar la solucion como una funci on, con sus innitos valores en el intervalo (0, 1),
y buscar en su lugar un n umero nito de valores de la misma; esto es lo que se conoce
como discretizaci on.
La discretizaci on pasa por considerar un conjunto nito de puntos en el intervalo de
partida (0, 1). Lo m as habitual consiste en tomar una serie de puntos uniformemente
espaciados, que denominamos nodos. Para ello tomamos n N y h =
1
n+1
, el
denominado paso de dicretizaci on, y creamos los n + 2 puntos siguientes del intervalo
(0, 1):
x
i
= ih, 0 i n + 1
Observemos que x
0
= 0 < x
1
< x
2
< < x
n
< x
n+1
= 1. La intenci on es
encontrar los valores de la soluci on de (3.9) en estos nodos. Por ejemplo, ya sabemos
que u(x
0
) = y u(x
n+1
) = , y por tanto nos quedan por encontrar u(x
i
), 1 i n,
es decir, n valores que seran nuestras incognitas. Por otra parte, parece evidente pensar
que cuantos m as puntos consideremos en la discretizaci on mejor ser a la aproximaci on
de la soluci on que obtengamos.
El siguiente paso consiste en escribir la ecuaci on u

(x) = f(x) en funcion de esos


valores. La cuestion es c omo evaluar u

. Es conocido que el valor de la derivada en un


punto x se puede aproximar por cocientes incrementales del tipo:
u

(x)
u(x +t) u(x)
t

u(x t) u(x)
t

u(x +t) u(x t)
2t
y de forma similar se puede obtener una aproximaci on de la derivada segunda:
u

(x)
u(x +t) 2u(x) +u(x t)
t
2
Estas expresiones son m as precisas cuanto m as peque no es t. Si ponemos t = h en la
ultima expresi on y evaluamos en un nodo x
i
,
u

(x
i
)
u(x
i+1
) 2u(x
i
) +u(x
i1
)
h
2
debido a la denici on que hemos tomado de los nodos. Con objeto de simplicar la
notaci on pondremos u(x
i
) = u
i
, y de forma similar f(x
i
) = f
i
.
Lo que hacemos a continuaci on es sencillo: sustituimos la ecuaci on en x por la
evaluaci on de la misma en cada uno de los nodos obteniendo el siguiente problema
discreto:

u
i+1
2u
i
+u
i1
h
2
= f
i
, 1 i n (3.10)
Dado que u
0
= , u
n+1
= y f
i
, 1 i n son valores conocidos, estamos
ante un sistema lineal de n ecuaciones con n inc ognitas. Vemos por tanto c omo una
discretizaci on de una ecuaci on diferencial desemboca de forma bastante natural en la
resoluci on de un sistema lineal, que ser a tanto m as grande, cuanto mayor sea el valor
de n, lo que a su vez conducira a una mejor aproximaci on de los valores de la soluci on.
En este punto es preciso hacer alguna puntualizaci on: una discretizaci on de una
ecuaci on diferencial cualquiera no siempre conduce a un sistema lineal, y no siempre la
100 Tema 3 Sistemas de ecuaciones lineales
soluci on de un problema discreto proporciona una buena aproximacion del problema
original; el Analisis Numerico requiere prestar atencion a determinados aspectos que
quedan fuera de nuesto interes en este texto. En lo que respecta a este ejemplo, s es
posible probar que, para un buen n umero de funciones f, la discretizaci on realizada es
coherente con nuestra intuicion inicial; cuanto mayor es n, mejor es la aproximaci on
obtenida a la soluci on de la ecuaci on diferencial.
Prestemos ahora un poco de m as atenci on al sistema (3.10): si escribimos una a
una sus ecuaciones resulta,
u
0
+ 2u
1
u
2
= h
2
f
1
u
1
+ 2u
2
u
3
= h
2
f
2
.
.
.
.
.
.
.
.
.
u
n2
+ 2u
n1
u
n
= h
2
f
n1
u
n1
+ 2u
n
u
n+1
= h
2
f
n
que escribimos en forma matricial como
_
_
_
_
_
_
_
_
_
2 1 0 0 0 0
1 2 1 0 0 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0 0 0 0 2 1
0 0 0 0 1 2
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
u
1
u
2
.
.
.
u
n1
u
n
_
_
_
_
_
_
_
_
_
= h
2
_
_
_
_
_
_
_
_
_
f
1
+
f
2
.
.
.
f
n1
f
n
+
_
_
_
_
_
_
_
_
_
(3.11)
La matriz del sistema tiene propiedades interesantes. Es lo que se conoce como una
matriz vaca, esto es, con muchos ceros, que adem as tiene una estructura especial.
Adem as de ser simetrica, es una matriz banda, y m as concretamente tridiagonal. Este
tipo de matrices son frecuentes en la aproximaci on numerica de ecuaciones diferenciales
y ecuaciones en derivadas parciales, y dadas sus especiales caractersticas, reciben un
tratamiento numerico especial en el que no entraremos.
Para terminar, veamos como resolver un ejemplo con Python.
Ejemplo 3.12 Resolvamos numericamente la ecuaci on diferencial
u

(x) = 4
2
sen(2x), x (0, 1)
u(0) = u(1) = 0
Vamos a crear una funci on (al estilo de la funci on mandelplot del Tema 1) de tal
forma que, dado n el n umero de nodos, la funci on f y los valores de contorno y ,
proporcione la soluci on de (3.9).
1 #! /usr/bin/python
2
3 from numpy import pi,linspace ,sin ,diag ,ones ,linalg ,append
4 from matplotlib.pyplot import plot ,show ,grid ,axis
5
6 def calor(n, f, alfa , beta):
3.5 Aplicaci on: resoluci on de ecuaciones diferenciales 3.5 Aplicaci on: resoluci on de ecuaciones diferenciales 101
7
8 x=linspace (0.,1.,n+2)
9 h=1./(n+1)
10 fx=h**2*f(x[1:n+1])
11 fx[0]+= alfa
12 fx[n-1]+= beta
13 a=diag (2.* ones(n)) + diag (-1.* ones(n-1) ,1) + diag (-1.*
ones(n-1) ,-1)
14
15 u=linalg.solve(a,fx)
16 u=append(alfa ,u)
17 u=append(u,beta)
18
19 return u,x
20
21
22 f= lambda x: 4*pi**2* sin(2*pi*x)
23 n=40
24 alfa =0.
25 beta =0.
26
27 u,x=calor(n,f,alfa ,beta)
28
29 g=lambda x: sin(2*pi*x)
30
31 plot(x,u,k-,marker=*)
32 plot(x,g(x),r--)
33 grid(True)
34 axis ([0 ,1 , -1.2 ,1.2])
35 show()

Analicemos con detenimiento el c odigo. Tras la habitual importaci on de funciones


de los m odulos apropiados (n otese por ejemplo la importaci on de la constante pi o la
funci on seno desde Numpy), denimos la funci on calor, entre las lneas 619, que es
la que se encarga de resolver la ecuaci on diferencial.
En primer lugar creamos los nodos en el intervalo (0, 1) a traves de linspace.
Esta funci on crea un arreglo formado por n + 2 valores entre 0 y 1. A continuaci on
calculamos el paso de discretizaci on y en la lnea 10 construimos el segundo miembro
de (3.10). N otese que evaluamos la funci on dato del problema en los nodos de un solo
golpe, sin necesidad de usar un bucle, excluyendo los valores de los extremos pues no
son necesarios. En las lneas 11 y 12 recticamos el primer y el ultimo valor de este
arreglo seg un indica el segundo miembro de (3.11), y en la lnea 13 construimos la
matriz del sistema usando una combinaci on de la funci on diag.
Veamos esta construcci on con m as atenci on: diag(2.ones(n)) crea una matriz
diagonal cuya diagonal principal est a formada por 2.*ones(n), que corresponde a
un arreglo de dimensi on n formado por unos (esto es lo que hace ones(n)), y que
est a multiplicado por 2. Es decir, es una matriz diagonal con 2 en la diagonal. A esta
102 Tema 3 Sistemas de ecuaciones lineales
(a) n = 10 (b) n = 40
Figura 3.1: Solucion de la ecuacion del calor
matriz se le suma diag(-1.*ones(n-1),1); est a claro que es -1.*ones(n-1), mientras
que el segundo argumento de diag desplaza una diagonal hacia arriba el lugar donde
se sit uan, en este caso, los 1. Algo similar hace diag(-1.*ones(n-1),-1), pero en
lugar de desplazar hacia arriba, lo hace hacia abajo. Ahora es inmediato ver que la
suma de estos tres terminos es la matriz de (3.11).
Finalmente, la lnea 15 resuelve el sistema, mientras que las lneas 16 y 17 incor-
poran los valores en los extremos a la soluci on obtenida. En la lnea 19 se produce la
salida de la funci on, en la que devolvemos tanto la soluci on u como los nodos x, con
objeto de poder dibujarlos si es necesario.
La ejecuci on de la funcion se lleva a cabo entre las lneas 22 y 27. En la lnea 22
denimos la funci on dato del problema, en este caso, f(x) = 4
2
sen(2x). Si bien se
podra haber creado dicha funci on mediante
1 def f(x):
2 return 4*pi**2* sin (2*pi*x)
la funci on lambda simplica esta denici on. Entre las lneas 23 y 25 jamos el resto de
par ametros de nuestro problema, y en la lnea 27 llamamos a la funci on calor para
resolver el problema.
Con objeto de comprobar la precisi on del metodo empleado para resolver la
ecuaci on diferencial, hemos comparado la soluci on obtenida con la soluci on exacta,
que en este caso es g(x) = sen(2x). Para ello hemos dibujado ambas soluciones con
la funci on plot del m odulo matplotlib. En la Figura 3.1 se puede ver el resultado
para un par de valores de n distintos.
3.6 Ejercicios 3.6 Ejercicios 103
3 6
EJERCICIOS
1. Resolver los siguientes sistemas mediante el metodo de eliminacion de Gauss:
(a)
x
1
+x
2
+x
3
= 6
x
1
+ 2x
2
+ 2x
3
= 9
x
1
+ 2x
2
+ 3x
3
= 10
_

_
(b)
x
1
+ 2x
2
= 3
x
2
+x
3
= 1
3x
1
+x
2
+ 5x
3
= 0
_

_
2. Probar la Proposici on 3.1
3. Usar la Regla de Cramer para resolver los sistemas:
(a)
2x y z = 4
3x + 4y 2z = 11
3x 2y + 4z = 11
_

_
(b)
x +y + 2z = 1
2x y + 2z = 4
4x +y + 4z = 2
_

_
4. Utilizar el teorema de Rouche-Frobenius para realizar un estudio del n umero de
soluciones de los siguientes sistemas y resolverlos:
(a)
3x
1
+ 2x
2
+ 3x
3
+x
4
x
5
= 0
x
1
+ 2x
3
+x
5
= 3

(b)
2x
1
+x
2
= 5
x
1
x
2
= 1
x
1
+ 2x
2
= 0
_

_
(c)
x
1
+ 2x
2
x
3
= 1
x
2
+x
3
= 2
x
1
+ 3x
2
= 3
_

_
(d)
x
1
+x
3
x
4
= 5
x
2
+x
3
+x
4
= 2

5. Para que valores de m el sistema


2x y +z = 0
x +my z = 0
x +y +z = 0
_

_
tiene soluciones no triviales?
6. Estudiar el sistema:
4x + 2y +z = x
2x + 4y + 2z = y
2x + 4y + 8z = z
_

_
seg un los valores del par ametro .
7. Discutir la compatibilidad de los sistemas siguientes seg un los valores de los par ame-
tros m y n.
(a)
3x 7y = m
x +y = n
5x 13y = 5m2n
x + 2y = m+n 1
_

_
(b)
x my +z = 0
x +y z = 0
nx 2y 5z = 0
2x +y +z = 0
_

_
104 Tema 3 Sistemas de ecuaciones lineales
8. Decidir si las siguientes armaciones son verdaderas o falsas:
(a) Un sistema compatible indeterminado puede tener el mismo n umero de ecua-
ciones e inc ognitas.
(b) Un sistema de n+1 ecuaciones con n inc ognitas tal que el rango de su matriz
ampliada sea n + 1 puede ser indeterminado.
(c) Un sistema compatible determinado puede tener m as inc ognitas que ecuacio-
nes.
(d) Un sistema compatible determinado puede tener m as ecuaciones que inc ogni-
tas.
9. En los siguientes apartados se da un n umero x y una aproximacion x

. Encontrar
los errores absoluto y relativo en cada caso.
(a) x = 5; x

= 0.49 10
1
.
(b) x = 0.704645; x

= 0.70466 10
0
.
10. Resuelve el siguiente sistema mediante eliminaci on gaussiana con y sin pivoteo
parcial, redondeando a cuatro cifras signicativas. Despues encuentra la soluci on
exacta y calcula los errores relativos de los valores calculados:
2x
1
+
2
3
x
2
+
1
3
x
3
= 1
x
1
+ 2x
2
x
3
= 0
6x
1
+ 2x
2
+ 2x
3
= 2
_

_
11. Hallar la factorizacion LU de las siguientes matrices
(a)

1 1 1 2
1 2 1 3
1 3 2 1
2 2 1 1

(b)

1 1 1 0
1 2 1 2
1 1 5 2
0 2 2 6

(c)

1 2 1
2 4 0
0 1 1

12. Resolver los siguientes sistemas usando la factorizacion LU:


(a)
x y +z = 4
x + 2y z + 2t = 3
x y + 5z + 2t = 16
2y + 2z + 6t = 8
_

_
(b)
x +y = 5
y + 5z = 2
x + 2y z = 7
_

_
13. Demuestre que el sistema
x
1
+x
2
= 50
x
1
+ 1.026x
2
= 20
est a mal condicionado si se redondea a dos cifras signicativas. Cu al es el error
relativo cometido si lo comparamos con la soluci on exacta?
3.6 Ejercicios 3.6 Ejercicios 105
14. Obtener las tres primeras iteraciones del metodo de Jacobi para los siguientes
sistemas usando x
(0)
= 0:
(a)
3x
1
x
2
+x
3
= 1
3x
1
+ 6x
2
+ 2x
3
= 0
3x
1
+ 3x
2
+ 7x
3
= 4
_

_
(b)
10x
1
x
2
= 9
x
1
+ 10x
2
2x
3
= 7
2x
2
+ 10x
3
= 6
_

_
15. Repetir el Ejercicio 14 empleando el metodo de Gauss-Seidel.
16. Considerese el sistema de ecuaciones Ax = b con A /
n
(K), x, b /
n1
(K).
Compr uebese que las iteraciones del metodo de Gauss-Seidel (3.7) equivalen a
realizar las iteraciones
x
(k+1)
= c Mx
(k)
con c = (D L)
1
b y M = (D L)
1
U, donde D, L y U son, respectivamente,
una matriz diagonal, cuya diagonal corresponde a la diagonal de A, una matriz
triangular inferior que corresponde a la parte triangular inferior de la matriz A, y
una matriz triangular superior que coincide con la parte triangular superior de A,
de tal modo que A = D +L +U.
17. Elaborar un programa en Python para resolver un sistema de ecuaciones usando el
metodo de Gauss-Seidel.
4 Espacios vectoriales
Los espacios vectoriales
1
son probablemente las estructuras matem aticas m as
comunes que podemos encontrar. Todos los fen omenos calicados como lineales en
multitud de contextos est an vinculados de alg un modo a un espacio vectorial, lo que da
una idea de su importancia. Por otra parte, son estructuras muy sencillas que entra nan
una interesante diversidad de propiedades, algunas de las cuales veremos en este tema.
Posiblemente el lector habr a manejado con anterioridad el concepto de vector,
bien sea como elemento geometrico para determinar direcciones, o bien como un
objeto que permite representar determinadas magnitudes fsicas como la velocidad o
la fuerza. En estos casos, el vector se representa como una echa que determina unas
caractersticas propias como son su m odulo, direcci on y sentido.
2
Esta representacion
es util para visualizar ciertos conceptos y propiedades, pero es completamente
inadecuada cuando tratamos con otro tipo de objetos que tambien son vectores.
4 1
LA ESTRUCTURA DE ESPACIO VECTORIAL
Con objeto de poder tratar cualquier tipo de vector con independencia de su
naturaleza, usando simplemente las propiedades intrnsecas que poseen debido a su
pertenencia a un espacio vectorial, hemos de hacer un esfuerzo en tratar todos estos
conceptos de forma abstracta; la denici on de espacio vectorial es una buena muestra
de ello. Emplazamos al lector para que trate de entender el signicado de la denici on
a traves de los ejemplos que le siguen.
Denici on 4.1 Un conjunto V se dice que es un espacio vectorial sobre el cuerpo
K (o un abreviadamente un K-espacio vectorial) si existen en el las siguientes
operaciones:
una operaci on interna (suma):
+ : V V V
(x, y) x +y
1
El origen del concepto est a vinculado a los trabajos de matematicos del s. XVII en geo-
metra analtica, matrices y sistemas de ecuaciones lineales, aunque la formulaci on axiomatica
actual se debe al matematico italiano Giuseppe Peano a nales del s. XIX, que haba estudiado
profundamente la obra del aleman Hermann Grassmann de mediados del mismo siglo, en el
que de manera no formal, se establecen las ideas principales de lo que hoy conocemos como

Algebra Lineal.
2
El concepto de segmento orientado o bipoint se debe al italiano Giusto Bellavitis en el
s. XIX, aunque el nombre de vector fue introducido por el irlandes William Rowan Hamilton.
107
108 Tema 4 Espacios vectoriales
y una operaci on externa (producto por escalar):
: KV V
(, x) x
vericando:
(i) u +v = v +u
(ii) u + (v +w) = (u +v) +w
(iii) u +0 = 0 +u = u
(iv) u + (u) = 0
(v) 1 u = u
(vi) ( u) = () u
(vii) ( +) u = u + u
(viii) (u +v) = u + v
Observese que la denici on necesita de la existencia de un determinado cuerpo K
(nosotros usaremos R o C) y en funci on de este puede variar la estructura del espacio.
Si K = R se llama espacio vectorial real y si K = C se dice espacio vectorial complejo.
Por simplicidad hablaremos simplemente de espacio vectorial (en adelante e.v.) sin
hacer menci on al cuerpo, siendo el contexto en el que trabajemos el que determine el
cuerpo a usar (de forma generica K).
Como se puede observar, la estructura de e.v. solo precisa de la existencia de un
par de operaciones, y de que estas satisfagan una cuantas propiedades que imaginamos
que el lector puede claramente identicar. A traves de los ejemplos que siguen a
continuaci on nos daremos cuenta de que practicamente cualquier conjunto en el que
se puedan realizar operaciones numericas tiene estructura de e.v.
A los elementos de un e.v. se les denomina vectores.
3
Los denotaremos por letras
en negrilla, u, v,. . . El punto correspondiente al producto por escalares ser a habitual-
mente omitido.
Ejemplo 4.1
(i) R
n
es un e.v. (real) con las operaciones siguientes:
(x
1
, . . . , x
n
) + (y
1
, . . . , y
n
) = (x
1
+y
1
, . . . , x
n
+y
n
)
(x
1
, . . . , x
n
) = (x
1
, . . . , x
n
)
En particular, R (para n = 1), es un espacio vectorial sobre s mismo. Sin embargo, si
el cuerpo escogido es C, en lugar de R, entonces R
n
pierde la estructura de e.v., pues
la operaci on producto por escalar de un elemento de R
n
con un n umero complejo no
resulta, en general, un elemento de R
n
.
(ii) /
mn
(K) es un e.v.sobre K con las operaciones suma y producto por escalar
dadas en la Denici on 2.5 (veanse las Proposiciones 2.1 y 2.2).
3
Insistimos en el hecho de que, a partir de ahora, cualquier elemento de un e.v. es un vector.
4.1 La estructura de espacio vectorial 4.1 La estructura de espacio vectorial 109
(iii) R

= |(a
n
)

n=1
: sucesiones reales es un e.v. con las operaciones
(a
n
)

n=1
+ (b
n
)

n=1
= (a
n
+b
n
)

n=1
(a
n
)

n=1
= (a
n
)

n=1
(iv) P
n
R
[x] = |a
0
+ a
1
x + + a
n
x
n
: a
i
R, es decir el conjunto de polinomios
con coecientes reales de grado menor o igual que n, en la variable x, es un e.v. con
la suma y el producto habituales.
(v) c([a, b]) = |f : [a, b] R : f continua tambien es e.v. con la suma y
producto habituales entre funciones.
(vi) C es un C-espacio vectorial, y tambien es un R-espacio vectorial, pero la
estructura de ambos espacios es distinta, como se ver a posteriormente.

N otese que adem as de los tpicos espacios R


n
hay una multitud de espacios
vectoriales de naturaleza bien distinta formados por elementos de los m as diverso
(funciones, polinomios, matrices, sucesiones, etc.). Lo m as destacado del hecho de que
estos conjuntos sean espacios vectoriales es que las propiedades que vamos a tratar en
este tema y los siguientes son aplicables a la estructura de estos espacios, y por tanto
funcionar an en todos ellos con independencia del tipo de conjunto con el que tratemos.
Es por ello la necesidad de abordar de manera abstracta estos conceptos.
En contraste, veamos algunos conjuntos que no son espacios vectoriales.
110 Tema 4 Espacios vectoriales
Ejemplo 4.2
(i) T
n
R
[x] = |a
0
+ a
1
x + + a
n
x
n
: a
i
R, a
n
,= 0, es decir, el conjunto de
polinomios con coecientes reales de grado exactamente n en la variable x, no es un
e.v. puesto que el producto del escalar 0 por cualquier polinomio de grado exactamente
n nos proporciona el polinomio nulo, que ya no tiene grado exactamente n. Es decir,
el producto por escalar con un elemento del conjunto no proporciona elementos del
mismo conjunto, lo que lleva a que la dicha operaci on no este correctamente denida
en este conjunto.
(ii) /

2
(R) = |A /
2
(R) : det(A) = 0, no es un espacio vectorial puesto que
las matrices

1 0
0 0

0 0
0 1

pertenecen a dicho conjunto, pero no as su suma.


(iii) R

l
= |(a
n
)

n=1
: sucesiones reales con lmite l. Se propone al lector encon-
trar la causa. Existe alg un valor de l para el cual este conjunto s es un e.v.?
Quiz as estos ejemplos lleven a confusion en el lector, pues todos ellos son subcon-
juntos de conjuntos mayores que s son espacios vectoriales. Pero ah est a la clave de
la comprension de una estructura matem atica: esta es una propiedad del conjunto, no
de algunos de sus elementos.

A continuaci on probaremos algunas propiedades simples que satisfacen los e.v.


Proposici on 4.1 Sea V un e.v. Se verican las siguientes propiedades:
(i) El elemento neutro de un e.v. es unico.
(ii) El elemento opuesto de un e.v. es unico.
(iii) 0 u = 0, u V .
(iv) El elemento opuesto de u es (1) u.
(v) 0 = 0, K.
Demostraci on:
Si bien la demostraci on de estas propiedades es muy sencilla, el lector puede
encontrarse con algunas dicultades en su comprensi on, principalmente por no estar
familiarizado con la abstracci on matem atica precisa para llevarlas a cabo. En cualquier
caso, es cuesti on de pr actica conseguir entender los procedimientos habituales de
demostraci on.
(i) En muchas ocasiones, para probar la unicidad de un objeto matem atico, es
habitual suponer que existen dos de tales objetos, y deducir, usando sus propiedades,
que en realidad son iguales. De lo que se sigue que el objeto es unico.

Este es el metodo que empleamos aqu: si 0


1
y 0
2
son dos elementos neutros, entonces,
por la propiedad de neutralidad
0
1
+0
2
= 0
1
0
2
+0
1
= 0
2
=0
1
+0
2
= 0
2
+0
1
= 0
1
= 0
2
4.2 Independencia lineal 4.2 Independencia lineal 111
(ii) Usamos la misma tecnica que en el apartado anterior: si v
1
y v
2
son dos
elementos opuestos de u, entonces
(u +v
1
) +v
2
= (v
2
+u) +v
1
= 0 +v
1
= v
1
(u +v
2
) +v
1
= (u +v
1
) +v
2
= 0 +v
2
= v
2
y como (u +v
1
) +v
2
= (u +v
2
) +v
1
, se tiene que v
1
= v
2
.
(iii) u = 1 u = (0 +1) u = 0 u +1 u = 0 u +u. N otese que toda esta cadena
de igualdades se deduce de las propiedades que denen la estructura de e.v.
Como consecuencia de lo anterior u = u + 0 u, luego 0 u es el elemento neutro, es
decir, 0.
(iv) u + (1) u = (1 + (1)) u = 0 u = 0, de donde se deduce que (1) u es
el opuesto de u.
(v) 0 = (0 +0) = 0 + 0, luego 0 = 0, y esto es v alido K.
N otese que el elemento nulo del e.v. es denotado genericamente como 0, pero este
depende del tipo de espacio en el que nos encontremos. Por ejemplo, en R
n
, este
elemento es el (0, . . . , 0), en c([a, b]) ser a la funci on nula, f(x) = 0, y en las matrices,
la matriz nula.
4 2
INDEPENDENCIA LINEAL
Denici on 4.2 Sea V un e.v. y sean v, v
1
, . . . , v
n
vectores de V . Se dice que v es
combinaci on lineal (o que depende linealmente) de v
1
, . . . , v
n
, si existen
1
, . . . ,
n

K tales que
v =
1
v
1
+ +
n
v
n
Se dira combinacion lineal no nula si alg un
i
,= 0.
Sin duda alguna, una de las principales ventajas del

Algebra Lineal es su simpli-
cidad, debido precisamente a que las operaciones que podemos llevar a cabo con los
vectores se reducen esencialmente a combinaciones lineales entre ellos. Como veremos,
este concepto nos acompa nara durante el resto de temas.
4
Proposici on 4.2
(i) El vector nulo es combinaci on lineal de cualquier conjunto de vectores.
(ii) Un vector cualquiera v siempre es combinaci on lineal de cualquier
conjunto de vectores que contenga al propio v.
4
Los conceptos de combinacion lineal, independencia y muchos otros que se veran en este
tema aparecen en la obra central de Grassmann Die Lineale Ausdehnungslehre, ein neuer
Zweig der Mathematik en 1844, aunque algunos de ellos solo de manera implcita. No es
hasta 1910 cuando el matem atico aleman Ernst Steinitz ofrece una presentacion rigurosa y
practicamente denitiva de estos conceptos.
112 Tema 4 Espacios vectoriales
La demostraci on es muy sencilla: se trata de escribir el vector nulo en el primer caso,
o el vector v en el segundo, como combinaci on lineal de cualesquiera otros vectores.
Se le ocurre al lector c omo hacerlo?
Denici on 4.3 Se dice que los vectores v
1
, . . . , v
n
son linealmente dependientes
(l.d.) si podemos escribir el vector 0 como combinacion lineal no nula de ellos. Dicho
de otro modo, si existen escalares
1
, . . . ,
n
K no todos nulos tales que
0 =
1
v
1
+ +
n
v
n
En caso contrario se dir a que los vectores son linealmente independientes (l.i.), lo que
ocurrira si cualquier combinaci on lineal de los vectores v
i
igualada al vector nulo,
implica que todos los escalares deben ser nulos, es decir,
0 =
1
v
1
+ +
n
v
n
=
1
= =
n
= 0
Probablemente el lector estar a acostumbrado a entender la independencia lineal
en un sentido geometrico (por ejemplo en R
2
, dos vectores son independientes si no
son paralelos). Sin embargo el concepto se hace m as difcil de entender si trabajamos
con otro tipo de espacios. La siguiente proposici on nos permite entender la denici on
anterior a traves de una serie de propiedades de las que cabe destacar (i), la cual
expresa a la perfecci on el signicado de la dependencia lineal de vectores.
Proposici on 4.3
(i) Si v
1
, . . . , v
n
son vectores linealmente dependientes, existe alg un v
j
que es combinacion lineal de los dem as.
(ii) Todo conjunto nito de vectores entre los cuales se encuentre el vector
0 es linealmente dependiente.
(iii) Todo conjunto nito de vectores linealmente independientes no puede
contener un subconjunto propio linealmente dependiente.
El lector queda invitado a realizar esta demostraci on.
El siguiente resultado nos proporciona un metodo sencillo para detectar la de-
pendencia o independencia de vectores de K
n
(y como luego veremos, tambien se
podr a usar en otros espacios).
Teorema 4.1
Sea A /
mn
(K) con rango(A) = r. Entonces existen r las (o columnas) de A
linealmente independientes, esto es, hay r vectores de K
n
correspondientes a sus las
(o de K
m
correspondientes a sus columnas) linealmente independientes, de manera
que el resto se expresa como combinaci on lineal de estas.
Demostraci on:
4.2 Independencia lineal 4.2 Independencia lineal 113
Consideremos A = (a
ij
) una matriz de rango r. Para simplicar la notaci on
supongamos que un menor de orden r no nulo se obtiene con las primeras r las
y columnas,
5
es decir,

a
11
a
1r
.
.
.
.
.
.
.
.
.
a
r1
a
rr

,= 0 (4.1)
Dividiremos la demostraci on en dos pasos.
(i) Probemos en primer lugar que los vectores de K
n
correspondientes a las r
primeras las de A, es decir,
a
1
= (a
11
, . . . , a
1n
), . . . , a
r
= (a
r1
, . . . , a
rn
)
son l.i.
Procederemos por reducci on al absurdo. Supongamos que dicho conjunto de vectores
es l.d. Por (i) de la Proposicion 4.3 debe existir uno de ellos que sea combinaci on lineal
(no nula) de los restantes. Supongamos que es el a
j
. Entonces,
a
j
=
1
a
1
+ +
j1
a
j1
+
j+1
a
j+1
+ +
r
a
r
Realicemos ahora la siguiente operaci on en el menor b asico dado en (4.1)
F
j

1
F
1

j1
F
j1

j+1
F
j+1

r
F
r
Puesto que las las del menor coinciden con los vectores a
i
, obtenemos que la la
j-esima del menor es nula, y por tanto su determinante es cero, lo que es una
contradicci on con nuestra hipotesis inicial, y por tanto los vectores son l.i.
(ii) Veamos que el resto de las depende linealmente de las r primeras. Conside-
remos k y l tales que r < k m, 1 l n, y el menor basico de (4.1) al que orlamos
con la la k-esima y la columna l-esima, esto es

a
11
a
1r
a
1l
.
.
.
.
.
.
.
.
.
.
.
.
a
r1
a
rr
a
rl
a
k1
a
kr
a
kl

Esta claro que si l r el determinante es nulo pues tendra dos columnas iguales; y si
l > r, entonces correspondera a un menor de orden r +1, que tambien es nulo gracias
a la hip otesis inicial (esto es, rango(A) = r).
Desarrollemos ahora este determinante por su ultima columna. Tendremos
0 = (1)
r+2
a
1l
[A
1
[ + +a
kl
[A
r+1
[
Ahora bien, observemos que los A
i
son siempre iguales, con independencia del l
escogido, y que ademas [A
r+1
[ ,= 0. Por tanto, para cada l = 1, . . . , n, podemos escribir
(despejando a
kl
)
a
kl
= (1)
r+1
a
1l
[A
1
[
[A
r+1
[
+ +a
rl
[A
r
[
[A
r+1
[
5
Esto no supone restriccion alguna puesto que sabemos que el rango de una matriz no se
altera por intercambio de las y/o columnas.
114 Tema 4 Espacios vectoriales
pero esto es lo mismo que
a
k1
=
1
a
11
+ +
r
a
r1
.
.
.
a
kn
=
1
a
1n
+ +
r
a
rn
_

_
=a
k
es comb. lineal de a
1
, . . . , a
r
y esto es cierto para cada k, r < k n.
Un argumento similar se emplea para la demostraci on por columnas.
Nota 4.1 Como consecuencia de este resultado podemos probar ahora la suciencia
en el Teorema de Rouche-Frobenius (Teorema 3.2).
Si rango(

A) = rango(A), eso signica, en virtud del Teorema 4.1, que la ultima
columna de la matriz

A, es decir el vector b, es combinaci on lineal de las n primeras
columnas de A

a
11
.
.
.
a
m1

, . . . ,

a
1n
.
.
.
a
mn

Esto es, existen escalares x


1
, . . . , x
n
K tales que

b
1
.
.
.
b
m

= x
1

a
11
.
.
.
a
m1

+ +x
n

a
1n
.
.
.
a
mn

es decir,
b
1
= a
11
x
1
+ +a
1n
x
n
.
.
.
b
m
= a
m1
x
1
+ +a
mn
x
n
_

_
luego el sistema es compatible.
Ejemplo 4.3
(i) Estudiar la dependencia o independencia lineal de los vectores de R
3
: v
1
=
(1, 1, 3), v
2
= (0, 1, 2) y v
3
= (1, 2, 5).
Como hemos visto, basta estudiar el rango de la matriz cuyas las (o columnas)
corresponden a las coordenadas de los vectores dados, i.e., nos preguntamos por el
rango de la matriz

1 1 3
0 1 2
1 2 5

Como

1 1
0 1

,= 0, y

1 1 3
0 1 2
1 2 5

= 0,
4.3 Bases y dimensi on de un espacio vectorial 4.3 Bases y dimensi on de un espacio vectorial 115
los vectores v
1
y v
2
son linealmente independientes y el vector v
3
es combinaci on
lineal de ellos.
N otese que tambien se tiene que los vectores v
2
y v
3
son independientes (y v
2
es
combinaci on de ellos), pues la matriz formada por las dos ultimas las tambien tiene
rango dos.
(ii) Comprobar que el conjunto de vectores de P
n
R
[x], |1, x, . . . , x
n
, es linealmente
independiente.
N otese que en este caso no podemos construir matriz alguna, por lo que es preciso acu-
dir a la denici on de independencia lineal.
6
Es decir, si consideramos una combinaci on
lineal de estos vectores igualada al vector nulo, debemos deducir que los escalares son
todos nulos. En efecto,

0
+
1
x + +
n
x
n
= 0
es una igualdad entre polinomios (no una ecuaci on en x!, pues el vector nulo de los
polinomios es el polinomio cero). La unica posibilidad de que estos dos polinomios
sean iguales es que sus coecientes lo sean, luego
0
=
1
= =
n
= 0.
(iii) Comprobar que el conjunto de vectores de c([0, 2]), |1, sen
2
x, cos
2
x, es l.d.
Sabemos por la f ormula fundamental de la trigonometra que cos
2
x + sen
2
x 1 = 0.
Luego tenemos una combinaci on lineal no nula de estos vectores igualada al vector
cero de este espacio (la funci on nula).

Denici on 4.4 Se denomina rango de un conjunto de vectores al mayor n umero de


ellos que son linealmente independientes.
Una primera consecuencia del Teorema 4.1 es la siguiente:
Teorema 4.2
En K
n
, todo conjunto de vectores formado por n + 1 vectores es linealmente depen-
diente.
La demostraci on es inmediata, pues el rango de una matriz formada por n + 1
vectores de K
n
es, como m aximo, n. Al no poder tener rango n + 1, los vectores no
pueden ser independientes.
4 3
BASES Y DIMENSI

ON DE UN ESPACIO VECTORIAL
El concepto de base es posiblemente el elemento m as importante con el que nos
encontramos en un espacio vectorial. Antes de llegar a el precisamos de la siguiente
denici on.
6
La situacion cambiara cuando introduzcamos el concepto de base.
116 Tema 4 Espacios vectoriales
Denici on 4.5 Sea V un e.v. Un conjunto de vectores v
1
, . . . , v
n
se dice sistema
generador (o conjunto generador) de V si cualquier vector u V se puede poner
como combinaci on lineal de ellos.
En cierto modo, podemos entender un sistema generador como la semilla o los
padres de un espacio vectorial, de tal modo que, realizando combinaciones lineales
con sus elementos somos capaces de construir cualquier otro vector del espacio al
completo.
Ejemplo 4.4
(i) En R
2
, el conjunto |(1, 0), (0, 1) es un sistema generador. Para comprobarlo
escogemos un vector arbitrario de R
2
, (x
1
, x
2
) y tratamos de escribirlo como combina-
ci on lineal de los anteriores. Esto es,
(x
1
, x
2
) = (1, 0) +(0, 1)
Un simple c alculo nos demuestra que = x
1
y = x
2
. Es decir, dado cualquier vector
somos capaces de encontrar una combinaci on lineal de elementos de nuestro conjunto
que nos permiten obtener el vector dado.
(ii) El conjunto formado por (1, 0) y (2, 0) no es sistema generador de R
2
, pues si
tratamos de repetir lo anterior
(x
1
, x
2
) = (1, 0) +(2, 0),
se obtiene que x
2
= 0. Es decir, no cualquier vector de R
2
es combinaci on lineal de
los anteriores (lo son s olo aquellos vectores cuya segunda componente sea cero, y por
tanto no podemos generar todo el espacio).

El concepto de sistema generador tiene una enorme trascendencia, pues nos va a


permitir estudiar las propiedades de un espacio mirando s olo a sus generadores. Sin
embargo adolece de un peque no problema que se muestra el siguiente resultado.
Lema 4.4 Sea V un e.v. con dimV = n. Sea S un sistema generador de V . Si
S = S
1
S
2
, con S
1
y S
2
conjuntos disjuntos
7
tales que los elementos de S
2
se
escriben como combinaci on lineal de los elementos de S
1
, entonces S
1
es sistema
generador.
Demostracion:
Consideremos S = |u
1
, . . . , u
l
, u
l+1
, . . . , u
m
, donde
S
1
= |u
1
, . . . , u
l
, S
2
= |u
l+1
, . . . , u
m

7
Esto es, S
1
S
2
= .
4.3 Bases y dimensi on de un espacio vectorial 4.3 Bases y dimensi on de un espacio vectorial 117
Por hip otesis, cada u
j
, l + 1 j m es combinaci on lineal de los vectores de S
1
, es
decir,
u
j
=
l

i=1
x
ij
u
i
Por otra parte, como S es sistema generador, dado u V cualquiera, u es combinaci on
lineal de los u
i
, 1 i m. Entonces,
u =
m

j=1

j
u
j
=
l

j=1

j
u
j
+
m

j=l+1

j
u
j
=
l

j=1

j
u
j
+
m

j=l+1

j
_
l

i=1
x
ij
u
i
_
=
l

j=1

j
u
j
+
l

i=1
_
m

j=l+1

j
x
ij
_
u
i
=
l

k=1
_

k
+
m

j=l+1

k
x
kj
_
u
k
es decir, u es combinacion lineal de los elementos de S
1
. Como el razonamiento se ha
hecho para un vector u arbitrario, signica que es cierto para todos, y por tanto S
1
es
sistema generador.
Lo que prueba este resultado es que si tenemos un conjunto que es sistema
generador en el cual existe uno o m as vectores que son combinacion lineal de otros
vectores del conjunto, podemos suprimirlos y seguimos teniendo un sistema generador.
Dicho de otro modo, en los sistemas generadores podemos encontrarnos vectores que
no son necesarios para generar el espacio, pues si los eliminamos, seguimos teniendo un
sistema generador. Esto plantea un inconveniente a la hora de trabajar con un sistema
generador, pues puede haber vectores en el mismo que sean innecesarios. Para resolver
este peque no problema aparece el concepto de base.
Denici on 4.6 Sea V un e.v. Un conjunto nito de vectores |e
1
, . . . e
n
es una base
de V si es un conjunto linealmente independiente y sistema generador.
A la vista de lo comentado anteriormente, para evitar los problemas de exceso de
vectores en los sistemas generadores lo que hacemos simplemente es quedarnos con
aquellos que sean linealmente independientes (recuerdese (iii) de la Proposicion 4.3).
Ejemplo 4.5
(i) En R
n
, el conjunto |e
1
, . . . , e
n
donde e
i
= (0, . . . , 1, . . . , 0) (un 1 en la
componente i) es una base de R
n
.
En efecto, para ver que es l.i. s olo debemos estudiar el rango de la matriz formada
por los vectores. Es inmediato comprobar que dicha matriz es la identidad, que tiene
rango n, por lo que el conjunto es l.i.
Para ver que es sistema generador tratamos de escribir un vector arbitrario de R
n
como combinaci on lineal de ellos:
(x
1
, . . . , x
n
) =
1
e
1
+ +
n
e
n
Un simple c alculo nos lleva a que x
i
=
i
, i. Luego este conjunto tambien es sistema
generador.
118 Tema 4 Espacios vectoriales
(ii) El conjunto |1, x, . . . , x
n
es una base de P
n
R
[x].
(iii) El conjunto

1 0
0 0

0 1
0 0

0 0
1 0

0 0
0 1

es una base de /
2
(R).
Se propone al lector que demuestre que los dos ultimos conjuntos son base de sus
respectivos espacios.

Nota 4.2 Todas las bases anteriores son denominadas bases can onicas, por la especial
simplicidad con la que generan el espacio. Observese la facilidad en la comprobaci on
de que cada uno de ellos es sistema generador.
Teorema 4.3
Sea B = |u
1
, . . . u
n
una base de un e.v. V . Entonces u V existen unos unicos

1
, . . . ,
n
K tales que
u =
1
u
1
+ +
n
u
n
Demostraci on:
Puesto que B es una base, en particular es un sistema generador, y por tanto la
existencia de los
i
est a trivialmente garantizada.
Veamos que son unicos. Para ello supongamos que existen
i
,
i
, 1 i n tales
que
u =
1
u
1
+ +
n
u
n
u =
1
u
1
+ +
n
u
n
Restando ambas expresiones,
0 = (
1

1
)u
1
+ + (
n

n
)u
n
Esto es una combinacion lineal de los elementos de B igualada al vector cero. Como el
conjunto B es l.i., se tiene que

1
= =
n

n
= 0
Luego
i
=
i
i, de donde se tiene la unicidad.
A los escalares
1
, . . . ,
n
se les denominan coordenadas de u en la base B, lo que
notaremos por
u
B
= (
1
, . . . ,
n
)
B
Cuando no haya posibilidad de confusi on omitiremos el subndice.
La trascendencia de este resultado es enorme, pues lo que nos asegura es que las
bases son sistemas generadores que generan el espacio de forma unica. Es decir, cada
vector tiene asociado un unico identicador (una especie de D.N.I.), que son sus
4.3 Bases y dimensi on de un espacio vectorial 4.3 Bases y dimensi on de un espacio vectorial 119
coordenadas, que corresponden a los escalares de la combinaci on lineal respecto de la
cual escribimos el vector.
Ejemplo 4.6
(i) Consideremos el vector (1, 2, 3) R
3
. Cu ales son sus coordenadas respecto
de la base can onica de R
3
, B
c
= |(1, 0, 0), (0, 1, 0), (0, 0, 1)? Bastar a observar que
(1, 2, 3) = 1 (1, 0, 0) + (2) (0, 1, 0) + 3 (0, 0, 1)
En general, las coordenadas de un vector x = (x
1
, . . . , x
n
) R
n
respecto de la base
can onica de este espacio son precisamente (x
1
, . . . , x
n
).
(ii) Cu ales son las coordenadas del vector (1, 1, 0) respecto de la base B =
|(2, 0, 1), (1, 1, 2), (0, 0, 1)? En este caso hemos de encontrar unos escalares
1
,
2
,
3
tales que
(1, 1, 0) =
1
(2, 0, 1) +
2
(1, 1, 2) +
3
(0, 0, 1)
_

_
2
1
+
2
= 1

2
= 1

1
+ 2
2

3
= 0
de donde se obtiene
1
= 1,
2
= 1,
3
= 1, es decir (1, 1, 0) = (1, 1, 1)
B
(iii) Cu ales son las coordenadas del polinomio 1 + 3x 2x
2
P
2
R
[x] respecto de
la base can onica |1, x, x
2
. Nuevamente escribimos
1 + 3x 2x
2
= 1 1 + 3 x + (2) x
2
resultando que las coordenadas son (1, 3, 2). N otese c omo los vectores de P
2
R
[x]
pueden identicarse con vectores de R
3
. Recprocamente, si nos dan un vector de
P
2
R
[x] cuyas coordenadas respecto de la base can onica son (1, 0, 2), en realidad nos
est an dando el polinomio 2x
2
1. Es fundamental resaltar la importancia del orden de
los vectores de una base. Si en lugar de usar la base can onica |1, x, x
2
estamos usando
la base |x
2
, x, 1 (que no es la misma!), entonces el vector (1, 0, 2) correspondera
al polinomio 2 x
2
.

Nota 4.3 Gracias al uso de coordenadas, estudiar la dependencia lineal de un conjunto


de vectores que no esten en K
n
resulta mas sencillo que lo que hicimos en (ii) del
Ejemplo 4.3. Por ejemplo, para ver si el conjunto |x
2
+ 1, 1 + x
3
, x P
3
R
[x]
es o no l.i., podemos simplemente escribir los vectores mediante sus coordenadas
respecto de la base can onica, resultando |(1, 0, 1, 0), (1, 0, 0, 1), (0, 1, 0, 0) y estudiar
el correspondiente rango de la matriz (como si fueran vectores en R
4
):
rango

1 0 1 0
1 0 0 1
0 1 0 0

= 3
lo que indica que son independientes.
120 Tema 4 Espacios vectoriales
Veamos a continuaci on algunos consecuencias interesantes del hecho de que existan
bases en un e.v.
Proposici on 4.5 Supongamos que el e.v. V posee una base formada por n elemen-
tos. Entonces, todo conjunto de m vectores, con m > n es l.d.
Demostraci on:
Sea u
1
, . . . u
n
una base de V . Sean x
1
, . . . , x
n
, x
n+1
, n + 1 vectores de V . Por el
teorema anterior, cada x
i
es combinaci on lineal unica de la base, luego
x
i
=
n

j=1
x
ij
u
j
, i = 1, . . . , n + 1 (4.2)
Veamos que estos n+1 vectores son l.d. Para ello consideramos una combinacion lineal
igualada al vector nulo:

1
x
1
+ +
n
x
n
+
n+1
x
n+1
= 0
Usando (4.2),

1
_
n

j=1
x
1j
u
j
_
+ +
n
_
n

j=1
x
nj
u
j
_
+
n+1
_
n

j=1
x
n+1,j
u
j
_
= 0
Agrupando terminos,
_
n+1

j=1

j
x
j1
_
u
1
+ +
_
n+1

j=1

j
x
jn
_
u
n
= 0
Como u
1
, . . . , u
n
forman base, son l.i., por tanto cada uno de los escalares de la anterior
combinaci on lineal es nulo, esto es

1
x
11
+ +
n
x
n1
+
n+1
x
n+1,1
= 0
.
.
.

1
x
1n
+ +
n
x
nn
+
n+1
x
n+1,n
= 0
_

_
Ahora bien, esto es un sistema homogeneo de n ecuaciones con n+1 incognitas (los
i
).
Como el rango de la matriz de los coecientes es estrictamente menor que el n umero de
inc ognitas, es un sistema compatible indeterminado; por tanto posee soluci on distinta
de la trivial. Es decir, existen
i
no todos nulos tales que se verica (4.2). Luego el
conjunto formado por x
1
, . . . , x
n
, x
n+1
es l.d.
Hemos probado por tanto, que cualquier conjunto de n + 1 vectores siempre es
l.d., luego si m > n, cualquier conjunto de m vectores tambien es l.d. (cf. (iii) de la
Proposicion 4.3).
Este resultado admite una prueba m as sencilla si usamos coordenadas respecto de
una base y el Teorema 4.1. Podra el lector llevarla a cabo?
Como consecuencia inmediata de este resultado, se tiene el siguiente:
4.3 Bases y dimensi on de un espacio vectorial 4.3 Bases y dimensi on de un espacio vectorial 121
Teorema 4.4
Todas las bases de un e.v. poseen el mismo n umero de elementos.
Denici on 4.7 Se llama dimensi on de un espacio vectorial V al n umero de elemen-
tos de cualquiera de sus bases, y se notar a por dim(V ).
Nota 4.4 Por convenio se considera que el espacio vectorial V = |0 tiene dimensi on
cero.
Ejemplo 4.7
(i) dim(P
n
R
[x]) = n + 1.
(ii) dim(K
n
) = n.
(iii) dim(/
mn
(K)) = m n.

Una vez que hemos establecido la importancia de las bases veamos c omo de una
forma sencilla podemos comprobar que un conjunto es base de un e.v.
Proposici on 4.6 Sea V es un e.v. de dimensi on n. Todo conjunto de n vectores l.i.
forma una base de V .
Demostraci on:
Puesto que v
1
, . . . , v
n
es un conjunto l.i. de V , para probar que es una base s olo
es necesario comprobar que se trata de un sistema generador.
Sea entonces u V . Por la Proposicion 4.5, el conjunto |v
1
, . . . , v
n
, u es l.d. Por
denici on de dependencia lineal existen
1
, . . . ,
n
,
n+1
no todos nulos tales que

1
v
1
+ +
n
v
n
+
n+1
u = 0
De todos ellos,
n+1
no puede ser nulo, pues si lo fuera, tendramos una combinaci on
de los v
i
igualada al vector cero, y como estos son l.i., todos los escalares tendran que
anularse. Al ser
n+1
,= 0, podemos escribir
u =

1

n+1
v
1


n

n+1
v
n
Es decir, hemos escrito un vector arbitrario u como combinaci on lineal de los v
i
, por
tanto son sistema generador, como queramos demostrar.
La consecuencia de este resultado es bien simple: para comprobar que un conjunto
es base s olo necesitamos que sea l.i. y que tenga tantos elementos como la dimensi on
del espacio en el que nos encontremos; autom aticamente ser a sistema generador y por
tanto base.
122 Tema 4 Espacios vectoriales
Para nalizar esta secci on veremos una serie de resultados que nos dicen que po-
demos hacer cuando tenemos conjuntos con m as o menos vectores que la dimensi on
del espacio.
Proposici on 4.7 (Ampliaci on de bases) Sea V un espacio vectorial de dimV =
n. Si |v
1
, . . . , v
k
con k < n, es un conjunto l.i. entonces existen n k vectores,
v
k+1
, . . . , v
n
, tales que el conjunto |v
1
, . . . , v
k
, v
k+1
, . . . , v
n
es una base de V .
Demostraci on:
Como k < n debe existir al menos un vector v
k+1
que sea l.i. con v
1
, . . . , v
k
(en caso contrario cualquier vector se escribira como combinaci on lineal de ellos, y
por tanto tendramos un conjunto l.i. que es s.g., es decir una base). Repetimos el
proceso a nadiendo un nuevo vector v
k+2
al conjunto l.i. |v
1
, . . . , v
k
, v
k+1
. El proceso
termina cuando juntemos n vectores, ya que tendramos n vectores l.i. en un espacio
de dimension n.
Ejemplo 4.8 Dado el conjunto de R
3
, (1, 0, 1), (2, 1, 1), ampliarlo hasta conseguir una
base de este espacio.
Comprobamos en primer lugar que son l.i. Para ello s olo es necesario estudiar el
rango de la matriz correspondiente
rango

1 0 1
2 1 1

= 2 pues

1 0
2 1

,= 0
Para ampliar a una base, precisamos 3 2 = 1 vector que sea l.i. con los anteriores,
es decir, tal que el rango de la matriz
rango

1 0 1
2 1 1

1

2

3

= 3
En este punto, es evidente que podemos tomar innitos vectores distintos que com-
pletan a una base. En tales casos conviene tomar vectores sencillos, que tengan un
gran n umero de ceros, Una posibilidad sera el vector (0, 0, 1). N otese que esta elecci on
se ha hecho en funci on de un menor de orden dos distinto de cero formado por los
vectores dados.

Proposici on 4.8 Si S es un sistema generador de un e.v. V de dimensi on n, entonces


existe S
1
un subconjunto de S que es base de V .
Demostraci on:
Sea u
1
S, u
1
,= 0 (siempre existira tal vector, a menos que V = |0, en cuyo
caso no hay nada que probar). Consideremos ahora u
2
S l.i. con u
1
(un tal elemento
4.4 Cambios de base 4.4 Cambios de base 123
siempre existe, pues en caso contrario el resto de elementos sera combinaci on lineal,
y por tanto u
1
ya sera sistema generador, y l.i., es decir, una base). Reiteramos
el procedimiento hasta obtener un conjunto de vectores de S l.i. Por el comentario
anterior, este conjunto sera una base de V .
El siguiente corolario resume los resultados anteriores:
Corolario 4.5
Si V es un e.v. con dimV = n, se tiene:
(i) Todo conjunto de n vectores l.i. es una base.
(ii) Todo conjunto con mas de n vectores es l.d.
(iii) Todo sistema generador tiene al menos n elementos.
(iv) Todo sistema generador de n elementos es una base.
Los resultados anteriores hacen referencia a las propiedades de las bases, pero
en ning un momento hemos establecido que tales bases existan en cualquier espacio
vectorial. De hecho, hemos de distinguir entre dos tipos de espacios, aquellos en los
que existen bases, que son los espacios de dimensi on nita, y espacios en los que no
existen bases, que son los espacios de dimension innita, que denimos a continuaci on.
Denici on 4.8 Un conjunto innito de vectores de un e.v. V es l.i. si cualquier
subconjunto suyo es l.i. Si existe un tal conjunto se dir a que V es de dimensi on
innita.
Ejemplo 4.9
(i) P
R
[x] = |polinomios con coecientes reales en la variable x es un espacio
vectorial de dimension innita. Basta comprobar que la familia
1, x, x
2
, . . . , x
n
, . . .
es l.i.
(ii) En c([0, 2]), la familia |sen(nx), cos(nx)
nN
es l.i., luego c([0, 2]) es un
espacio de dimensi on innita.

Nota 4.5 Es importante resaltar que en los espacios de dimension innita no existen
coordenadas, pues no hay bases.
4 4
CAMBIOS DE BASE
Si atendemos a (ii) del Ejemplo 4.6 vemos que un mismo vector tiene coordenadas
distintas respecto de diferentes bases. En esta secci on pretendemos relacionar las
124 Tema 4 Espacios vectoriales
coordenadas de un vector cuando usamos bases distintas. Para ello consideremos dos
bases de un e.v. V de dimension n:
B = |e
1
, . . . , e
n
, B

= |e

1
, . . . , e

Cada uno de los vectores de B

se puede escribir como combinaci on lineal de los vectores


de B de forma unica (cf. Teorema 4.3), es decir,
e

1
= a
11
e
1
+ +a
n1
e
n
.
.
.
e

n
= a
1n
e
1
+ +a
nn
e
n
_

_
i.e. e

j
=
n

i=1
a
ij
e
i
(4.3)
Con las coordenadas de cada uno de los vectores de B

construimos la matriz A
/
n
(K), dada por A = (a
ij
). Es importante observar c omo est a construida dicha
matriz: la columna j-esima de A corresponde a las coordenadas del vector
e

j
respecto de la base B. A esta matriz se le denomina matriz del cambio de base
de B

a B, y se notar a por M
B
B
o M(B

; B).
Que relaci on mantienen las coordenadas de un vector respecto de ambas bases?
Escribamos las coordenadas de un vector respecto de la base B por x
B
y sus coorde-
nadas respecto de B

por x
B
. Es decir,
x
B
=
n

i=1
x
i
e
i
, x
B
=
n

j=1
x

j
e

j
(4.4)
Usando (4.3),
x
B
=
n

j=1
x

i=1
a
ij
e
i

=
n

i=1
_
n

j=1
x

j
a
ij
_
e
i
Comparando el ultimo termino de la expresi on anterior con (4.4) (puesto que las
coordenadas son unicas), resulta que x
i
=
n

j=1
a
ij
x

j
. Si ahora recordamos la denici on
del producto de matrices, resulta que
x
B
= M
B
B
x
B
(4.5)
que son las denominadas ecuaciones del cambio de base de B

a B.
Nota 4.6 La notaci on de las ecuaciones del cambio de base puede ser un tanto confusa
pues estamos habituados a escribir los vectores x = (x
1
, . . . , x
n
) como una matriz la.
Sin embargo, la expresi on (4.5) solo tiene sentido cuando expresamos x
B
y x
B
como
vectores columna (para poder hacer correctamente la multiplicaci on matricial). En
todo lo que sigue, en cualquier operaci on que involucre la multiplicaci on matricial de
vectores consideraremos estos como matrices columna, de modo que cuando tengan
que ser multiplicados por las usaremos su traspuesta, es decir, x
T
. Cuando no haya
multiplicaciones, seguiremos escribiendolos por las.
4.4 Cambios de base 4.4 Cambios de base 125
Teorema 4.6
Con las notaciones anteriores, la matriz del cambio de base de B

a B es invertible y
su inversa es la matriz del cambio de base de B a B

.
Demostraci on:
Puesto que los vectores de B

son l.i., ya que forman base, si escribimos la matriz


de sus coordenadas respecto de la base B, esto es la matriz A, debemos tener que
rango(A) = n. Esto es, [A[ , = 0, y por tanto A es invertible.
Sea ahora A

= M
B

B
, con A

= (a

ij
), donde, por denici on,
e
j
=
n

i=1
a

ij
e

i
Usando (4.3) se tiene que
e
j
=
n

i=1
a

ij

k=1
a
ki
e
k

=
n

k=1

i=1
a

ij
a
ki

e
k
Como las coordenadas son unicas,
n

i=1
a
ki
a

ij
=
kj
, donde
kj
es el smbolo de
Kronecker.
Pero esta suma representa al elemento jk de la matriz AA

. Es decir, AA

= I
n
,
luego A

es la inversa de A.
Ejemplo 4.10 Consideremos la base canonica de R
3
, B
c
= |e
1
, e
2
, e
3
con
e
1
= (1, 0, 0), e
2
= (0, 1, 0), e
3
= (0, 0, 1),
y el conjunto B = |u
1
, u
2
, u
3
, con
u
1
= e
1
+e
3
, u
2
= e
2
, u
3
= e
2
+e
3
Para encontrar las ecuaciones del cambio de base de B a B
c
o viceversa, primero
tenemos que encontrar la relaci on entre los vectores de ambas bases. Dado que los
vectores de la base B est an escritos respecto de la base can onica, esto es,
u
1
= (1, 0, 1), u
2
= (0, 1, 0), u
3
= (0, 1, 1)
obtenemos de forma inmediata la matriz del cambio de B a B
c
, es decir,
M
B
c
B
=

1 0 0
0 1 1
1 0 1

Para encontrar las coordenadas del vector x = 3u


1
+ 2u
2
= (3, 2, 0)
B
en la base
can onica hacemos uso de las ecuaciones del cambio de base, esto es x
B
c
= M
B
c
B
x
B
.
126 Tema 4 Espacios vectoriales
As,
x
B
c
=

1 0 0
0 1 1
1 0 1

3
2
0

3
2
3

Si ahora tenemos un vector x = (2, 1, 3) respecto de la base can onica, c omo


calcular sus coordenadas respecto de la base B? En este caso podemos buscar escalares
tales que
(2, 1, 3) =
1
(1, 0, 1) +
2
(0, 1, 0) +
3
(0, 1, 1)
y resolver el sistema, tal y como hicimos en (ii) del Ejemplo 4.6; o bien usamos las
ecuaciones del cambio de base del siguiente modo:

1 0 0
0 1 1
1 0 1

x
B
=

2
1
3

y resolvemos el sistema, resultanto x = (2, 6, 5)


B
. N otese que el sistema anterior
equivale a
x
B
=

1 0 0
0 1 1
1 0 1

2
1
3

que corresponde al cambio de base inverso. Es decir, la matriz M


B
B
c
es (M
B
c
B
)
1

4 5
SUBESPACIOS VECTORIALES
La ultima seccion de este tema est a dedicada a los conjuntos que m as vamos a usar
de ahora en adelante.
Denici on 4.9 Sea V un e.v. sobre un cuerpo K y W V un subconjunto suyo.
Se dice que W es un subespacio vectorial (o variedad lineal) de V si W es un espacio
vectorial sobre K con las operaciones denidas en V .
La denici on de subespacio vectorial es un tanto confusa, pues en realidad no es
m as que un espacio vectorial que vive dentro de otro, que habitualmente denomina-
remos espacio ambiente. Puesto que las operaciones denidas en el espacio ambiente
satisfacen las propiedades oportunas para ser e.v. (vease la Denici on 4.1), la clave
para que un subconjunto W sea subespacio vectorial es que las operaciones se man-
tengan denidas dentro del conjunto, es decir, que la suma de vectores de W sea un
vector de W y que el producto de un escalar por un vector de W permanezca en W.
El siguiente resultado expresa justamente esto.
4.5 Subespacios vectoriales 4.5 Subespacios vectoriales 127
Proposici on 4.9 W es un subespacio vectorial si y s olo si u+v W, u, v W,
, K.
La demostracion es inmediata, y se propone como ejercicio al lector.
Ejemplo 4.11
(i) El conjunto |(x
1
, x
2
) R
2
: x
2
= 0 es un subespacio vectorial de R
2
.
(ii) El conjunto |(x
1
, x
2
) R
2
: x
2
= 1 no es subespacio vectorial de R
2
.
(iii) P
n
R
[x] es un subespacio vectorial de P
R
[x].
(iv) P
R
[x] es un subespacio vectorial de c(R).
(v) |0 es un subespacio vectorial de cualquier e.v.

Denici on 4.10 Sean u


1
, . . . , u
k
vectores de un e.v. V . Se dene el conjunto
W = L(u
1
, . . . , u
k
) =
_
k

i=1

i
u
i
:
i
K
_
es decir, el conjunto de todas las posibles combinaciones lineales que se pueden hacer
con los vectores dados. Este conjunto se denomina subespacio engendrado por u
1
,
. . . , u
k
y a tales vectores se les denomina sistema generador de W.
Proposici on 4.10 W = L(u
1
, . . . , u
k
) es un subespacio vectorial de V .
Demostraci on:
Para la prueba usaremos la Proposici on 4.9. Sean u, v W, y sean , K.
Veamos que u +v est an en W. En efecto,
u +v =
_
k

i=1

i
u
i
_
+
_
k

i=1

i
u
i
_
=
k

i=1
(
i
+
i
)u
i
W
N otese que denominamos sistema generador a un conjunto de vectores de V que
no es sistema generador de V , sino de un subespacio. Pero el nombre es consistente
con el signicado de sistema generador: un conjunto que genera el subespacio.
Ejemplo 4.12
(i) En R
3
, estudiar el espacio vectorial generado por los vectores u
1
= (1, 0, 1),
u
2
= (1, 1, 0) y u
3
= (1, 1, 2).
128 Tema 4 Espacios vectoriales
Puesto que estos tres vectores conforman un sistema generador de L = L(u
1
, u
2
, u
3
),
en primer lugar estudiamos la dependencia lineal entre los mismos. As,
rango

1 0 1
1 1 0
1 1 2

= 2 pues

1 0
1 1

,= 0 y

1 0 1
1 1 0
1 1 2

= 0
lo que signica que los vectores u
1
y u
2
son l.i y que u
3
es combinaci on lineal de
ellos. Es decir, u
1
y u
2
generan todo L, y puesto que son l.i. forman una base de
L. La dimensi on de L ser a por tanto 2 (el n umero de elementos de una base), y
L(u
1
, u
2
, u
3
) = L(u
1
, u
2
).
Es importante que el lector asimile correctamente estos conceptos que pueden ser un
tanto confusos al principio. Observese que el conjunto |u
1
, u
2
es base de L pero no
es base de R
3
(pues genera L, pero no R
3
). Podemos incluso usar coordenadas en L;
por ejemplo, el vector u
3
= 2u
1
+ u
2
, tiene coordenadas (2, 1)
L
respecto de la base
dada en L. Aunque pueda parecer extra no que s olo haya dos coordenadas, hemos de
darnos cuenta que el subespacio L es de dimensi on 2.
(ii) Sea ahora L = L(u
1
, u
2
, u
3
), con u
1
= (1, 0, 1), u
2
= (1, 1, 1) y u
3
= (0, 1, 2).
Nuevamente estudiamos el rango del conjunto de vectores dado,
rango

1 0 1
1 1 1
0 1 2

= 3
lo que indica que los tres vectores son l.i. Como estamos en R
3
, cuya dimensi on es 3,
estos vectores forman una base (recordad el Corolario 4.5). Es decir, este conjunto de
vectores es sistema generador de todo el espacio R
3
, luego L(u
1
, u
2
, u
3
) = R
3
.

Hemos visto como contruir subespacios a partir de un conjunto de vectores. El


siguiente resultado nos muestra otra forma habitual de denir subespacios.
Teorema 4.7
Sea A /
mn
(K), con rango(A) = r. El conjunto de soluciones del sistema
homogeneo Ax = 0 es un subespacio vectorial generado por cualesquiera k = n r
soluciones linealmente independientes.
Demostraci on:
La idea de la demostraci on consiste en construir un conjunto de soluciones in-
dependientes que genere a todas las dem as; de este modo, el conjunto de soluciones
ser a un subespacio vectorial.
Por simplicidad en la notaci on supondremos que un menor de orden r distinto de
cero esta formado por las primeras r las y las primeras r columnas. Es decir,

a
11
a
1r
.
.
.
.
.
.
.
.
.
a
r1
a
rr

,= 0 (4.6)
4.5 Subespacios vectoriales 4.5 Subespacios vectoriales 129
Como ya vimos en el Teorema 4.1, las restantes las son combinaci on lineal de las r
primeras, es decir, el sistema
a
11
x
1
+ +a
1r
x
r
+ +a
1n
x
n
= 0
.
.
.
a
r1
x
1
+ +a
rr
x
r
+ +a
rn
x
n
= 0
_

_
tiene las mismas soluciones que el sistema original. Entonces, pasando las inc ognitas
x
r+1
,. . . , x
n
al segundo miembro,
a
11
x
1
+ +a
1r
x
r
= a
1,r+1
x
r+1
a
1n
x
n
.
.
.
.
.
.
a
r1
x
1
+ +a
rr
x
r
= a
r,r+1
x
r+1
a
rn
x
n
_

_
(4.7)
este sistema es un sistema de Cramer cuya matriz de los coecientes coincide con el
menor basico dado en (4.6).
Denotemos por B a la matriz que corresponde a este menor, y consideremos los
n r vectores de R
r
siguientes
b
r+1
=

a
1,r+1
.
.
.
a
r,r+1

b
n
=

a
1n
.
.
.
a
rn

Es f acil comprobar que el sistema (4.7) se puede escribir como


B

x
1
.
.
.
x
r

= b
r+1
x
r+1
b
n
x
n
o lo que es lo mismo,

x
1
.
.
.
x
r

= B
1
b
r+1
x
r+1
B
1
b
n
x
n
(4.8)
(recordemos que existe la inversa de B gracias a (4.6)).
Consideremos ahora el vector de R
n
s
1
=
_
_
_
_
_
_
_
_
_
_
B
1
b
r+1

r las
1
0
.
.
.
0
_
_
_
_
_
_
_
_
_
_
_

_
n r las
130 Tema 4 Espacios vectoriales
es decir, hemos resuelto (4.8) para x
r+1
= 1, x
r+2
= = x
n
= 0, y an alogamente los
vectores
s
j
=
_
_
_
_
_
_
_
_
_
_
_
_
B
1
b
r+j
0
.
.
.
1 Fila r + j
.
.
.
0
_
_
_
_
_
_
_
_
_
_
_
_
para j = 2, . . . , n r, obtenidos al resolver (4.8) para x
r+1
= = x
j1
= x
j+1
=
= x
n
= 0 y x
j
= 1.
Entonces,
(i) Es evidente por construcci on que los vectores s
1
, . . . , s
nr
son soluci on del
sistema original.
(ii) |s
1
, . . . , s
nr
es l.i.
Para ver esto basta observar la matriz obtenida al juntar dichos vectores. Las n r
ultimas las de esta matriz corresponden exactamente a I
nr
, luego ah tenemos un
menor de orden n r distinto de cero.
(iii) |s
1
, . . . , s
nr
es un sistema generador de las soluciones del sistema original.
Para probar esto consideremos una solucion del sistema, p = (p
1
, . . . , p
n
). La cons-
trucci on anterior nos lleva a que p satisface
B

p
1
.
.
.
p
r

= b
r+1
p
r+1
b
n
p
n
pero teniendo en cuenta c omo son las soluciones s
1
, . . . , s
nr
es f acil comprobar que
p = p
r+1
s
1
+ +p
n
s
nr
es decir, cualquier soluci on del sistema es combinaci on lineal de los vectores s
1
, . . . , s
nr
.
Esto demuestra que |s
1
, . . . , s
nr
es una base de las soluciones del sistema
homogeneo dado.
Nota 4.7 Como consecuencia de este resultado, las soluciones de un sistema lineal
homogeneo conforman un subespacio vectorial de dimensi on nrango(A), siendo n el
n umero de inc ognitas y A la matriz de los coecientes.
Ejemplo 4.13 Encontrar una base de las soluciones del sistema homogeneo:
x
2
+x
3
+x
4
+x
5
= 0
x
1
x
2
= 0
x
1
+x
3
+x
4
+x
5
= 0
x
1
+x
2
+x
3
+x
4
+x
5
= 0
_

_
4.5 Subespacios vectoriales 4.5 Subespacios vectoriales 131
En primer lugar estudiamos el rango de la matriz asociada a n de conocer la dimensi on
del subespacio generado por las soluciones.
A =

0 1 1 1 1
1 1 0 0 0
1 0 1 1 1
1 1 1 1 1

Observese que las columnas tercera, cuarta y quinta son iguales, por lo que las dos
ultimas no inuyen en el rango. De manera que el rango no puede ser superior a tres.
Un simple c alculo demuestra que el determinante

0 1 1
1 1 0
1 1 1

,= 0
de lo que deducimos que rango(A) = 3. La dimensi on del espacio generado sera por
tanto 53 = 2. Para encontrar una base de las soluciones, pasamos al segundo miembro
las inc ognitas correspondientes a las columnas que no forman parte del menor b asico
encontrado (al igual que en (4.7)); en este caso x
4
y x
5
, y eliminamos las ecuaciones
que no forman parte del menor b asico, por ser redundantes. Es decir,
x
2
+x
3
= x
4
x
5
x
1
x
2
= 0
x
1
+x
2
+x
3
= x
4
x
5
_

_
Ahora resolvemos el sistema usando la tecnica empleada en la demostraci on del
teorema anterior. Es decir, para
x
4
= 1, x
5
= 0
x
2
+x
3
= 1
x
1
x
2
= 0
x
1
+x
2
+x
3
= 1
_

x
1
= 0
x
2
= 0
x
3
= 1
es decir, la soluci on es (0, 0, 1, 1, 0), y para
x
4
= 0, x
5
= 1
x
2
+x
3
= 1
x
1
x
2
= 0
x
1
+x
2
+x
3
= 1
_

x
1
= 0
x
2
= 0
x
3
= 1
la soluci on es (0, 0, 1, 0, 1). Por tanto, las soluciones de este sistema coinciden con el
subespacio de dimension 2
L = L((0, 0, 1, 1, 0), (0, 0, 1, 0, 1))

132 Tema 4 Espacios vectoriales


Teorema 4.8
Recprocamente, todo subespacio vectorial de K
n
de dimensi on k puede determinarse
a traves de las soluciones de un sistema lineal homogeneo.
Demostraci on:
Sea L = L(w
1
, . . . , w
k
), con |w
1
, . . . , w
k
un conjunto l.i. Si x es un vector
de L entonces x es combinaci on lineal de los w
i
, 1 i k. Denotemos por
w
i
= (a
i1
, . . . , a
in
), 1 i k. Entonces,
rango

a
11
a
1n
.
.
.
.
.
.
.
.
.
a
k1
a
kn

= k = rango

a
11
a
1n
.
.
.
.
.
.
.
.
.
a
k1
a
kn
x
1
x
n

Es decir, todos los menores de orden k+1 tienen que ser necesariamente nulos. As pues,
bastar a orlar un menor b asico distinto de cero (que por comodidad suponemos que se
tiene en las k primeras columnas) con la la k + 1 y las restantes columnas, o sea,

a
11
a
1k
a
1,k+1
.
.
.
.
.
.
.
.
.
.
.
.
a
k1
a
kk
a
k,k+1
x
1
x
k
x
k+1

= 0,

a
11
a
1k
a
1,k+2
.
.
.
.
.
.
.
.
.
.
.
.
a
k1
a
kk
a
k,k+2
x
1
x
k
x
k+2

= 0, . . .

a
11
a
1k
a
1n
.
.
.
.
.
.
.
.
.
.
.
.
a
k1
a
kk
a
kn
x
1
x
k
x
n

= 0
Cada uno de estos determinantes es una ecuacion lineal. Por tanto tenemos un sistema
lineal homogeneo de n k ecuaciones, cuyas soluciones son vectores de L.
Un sistema de ecuaciones homogeneo cuyas soluciones determinan un subespacio
generado se denomina sistema de ecuaciones implcitas de ese subespacio.
Ejemplo 4.14
(i) Se considera el subespacio generado L = L((1, 1, 1), (0, 1, 0)). Encontrar una
base y un sistema de ecuaciones implcitas del mismo.
Puesto que
rango

1 1 1
0 1 0

= 2
4.5 Subespacios vectoriales 4.5 Subespacios vectoriales 133
los vectores que generan el subespacio son l.i. y por tanto forman una base. Para
encontrar un sistema de ecuaciones implcitas debemos pedir que
rango

1 1 1
0 1 0
x
1
x
2
x
3

= 2

1 1 1
0 1 0
x
1
x
2
x
3

= 0 x
3
x
1
= 0
(ii) Proceder de forma an aloga con el subespacio L = L(w
1
, w
2
, w
3
), donde
w
1
= (1, 1, 1, 1), w
2
= (3, 2, 0, 1), w
3
= (2, 3, 1, 2).
Sabemos que
dimL = rango

1 1 1 1
3 2 0 1
2 3 1 2

= 2 con rango

1 1
3 2

,= 0
luego una base de L vendra dada por los vectores w
1
y w
2
. Para encontrar un sistema
de ecuaciones implcitas procedemos como en el caso anterior:
rango

1 1 1 1
3 2 0 1
x
1
x
2
x
3
x
4

= 2

1 1 1
3 2 0
x
1
x
2
x
3

= 0,

1 1 1
3 0 1
x
1
x
3
x
4

= 0
de donde se obtienen las ecuaciones
2x
1
3x
2
+ 5x
3
= 0, x
1
4x
3
+ 3x
4
= 0
N otese que hay menores de orden tres que no hemos considerado, por ejemplo

1 1 1
2 0 1
x
2
x
3
x
4

que dara lugar a otra ecuaci on distinta. Sin embargo, el metodo del orlado garantiza
que esta ecuaci on resultante es dependiente de las anteriores, y por tanto no es
necesario considerarla.

4 5 1 Operaciones con subespacios


En lo que resta de tema, vamos a trabajar con m as de un subespacio vectorial
del mismo e.v. Comenzamos viendo una propiedad interesante de los subespacios
vectoriales.
Teorema 4.9
Sean L
1
y L
2
dos subespacios vectoriales de V . Si L
1
L
2
y dim(L
1
) = dim(L
2
)
entonces L
1
= L
2
.
134 Tema 4 Espacios vectoriales
Demostraci on:
Puesto que L
1
L
2
, s olo hay que probar la inclusi on contraria.
8
Sea x L
2
, y
B una base de L
1
formada por dim(L
1
) = k vectores. Como L
1
L
2
, el conjunto B
es l.i. en L
2
. Como adem as L
2
tambien tiene dimensi on igual a k, B es un conjunto
de k vectores l.i. en un espacio de dimensi on k, es decir es una base de L
2
(vease el
Corolario 4.5).
Al ser base de L
2
, x se escribe como combinaci on lineal de B, que a su vez
est a tambien en L
1
, por tanto x L
1
. De la arbitrariedad de x se sigue la igualdad
entre los espacios.
N otese que la clave en la demostraci on anterior est a en probar que la base de L
1
tambien lo es de L
2
. En denitiva, si un conjunto es base de dos espacios, entonces
ambos espacios son iguales (de hecho basta con que sea sistema generador).
Denici on 4.11 Dados dos subespacios L
1
, L
2
de un e.v. V se dene la suma de
L
1
y L
2
por
L
1
+L
2
= |u
1
+u
2
: u
1
L
1
, u
2
L
2

Igualmente denimos la intersecci on de L


1
y L
2
por
L
1
L
2
= |u : u L
1
, u L
2

Teorema 4.10
L
1
+L
2
y L
1
L
2
son subespacios vectoriales.
Demostraci on:
Usaremos la Proposicion 4.9. Si u y v L
1
+L
2
entonces
u = u
1
+u
2
, con u
1
L
1
, u
2
L
2
v = v
1
+v
2
, con v
1
L
1
, v
2
L
2
Entonces,
u +v = (u
1
+u
2
) +(v
1
+v
2
) = (u
1
+v
1
) + (u
2
+v
2
)
con
(u
1
+v
1
) L
1
y (u
2
+v
2
) L
2
Del mismo modo, si u, v L
1
L
2
entonces
u L
1
, v L
1
u +v L
1
u L
2
, v L
2
u +v L
2
u +v L
1
L
2
El siguiente resultado nos dice c omo obtener la suma y la intersecci on de subespa-
cios a partir de las bases o los sistemas de ecuaciones implcitas.
8
Cuando queremos probar que dos conjuntos A y B son iguales, se suele proceder probando
la doble inclusion, es decir A B y B A.
4.5 Subespacios vectoriales 4.5 Subespacios vectoriales 135
Teorema 4.11
Sean L
1
y L
2
dos subespacios de un e.v. V . Se verica:
(i) Si B
1
es una base de L
1
y B
2
es una base de L
2
, entonces L
1
+ L
2
=
L(B
1
B
2
), esto es, B
1
B
2
es un sistema generador de L
1
+L
2
.
(ii) Si Ax = 0 es un sistema de ecuaciones implcitas de L
1
y Bx = 0 es
un sistema de ecuaciones implcitas de L
2
, entonces,
Ax = 0
Bx = 0

es un sistema de ecuaciones implcitas de L


1
L
2
.
La demostracion se deja como ejercicio para el lector.
Teorema 4.12 (F ormula de la dimensi on)
Si L
1
y L
2
son subespacios de un e.v. V se verica:
dim(L
1
) + dim(L
2
) = dim(L
1
+L
2
) + dim(L
1
L
2
)
Demostraci on:
Sea |e
1
, . . . , e
l
una base de L
1
L
2
. Como L
1
L
2
L
1
, L
2
podemos encontrar
vectores f
1
, . . . f
k
, g
1
, . . . g
m
, tales que
|e
1
, . . . , e
l
, f
1
, . . . , f
k
es base de L
1
|e
1
, . . . , e
l
, g
1
, . . . , g
m
es base de L
2
Est a claro que si probamos que el conjunto
S = |e
1
, . . . , e
l
, f
1
, . . . , f
k
, g
1
, . . . , g
m

es una base de L
1
+L
2
habremos terminado la prueba.
Es evidente, usando (i) del Teorema 4.11, que S es un sistema generador de L
1
+L
2
.
Veamos que tambien es l.i. Consideramos una combinaci on lineal igualada al vector
nulo,

1
e
1
+ +
l
e
l
+
1
f
1
+ +
k
f
k
+
1
g
1
+ +
m
g
m
= 0 (4.9)
Denotemos por v =
1
e
1
+ +
l
e
l
+
1
f
1
+ +
k
f
k
. Est a claro que v L
1
. Por
otra parte, podemos escribir
v =
1
g
1

m
g
m
luego v L
2
. De modo que v L
1
L
2
. Como las coordenadas respecto de una base
son unicas,

1
= =
k
=
1
=
m
= 0 (4.10)
136 Tema 4 Espacios vectoriales
Finalmente, como e
1
, . . . , e
l
forman una base, de (4.9) y (4.10) deducimos que
1
=

l
= 0.
Finalizamos la secci on con el concepto de suma directa de subespacios.
Denici on 4.12 Un e.v. V es suma directa de dos subespacios L
1
y L
2
si y s olo si
L
1
+L
2
= V y L
1
L
2
= |0
Se notara V = L
1
L
2
.
Teorema 4.13
Son equivalentes:
(i) V = L
1
L
2
.
(ii) v V , v = v
1
+v
2
, con v
1
L
1
, v
2
L
2
, unicos.
Demostracion:
Probemos en primer lugar (i) (ii).
Puesto que V = L
1
+L
2
, s olo es necesario probar la unicidad de la descomposici on.
En efecto, supongamos que
v = v
1
+v
2
= u
1
+u
2
Entonces, v
1
u
1
= u
2
v
2
con v
1
u
1
L
1
y u
2
v
2
L
2
. Es decir,
v
1
u
1
, u
2
v
2
L
1
L
2
= |0
De aqu se tiene que v
1
= u
1
y v
2
= u
2
.
Veamos la implicaci on contraria. Esta claro por la denici on de suma de subes-
pacios (Denici on 4.11) que V = L
1
+ L
2
. Por otra parte, si v L
1
L
2
podemos
escribir
v = v +0 = 0 +v
Ahora bien, como la descomposici on es unica, s olo existe la posibilidad de que v = 0;
luego L
1
L
2
= |0.
El concepto de suma e intersecci on entre dos subespacios se puede generalizar a
m as subespacios.
Denici on 4.13 Dados L
1
, . . . , L
n
subespacios de un e.v. V , se denen
n

i=1
L
i
=

i=1
v
i
: v
i
L
i

i=1
L
i
= |v V : v L
i
, i
4.5 Subespacios vectoriales 4.5 Subespacios vectoriales 137
En este caso la suma directa de n subespacios viene dada por
V =
n

i=1
L
i
V =
n

i=1
L
i
, L
i

k=i
L
k
_
= |0
Ejemplo 4.15 Considerense los subespacios de R
4
L
1

x
1
+x
2
+x
3
+x
4
= 0
x
3
+x
4
= 0
y
L
2
L((1, 0, 0, 0), (0, 0, 0, 1), (3, 0, 0, 7))
Comprobar que R
4
= L
1
L
2
.
Calculemos una base de cada uno de los subespacios dados. Para L
1
hemos de
resolver el sistema tal y como vimos en el Ejemplo 4.13. La matriz del sistema es

1 1 1 1
0 0 1 1

cuyo rango es claramente dos, por tanto dim(L


1
) = 4 2 = 2. Un menor distinto de
cero est a formado por las columnas dos y tres, lo que nos indica que debemos resolver
el sistema con los par ametros x
1
y x
4
:
x
2
+x
3
= x
1
x
4
x
3
= x
4

x
1
= 1, x
4
= 0 x
2
= 1, x
3
= 0 (1, 1, 0, 0)
x
1
= 0, x
4
= 1 x
2
= 0, x
3
= 1 (0, 0, 1, 1)
Luego una base de L
1
es |(1, 1, 0, 0), (0, 0, 1, 1)
Por su parte, |(1, 0, 0, 0), (0, 0, 0, 1), (3, 0, 0, 7) es un sistema generador de L
2
, y
dado que
rango

1 0 0 0
0 0 0 1
3 0 0 7

= 2
una base de L
2
es |(1, 0, 0, 0), (0, 0, 0, 1), y por tanto dim(L
2
) = 2.
Calculemos ahora L
1
+ L
2
. Para ello, simplemente consideramos el conjunto for-
mado por la base de L
1
y la base de L
2
y estudiamos si son o no l.i.:
rango

1 1 0 0
0 0 1 1
1 0 0 0
0 0 0 1

= 4
luego forman base. As pues dim(L
1
+L
2
) = 4 y dado que estamos en R
4
se tiene que
L
1
+L
2
= R
4
(vease el Teorema 4.9).
138 Tema 4 Espacios vectoriales
Por ultimo, estudiemos L
1
L
2
. Para identicar este espacio necesitamos juntar
los sistemas de ecuaciones implcitas de ambos subespacios. Para L
1
ya lo tenemos, y
para L
2
procedemos como en el Ejemplo 4.14:
rango

1 0 0 0
0 0 0 1
x
1
x
2
x
3
x
4

= 2

1 0 0
0 0 1
x
1
x
2
x
4

= 0,

1 0 0
0 0 1
x
1
x
3
x
4

= 0
que resulta:
x
2
= 0, x
3
= 0
Por tanto, un sistema de ecuaciones implcitas de L
1
L
2
vendra dado por
L
1
L
2

_

_
x
1
+x
2
+x
3
+x
4
= 0
x
3
+x
4
= 0
x
2
= 0
x
3
= 0
Si miramos el rango de la matriz de coecientes del sistema observamos que es 4, por
tanto dim(L
1
L
2
) = 0, y eso signica que L
1
L
2
= |0.
En realidad si hubieramos usado la f ormula de la dimensi on (Teorema 4.12)
podramos haber llegado a esta conclusi on mucho antes, pues sabiendo que dim(L
1
) =
2, dim(L
2
) = 2 y que dim(L
1
+ L
2
) = 4 deducimos de inmediato que dim(L
1
L
2
)
tiene que ser 0, y por tanto es el espacio nulo. Dado que se cumplen las condiciones
de la Denici on 4.12 se tiene que R
4
= L
1
L
2
.

4 6
C

ALCULO CON PYTHON


Como el lector habr a podido comprobar, los calculos necesarios para este tema se
reducen b asicamente a resolver sistemas homogeneos y calcular rangos, lo cual ya se ha
hecho en los temas anteriores. No obstante, si bien antes trabajamos directamente con
matrices, en este tema es m as frecuente trabajar con vectores, que aunque pueden ser
considerados como matrices la o columna, se perciben m as como arreglos. As pues,
en esta secci on insistiremos un poco m as en el manejo de estos elementos.
1 >>> from numpy import array ,dot
2 >>> a=array(range (6))
3 >>> a
4 array([0, 1, 2, 3, 4, 5])
5 >>> len(a)
6 6
7 >>> a.shape
8 (6,)
9 >>> b=a.reshape (2,3)
10 >>> b
11 array ([[0, 1, 2],
4.6 C alculo con Python 4.6 C alculo con Python 139
12 [3, 4, 5]])
13 >>> b.shape
14 (2, 3)
15 >>> c=a.reshape (6,1)
16 >>> c
17 array ([[0] ,
18 [1],
19 [2],
20 [3],
21 [4],
22 [5]])
23 >>> b.T
24 array ([[0, 3],
25 [1, 4],
26 [2, 5]])
27 >>> b*b.T
28 Traceback (most recent call last):
29 File "<stdin >", line 1, in <module >
30 ValueError: shape mismatch: objects cannot be broadcast to a
single shape
31 >>> b*b
32 array ([[ 0, 1, 4],
33 [ 9, 16, 25]])
34 >>> dot(b,b.T)
35 array ([[ 5, 14],
36 [14, 50]])
37 >>> dot(b.T,b)
38 array ([[ 9, 12, 15],
39 [12, 17, 22],
40 [15, 22, 29]])
41 >>> dot(a,c)
42 array ([55])
43 >>> dot(c,a)
44 Traceback (most recent call last):
45 File "<stdin >", line 1, in <module >
46 ValueError: objects are not aligned
47 >>> c.shape
48 (6, 1)
Vemos en la columna izquierda c omo podemos construir arreglos, bien directamen-
te, bien disponiendo sus elementos en un orden distinto con el m odulo reshape. Lo
m as notable de la diferencia entre el uso de arreglos y matrices es que el operador de
multiplicaci on * no corresponde a la multiplicaci on matricia de arreglos bidimensio-
nales, de ah el error que aparece en la lnea 28. Si observamos la lnea 31, vemos que
la multiplicaci on entre arreglos se realiza elemento a elemento, y que la multiplicaci on
matricial se hace con la funci on dot.
Por otra parte, hay que tener cuidado pues no es lo mismo un arreglo unidimensio-
nal, que un arreglo bidimensional que tenga una de sus dimensiones igual a uno, como
se aprecia en la lnea 44. El producto matricial de c por a no se puede hacer pues c es
140 Tema 4 Espacios vectoriales
un arreglo bidimensional de orden 6 1, pero a es unidimensional (lnea 8).
Sin embargo, cuando se trata de multiplicar por un vector, es decir, por un arreglo
unidimensional, la funci on dot permite cierta exibilidad:
49 >>> d=array ((2,3,5)
50 >>> e=array ((5 ,9))
51 >>> f=d.reshape (3,1)
52 >>> dot(b,d)
53 array ([13, 43])
54 >>> dot(b,f)
55 array ([[13] ,
56 [43]])
57 >>> dot(e,b)
58 array ([27, 41, 55])
Para terminar, si bien comentamos anteriormente que no hay forma directa de
calcular el rango de una matriz, dimos una forma sencilla de obtenerlo indirectamente
con SymPy, y tambien se puede lograr con NumPy, usando una funci on de linalg que
veremos con mas detenimiento en un tema posterior.
1 >>> from numpy import array ,linalg
2 >>> a=array
([[2,3,1,-4,2],[1,2,1,-2,3],[2,3,0,2,1],[1,2,0,2,1]])
3 >>> linalg.lstsq(a,a)[2]
4 4
La funci on usada es linalg.lstsq, y la llamada puede parecer un poco extra na,
pues precisa de dos argumentos, el primero de los cuales es el arreglo bidimensional
cuyo rango queremos calcular, y el segundo no necesitamos explicarlo aqu; simpleme-
mente volvemos a usar el mismo argumento. Esta funci on proporciona cuatro resulta-
dos a traves de un arreglo (de forma similar al uso del m odulo LUdecomposition en
la secci on 3.4), de los cuales el tercero (ndice 2) es precisamente el rango de la matriz
introducida.
Dado que Python es un lenguaje modular construido a partir de funciones, podemos
aprovecharnos de ello para denir nuestra propia funci on rango que podamos usar en
cualquier momento, del mismo modo que tenemos a nuestra disposici on el m odulo
NumPy. La forma de proceder es la misma que hicimos para ejecutar el c odigo de la
funci on jacobi al nal de la secci on 3.4.
Creamos un archivo con el contenido de la funci on.
4.7 Aplicaci on: Lights Out!, primera parte 4.7 Aplicaci on: Lights Out!, primera parte 141
1 from numpy import linalg
2
3 def rango(a):
4 x=linalg.lstsq(a,a)[2]
5 return x
y lo guardamos con el nombre mimodulo.py. Lo m as efectivo es guardar este chero
en alguna de las carpetas en las que el interprete Python busca a la hora de importar
un m odulo. Estas carpetas son las denidas en la variable de entorno PYTHONPATH que
se puede obtener mediante la funci on path del m odulo sys, y l ogicamente depende
del sistema operativo que se este usando. La otra opci on es guardar el archivo en la
carpeta desde la que ejecutamos el interprete. Una vez guardado, se procedera as,
1 >>> from numpy import array
2 >>> a=array ([[1,0,1,0],[2,1,3,1],[0,1,1,1],[2,2,4,2]])
3 >>> from mimodulo import rango
4 >>> rango(a)
5 2
4 7
APLICACI

ON: LIGHTS OUT!, PRIMERA PARTE


Vamos a dedicar esta secci on al estudio algebraico de un juego electr onico deno-
minado Lights Out!, que podra traducirse por Apaga las luces!, y que consiste en un
tablero que consta de 5 5 casillas (o bombillas), cada una de las cuales puede estar
apagada o encendida. Al pulsar sobre cualquier casilla, esta cambia de estado, conjun-
tamente con las casillas adyacentes de su lnea horizontal y vertical. El juego consiste
en, dada una conguraci on inicial, ir pulsando las casillas necesarias hasta conseguir
apagar todas ellas. La Figura 4.1 muestra un par de ejemplos del funcionamiento del
juego.
Hemos de tener en cuenta dos observaciones importantes de la din amica de este
juego: en primer lugar, al pulsar dos veces sobre la misma casilla el tablero permanece
en el mismo estado inicial; y en segundo lugar, es f acil darse cuenta de que el orden
en el que se pulsen las casillas no afecta al estado obtenido.
Para analizar matem aticamente el funcionamiento del juego hemos de situarnos en
el contexto adecuado, que en este caso corresponde a un e.v. peculiar: Z
25
2
.
Recordemos que en la denicion de e.v. es preciso que exista un cuerpo con el que
realizar la operaci on producto por escalar. Hasta ahora, los cuerpos conocidos por el
lector son Q, R y C, pero aqu vamos a necesitar un nuevo conjunto que tiene esta
estructura: Z
2
, denido como el conjunto de n umeros enteros m odulo 2.
En general Z
p
, el conjunto de n umeros enteros m odulo p, donde p Z, est a formado
por todos los n umeros enteros en los que se da una cierta relaci on de equivalencia:
diremos que a y b son equivalentes si el resto de la divisi on de ambos entre p es el
mismo. Se notar a por a b (mod p). Por ejemplo 25 35 (mod 10), o 3 1 (mod 2).
A partir de aqu es f acil observar que Z
p
= |0, 1, 2, . . . , p 1, es decir, es un
conjunto nito. Si adem as p es un n umero primo, la operaci on suma y producto
142 Tema 4 Espacios vectoriales
Figura 4.1: As se juega a Lights Out!
habituales en Z dotan a Z
p
de estructura de cuerpo. Por ejemplo, si consideramos
Z
2
= |0, 1, entonces la operaci on suma en este conjunto es
0 + 0 = 0, 0 + 1 = 1, 1 + 0 = 1, 1 + 1 = 0 (4.11)
El lector quiz as se pregunte por que 1+1 = 0. La respuesta es sencilla, 1+1 = 2, pero
2 0 (mod 2), pues el resto de la division de 2 entre 2 es 0; as funciona lo que se
denomina como aritmetica modular. La operaci on suma denida en (4.11) junto con la
operacion producto de enteros en este espacio Z
2
satisfacen las propiedades adecuadas
para que Z
2
sea un cuerpo.
Si ahora consideramos Z
n
2
, el producto cartesiano de Z
2
consigo mismo, n veces, y
lo dotamos de la suma y el producto escalar habituales, en el que el cuerpo de escalares
corresponde a Z
2
, entonces tenemos una estructura de espacio vectorial. Este e.v. es
curioso pues tiene un n umero nito de elementos (en concreto 2
n
).
Volvamos al juego: el estado de encendido o apagado de cada una de las casillas
del tablero se puede modelar en Z
2
, asignando un 0 a la casilla apagada y un 1 a la
casilla encendida. As, la suma descrita en (4.11) corresponde al cambio de estado de
una casilla. Como tenemos 25 casillas, vamos a establecer el estado de todo el tablero
como un vector de Z
25
2
, en el que consideraremos la numeraci on dada en la Figura 4.2.
As por ejemplo, el vector que describe el ultimo tablero de la Figura 4.1 es
(1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0)
De este modo, un vector cualquiera de Z
25
2
corresponder a a una conguraci on deter-
minada de luces encendidas y apagadas del tablero. El objetivo del juego consistir a en-
4.7 Aplicaci on: Lights Out!, primera parte 4.7 Aplicaci on: Lights Out!, primera parte 143
1
6
2
7
3
8
4
9
5
10
11 12 13 14 15
16 17 18 19 20
21 22 23 24 25
Figura 4.2: Numeracion de las casillas
tonces en, dada una conguraci on inicial, encontrar que combinaci on de pulsaciones
nos lleva a la conguraci on nula.
Ahora bien, atendiendo a las observaciones que hicimos antes, si tenemos una con-
guraci on inicial b obtenida al presionar una serie de casillas en el tablero inicialmente
apagado, volviendo a presionar nuevamente esas casillas conseguiremos apagar todo
el tablero. Esta sucesi on de pulsaciones, lo que se denomina una estrategia, puede ser
representada tambien por otro vector de Z
25
2
,
x = (x
1
, x
2
, . . . , x
24
, x
25
)
en el que x
i
ser a 1 si se ha pulsado la casilla i y 0 si no se ha pulsado. Entonces, dado
b Z
25
2
, la estrategia ganadora verica:
b
1
= x
1
+x
2
+x
6
b
2
= x
1
+x
2
+x
3
+x
7
b
3
= x
2
+x
3
+x
4
+x
8
.
.
.
b
24
= x
19
+x
23
+x
24
+x
25
b
25
= x
20
+x
24
+x
25
Es f acil reescribir el sistema anterior en forma matricial, Ax = b, donde la matriz
A /
25
(Z
2
) tiene la siguiente estructura de bloques
A =
_
_
_
_
_
_
_
_
B I 0 0 0
I B I 0 0
0 I B I 0
0 0 I B I
0 0 0 I B
_
_
_
_
_
_
_
_
(4.12)
donde 0 denota la matriz nula de tama no 5 5, I es la matriz identidad de tama no
144 Tema 4 Espacios vectoriales
5 5 y B es
B =
_
_
_
_
_
_
_
_
1 1 0 0 0
1 1 1 0 0
0 1 1 1 0
0 0 1 1 1
0 0 0 1 1
_
_
_
_
_
_
_
_
Atendiendo al signicado del producto de matrices, podemos observar que Ax
corresponde a una combinaci on lineal de los vectores que conforman las columnas de
la matriz A, y en la que los escalares son los elementos del vector x. As pues, b es una
conguraci on alcanzable si dicho vector es combinaci on lineal de los vectores columna
de A. En la secci on 8.5 volveremos sobre este juego para averiguar la forma de saber
si una conguraci on inicial puede ser apagada de una forma r apida.
4 8
EJERCICIOS
1. Denimos en R
2
las operaciones suma y producto por un escalar real del siguiente
modo:
(x
1
, x
2
) + (y
1
, y
2
) = (x
1
+y
1
, x
2
+y
2
), (x
1
, x
2
) = (
2
x
1
,
2
x
2
), R
Estudiar si con estas operaciones R
2
es un espacio vectorial.
2. Determinar si los siguientes conjuntos de vectores son linealmente dependientes
o independientes. En caso de que sean linealmente dependientes encontrar una
combinaci on lineal entre ellos que proporcione el vector nulo:
(a) |(3, 5, 1), (2, 1, 3) (b) |(1, 2, 3), (1, 3, 2), (0, 1, 1)
(c) |(1, 0, 1, 0), (2, 1, 3, 1), (0, 1, 1, 1), (2, 2, 4, 2
3. Estudiar si las siguientes familias de vectores son o no l.i.:
(a)

1 1
0 1

1 0
1 1

/
2
(R).
(b)
_
sen
2
(x), cos
2
(x), cos(2x)
_
C([0, 1]).
(c)
_
x 1, x + 1, x
2
1
_
P
2
R
[x].
4. Sean los polinomios p
1
(x), p
2
(x),. . . ,p
k
(x) y supongamos que

p
1
(a
1
) p
2
(a
1
) p
k
(a
1
)
p
1
(a
2
) p
2
(a
2
) p
k
(a
2
)
.
.
.
.
.
.
.
.
.
.
.
.
p
1
(a
k
) p
2
(a
k
) p
k
(a
k
)

,= 0
para ciertos n umeros reales a
j
distintos entre s. Demostrar que el conjunto de
polinomios dado es linealmente independiente en P
R
[x].
4.8 Ejercicios 4.8 Ejercicios 145
5. Estudiar si los siguientes conjuntos son bases del espacio vectorial dado:
(a)
_
1, x + 3, (x + 3)
2
, (x + 3)
3
_
en P
3
R
[x].
(b)

1 0
1 1

0 1
1 1

1 1
0 1

1 1
1 0

en /
2
(R).
(c)

1 1
1 1

1 1
1 1

1 1
1 1

1 0
0 0

en /
2
(R).
6. En R
3
se consideran los siguientes conjuntos:
A = |(1, 5, 1), (2, 1, 0)
C = |(1, 5, 1), (2, 1, 0), (1, 0, 0), (0, 0, 1)
Se pide:
(a) Probar que A es l.i. y que C es un sistema generador de R
3
.
(b) Encontrar una base B que contenga a A y este contenida en C.
7. Demostrar que el conjunto S =
_
x + 1, x 1, x
2
1, x
2
+ 1
_
es un sistema gene-
rador de P
2
R
[x]. Encontrar un subconjunto S
1
de S que sea una base de P
2
R
[x].
8. En un espacio vectorial V se tiene una base B = |u
1
, u
2
, u
3
y un vector x cuyas
coordenadas con respecto a B son (1, 1, 2). Demostrar que el conjunto
S = |u
1
+u
2
, u
1
+u
2
+u
3

es l.i. y completar S a una base B

tal que las coordenadas de x con respecto a B

sean (1, 1, 1).


9. Sea B la base can onica de R
3
y consideremos el conjunto
B

= |(1, 1, 1), (0, 1, 1), (0, 0, 1)


(a) Demostrar que B

es una base de R
3
.
(b) Hallar las coordenadas del vector u = (3, 2, 5) respecto de la base B

.
(c) Hallar las ecuaciones del cambio de base de B a B

.
(d) Determinar el conjunto de vectores de R
3
que poseen las mismas coordenadas
respecto de B y B

.
10. Consideremos |e
1
, e
2
, . . . , e
n
la base can onica de R
n
y los vectores
u
1
= e
2
e
1
, u
2
= e
3
e
2
, . . . , u
n1
= e
n
e
n1
, u
n
= e
n
(a) Demostrar que los u
j
forman base en R
n
.
(b) Encontrar las coordenadas del vector x =

n
i=1
e
i
con respecto a la base
formada por los u
j
.
11. En P
3
R
[x] consideremos el polinomio p(x) = ax
3
+bx
2
+cx +d con a ,= 0).
(a) Demostrar que el conjunto B = |p(x), p

(x), p

(x), p

(x) es una base de


P
3
R
[x].
146 Tema 4 Espacios vectoriales
(b) Si p(x) = 5x
3
+ 3x
2
2x + 1, hallar las ecuaciones del cambio de base
de B a la base can onica de P
3
R
[x], y las coordenadas del vector q(x) =
15x
3
21x
2
18x + 37 en ambas bases.
12. Sea B
1
= |u
1
, . . . , u
n
y B
2
= |v
1
, . . . , v
n
dos bases de un e.v. Sean (x
1
, . . . , x
n
)
B
1
y (y
1
, . . . , y
n
)
B
2
las coordenadas de un vector no nulo en cada una de las bases.
Decidir si las siguientes armaciones son o no ciertas:
(a) x
j
,= y
j
para todo j.
(b) No puede ocurrir que x
j
= y
j
para todo j (aunque es posible que x
i
= y
i
para
alg un i).
(c) Si x
j
= y
j
para todo j, entonces u
j
= v
j
, para todo j.
(d) Si x
j
= y
j
para todo j, entonces u
i
= v
i
, para alg un i.
(e) Si x
j
= y
j
para todo j, entonces los vectores u
j
v
j
, son l.d.
13. Vericar si los siguientes conjuntos son subespacios vectoriales:
(a)
_
(x
1
, x
2
) R
2
: x
2
= 1
_
.
(b) |(x
1
, . . . , x
n
) R
n
: x
1
+ +x
n
= 0.
(c) |(x
1
, . . . , x
n
) R
n
: x
1
+ +x
n
= 1.
(d)
_
p(x) P
3
R
[x] : (x 1) divide a p(x)
_
.
(e) COM(B) =

A /
2
(R) : AB = BA donde B =

2 1
1 2

.
14. Para que valores de y el conjunto W = |p(x) P
2
R
[x] : p(0) = , p

(0) = es
un subespacio vectorial. Para los valores obtenidos obtener una base y la dimension
de dicho subespacio.
15. En R
3
consideramos el subespacio generado por los vectores (2, 3, 0) y (4, 6, 1).
Pertenece el vector (1, 0, 0) a este subespacio?
16. En R
3
consideramos los siguientes conjuntos:
A = |(1, 1, 1), (0, 1, 0) y B = |(2, 3, 2), (1, 0, 1).
Es L(A) = L(B)?
17. En R
4
determinar la dimension y una base del subespacio vectorial formado por las
soluciones de los siguientes sistemas:
(a)

x
1
+x
2
x
3
x
4
= 0
x
1
x
2
+ 2x
3
x
4
= 0
(b)

x
1
+x
2
+ 2x
3
x
4
= 0
x
1
+x
2
+ 3x
3
+ 2x
4
= 0
(c)
_

_
3x
1
+x
2
+ 4x
3
2x
4
= 0
x
1
+ 2x
2
+ 3x
3
+x
4
= 0
2x
1
x
2
+x
3
3x
4
= 0
x
1
+x
2
+ 2x
3
= 0
4.8 Ejercicios 4.8 Ejercicios 147
18. Determinar la dimensi on del subespacio vectorial formado por las soluciones de los
siguientes sistemas, en funci on del par ametro m R:
(a)
_

_
x +m
2
y +mz = 0
mx +y +mz = 0
m
2
x +my +mz = 0
(b)
_

_
(4 m)x + (1 m)y +z = 0
(m1)x + (2m1)y + 2z = 0
(5 m)x +my z = 0
19. Calcular la dimension y una base de los siguientes espacios:
(a) W = |p(x) P
2
R
[x] : p(0) = 0, p(2) = 0.
(b) El subconjunto de /
23
(R) tales que la suma de los elementos de cada
columna suman cero.
20. Sea V un espacio vectorial real de dimensi on 5. Para cada uno de los subespacios
siguientes calcular un sistema de ecuaciones implcitas:
(a) L
1
= L((1, 0, 1, 1, 1), (1, 1, 1, 0, 0)).
(b) L
2
= L((0, 1, 2, 1, 0), (1, 1, 1, 2, 1), (3, 1, 7, 8, 3)).
21. En R
4
se consideran los pares de subespacios que siguen. Hallar la dimensi on y una
base de L
1
, L
2
, L
1
+L
2
y L
1
L
2
. En que casos se tiene que R
4
= L
1
L
2
?
(a) L
1
= L((1, 1, 1, 1), (1, 1, 1, 1), (1, 3, 1, 3));
L
2
= L((1, 2, 0, 2), (1, 2, 1, 2), (3, 1, 3, 1)).
(b) L
1
= L((1, 1, 2, 1), (0, 1, 1, 3), (2, 0, 1, 1));
L
2
=

2x
1
x
2
3x
3
= 0
x
1
2x
2
+ 6x
3
6x
4
= 0
(c) L
1
=
_

_
3x
1
+ 2x
2
+ 3x
3
x
4
= 0
x
1
+ 5x
3
+x
4
= 0
6x
1
+ 4x
2
+ 6x
3
2x
4
= 0
L
2
=

x
2
= 0
22. Hallar la suma y la intersecci on de cada uno de los siguientes pares de subespacios.
Estudiar, cuando proceda, su suma directa:
(a) V
1
= COM(A) donde A

2 1
0 2

,
V
2
= |A /
2
(R) : tr(A) = 0
Nota: el espacio COM(A) se deni o en el Ejercicio 13, mientras que tr(A)
denota la traza de un matriz, denida como la suma de sus elementos diago-
nales.
(b) V
1
es el conjunto de matrices simetricas en /
2
(R),
V
2
es el conjunto de matrices antisimetricas en /
2
(R).
(c) V
1
= |p(x) P
3
R
[x] : (x 1) divide a p(x),
V
2
= |p(x) P
3
R
[x] : (x + 1) divide a p(x).
148 Tema 4 Espacios vectoriales
(d) V
1
es el conjunto de funciones f : R R pares en c(R),
V
2
es el conjunto de funciones f : R R impares en c(R)
Nota: c(R) denota el conjunto de funciones continuas en R.
23. Sean L
1
y L
2
dos subespacios vectoriales de un e.v. V tal que dim(V ) = 5 y
dim(L
1
) = dim(L
2
) = 3. En cu ales de las siguientes situaciones se cumple que para
todo vector u V , existen vectores w
1
L
1
y w
2
L
2
tales que u = w
1
+w
2
?
(a) Siempre, aunque los vectores w
1
y w
2
pueden ser no unicos.
(b) Cuando dim(L
1
L
2
) = 1.
(c) Cuando dim(L
1
L
2
) = 2.
(d) Cuando V = L
1
+L
2
, en cuyo caso los vectores w
1
y w
2
son unicos.
24. Sea V un espacio vectorial. Probar que si la dimensi on de la suma de dos subespacios
de V es una unidad mayor que la dimensi on de su intersecci on entonces la suma
coincide con uno de ellos y la intersecci on con el otro.
5 Aplicaciones lineales
Las funciones constituyen sin duda alguna el objeto matematico de mayor interes y
uso en cualquier disciplina en la que las matem aticas tengan un mnimo de presencia.
En este tema iniciaremos el estudio de las funciones relacionadas con los espacios
vectoriales, m as conocidas como aplicaciones lineales.
5 1
CONCEPTOS PREVIOS
Como punto de partida vamos a comenzar recordando el concepto de aplicaci on o
funci on entre dos conjuntos cualesquiera, junto con algunas deniciones y propiedades
relacionadas.
Denici on 5.1 Sean S y T dos conjuntos. Toda correspondencia que asocia a cada
elemento de S un y s olo un elemento de T se denomina aplicaci on de S en T. Cuando
S y T son conjuntos numericos se habla habitualmente de funci on. A S se le llama
espacio de partida o espacio origen y a T espacio de llegada o espacio imagen.
La notacion habitual para una aplicaci on es la siguiente:
f : S T
s f(s) = t imagen por f de s
Denici on 5.2 Sea f : S T una aplicacion.
(i) Se dene el dominio de f, como el conjunto
Dom(f) = |s S : f(s)
(ii) Se denomina imagen de f, al conjunto
Im(f) = |t T : s S tal que f(s) = t = |f(s) : s S = f(S)
(iii) Si Im(f) = T, es decir, si t T, s S con f(s) = t, se dice que f es
sobreyectiva, sobre o suprayectiva.
(iv) f es inyectiva si
f(s) = f(s

) =s = s

149
150 Tema 5 Aplicaciones lineales
(v) f se dir a biyectiva si es sobre e inyectiva.
(vi) Se dene el n ucleo de f como el conjunto
ker(f) = |s S : f(s) = 0
Como veremos m as adelante, cuando trabajamos con aplicaciones lineales, el
estudio de algunos de los conjuntos que acabamos de denir proporciona informacion
fundamental sobre la misma.
Recordamos tambien una operacion fundamental con las aplicaciones: la composi-
ci on.
Denici on 5.3 Dadas dos aplicaciones f : S T y g : T U, tales que
Im(f) Dom(g) se dene la composici on de f con g, que se notar a (g f), por:
(g f) : S U
s g(f(s))
Proposici on 5.1 Sean f : S T, y g : T U dos aplicaciones con Im(f)
Dom(g). Entonces,
(i) Si f y g son inyectivas, entonces (g f) es inyectiva.
(ii) Si f y g son sobreyectivas, entonces (g f) es sobreyectiva.
(iii) Si f y g son biyectivas, entonces (g f) es biyectiva.
La demostracion se deja al lector.
Denici on 5.4 Dada una aplicaci on f : S T, se denomina inversa de f a toda
funci on g : T S tal que
(g f)(s) = s, (f g)(t) = t
Se notara g = f
1
.
Nota 5.1 La inversa no siempre existe. En caso de que exista se dira que f es
invertible.
5 2
5.2 Aplicaciones lineales entre espacios vectoriales 5.2 Aplicaciones lineales entre espacios vectoriales 151
APLICACIONES LINEALES ENTRE ESPACIOS VECTORIALES
B asicamente podemos decir que una aplicaci on lineal es aquella que respeta la
estructura de espacio vectorial:
1
Denici on 5.5 Sean V y W dos espacios vectoriales sobre un mismo cuerpo K. Una
aplicaci on f : V W se dice lineal si verica:
f(x +y) = f(x) +f(y), x, y V
f(x) = f(x) x, V, K
De forma equivalente, f es lineal si y s olo si f(x+y) = f(x)+f(y), x, y V ,
, K.
Como puede verse en la denici on, una aplicaci on lineal no es m as que una funcion
denida entre espacios vectoriales que respecta la linealidad, es decir, la imagen de una
combinaci on lineal es la combinaci on lineal de las im agenes. A pesar de su simplicidad,
su importancia es enorme en multitud de disciplinas. Veamos algunos ejemplos:
Ejemplo 5.1
(i) La aplicaci on nula, denida por
0
V
: V V
v 0
es lineal.
(ii) La aplicaci on identidad dada por
I
V
: V V
v v
es lineal.
(iii) La simetra plana de eje la recta y = x, cuya ecuacion es
: R
2
R
2
(x, y) (y, x)
es una aplicaci on lineal.
(iv) La aplicaci on derivada es lineal:
d : P
R
[x] P
R
[x]
p(x) p

(x)
1
Las transformaciones lineales ya aparecen en la ya citada obra de Grassmann que paso casi
desapercibida en su epoca, aunque el concepto de linealidad aparece frecuentemente con
anterioridad en numerosas aplicaciones.
152 Tema 5 Aplicaciones lineales
Algunos ejemplos de aplicaciones no lineales:
f
1
: R R
x x
2
f
2
: R R
x sen x

Notaremos por /(V, W) al conjunto de aplicaciones lineales de V en W (tambien


llamadas homomorsmos). Si V = W se dice que f es un endomorsmo, y al conjunto
de tales aplicaciones se le denota por /(V ).
Se dice que f : V W es un isomorsmo si es lineal y biyectiva. Tambien se
dice que f es un automorsmo si es un endomorsmo biyectivo.
5 2 1 Propiedades
De la denici on de aplicaci on lineal se deduce f acilmente que la imagen de una
combinaci on lineal de vectores es igual a la combinaci on lineal de las imagenes, es
decir,
f

i=1

i
u
i

=
n

i=1

i
f(u
i
) (5.1)
Algunas consecuencias inmediatas son:
Proposici on 5.2 Si f : V W es lineal, entonces,
(i) f(0) = 0.
(ii) f(u) = f(u).
(iii) Si L es un subespacio vectorial, f(L) = |f(v) : v L tambien es un
subespacio vectorial.
La demostraci on de este resultado es elemental y se propone al lector como ejercicio.
Proposici on 5.3 Sea L un subespacio de dimensi on k y f una aplicaci on lineal,
entonces f(L) es un subespacio de dimensi on menor o igual que k.
Demostraci on:
Sea |e
1
, . . . , e
k
una base de L. Si y f(L) entonces existe x L tal que f(x) = y.
Como x L, podemos escribir que x =

n
i=1

i
e
i
. Usando (5.1),
y = f

i=1

i
e
i

=
n

i=1

i
f(e
i
)
5.3 Matriz de una aplicaci on lineal. 5.3 Matriz de una aplicaci on lineal. 153
esto es, y es combinaci on lineal de los vectores f(e
1
), . . . , f(e
k
). Por tanto estos
vectores forman un sistema generador de f(L). Del Corolario 4.5 se sigue el resultado.
El siguiente resultado es esencial para la determinaci on de una aplicaci on lineal, y
adem as pone de maniesto la importancia de las bases en los e.v.
Teorema 5.1
Sea B = |e
1
, . . . , e
n
una base de V . Sean w
1
, . . . , w
n
n vectores cualesquiera de
W. Entonces existe una unica aplicaci on lineal f : V W tal que f(e
i
) = w
i
,
1 i n.
Demostraci on:
Sea v V . Para denir f(v) procedemos como sigue. Puesto que B es una base
de V existen unos unicos
i
tales que v =

n
i=1

i
e
i
. En tal situaci on denimos
f(v) =
n

i=1

i
w
i
Es f acil comprobar que f es lineal y puesto que las coordenadas respecto de una base
son unicas, f est a denida de manera unica.
Como consecuencia, podemos armar que para determinar completamente una
aplicaci on lineal basta conocer las im agenes de los elementos de una base del espacio
de partida. Con esta simple informaci on (la imagen de unos cuantos vectores) podemos
obtener la imagen de cualquier otro vector del espacio.
Ejemplo 5.2 Supongamos que conocemos que una aplicaci on lineal satisface f(1, 0) =
(2, 1, 3) y f(0, 1) = (4, 1, 0). Vamos a determinar la aplicaci on. En primer lugar se
trata de una aplicaci on f : R
2
R
3
, y puesto que sabemos los valores de la aplicaci on
sobre una base de R
2
, podemos calcularla para cualquier vector (x
1
, x
2
). En efecto,
(x
1
, x
2
) = x
1
(1, 0) +x
2
(0, 1)
luego,
f(x
1
, x
2
) = f(x
1
(1, 0) +x
2
(0, 1))
= x
1
f(1, 0) +x
2
f(0, 1) = x
1
(2, 1, 3) +x
2
(4, 1, 0)
= (2x
1
+ 4x
2
, x
1
x
2
, 3x
1
)

5 3
MATRIZ DE UNA APLICACI

ON LINEAL.
Ya hemos visto que para determinar completamente una aplicaci on lineal nos basta
con conocer las im agenes de una base del espacio de partida. A continuaci on vamos a
usar esta idea para describir con mayor ecacia una aplicaci on lineal.
154 Tema 5 Aplicaciones lineales
Consideremos V y W dos e.v., f : V W una aplicacion lineal, y sean
B = |u
1
, . . . u
n
y B

= |v
1
, . . . v
m

bases de V y W, respectivamente.
Dado un vector x V podemos escribir x =

n
j=1
x
j
u
j
, usando sus coordenadas.
Entonces
f(x) =
n

j=1
x
j
f(u
j
) = y (5.2)
Obviamente y W, de modo que haciendo uso de la base de W, y =

m
i=1
y
i
v
i
. El
objetivo que perseguimos es relacionar las coordenadas del vector de partida x con las
coordenadas del vector de llegada y.
N otese que cada vector f(u
j
) W, por lo tanto, puesto que tenemos una base de
W, es posible escribir
f(u
j
) =
m

i=1
a
ij
v
i
, j = 1, . . . , n
es decir, a
ij
, 1 i m son las coordenadas de la imagen de f(u
j
) en la base de W.
Usando esta ultima observacion en (5.2) se tiene que
f(x) =
n

j=1
x
j

i=1
a
ij
v
i

=
m

i=1
_
n

j=1
x
j
a
ij
_
v
i
=
m

i=1
y
i
v
i
Como las coordenadas son unicas, vemos que
y
i
=
n

j=1
x
j
a
ij
Si ahora consideramos la matriz A = (a
ij
) entonces la igualdad anterior no es mas
que el producto de la matriz A por las coordenadas del vector x. Es decir, f(x) = Ax.
A la matriz A se le denomina matriz de f en las bases B y B

, y se denota por
M
B

B
(f). Es importante observar c omo esta construida esta matriz: sus columnas
estan formadas por las coordenadas, respecto de la base B

, de las imagenes
de los vectores de la base B. Como las dimensiones de V y W son n y m,
respectivamente, entonces A /
mn
(K).
En conclusi on, toda aplicaci on lineal tiene asociada una matriz respecto de unas
bases predeterminadas (n otese que la matriz cambiar a si cambiamos de base). En
adelante, jadas las bases, identicaremos la aplicaci on lineal con la matriz correspon-
diente, escribiendo f(x) = Ax.
Recprocamente, sea A /
mn
(K) y jemos unas bases B y B

en V y W,
respectivamente. Podemos asumir que las columnas de A son las coordenadas, respecto
de la base B

, de las im agenes de los vectores de la base B; de este modo, (vease el


Teorema 5.1) queda determinada una unica aplicaci on lineal f : V W, cuya matriz
M
B

B
(f) = A.
Nota 5.2 Si los espacios V y W coinciden y consideramos la misma base en ambos
(que es lo m as natural), la matriz de la aplicaci on correspondiente se notar a por M
B
(f).
5.3 Matriz de una aplicaci on lineal. 5.3 Matriz de una aplicaci on lineal. 155

R
(
e
1
)
e
1
e
2
R(e
2
)
sen
cos
Figura 5.1: Rotacion de angulo
Ejemplo 5.3
(i) Retomando el ejemplo 5.2, construyamos la matriz de la aplicaci on dada.
Puesto que conocemos las im agenes de la base can onica de R
2
f(1, 0) = (2, 1, 3), f(0, 1) = (4, 1, 0)
directamente podemos escribir la matriz respecto de las bases can onicas de R
2
y R
3
,
respectivamente, que es

2 4
1 1
3 0

Por tanto, para calcular f(x


1
, x
2
) no tenemos m as que multiplicar por la matriz,
f(x
1
, x
2
) =

2 4
1 1
3 0

x
1
x
2

2x
1
+ 4x
2
x
1
x
2
3x
1

Recuerdese que trabajamos con los vectores por columnas (vease la nota 4.6 en la
p ag. 124).
(ii) Matriz de una rotaci on de angulo en R
2
, respecto de la base can onica.
2
Sea B
c
= |e
1
, e
2
. Atendiendo a la Figura 5.1, se tiene
R(e
1
) = cos()e
1
+ sen()e
2
R(e
2
) = sen()e
1
+ cos()e
2
2
Hacemos hincapie en el hecho de que la matriz depende de dos bases, la del espacio de
partida y la del de llegada, pero en este caso, al tratarse del mismo espacio usamos la misma
base.
156 Tema 5 Aplicaciones lineales
x
y
z
e
1
e
2
e
3
P
(P)
(e
3
)
Figura 5.2: Simetra respecto del plano XY
de modo que la matriz de esta rotaci on en la base can onica de R
2
es
M
B
c
(R) =

cos sen
sen cos

(iii) Matriz de una simetra respecto del plano x


3
= 0, en la base canonica de R
3
.
Es f acil comprobar que si e
1
, e
2
y e
3
son los vectores de la base can onica de R
3
,
entonces
(e
1
) = e
1
, (e
2
) = e
2
, (e
3
) = e
3
(vease la Figura 5.2), luego
M
B
c
() =

1 0 0
0 1 0
0 0 1

Si ahora queremos calcular la imagen por esta simetra del vector v = (1, 2, 1)
bastar a multiplicar por la matriz anterior,

1 0 0
0 1 0
0 0 1

1
2
1

1
2
1

(iv) Matriz de la aplicaci on lineal


f : P
n
R
[x] P
n1
R
[x]
p(x) p

(x)
5.4 Operaciones entre aplicaciones lineales 5.4 Operaciones entre aplicaciones lineales 157
respecto de las bases B = |1, x, . . . , x
n
y B

= |1, x, . . . , x
n1
. Calculamos las
im agenes de los elementos de B:
f(1) = 0, f(x) = 1, f(x
2
) = 2x, . . . , f(x
n
) = nx
n1
y escribamos estos vectores en coordenadas respecto de B

. Por tanto,
M
B

B
(f) =

0 1 0 0
0 0 2 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0 0 0 n

/
n1n
(R)
(v) g : R
3
R
2
dada por g(x
1
, x
2
, x
3
) = (x
1
+x
2
+x
3
, x
1
+x
2
x
3
), respecto
de la base can onica de R
3
y la base B

= |(1, 0), (1, 1) de R


2
.
Calculamos la imagen de los vectores de la base de R
3
y los escribimos como combi-
naci on lineal de los vectores de la base de R
2
dada:
g(e
1
) = (1, 1) = a
11
(1, 0) +a
21
(1, 1) a
11
= 0, a
21
= 1
g(e
2
) = (1, 1) = a
12
(1, 0) +a
22
(1, 1) a
12
= 0, a
22
= 1
g(e
3
) = (1, 1) = a
13
(1, 0) +a
23
(1, 1) a
13
= 2, a
23
= 1
La matriz es por tanto,
M
B

B
c
(g) =

0 0 2
1 1 1


5 4
OPERACIONES ENTRE APLICACIONES LINEALES
En el conjunto de aplicaciones lineales entre dos espacios vectoriales /(V, W)
podemos denir la suma de aplicaciones y el producto con un escalar del siguiente
modo:
+ : /(V, W) /(V, W) /(V, W)
(f, g) f +g donde (f +g)(v) = f(v) +g(v)
: K/(V, W) /(V, W)
(, f) f denida por ( f)(v) = f(v)
Nota 5.3 Se puede probar que, con las operaciones anteriores, el espacio /(V, W) es
un espacio vectorial de dimension (dimV )(dimW).
El siguiente resultado muestra que las operaciones entre aplicaciones lineales
pueden ser vistas como operaciones entre sus matrices asociadas, respecto de las
correspondientes bases.
158 Tema 5 Aplicaciones lineales
Proposici on 5.4 Si A y B son las matrices de las aplicaciones f y g en las bases B
y B

, respectivamente, entonces
(i) A+B es la matriz de la aplicaci on f +g en las citadas bases.
(ii) A es la matriz de la aplicaci on f en las mismas bases.
La demostracion es elemental y se propone al lector.
Adem as de las operaciones suma y producto por un escalar, es importante prestar
atenci on a la composici on de aplicaciones lineales.
Proposici on 5.5 Si f /(V, W), g /(V, X), A = M
B
W
B
V
(f) y B = M
B
X
B
V
(g)
entonces
BA = M
B
X
B
V
(g f).
Demostraci on:
Sean A = (a
ij
)
1im
1jn
y B = (b
ki
)
1kp
1im
las matrices de las aplicaciones dadas en
las bases correspondientes. Esto es, si
B
V
= |e
1
, . . . e
n
, B
W
= |e

1
, . . . e

m
, B
X
= |e

1
, . . . e

se tiene que
f(e
j
) =
n

i=1
a
ij
e

i
, g(e

i
) =
p

k=1
b
ki
e

k
Entonces,
(g f)(e
j
) = g(f(e
j
)) = g

i=1
a
ij
e

=
n

i=1
a
ij
g(e

i
)
=
n

i=1
a
ij
p

k=1
b
ki
e

k
=
p

k=1

i=1
b
ki
a
ij

k
Para terminar basta observar que el parentesis del ultimo sumando corresponde al
elemento kj de la matriz BA.
El resultado anterior nos dice que la composici on de aplicaciones lineales se traduce
en la multiplicaci on de sus matrices asociadas, en el orden en el que escribimos tal
composicion (que no es el orden en el que act uan).
Teorema 5.2
Sea f una aplicacion lineal de V en W. Entonces,
(i) La inversa de una aplicaci on lineal es lineal y (f
1
)
1
= f.
(ii) f es invertible si y solo si es biyectiva.
5.5 Operaciones entre aplicaciones lineales 5.5 Operaciones entre aplicaciones lineales 159
(iii) Si f : V W es biyectiva y tiene a A /
n
(K) como matriz asociada
respecto de ciertas bases, entonces f
1
tiene como matriz asociada respecto de las
mismas bases a A
1
.
Demostraci on:
(i) De la denici on de aplicaci on inversa es inmediato que (f
1
)
1
= f. Veamos
adem as que la inversa es lineal; para ello ser a necesario probar que
f
1
(x +y) = f
1
(x) +f
1
(y) (5.3)
Pongamos que f
1
(x) = x

y f
1
(y) = y

; es decir f(x

) = x y f(y

) = y. Como f es
lineal,
f(x

+y

) = f(x

) +f(y

) = x +y
y por denici on de inversa, f
1
(x +y) = x

+y

= f
1
(x) +f
1
(y), que es
precisamente (5.3).
(ii) La suciencia (es decir, que el hecho de que la aplicaci on sea biyectiva implica
que existe inversa) es inmediata, pues si una aplicaci on es inyectiva, entonces existe
inversa, y adem as como es sobreyectiva, entonces la inversa est a denida para todo
vector de W.
Para la necesidad (esto es, si la aplicaci on es invertible, entonces es biyectiva), veamos
que f es inyectiva y sobreyectiva. Sean x e y en V tales que f(x) = f(y). En tal
caso, f(x y) = 0. Por otra parte, como f
1
es lineal f
1
(0) = 0 (seg un (i),
Proposicion 5.2), pero adem as f
1
(0) = x y, luego x = y; es decir, f es inyectiva.
Para la sobreyectividad, sea y W. Como existe inversa, f
1
(y) = x, para alg un
vector x V , es decir, f(x) = y. La arbitrariedad de y nos da la sobreyectividad.
(iii) En primer lugar tengamos en cuenta una consecuencia inmediata de un
resultado que probaremos m as adelante (Teorema 5.3), del cual se deduce que si
f : V W es biyectiva, entonces dim(V ) = dim(W). Teniendo esto presente,
consideremos f : V W biyectiva y una matriz asociada a f respecto de ciertas
bases en estos espacios que llamaremos A. Por el comentario anterior, A debe ser una
matriz cuadrada.
Por otra parte, como acabamos de probar, al ser f biyectiva existe inversa y adem as es
lineal, f
1
: W V , por lo que podemos considerar su matriz asociada, B, (tambien
cuadrada) respecto de las mismas bases de W y V , respectivamente.
Consideremos ahora la composici on f
1
f; esta aplicaci on resulta la identidad de V
en V , y al ser lineal (composici on de aplicaciones lineales) su matriz asociada respecto
de la misma base de V ser a la matriz identidad, I.
Finalemente, usando la Proposici on 5.5, la matriz BA correspondera a la composici on
de f con f
1
, de modo que BA = I. Dado que A y B son cuadradas y su producto es
la identidad, se tiene que B = A
1
(vease la Proposici on 2.5).
5 5
160 Tema 5 Aplicaciones lineales
CAMBIO DE BASE EN UNA APLICACI

ON LINEAL
Hemos visto que la matriz de una aplicaci on lineal depende de las bases que
hayamos elegido en los espacios de partida y de llegada. Ahora veremos que ocurre
cuando realizamos un cambio de bases en esos espacios.
Supongamos que tenemos una aplicaci on lineal f : V W y las bases en V y W
siguientes:
B
V
= |u
1
, . . . , u
n
B

V
= |u

1
, . . . , u

B
W
= |v
1
, . . . , v
m
B

W
= |v

1
, . . . , v

Sean C = M
B
V
B

V
y D = M
B
W
B

W
las correspondientes matrices de cambio de base. Seg un
las ecuaciones de cambio de base tenemos x = Cx

e y = Dy

, para
x =
n

i=1
x
i
u
i
, x

=
n

i=1
x

i
u

i
y =
m

j=1
y
j
v
j
, y

=
m

j=1
y

j
v

j
es decir, x tiene coordenadas (x
1
, . . . , x
n
) en la base B
V
y coordenadas (x

1
, . . . , x

n
) en
la base B

V
, y an alogamente para y.
Denotemos por A = M
B
W
B
V
(f) y pongamos f(x) = y, es decir y = Ax. Si llamamos
A

= M
B

W
B

V
, nuestro interes esta en encontrar la relaci on entre las matrices A y A

.
Usando las matrices de cambio de base es f acil comprobar que
y = Ax Dy

= A(Cx

) y

= D
1
ACx

.
N otese que hemos usado que una matriz de cambio de base es invertible (Teorema 4.6).
As, A

= D
1
AC. El siguiente diagrama puede ayudar a esclarecer mejor la situaci on:
f : V
W
B
V
A
B
W
B

V
C
B

W
D
1
A

El camino que enlaza la matriz A

puede ser recorrido en la direcci on que usa la matriz


A. Es decir, A

es equivalente a hacer actuar primero C, luego A y nalmente D


1
(n otese que D corresponde al camino inverso). Como la composici on se multiplica en
orden inverso al orden de actuaci on obtenemos la igualdad entre matrices anterior.
Nota 5.4 Si V = W y tomamos la misma base en ambos espacios, entonces A

=
C
1
AC. Si ahora usamos el Teorema 2.16 es inmediato comprobar que [A[ = [A

[. Es
decir si f /(V ) todas las matrices asociadas poseen el mismo determinante.
Ejemplo 5.4
5.5 Cambio de base en una aplicaci on lineal 5.5 Cambio de base en una aplicaci on lineal 161
(i) Sea f : R
3
R
2
la aplicacion lineal dada por f(x
1
, x
2
, x
3
) = (x
1
+x
2
, x
3
) y
consideremos las bases
B = |(1, 1, 1), (1, 1, 0), (1, 0, 0), B

= |(1, 1), (1, 1),


de R
3
y R
2
, respectivamente. Calculemos M
B

B
(f).
Para encontrar dicha matriz podemos proceder de dos maneras. Mediante la denici on
de la matriz de una aplicaci on respecto de unas bases, debemos calcular la imagen de
los elementos de B y escribirlos como combinaci on lineal de los elementos de B

. As,
f(1, 1, 1) = (2, 1) = a
11
(1, 1) +a
21
(1, 1)

2 = a
11
+a
21
1 = a
11
a
21

a
11
=
3
2
a
21
=
1
2
f(1, 1, 0) = (2, 0) = a
12
(1, 1) +a
22
(1, 1)

2 = a
12
+a
22
0 = a
12
a
22

a
12
= 1
a
22
= 1
f(1, 0, 0) = (1, 0) = a
13
(1, 1) +a
23
(1, 1)

1 = a
13
+a
23
0 = a
13
a
23

a
13
=
1
2
a
23
=
1
2
Luego,
M
B

B
(f) =
_
3
2
1
1
2
1
2
1
1
2
_
Otra forma de calcular esta matriz con un menor n umero de operaciones consiste en
calcular la matriz de la aplicaci on respecto de las bases canonicas de ambos espacios
(que es casi inmediata de obtener) y efectuar el correspondiente cambio de base. As,
f(1, 0, 0) = (1, 0), f(0, 1, 0) = (1, 0), f(0, 0, 1) = (0, 1).
De este modo, si denotamos por B
R
3 y B
R
2 a las bases can onicas de R
3
y R
2
,
respectivamente, se tiene que
M
B
R
2
B
R
3
(f) =

1 1 0
0 0 1

Atendiendo al diagrama,
f : R
3
R
3
B
R
3
M
B
R
2
B
R
3
(f)
B
R
2
B
M
B
R
3
B
B

M
B

B
R
2
M
B

B
(f)
obtendremos que M
B

B
(f) = M
B

B
R
2
M
B
R
2
B
R
3
(f)M
B
R
3
B
. Por tanto s olo tenemos que encon-
trar las matrices de cambio de base. Estas son:
M
B
R
3
B
=

1 1 1
1 1 0
1 0 0

, M
B

B
R
2
=

1 1
1 1

1
,
162 Tema 5 Aplicaciones lineales
(recordemos que M
B

B
R
2
= M
B
R
2
B

),
3
de manera que
M
B

B
(f) =

1 1
1 1

1 1 0
0 0 1

1 1 1
1 1 0
1 0 0

=
_
3
2
1
1
2
1
2
1
1
2
_
(ii) Sean B = |u
1
, u
2
y B

= |u
1
+ 2u
2
, 2u
1
+ 3u
2
bases de R
2
, y f el
endomorsmo cuya matriz respecto de la base B viene dada por
A = M
B
(f) =

6 2
6 1

La matriz de f respecto de la base B

se deduce a partir del siguiente diagrama:


f : R
2
R
2
B
A
B
B

C
B

C
1
A

donde C = M
B
B
es la matriz de cambio de base de B

a B. Recordemos que para


obtener esta matriz debemos escribir por columnas, las coordenadas de los vectores de
B

respecto de B, es decir
C = M
B
B
=

1 2
2 3

Finalmente,
A

= M
B
(f) = C
1
AC =

1 2
2 3

6 2
6 1

1 2
2 3

2 0
0 3

(iii) Dado el plano vectorial V = x


1
x
2
+ 2x
3
= 0, encontrar la matriz respecto
de la base can onica de R
3
de la simetra axial de eje V .
En este caso puede ser complicado calcular las im agenes de los vectores de la base
can onica directamente, sin embargo, simples razonamientos geometricos nos pueden
permitir calcular las im agenes de ciertos vectores de R
3
que formen una base. Por
ejemplo, la imagen por la simetra pedida de cualquier vector contenido en V es el
propio vector. Puesto que V es un subespacio de dimensi on dos, podemos extraer dos
vectores l.i. sin m as que resolver la ecuaci on dada. En este caso,
x
1
= x
2
2x
3
u
1
= (1, 1, 0), u
2
= (2, 0, 1) V
3
Construir la matriz del cambio de base de una base B
1
a otra B
2
cuando conocemos
las coordenadas de los vectores de B
1
respecto de B
2
es inmediato, pues basta escribir tales
coordenadas por columnas. Cuando se trata de escribir el cambio contrario, es preferible
construir la matriz m as sencilla, y luego usar su inversa.
5.6 N ucleo y rango de una aplicaci on lineal 5.6 N ucleo y rango de una aplicaci on lineal 163
Obtener un tercer vector que forme base con los anteriores es bien sencillo, pero tal
vez no sea facil encontrar su imagen mediante la simetra. En tal caso, la mejor
opcion consistir a en escoger como tercer vector uno que, siendo independiente con
los anteriores, su imagen sea sencilla de obtener. El candidato id oneo ser a un vector
perpendicular a V , puesto que la simetra simplemente invierte el sentido de dicho
vector (es decir, le cambia el signo).
Por geometra elemental se sabe que el vector formado por los coecientes de la
ecuaci on que dene a V es perpendicular a este (en el tema 8 justicaremos este
hecho), luego elegimos como tercer vector u
3
= (1, 1, 2). Tomando como base
B = |u
1
, u
2
, u
3
, es inmediato obtener la matriz de la simetra respecto de esta base,
pues
(u
1
) = u
1
, (u
2
) = u
2
, (u
3
) = u
3
La matriz queda
M
B
(f) =

1 0 0
0 1 0
0 0 1

Para hallar la matriz respecto de la base can onica simplemente usamos el cambio de
base oportuno. En este caso
M
B
c
(f) =

1 2 1
1 0 1
0 1 2

1 0 0
0 1 0
0 0 1

1 2 1
1 0 1
0 1 2

1
=

3
2

1
2
1
1
2
1
2
1
1 1 1


5 6
N

UCLEO Y RANGO DE UNA APLICACI

ON LINEAL
En las aplicaciones lineales el dominio no es un conjunto de especial interes, pero
s lo son la imagen y el n ucleo, a partir de los cuales se tienen propiedades interesantes
de las aplicaciones.
Proposici on 5.6 Sea f : V W una aplicaci on lineal, entonces ker(f) y Im(f) son
subespacios vectoriales de V y W, respectivamente.
Demostraci on:
La imagen y el n ucleo de una aplicaci on fueron denidos en (ii) y (vi) de la De-
nici on 5.2, respectivamente. Veamos que ambos conjuntos son subespacios vectoriales
cuando la aplicaci on dada es lineal.
164 Tema 5 Aplicaciones lineales
Sean u, v ker(f). Veamos que u +v tambien est a en ker(f). En efecto,
f(u +v) = f(u) +f(v) = 0
Del mismo modo, si u, v Im(f), veamos que u +v tambien est a en Im(f).
u Im(f) x V : f(x) = u
v Im(f) y V : f(y) = v
_
Luego,
u +v = f(x) +f(y) = f(x +y)
Como x +y V , se tiene el resultado deseado.
Proposici on 5.7 Sea f : V W una aplicaci on lineal. Entonces, f es inyectiva si
y s olo si ker(f) = |0.
Demostraci on:
Supongamos que f es inyectiva y que x ker(f). Entonces f(x) = 0 = f(0) (vease
(i), Proposici on 5.2). De la inyectividad deducimos que x = 0, luego ker(f) = |0.
Veamos la implicaci on contraria. Si f(x) = f(y) entonces f(x y) = 0. Es decir,
xy ker(f). Como por hip otesis el n ucleo se reduce al cero, xy = 0, y por tanto
f es inyectiva.
Ejemplo 5.5 Sea f : R
2
R
3
dada por f(x
1
, x
2
) = (2x
1
+x
2
, x
1
+ 2x
2
, 3x
1
).
La matriz de f en las bases can onicas de ambos espacios es
A =

2 1
1 2
3 0

Para encontrar el n ucleo buscamos los vectores de R


2
(recordad que el n ucleo est a en
el espacio de partida) tales que f(x
1
, x
2
) = (0, 0, 0); es decir

2 1
1 2
3 0

x
1
x
2

0
0
0

_
2x
1
+x
2
= 0
x
1
+ 2x
2
= 0
3x
1
= 0
cuya unica soluci on es el vector (0, 0). Por tanto f es inyectiva.

Es interesante observar que para encontrar los vectores del ker(f) hemos de
resolver un sistema homogeneo cuya matriz coincide con la matriz de la aplicaci on
lineal f. Sabemos que un sistema homogeneo tiene soluciones distintas de la soluci on
trivial siempre que rango(A) < n
o
de inc ognitas. En el ejemplo anterior, puesto que
rango(A) = 2, pudimos haber deducido autom aticamente que ker(f) = |0, sin
necesidad de escribir ni resolver el sistema anterior, simplemente estudiando el rango
de la matriz de la aplicaci on.
5.6 N ucleo y rango de una aplicaci on lineal 5.6 N ucleo y rango de una aplicaci on lineal 165
Nota 5.5 Si A es la matriz de una aplicaci on lineal respecto de unas bases dadas,
el sistema Ax = 0 es un sistema de ecuaciones implcitas de ker(A) y por tanto
dim(ker(A)) = n rango(A), donde n = dimV (el espacio de partida).
Proposici on 5.8 Sea B = |e
1
, . . . , e
n
una base de V . Entonces el conjunto
|f(e
1
), . . . , f(e
n
)
es un sistema generador de Im(f).
Demostraci on:
Sea w Im(f), entonces v V tal que f(v) = w. Ahora bien, v V y B es una
base de este espacio, por tanto
v =
n

i=1

i
e
i
w = f(v) = f

i=1

i
e
i

=
n

i=1

i
f(e
i
)
Es decir, hemos escrito un vector arbitrario de Im(f) como combinaci on lineal de los
vectores f(e
1
), . . . ,f(e
n
). De aqu se obtiene el resultado.
Nota 5.6 Observese que las columnas de la matriz de la aplicaci on f son precisamente
las im agenes de una base de V . Por tanto, los vectores cuyas coordenadas corresponden
a las columnas de esta matriz forman un sistema generador de la Im(f). Es decir
dim(Im(f)) = rango(A).
En particular, todas las matrices de una misma aplicaci on lineal tienen el mismo
rango, de ah que hablemos del rango de una aplicaci on.
Ejemplo 5.6 Sea f : R
5
R
3
dada por
f(x
1
, x
2
, x
3
, x
4
, x
5
) = (x
1
+x
2
+x
3
+x
4
+x
5
, x
2
x
4
+x
5
, x
1
+x
3
+ 2x
4
)
Estudiar ker(f) y Im(f).
En primer lugar escribimos la matriz de f en las bases can onicas:
4
A =

1 1 1 1 1
0 1 0 1 1
1 0 1 2 0

Un simple c alculo nos muestra que rango(A) = 2 (un menor no nulo est a formado por
las primeras dos las y columnas). Por tanto dim(ker(f)) = 52 = 3 y dim(Im(f)) = 2.
Para encontrar una base de Im(f) s olo tenemos que encontrar vectores l.i. de entre
las columnas de A (en este caso los correspondientes a las dos primeras columnas). Es
decir,
Im(f) = L((1, 0, 1), (1, 1, 0))
4
Siempre que no se especique una base distinta escogeremos estas bases, pues son las mas
sencillas.
166 Tema 5 Aplicaciones lineales
Para obtener una base de ker(f) resolvemos el sistema Ax = 0 (s olo consideramos
las ecuaciones relevantes):
x
1
+x
2
+x
3
+x
4
+x
5
= 0
x
2
x
4
+x
5
= 0

x
1
+x
2
= x
3
x
4
x
5
x
2
= x
4
x
5

Una base de soluciones es |(1, 0, 1, 0, 0), (2, 1, 0, 1, 0), (0, 1, 0, 0, 1).

Teorema 5.3
Sea f : V W lineal. Entonces
dim(V ) = dim(ker(f)) + dim(Im(f)).
La demostracion de este resultado es inmediata a partir de las Notas 5.5 y 5.6.
Como consecuencia se tiene el siguiente:
Corolario 5.4
Sea f : V W lineal con matriz asociada A respecto de ciertas bases. Entonces,
(i) f es inyectiva si y s olo si rango(A) = dim(V ).
(ii) f es sobreyectiva si y s olo si rango(A) = dim(W).
Ejemplo 5.7 Como consecuencia del resultado anterior, una aplicaci on f : R
3
R
2
no puede ser inyectiva, as como una aplicaci on de R
3
en R
4
no puede ser sobreyectiva.

Resumimos los resultados anteriores en el siguiente teorema.


Teorema 5.5
Sea f : V W lineal. Si dim(V ) = dim(W), son equivalentes:
(i) f es biyectiva.
(ii) f es inyectiva.
(iii) f es sobreyectiva.
(iv) ker(f) = |0.
(v) rango(f) = dim(V ).
5 7
C

ALCULOS CON PYTHON


Pr acticamente todos los conocimientos de Python que se necesitan para abordar
los c alculos que se realizan en este tema han sido ya expuestos en temas anteriores
5.7 C alculos con Python 5.7 C alculos con Python 167
(operaciones con matrices, resoluci on de sistemas y c alculo de rangos), sin embargo,
aun no hemos hecho uso de una funci on de especial utilidad para obtener el n ucleo
de una aplicaci on: nullspace. Esta funci on, que forma parte del m odulo SymPy, nos
proporciona una base del ker(A), donde A es una matriz cualquiera. Se usa del siguiente
modo:
1 >>> from sympy import Matrix
2 >>> A=Matrix ([[1,1,1,1,1],[0,1,0,-1,1],[1,0,1,2,0]])
3 >>> A.nullspace ()
4 [[-1]
5 [ 0]
6 [ 1]
7 [ 0]
8 [ 0], [-2]
9 [ 1]
10 [ 0]
11 [ 1]
12 [ 0], [ 0]
13 [-1]
14 [ 0]
15 [ 0]
16 [ 1]]
Como vemos, la respuesta de este m odulo, que funciona sobre una matriz de SymPy,
nos proporciona una lista de vectores (en realidad son matrices columna) que corres-
ponde a una base del espacio ker(A). De hecho, en este caso dicha base coincide con la
obtenida por nosotros en el Ejemplo 5.6, aunque es evidente que, en general, no tiene
por que ser as.
El interes de es este m odulo es que implcitamente nos est a proporcionando el
rango de la matriz, de manera que podemos denir ahora una funci on rango que
trabaje sobre matrices de SymPy:
1 def rango(A):
2 x=A.cols - len(A.nullspace ())
3 return x
El atributo cols hace referencia al n umero de columas de A (la dimensi on del espacio
de partida).
Adem as, nullspace tambien puede ser usado para calcular una base de un subes-
pacio vectorial que venga denido por un sistema de ecuaciones homogeneo:
1 >>> from numpy import matrix
2 >>> from sympy import Matrix
3 >>> a=matrix(1 1 1 1; 0 0 1 1)
4 >>> A=Matrix(a)
5 >>> A.nullspace ()
6 [[-1]
7 [ 1]
8 [ 0]
9 [ 0], [ 0]
168 Tema 5 Aplicaciones lineales
10 [ 0]
11 [-1]
12 [ 1]]
El c odigo anterior signica que el subespacio
L
1

x
1
+x
2
+x
3
+x
4
= 0
x
3
+x
4
= 0
tiene como base
|(1, 1, 0, 0), (0, 0, 1, 1)
(vease el ejemplo 4.15).
N otese que hemos usado matrix de NumPy para simplicar la entrada de la matriz,
aunque luego hemos de usar Matrix de SymPy que es el objeto para el que est a denido
nullspace.
5 8
APLICACI

ON A LA CRIPTOGRAF

IA
La criptografa es la tecnica que altera una representaci on ling ustica de un mensaje
para mantener su privacidad. La informaci on a transmitir es encriptada o codicada
de forma que se haga ilegible hasta que sea descodicada o desencriptada. Para ello
se emplea alg un tipo de informaci on secreta (la clave de encriptaci on) que debe ser
conocida solo por el emisor y el receptor de la informacion.
Una de las tecnicas criptogr acas mas sencillas consiste en enmascarar el mensaje
original convirtiendolo en un mensaje cifrado empleando para ello la sustituci on de
los caracteres que conforman el mensaje (por ejemplo, cambiar la a por la k, la b por
la d, etc.). Pero este tipo de codicaci on es f acil de romper analizando la frecuencia
de aparici on de las letras del alfabeto. En esta secci on vamos a mostrar una tecnica
criptogr aca sencilla, pero m as segura que la sustituci on, que est a basada en el uso de
aplicaciones lineales.
Supongamos que queremos enviar el siguiente mensaje:
ALGEBRA LINEAL CON APLICACIONES Y PYTHON
En primer lugar vamos a sustituir los caracteres del mensaje por n umeros, siguiendo
un sencillo proceso de sustituci on, para el que usamos la siguiente tabla:
A B C D E F G H I J K L M N
1 2 3 4 5 6 7 8 9 10 11 12 13 14

N O P Q R S T U V W X Y Z
15 16 17 18 19 20 21 22 23 24 25 26 27 28
(5.4)
El mensaje codicado sera este:
1 12 7 5 2 19 1 28 12 9 14 5 1 12 28 3 16 14 28 1 17 12 9 3 1 3 9 16 14 5 20 28 26 28
17 26 21 8 16 14
5.8 Aplicaci on a la Criptografa 5.8 Aplicaci on a la Criptografa 169
Simplemente hemos sustituido cada letra por el n umero correpondiente, includos los
espacios. Si envi aramos el mensaje de este modo, un sencillo an alisis bas andonos en la
mayor frecuencia de aparici on de ciertos n umeros nos permitira descifrar el mensaje.
Sin embargo, vamos a codicar de nuevo el mensaje haciendo uso de una aplicaci on
lineal biyectiva.
En primer lugar, agruparemos las cifras de las que consta el mensaje en grupos de
3:
(1, 12, 7) (5, 2, 19) (1, 28, 12) (9, 14, 5) (1, 12, 28) (3, 16, 14) (28, 1, 17)
(12, 9, 3) (1, 3, 9) (16, 14, 5) (20, 28, 26) (28, 17, 26) (21, 8, 16) (14, 0, 0)
N otese que hemos a nadido dos ultimos n umeros (0) para completar las ternas. Cada
uno de estos grupos es un elemento de R
3
, de modo que vamos a transformarlos en
un nuevo elemento de R
3
mediante una aplicacion lineal biyectiva, es decir, vamos a
multiplicarlos por una matriz invertible. Para simplicar nuestros c alculos, elegiremos
una matriz de enteros, cuya inversa tambien este formada por enteros, por ejemplo:
A =

2 5 3
1 3 2
3 6 4

Ahora transformamos cada uno de los vectores mediante esta matriz; esto se puede
hacer directamente as:

2 5 3
1 3 2
3 6 4

1 5 1 9 1 3 28 12 1 16 20 28 21 14
12 2 28 14 12 16 1 9 3 14 28 17 8 0
7 19 12 5 28 14 17 3 9 5 26 26 16 0

83 77 178 103 146 128 112 78 44 117 258 219 130 28


51 49 109 61 93 79 65 45 28 68 156 131 77 14
103 103 219 131 187 161 158 102 57 152 332 290 175 42

y entonces, el mensaje que enviamos es este:


83 51 103 77 49 103 178 109 219 103 61 131 146 93 187 128 79 161 112 65 158 78 45
102 44 28 57 117 68 152 258 156 332 219 131 290 130 77 175 28 14 42
Observese, por ejemplo, que la repetici on de la cifra 28 en la primera sustitucion
podra ser una pista para determinar los espacios, sin embargo, ahora no existe tal
repeticion; de hecho, pocas son las cifras que se repiten.
Para descodicar el mensaje es fundamental que la aplicaci on usada sea biyectiva,
pues debemos asegurarnos de que existe matriz inversa. As, volviendo a agrupar el
mensaje recibido en vectores tridimensionales:
(83, 51, 103) (77, 49, 103) (178, 109, 219) (103, 61, 131) (146, 93, 187)
(128, 79, 161) (112, 65, 158) (78, 45, 102) (44, 28, 57) (117, 68, 152)
(258, 156, 332) (219, 131, 290) (130, 77, 175) (28, 14, 42)
170 Tema 5 Aplicaciones lineales
bastar a multiplicar por A
1
,
A
1
=

0 2 1
2 1 1
3 3 1

para recuperar los dgitos de la sustituci on:

0 2 1
2 1 1
3 3 1

83 77 178 103 146 128 112 78 44 117 258 219 130 28


51 49 109 61 93 79 65 45 28 68 156 131 77 14
103 103 219 131 187 161 158 102 57 152 332 290 175 42

1 5 1 9 1 3 28 12 1 16 20 28 21 14
12 2 28 14 12 16 1 9 3 14 28 17 8 0
7 19 12 5 28 14 17 3 9 5 26 26 16 0

Es sencillo implementar en Python funciones que codiquen y descodiquen men-


sajes, empleando el metodo anterior. Para facilitar la implementaci on hemos usado un
tipo de dato no visto hasta el momento: los diccionarios.
Los diccionarios son una especie de arreglos, pero que en lugar de estar indexados
por n umeros, lo est an por cualquier tipo de clave. Por ejemplo,
1 >>> dic={Gauss :1777,Grassmann :1809,Hamilton
:1805 }
Hemos denido un diccionario que vincula los nombres de tres matem aticos con su
a no de nacimiento. En este caso la clave es el nombre y el valor asociado a la clave el
a no de nacimiento. Podemos acceder a los elementos del diccionario como si fuera un
arreglo:
2 >>> dic[Gauss ]
3 1777
4 >>> dic[Hamilton ]
5 1805
y podemos acceder a listas conteniendo las claves del siguiente modo:
6 >>> dic.keys()
7 [Grassmann , Hamilton , Gauss ]
La principal ventaja de un diccionario es la facilidad con la que Python accede a sus
elementos, lo que lo hace ventajoso para nuestros prop ositos.
A continuaci on mostramos un c odigo para encriptar y desencriptar mensajes:
5.8 Aplicaci on a la Criptografa 5.8 Aplicaci on a la Criptografa 171
1 #! /usr/bin/python
2 # -*- coding: UTF -8 -*-
3
4 from sys import exit
5 from numpy import array ,dot
6
7 diccionario = {a:1,b:2,c:3,d:4,e:5,f
:6,g:7,h:8,i:9,j:10,k:11,l
:12,m:13,n:14, \xc3 :,\xb1 :15,o
:16,p:17,q:18,r:19,s:20,t:21,u
:22,v:23,w:24,x:25,y:26,z:27,
:28}
8
9 diccion = {1:a,2:b,3:c,4:d,5:e,6:f
,7:g,8:h,9:i,10:j,11:k,12:l
,13:m,14:n,15:\xc3\xb1 ,16:o,17:p
,18:q,19:r,20:s,21:t,22:u,23:v
,24:w,25:x,26:y,27:z,28: ,0:}
10
11 Mcod = array ([[2,5 ,3] ,[1 ,3 ,2] ,[3 ,6,4]])
12 Mdecod = array ([[0,-2,1],[2,-1,-1],[-3,3,1]])
13
14 def sustitucion(mensaje):
15
16 mensus = []
17 for v in mensaje:
18 if v in diccionario.keys():
19 if v!=\xc3 :
20 mensus.append(diccionario[v])
21 else:
22 exit(El mensaje contiene caracteres no
permitidos )
23
24 if len(mensus) %3==0:
25 return mensus
26 elif len(mensus) %3==1:
27 mensus.append(0)
28 mensus.append(0)
29 else:
30 mensus.append(0)
31
32 return mensus
33
34
35 def desustit(lista):
36 texto=
37 for v in lista:
38 texto += diccion[str(v)]
172 Tema 5 Aplicaciones lineales
39 return texto
40
41
42 def crypt(lista ,d=1):
43 n=len(lista)/3
44 a=array(lista ,int)
45 a=a.reshape(3,n).T
46 if d==1:
47 res=dot(Mcod ,a)
48 else:
49 res=dot(Mdecod ,a)
50 res=res.T.reshape (3*n)
51 criptado=list(res)
52
53 return criptado
54
55
56 texto=raw_input ()
57 mensaje=crypt(sustitucion(texto))
58 print "Este es el mensaje a enviar :"
59 print mensaje
60 print
61 descod=desustit(crypt(mensaje ,0))
62 print "Este es el mensaje descodificado :"
63 print descod
En la lnea 7 denimos un diccionario que corresponde a la tabla de sustituciones
(5.4). Hay un peque no detalle concerniente a la letra n. Aunque hemos puesto la
codicacion correspondiente (lnea 2), la lectura del car acter ~n en Python plantea
alg un problema tecnico que hemos resulto deniendo en el diccionario los caracteres
\xc3 y \xb1. Esto es debido a que la ~n es un car acter doble compuesto por \xc3\xb1.
Este diccionario se emplea en la sustituci on inicial del mensaje de texto por
una lista de n umeros correspondientes a cada letra del mismo. Para realizar esta
conversi on denimos una funci on sustitucion (lnea 14) cuya entrada es una cadena
de caracteres, y cuya salida es una lista con los n umeros correspondientes. La parte
principal de la funci on consta de un bucle que recorre cada uno de los caracteres que
conforma el texto entrante (lnea 17).
5
Para cada car acter, se comprueba que este
est a en el diccionario: si est a, entonces se a nade a la lista el elemento del diccionario
correspondiente a ese car acter (lnea 20), salvo que sea el primer car acter de la ~n,
que se omite; y si no est a, entonces el c odigo se detiene pues no est a preparado para
admitir mensajes que contengan otro tipo de caracteres.
6
Observese el uso del m odulo
append para a nadir un elemento al nal de una lista.
Por ultimo, a nadimos tantos caracteres 0 como necesitemos para que la longitud
de la lista permita su agrupacion en ternas (lneas 2430). N otese el uso de la divisi on
modular (resto de la divisi on por un n umero) con el operador %.
5
Python entiende las cadenas de texto como una especie de arreglo en el que sus caracteres
se pueden recorrer uno a uno.
6
Invitamos al lector a modicar el codigo para permitir otros caracteres.
5.9 Aplicaci on a la Criptografa 5.9 Aplicaci on a la Criptografa 173
Una vez convertido el texto a una lista de n umeros hemos de codicarlo mediante
la funci on crypt (lnea 42), que esencialmente lo que hace es multiplicar por la matriz
de codicaci on. Esta funci on admite como par ametro de entrada una lista y un valor
entero d, que por defecto es igual a 1.
B asicamente, la funci on crea una matriz (en este caso, tipo array de NumPy) de
tama no 3 n, donde n es igual a la longitud de la lista dividida por 3. En la creaci on
del arreglo en la lnea 44 especicamos expresamente el tipo (entero) de los datos; lo
hacemos as, pues la lista est a formada por cadenas de texto y no n umeros, como es
necesario para poder multiplicar por la matriz.
Por otra parte, dado que la codicaci on y la descodicaci on suponen multiplicar
por una matriz (o por su inversa) hemos usado la misma funci on para realizar las
dos acciones. Para ello usamos el par ametro d, que si vale 1, esto es, el valor por
defecto, entonces multiplicamos por la matriz Mcod (lnea 47), mientras que si vale
cualquier otra cosa, entonces multiplicamos por la matriz inversa Mdecod (lnea 49).
Ambas matrices han sido denidas al principio (lneas 11 y 12). Por ultimo, la funci on
redimensiona la matriz resultante para dar una lista.
Para nalizar, la funci on desustit (lnea 35) realiza el proceso inverso a
sustitucion: dada una lista de n umeros, usa el diccionario diccion (denido en la
lnea 9) para reestablecer el texto. En este caso, la funci on es m as sencilla pues no hay
que hacer comprobaciones. Solo se nalar que puesto que los elementos de la lista ahora
son n umeros, hemos de usar la funci on str (lnea 38) para convertirlos en cadenas de
caracteres y as puedan ser identicadas como parte del diccionario.
El c odigo anterior puede ser probado desde fuera del interprete, pues hemos
a nadido las lneas necesarias para proceder a la codicaci on y decodicaci on de un
mensaje introducido por teclado. Para ello, en la lnea 56 se solicita la entrada
por teclado del mensaje, mediante la funci on raw input(), que se almacena en la
variable texto. A continuaci on se sustituye y encripta el mensaje (lnea 57), y luego
lo imprimimos para mostrar como queda. Finalmente, en la lnea 61 el mismo mensaje
es descodicado y deshecha la sustituci on de n umeros por letras, imprimiendose este.
Observese c omo en la llamada a la funci on crypt usamos un segundo argumento para
indicar la codicaci on inversa.
Si guardamos el c odigo anterior en un chero con nombre cripto.py, la ejecuci on
del c odigo desde una consola sera esta:
1 $ python cripto.py
2 teorema fundamental del algebra
3 Este es el mensaje a enviar:
4 [115, 68, 157, 102, 60, 139, 160, 97, 195, 126, 72, 166, 82,
50, 101, 136, 79, 172, 176, 104, 220, 154, 97, 199, 83,
51, 103, 77, 49, 103, 2, 1, 3]
5
6 Este es el mensaje descodificado:
7 teorema fundamental del algebra
donde la lnea en rojo es la que hemos introducido por teclado.
5 9
174 Tema 5 Aplicaciones lineales
EJERCICIOS
1. Decidir cu ales de las siguientes aplicaciones son lineales:
(a) M
B
: /
22
(R) /
21
(R) dada por M
B
(A) = AB con B =

1
1

(b) N
B
: /
22
(R) /
22
(R) dada por N
B
(A) = AB BA con B =

2 1
0 2

(c) C : /
n
(R) S donde C(A) =
1
2
(A+A
T
) y
S = |A /
n
(R) : A = A
T

2. Escribir las matrices de las siguientes aplicaciones lineales respecto de las bases
can onicas de los espacios correspondientes:
(i) f(x
1
, x
2
, x
3
) = (x
1
+x
2
, 2x
1
x
3
)
(ii) f(x
1
, x
2
, x
3
) = (x
1
x
2
, x
2
+ 2x
3
, 2x
1
3x
3
)
(iii) f(x
1
, x
2
, x
3
) = 3x
1
x
2
+x
3
3. Sea A : R
3
R
3
dada por A(x, y, z) = (x + y, z, x + z). Encontrar la matriz
asociada a A con respecto a la base can onica de R
3
. Hallar la imagen mediante A
de los siguientes subespacios vectoriales:
(a) V
1
= |(x, y, z) R
3
: x +y +z = 0.
(b) V
2
= |(x, y, z) R
3
: (x, y, z) = t(1, 1, 1) t R.
4. Encontrar las matrices de las siguientes aplicaciones lineales:
(a) M
B
y N
B
del Ejercicio 1.
(b) A : P
2
R
[x] R
3
tal que A(p(x)) = (p(0), p(1), p(2)).
(c) A : P
3
R
[x] P
3
R
[x] tal que A(p(x)) = p(x + 1).
5. Dar una base para /
mn
(R) y hallar la matriz asociada a la aplicaci on lineal T
(aplicaci on traza) denida como T : /
mn
(R) R tal que T(A) = tr(A), con
respecto a esta base.
6. Sea T : P
3
R
[x] P
3
R
[x] lineal tal que T(1) = x
2
+ 1, T(x) = x, T(x
2
) = x
3
y
T(x
3
) = x
2
+x 1. Hallar la matriz asociada a T con respecto a la base can onica.
7. Sea f un endomorsmo de R
2
tal que f(1, 0) = (2, 4) y f(0, 1) = (5, 1). Hallar la
imagen por f del vector (2, 3) y la imagen inversa por f del vector (0, 3).
8. Demostrar que las aplicaciones f : R
2
R
2
dada por f(x, y) = (x + y, x + 2y) y
g : R
2
R
2
dada por g(x, y) = (2x y, x +y) son inversas una de la otra.
9. Sea f : V V un endomorsmo tal que f
2
+f + Id = 0. Es f invertible?
10. Sea la aplicacion lineal T : R
3
R
3
denida por T(x, y, z) = (x + 2y +z, 3x +y +
2z, 3x + 2y + 2z). Probar que es invertible y hallar la matriz asociada a T
1
.
11. Sea f : R
2
R
2
una aplicaci on lineal tal que f(1, 1) = (0, 1) y f(1, 2) = (3, 1).
Es f invertible? En caso armativo calcular f
1
(1, 1).
5.9 Ejercicios 5.9 Ejercicios 175
12. Respecto de la base can onica de R
3
hallar las matrices de las siguientes aplicaciones
lineales:
(a) Simetra con respecto a la recta vectorial |x = 0, y = 0.
(b) Simetra con respecto a la recta vectorial (x, y, z) = t(1, 1, 1).
(c) Simetra con respecto al plano vectorial x = y.
(d) Giro de radianes con respecto al eje OZ.
(e) Giro de 90 grados con respecto a la recta |x +y = 0, z = 0
(f) Proyecci on sobre el plano vectorial x y +z = 0.
13. Se consideran las aplicaciones lineales f, f

: R
3
R
2
y g, g

: R
2
R
3
cuyas
matrices respecto de las bases can onicas, son:
A =

2 1 3
1 0 3

1 2 4
2 1 3

B =

1 2
2 1
3 0

2 1
1 3
0 3

Se pide:
(a) Hallar las matrices respecto de las bases can onicas de:
(f +f

) g; (f +f

) g

; f (g +g

); g (f +f

);
g

(f +f

); (g +g

) f

; (g +g

) (f +f

); (f +f

) (g +g

).
(b) Averiguar cu ales de las anteriores aplicaciones son inyectivos, cu ales sobreyec-
tivos y cu ales isomorsmos.
14. Sea f el endomorsmo de R
3
cuya matriz en la base B = |u
1
, u
2
, u
3
es

1 2 0
1 2 1
3 0 4

Hallar la matriz del endomorsmo en la base B

= |v
1
, v
2
, v
3
siendo
v
1
= u
1
, v
2
= u
2
+u
1
, v
3
= 2u
1
u
2
+
1
2
u
3
15. Sea V un espacio vectorial de dimensi on 3 y B = |u
1
, u
2
, u
3
una base de V . Se
considera la aplicaci on lineal f : V V dada por:
f(u
1
) = u
1
2u
2
+ 6u
3
; f(u
2
) = u
1
+ 3u
2
; f(u
3
) = u
1
u
2
+ 4u
3
Calcular las ecuaciones de f respecto de las bases B

(en el espacio de partida) y


B

(en el espacio de llegada), donde:


B

= |u
2
+u
3
, u
3
, u
1
u
2
+ 4u
3

= |u
2
+u
3
, u
3
, u
1
u
2
+ 3u
3

176 Tema 5 Aplicaciones lineales


16. Dadas las siguientes aplicaciones lineales encontrar unas ecuaciones implcitas del
n ucleo y la imagen comprobando en cada caso la ecuaci on de dimensiones:
dim(ker(A)) + dim(Im(A)) = dim(V )
(donde V es el espacio de partida) e indicar si son inyectivas o sobreyectivas:
(a) A : R
3
R
3
denida por A(x, y, z) = (x +z, y, x +y +z).
(b) B : C
2
C
2
denida por B(z
1
, z
2
) = (iz
1
+z
2
, z
1
+iz
2
).
(c) D : C
3
C
3
con matriz asociada
D =

1 i 0
0 1 2
i 1 0

17. Sea f : R
3
R
3
una aplicaci on lineal tal que ker(f) = |x R
3
: 2x
1
+x
2
+x
3
= 0,
Sea u = (1, 1, 2) y v = (2, 2, ). Para que valor de se cumple que f(u) = f(v).
18. Sea f : R
4
R
3
una aplicacion lineal tal que:
ker(f) = |x R
4
: 5x
1
x
2
5x
3
= 0, 5x
1
+x
2
5x
4
= 0
Im(f) = |y R
3
: y
1
+y
2
y
3
= 0
f(1, 2, 0, 1) = (1, 1, 2)
Existe R tal que f(0, 1, 2, 1) = (, + 1, )
Calcular f(3, 1, 3, 0).
19. Sea V un espacio vectorial de dimensi on 4 y B = |u
1
, u
2
, u
3
, u
4
una base de V .
Sea f el endomorsmo de V dado por
f(u
1
) = u
1
3u
2
+ 2u
3
+ 2u
4
f(u
2
) = 2u
2
+u
3
+ 3u
4
f(u
3
) = 4u
1
2u
2
+ 3u
3
7u
4
f(u
4
) = 4u
1
6u
2
+ 5u
3
u
4
Se pide:
(a) Escribir las ecuaciones de f respecto de la base B, y hallar una base y la
dimensi on de ker(f) e (f).
(b) Sea L la variedad lineal generada por los vectores
u
1
u
2
+ 2u
4
, 3u
1
+ 4u
3
+ 2u
4
, 3u
1
+ 2u
2
+ 3u
4
Calcular una base y unas ecuaciones implcitas de f(L) respecto de la base B.
20. Dar la dimensi on y una base del n ucleo y la imagen de las siguientes aplicaciones
lineales, indicando si son inyectivas, sobreyectivas y/ o biyectivas:
(a) M
B
y C
B
del ejercicio 1.
5.9 Ejercicios 5.9 Ejercicios 177
(b) A : P
3
R
[x] P
3
R
[x] tal que A(1) = x
2
+ 1, A(x) = x + 2, A(x
2
) = x
3
x y
A(x
3
) = 1.
(c) La aplicaci on derivada de P
3
R
[x] en P
2
R
[x].
(d) La aplicaci on traza en /
2
(R).
21. Sea f el endomorsmo de /
2
(R) denido por f(X) = A X X A, donde A es
la matriz

1 1
1 2

Se pide:
(a) Calcular las ecuaciones de f respecto de la base can onica de /
2
(R)
(b) Probar que V = Im(f) ker(f).
(c) Usar (b) para probar que Im(f) = Im(f
2
). Deducir de aqu que Im(f) =
Im(f
n
), para cada n > 0.
22. Dada A /(V ) demostrar:
(a) A
2
= 0 si y s olo si Im(A) ker(A).
(b) ker(A
n1
) ker (A
n
), para n 1.
23. Sea f : V V

una aplicaci on lineal entre los e.v. V y V

y sea |v
1
, . . . , v
n
una
base de V . Probar que:
(a) f es inyectivo si y s olo si |f(v
1
), . . . , f(v
n
) es l.i.
(b) f es sobreyectiva si y s olo si |f(v
1
), . . . , f(v
n
) es un sistema de generadores
de V

.
(c) f es biyectivo si y s olo si |f(v
1
), . . . , f(v
n
) es una base de V

.
24. Sean f y g dos endomorsmos de un espacio vectorial tales que g f = 0. Decidir
cu ales de las siguientes armaciones son ciertas:
(a) Im(f) ker(g).
(b) Im(g) ker(f).
(c) ker(f) Im(g).
(d) ker(g) Im(f).
25. Sea f y g dos endormorsmos de un espacio vectorial tales que dim(ker(f)) = 1 y
dim(ker(g f)) = 1. Calcular dim(ker(g)).
6 Diagonalizaci on
En el tema anterior hemos estudiado las matrices asociadas a una aplicaci on y
hemos visto c omo estas cambian en funci on de la base elegida para representar a la
aplicaci on. El objetivo principal de este tema es tratar de obtener una matriz que
represente a un endomorsmo dado, respecto de cierta base, que sea lo m as sencilla
posible. Como veremos, esta representaci on nos proporcionar a informaci on interesante
sobre el funcionamiento de una aplicaci on lineal.
Para entender mejor este objetivo retomemos (ii) del Ejemplo 5.4 en el que
tenamos un endormorsmo A cuya matriz respecto de cierta base B = |u
1
, u
2
era
A =

6 2
6 1

mientras que en la base B

= |v
1
, v
2
, con
v
1
= u
1
+ 2u
2
, v
2
= 2u
1
+ 3u
2
corresponda a
A

2 0
0 3

Es decir, en esta situaci on tenemos una base respecto de la cual, la aplicaci on lineal
dada tiene asociada una matriz diagonal. Tales matrices tienen interesantes ventajas;
por una parte porque son f aciles de operar (son f aciles de multiplicar, de invertir, etc.)
pero adem as nos proporcionan una mejor comprensi on de lo que hace la aplicaci on.
M as concretamente, si prestamos atenci on a la aplicaci on anterior respecto de la
base B

, atendiendo a la denici on de matriz de una aplicaci on respecto de una base,


observamos que
A

v
1
= 2v
1
, A

v
2
= 3v
2
es decir, la imagen de cada uno de los vectores de la base elegida corresponde a un
m ultiplo de ellos mismos. Desde el punto de vista geometrico es f acil hacerse una idea
de lo que hace esta aplicaci on. En la Figura 6.1a vemos una muestra de ello. Suponiendo
que los vectores v
1
y v
2
son los vectores de los ejes, esta aplicaci on estira los vectores
en la direcci on v
1
hasta el doble de su tama no, y los de la direcci on v
2
al triple de
su longitud. De modo que un crculo centrado en el origen se transformar a en un
elipse de semiejes 2 y 3. En la Figura 6.1b vemos con m as detalles c omo se transforma
un vector x cualquiera: descomponemos el vector en sus componenetes horizontal y
vertical, multiplicando la horizontal por 2 y la vertical por 3.
179
180 Tema 6 Diagonalizaci on
x
A

x
v
1
A

v
1
v
2
A

v
2
(a) Imagen de un crculo
x
A

x
3
2
(b) Imagen del vector x
Figura 6.1: Aplicacion lineal A

El hecho de que cada uno de los vectores de la base se transforme en un m ultiplo


suyo (es decir, esencialmente en el mismo vector) motiva la denici on de vectores y
valores propios que tratamos en la siguiente secci on.
6 1
VALORES Y VECTORES PROPIAS
Los autovalores y autovectores juegan un papel muy importante a la hora de
entender el comportamiento de los endomorsmos, lo cual se pondr a de maniesto
principalmente en los dos proximos temas, en los que su uso sera fundamental.
1
Denici on 6.1 Un vector x ,= 0 se dice vector propio o autovector de un endor-
morsmo f : V V si existe K tal que f(x) = x. A se le llama valor propio
o autovalor asociado al autovector x.
Es decir, los autovectores son vectores que se transforman esencialmente en
s mismos (salvo constantes, que son los autovalores).
Nota 6.1
1
Si bien estos conceptos estan asociados a aplicaciones lineales, fueron descubiertos primero
en el estudio de formas cuadraticas y de las ecuaciones diferenciales a traves de los trabajos de
Euler, Lagrange y Cauchy entre nales del s. XVIII y principios del XIX. Fue el matem atico
aleman David Hilbert, a comienzos del s. XX, quien introdujo por primera vez los terminos
eigenvalue y eigenvector (autovalor y autovector, respectivamente).
6.1 Valores y vectores propias 6.1 Valores y vectores propias 181
(i) Es importante hacer hincapie en que la denici on impide que el vector
nulo sea autovector, sin embargo s es posible que una aplicaci on tenga como autovalor
0.
(ii) Si consideramos x un autovector de una aplicaci on f asociado a cierto
autovalor , y L = L(x) es el subespacio que genera dicho vector, entonces cualquier
otro vector y L tambien es autovector asociado al mismo autovalor. Es decir, hay
innitos autovectores asociados a un autovalor.
Esto es f acil de comprobar, puesto que si y L entonces y es de la forma y = x,
para cierto K; luego f(y) = f(x) = x = y, pues x es autovector.
Podemos observar que todos los vectores de L permanecen en L. Este es el concepto
de invarianza que presentamos a continuaci on.
Denici on 6.2 Sea f : V V una aplicaci on lineal. Un conjunto L se dice
invariante respecto de f si f(L) L.
Ejemplo 6.1
(i) Como hemos comentado en la Nota 6.1, si f es la aplicaci on lineal cuya matriz
en la base B = |v
1
, v
2
es
A =

2 0
0 3

entonces los subespacios L


1
= L(v
1
) y L
2
= L(v
2
) son invariantes respecto de f.
(ii) Dada una matriz de rotaci on respecto del eje OZ de angulo , cuya matriz
respecto de la base can onica se escribe
R =

cos sen 0
sen cos 0
0 0 1

es f acil deducir geometricamente sus invariantes: el plano L


1
= |x
3
= 0 y el eje OZ
(L
2
= |x
1
= x
2
= 0).
Comprobemoslo: si x L
1
x = (1, 0, 0) +(0, 1, 0). Entonces,
Rx = (cos , sen , 0) +(sen , cos , 0)
= (cos sen , sen + cos , 0) L
1
Se deja al lector que compruebe que L
2
tambien es invariante.
(iii) Si f : V V es lineal, los espacios |0 y V son trivialmente invariantes para
dicha aplicaci on.

Los espacios invariantes tienen un especial signicado desde un punto de vista


geometrico que ayuda a describir el comportamiento de una aplicaci on. Como se
vera m as adelante, est an ntimamente relacionados con los vectores propios. De mo-
mento probamos un sencillo resultado sobre operaciones con subespacios invariantes.
182 Tema 6 Diagonalizaci on
Proposici on 6.1 Si L
1
y L
2
son subespacios invariantes de una aplicaci on lineal f
entonces L
1
+L
2
y L
1
L
2
tambien son subespacios invariantes.
Demostraci on:
Ve amoslo para la suma. Si x L
1
+ L
2
entonces por denicion de suma de
subespacios x = x
1
+ x
2
con x
1
L
1
y x
2
L
2
. Luego f(x) = f(x
1
) + f(x
2
),
con f(x
1
) L
1
y f(x
2
) L
2
, por ser L
1
y L
2
invariantes.
An alogamente se razona para la interseccion de subespacios.
Como comentamos al inicio del tema, el objetivo que perseguimos es el de poder
representar una aplicaci on lineal de la forma m as sencilla posible. En el ejemplo que
mostramos al inicio hemos podido comprobar que es f acil interpretar una aplicaci on
lineal cuando la matriz de esta es diagonal. La siguiente denici on va en esa lnea.
Denici on 6.3 Una aplicaci on lineal f : V V se dice diagonalizable si existe una
base de V respecto de la cual la matriz asociada es diagonal.
Igualmente, se dice que una matriz es diagonalizable si la aplicaci on lineal que la
tiene como matriz asociada es diagonalizable. Esto es, si existe C /
n
(K) invertible
tal que D = C
1
AC, con D una matriz diagonal.
2
El siguiente resultado nos proporciona una condici on necesaria y suciente para
que una aplicaci on sea diagonalizable:
Teorema 6.1
Una aplicaci on lineal f : V V es diagonalizable si y s olo si existe una base de V
formada por autovectores de f.
Demostraci on:
Probemos en primer lugar la suciencia. Si B = |e
1
, . . . , e
n
es una base formada
por autovectores de f, con autovalores asociados
1
, . . . ,
n
, entonces por denici on,
f(e
j
) =
j
e
j
. Es decir, las coordenadas respecto de la base B de la imagen del vector
e
j
de esta base son (0, . . . , 0,
j
, 0, . . . , 0). Por tanto, la matriz respecto de esta base
se escribe
M
B
(f) =

1
0 0
0
2
0
.
.
.
.
.
.
.
.
.
.
.
.
0 0
n

(6.1)
2
Esto ultimo se tiene al realizar un cambio de base,. desde la base respecto de la que
tenemos la matriz de la aplicacion a la base respecto de la cual la aplicacion tiene una matriz
asociada que es diagonal. Como vimos en el tema anterior, la relacion entre ambas matrices
es de la forma D = C
1
AC.
6.1 Valores y vectores propias 6.1 Valores y vectores propias 183
que es diagonal.
Veamos ahora la necesidad. Si la matriz respecto de una base B

= |v
1
, . . . , v
n

es diagonal tendr a la forma dada en (6.1). Es decir,


f(v
1
) =
1
v
1
, . . . , f(v
n
) =
n
v
n
,
es decir, existe una base formada por autovectores.
La pregunta natural que surge es: siempre es posible obtener esto? Es decir, dada
una aplicaci on, podremos encontrar siempre una base respecto de la cual la matriz
de dicha aplicaci on sea diagonal? Veamos que la respuesta es negativa a traves del
siguiente ejemplo:
Ejemplo 6.2 Consideremos la aplicaci on lineal cuya matriz respecto de cierta base
sea
B =

1 1
0 1

Si existe una base respecto de la cual dicha aplicaci on tiene asociada una matriz
diagonal, entonces, usando las matrices de cambio de base se debera tener:
C
1

1 1
0 1

C =

0
0

para cierta matriz invertible C, que podemos escribir como


C =

a b
c d

Haciendo operaciones,

1 1
0 1

a b
c d

0
0

1
[C[

d b
c a

=
1
[C[

ad bc ab +ab
cd cd bc +ad

Por tanto hemos de resolver el sistema


1
|C|
(ad bc) = 1 (1)
1
|C|
ab( +) = 1 (2)
1
|C|
cd( ) = 0 (3)
1
|C|
(bc +ad) = 1 (4)
_

_
Como [C[ ,= 0 (pues C es invertible), de (3) se deduce que:
(i) O bien c = 0, en cuyo caso de (1) y (2) se tiene
1
|C|
ad =
1
|C|
ad. De aqu,
si a = 0, (2) no es posible. Si d = 0, (1) no se tendra, y la otra opci on es que = ,
pero esto contradice nuevamente (2). Por tanto c ,= 0.
(ii) Si d = 0 se tendra que
1
|C|
bc =
1
|C|
bc, y un argumento similar al anterior
nos lleva a contradicci on. Luego d ,= 0.
184 Tema 6 Diagonalizaci on
(iii) La unica posibilidad que resta es que = , que contradice (2).
En conclusi on no puede existir C invertible tal que C
1
BC sea diagonal, o dicho
de otro modo, no toda aplicaci on es diagonalizable. En lo que sigue trataremos de
dar resultados que nos garanticen que una aplicaci on es diagonalizable, y nalmente
veremos c omo podemos obtener una base respecto de la cual, la matriz de una
aplicaci on sea lo m as sencilla posible (aunque no sea diagonal).

Teorema 6.2
Si e
1
, . . . e
n
son autovectores correspondientes a autovalores
1
, . . . ,
n
distintos entre
s dos a dos, entonces |e
1
, . . . , e
n
es un conjunto l.i.
Demostraci on:
Procederemos por inducci on en el n umero de vectores. Para n = 1 el resultado es
trivial (recuerdese que un vector no nulo siempre es l.i. y que los autovectores, por
denici on, no pueden ser nulos).
Supuesto el resultado cierto para n1, veamos que tambien es cierto para n. Para
probar que n vectores son l.i. consideramos una combinaci on lineal igualada al vector
nulo y trataremos de ver que todos los escalares deben ser iguales a cero:

1
e
1
+ +
n
e
n
= 0 f(
1
e
1
+ +
n
e
n
) = f(0) = 0

1
f(e
1
) + +
n
f(e
n
) = 0

1

1
e
1
+ +
n

n
e
n
= 0 (6.2)
Multiplicando
1
e
1
+ +
n
e
n
= 0 por
n
y rest andola de (6.2) se obtiene

1
(
n

1
)e
1
+ +
n1
(
n

n1
)e
n1
= 0
Esta expresi on es una combinaci on de los n 1 primeros vectores igualada a cero.
Usando la hip otesis de induccion, estos vectores son l.i., y por tanto los escalares deben
ser nulos; pero como adem as
n

j
,= 0, j (pues por hip otesis los autovalores son
todos distintos), se tendr a que
1
= =
n1
= 0. Sustituyendo en la combinaci on
lineal inicial se deduce que
n
tambien es cero, y de aqu se obtiene la independencia
buscada.
6 2
POLINOMIO CARACTER

ISTICO
Veamos ahora c omo podemos calcular autovectores y autovalores de una aplicaci on.
Sea f : V V una aplicaci on lineal con matriz asociada A en una cierta base. Sabemos
que
f(x) = Ax
Si x es un autovector asociado a un autovalor , entonces
f(x) = x Ax = x (AI)x = 0
6.2 Polinomio caracterstico 6.2 Polinomio caracterstico 185
Denotando por A = (a
ij
) y x = (x
1
, . . . , x
n
), podemos escribir estas ecuaciones
explcitamente como
(a
11
)x
1
+ a
12
x
2
+ + a
1n
x
n
= 0
a
21
x
1
+ (a
22
)x
2
+ + a
2n
x
n
= 0
.
.
.
a
n1
x
1
+ a
n2
x
2
+ + (a
nn
)x
n
= 0
_

_
obteniendo un sistema homogeneo que debe satisfacer cada uno de los autovectores
asociados al autovalor . As pues, para que existan autovectores, este sistema debe
tener soluci on distinta de la trivial, o equivalentemente, la matriz del sistema debe
tener rango menor que n. Esto es,

a
11
a
12
a
1n
a
21
a
22
a
2n
.
.
.
.
.
.
.
.
.
.
.
.
a
n1
a
n2
a
nn

= 0 [AI[ = 0
Denici on 6.4 Dada A /
n
(K), la expresi on [A I[ es un polinomio en la
variable que se denomina polinomio caracterstico de A.
34
Nota 6.2 Como hemos visto antes, los autovalores de una aplicaci on lineal son las
races del polinomio caracterstico. Por tanto, si queremos asegurar la existencia
de autovalores necesitamos que el cuerpo K sea algebraicamente cerrado, es decir,
debemos trabajar en C, de forma que la ecuaci on [A I[ = 0 tenga n soluciones
(contando multiplicidades).
Como hemos visto, el polinomio caracterstico se construye usando la matriz de
una aplicaci on en una base dada. Pero, que ocurre si cambiamos la base? El siguiente
resultado nos muestra que el polinomio caracterstico no cambia si usamos otra base
para representar a la matriz de una aplicaci on.
Teorema 6.3
El polinomio caracterstico no depende de la base que representa a la matriz de una
aplicaci on.
Demostraci on:
4
Se puede probar por induccion que dicha expresi on es de hecho un polinomio de grado
exactamente n.
4
El concepto aparece explcitamente en un trabajo de Lagrange de 1774 relacionado con
ecuaciones diferenciales.
186 Tema 6 Diagonalizaci on
Sean A y A

dos matrices asociadas a la misma aplicaci on lineal en las bases B y


B

, respectivamente. Los polinomios caractersticos ser an


T
B
() = [AI[, T
B
() = [A

I[
Sabemos que la relaci on entre las matrices A y A

viene dada por A

= C
1
AC, con
C una matriz invertible (la matriz del cambio de base). Entonces,
[A

I[ = [C
1
AC I[ = [C
1
AC C
1
IC[
= [C
1
AC C
1
(I)C[ = [C
1
(AC IC)[
= [C
1
(AI)C[ = [C
1
[[AI[[C[ = [AI[
es decir, ambos polinomios son iguales.
Ejemplo 6.3
(i) Consideremos la aplicacion de matriz siguiente:
A =

1 2
5 4

El polinomio caracterstico vendr a dado por:


T
A
() =

1 2
5 4

= (1 )(4 ) 10 =
2
5 6
Sus races, esto es, los autovalores de A, son = 1 y = 6.
Seg un el Teorema 6.2 como tenemos dos autovalores distintos, entonces sus autovec-
tores asociados deben ser l.i., y como estamos en un espacio de dimensi on dos, estos
autovectores forman una base. Es decir, tenemos una base del espacio formada por
autovectores, de modo que la aplicaci on es diagonalizable.
Calculemos ahora los autovectores. Debemos resolver la ecuaci on Ax = x para cada
autovalor obtenido. Esto es, (AI)x = 0;
para = 1,
(A+I)x = 0

2 2
5 5

x
1
x
2

0
0

Resolviendo tenemos que un autovector l.i. asociado a = 1 es u


1
= (1, 1).
para = 6,
(A6I)x = 0

5 2
5 2

x
1
x
2

0
0

Un autovector l.i. asociado a = 6 es u


2
= (
2
5
, 1).
De este modo, la base B

= |(1, 1), (
2
5
, 1) est a formada por autovectores, y es posible
diagonalizar A del siguiente modo:

1 0
0 6

1 2
1 5

1
A

1 2
1 5

6.2 Polinomio caracterstico 6.2 Polinomio caracterstico 187


(ii) Sea R

la matriz de rotaci on en R
2
,
R

cos sen
sen cos

El polinomio caracterstico es
[R

I[ =

cos sen
sen cos

=
2
2cos + 1.
Sus races son =
2 cos

sen
2

2
= cos i sen .
Observamos que hay autovalores reales si y solo si sen = 0, es decir si = k, k Z.
En este caso la matriz inicial R
k
es ya diagonal.
Por su parte, cuando sen ,= 0, los autovalores est an en C y son distintos, luego es
diagonalizable de forma compleja, si embargo, no sera diagonalizable de forma real,
pues no tiene autovalores reales.
(iii) Encontrar los valores del par ametro a para los que la aplicaci on de matriz
A =

0 0 0
0 a 0
a 0 0

es diagonalizable.
El polinomio caracterstico es
[AI[ =

0 0
0 a 0
a 0

=
2
(a ).
Los autovalores son = 0 (doble) y = a.
Obviamente si a = 0 (es decir tenemos un autovalor triple) la matriz de partida ya es
diagonal.
Si a ,= 0 veamos si existe una base formada por autovectores. Para ello calcularemos
los autovectores asociados a cada autovalor:
para = a,

a 0 0
0 0 0
a 0 a

x
1
x
2
x
3

0
0
0

Autovector: (0, 1, 0);


para = 0,

0 0 0
0 a 0
a 0 0

x
1
x
2
x
3

0
0
0

Autovector: (0, 0, 1).


188 Tema 6 Diagonalizaci on
Puesto que |(0, 1, 0), (0, 0, 1) no forman una base de R
3
, la matriz no puede ser
diagonalizable.
5

En denitiva, para ver si una aplicaci on lineal es diagonalizable debemos calcular


primero sus autovalores. Si estamos en un espacio de dimensi on n, entonces habr a n
autovalores, contando sus multiplicidades, (vease la Nota 6.2). Si los n autovalores son
distintos, el Teorema 6.2 nos dice que los n autovectores asociados son l.i. y por tanto
tendremos una base formada por autovectores que nos asegura que la aplicaci on es
diagonalizable.
Si por el contrario, alguno de los autovalores tiene multiplidad mayor que uno,
tendremos el n umero necesario de autovectores para formar una base siempre y
cuando el n umero de autovectores asociados a cada autovalor m ultiple coincida con la
multiplicidad del mismo. Esto motiva la siguiente denici on:
Denici on 6.5 Se denomina multiplicidad algebraica de un autovalor a la multipli-
cidad que tiene como raz del polinomio caracterstico.
Se denomina multiplicidad geometrica de un autovalor al n umero de autovectores
independientes asociados.
Por otro lado, el c alculo de autovectores que hemos llevado a cabo en el ejemplo
anterior se puede realizar de forma m as sistem atica a traves de los subespacios propios:
Denici on 6.6 Sea f : V V lineal con matriz asociada A respecto de alguna
base dada. Si es un autovalor de f se denomina subespacio propio correspondiente
a al subconjunto
E
1
() = ker(AI).
Nota 6.3 Observese que E
1
() es un subespacio invariante por f (vease la (ii) de la
nota 6.1).
Usando el Teorema 5.3 y las deniciones 6.5 y 6.6 se tiene:
dim(E
1
()) = dim(V ) rango(AI) = multiplicidad geometrica
Adem as se verica el siguiente resultado que relaciona ambas multiplicidades:
Proposici on 6.2 Para cada autovalor
1 multiplicidad geometrica multiplicidad algebraica
5
Notese que no puede haber mas autovectores independientes, pues no tenemos mas
autovalores.
6.2 Polinomio caracterstico 6.2 Polinomio caracterstico 189
Demostraci on:
Sea un autovalor de multiplicidad algebraica r. La primera desigualdad es
evidente pues el espacio E
1
() no puede ser el espacio nulo. Para ver la segunda
desigualdad supongamos que la multiplicidad geometrica de es h, es decir, E
1
()
es un espacio de dimensi on h, con |u
1
, . . . , u
h
una base del mismo. Ampliemos la
base anterior a una base del espacio total (que suponemos de dimensi on n), y sea A
la matriz de la aplicaci on en dicha base. Por construcci on, A es de la forma
A =


.
.
.
A

0 A

_
h
_
n h
pues los primeros h vectores de la base son autovectores.
Si ahora calculamos el polinomio caracterstico de A,
[AI
n
[ =


.
.
.
A


0 A

I
nh

= ( )
h
[A

I
nh
[
donde [A

I
nh
[ es un polinomio de grado n h. Por tanto es una raz de
multiplicidad al menos h, es decir r h.
Finalmente, damos una condici on necesaria y suciente para garantizar que una
aplicaci on es diagonalizable en terminos de las multiplicidades algebraica y geometrica
de cada autovalor.
Teorema 6.4
Una aplicaci on lineal es diagonalizable si y s olo si tiene n autovalores, contando sus
multiplicidades, y para cada autovalor, su multiplicidad algebraica coincide con su
multiplicidad geometrica.
Demostraci on:
Supongamos que la aplicaci on f es diagonalizable. En tal caso existir a una base B
respecto de la cual la matriz de la aplicaci on sera diagonal, es decir,
M
B
(f) =

1
0 0
0
2
0
.
.
.
.
.
.
.
.
.
.
.
.
0 0
n

Es evidente que el polinomio caracterstico de esta matriz es


P
f
() =
n

i=1
(
i
)
190 Tema 6 Diagonalizaci on
luego f tiene n autovalores.
Si
i
es un autovalor simple, es evidente a partir de la Proposici on 6.2 que su
multiplicidad algebraica coincide con la geometrica. Si por el contrario
j
es un
autovalor de multiplicidad r (es decir, aparecer a r veces en la diagonal de M
B
(f),
pongamos que en las columnas j
1
, . . . , j
r
) entonces el espacio E
1
(
j
) tiene al menos r
vectores independientes, pues
f(u
j
1
) =
j
u
j
1
, . . . , f(u
j
r
) =
j
u
j
r
con los u
j
i
vectores de B. Por otro lado, como la dimensi on de ese espacio no
puede sobrepasar la multiplicidad algebraica del autovalor (por la Proposici on 6.2)
se tendra la igualdad entre multiplicidad algebraica y geometrica.
Recprocamente, si para cada autovalor coincide su multiplicidad algebraica y
geometrica signica que la suma directa de los espacios
E
1
(
1
) E
1
(
k
)
tiene dimensi on r
1
+ +r
k
= n (n otese que la intersecci on de cualesquiera de estos
subespacios es el vector nulo en virtud del Teorema 6.2), luego dicha suma directa
coincide con el espacio total. Es f acil probar que en tal situaci on la uni on de las bases
de estos subespacios es una base del espacio suma, y por tanto estar a formada por
autovectores. Por el Teorema 6.1, la aplicaci on es diagonalizable.
A partir de este resultado, identicar si una aplicaci on es o no diagonalizable
resulta sencillo: basta calcular los autovalores y sus multiplicidades algebraicas (lo que
se obtiene al resolver las races del polinomio caracterstico) y geometrica (que consiste
en estudiar la dimensi on de los subespacios propios, que en ultima instancia no es m as
que el c alculo de rangos).
6.2 Polinomio caracterstico 6.2 Polinomio caracterstico 191
Ejemplo 6.4
(i) Consideremos A /
2
(C) la matriz de una aplicacion f : V V , con
dimV = 2. Veamos cu ando estas aplicaciones son diagonalizables.
El polinomio caracterstico de A ser a T
A
() = (
1
)(
2
), con
1
y
2
autovalores
en C. En tal caso se puede tener:

1
,=
2
. Para esta situaci on ya hemos visto que los autovectores correspondientes a cada
autovalor son l.i., por lo que tendremos una base formada por autovectores.
El Teorema 6.1 asegura que la aplicaci on es diagonalizable. La matriz de la
aplicaci on en la base de autovectores es

1
0
0
2

1
=
2
. Denotamos por =
1
=
2
. Se dan dos situaciones:
a) dim(ker(A I)) = 2 (es decir, rango(A I) = 0). Esto signica que el
n umero de autovectores l.i. asociados al autovalor existente es dos, por lo que
tenemos una base formada por autovectores, y por tanto A es diagonalizable.
De hecho, si rango(A I) = 0 es que la matriz es diagonal, con en la
diagonal.
b) dim(ker(AI)) = 1 (es decir, rango(AI) = 1). En este caso, el n umero
de autovectores independientes asociado al unico autovalor es insuciente
para obtener una base de V , y por tanto A no es diagonalizable.
(ii) Estudiemos si la siguiente matriz es o no diagonalizable:
A =

1 0 0
1 0 1
1 1 0

Polinomio caracterstico:
[AI[ =

1 0 0
1 1
1 1

= (1 )(
2
1)
Por tanto sus autovalores son: = 1 (doble), = 1 (simple).
Estudiemos los subespacios propios asociados a cada autovalor:
Para = 1,
E
1
(1) = ker(A+I)

2 0 0
1 1 1
1 1 1

x
1
x
2
x
3

0
0
0

dim(E
1
(1)) = 3 rango(A + I) = 1 y una base de E
1
(1) est a formada por el
autovector u
1
= (0, 1, 1).
192 Tema 6 Diagonalizaci on
Para = 1,
E
1
(1) = ker(AI)

0 0 0
1 1 1
1 1 1

x
1
x
2
x
3

0
0
0

dim(E
1
(1)) = 3 rango(A I) = 2 y una base de E
1
(1) est a formada por los
autovectores u
2
= (1, 1, 0) y u
3
= (1, 0, 1).
N otese que tenemos dos autovectores independientes asociados al autovalor 1 de
multiplicidad dos, y un autovector asociado al autovalor 1 de multiplicidad uno (que
es independiente con los otros dos debido al Teorema 6.2) luego tenemos una base de
autovectores y por tanto la matriz A es diagonalizable.
Si expresamos la matriz de esta aplicaci on en la base formada por los autovectores,
esto es
B = |(0, 1, 1), (1, 1, 0), (1, 0, 1)
obtenemos la matriz
J
A
=

1 0 0
0 1 0
0 0 1

de modo que J
A
= P
1
AP, donde P corresponde a la matriz de cambio de base de B
a la base can onica, es decir
P =

0 1 1
1 1 0
1 0 1

denominada com unmente matriz de paso.


Por ultimo n otese tambien que E
1
(1) E
1
(1) = V
(iii) Estudiar si la siguiente matriz es o no diagonalizable:
A =

0 3 1
2 1 1
2 1 1

Comenzamos calculando el polinomio caracterstico,


[AI[ =

3 1
2 1 1
2 1 1

F
3
+F
2
=

3 1
2 1 1
0 2 2

C
3
C
2
=

3 2
2 1
0 2 0

= ( + 2)(
2
+ 4)
Autovalores: = 2 (simple), = 2 (doble). Calculamos los subespacios propios
asociados a cada autovalor (y con ello la multiplicidad geometrica).
6.3 Forma can onica de Jordan 6.3 Forma can onica de Jordan 193
Para = 2:
E
1
(2) = ker(A2I)

2 3 1
2 3 1
2 1 3

x
1
x
2
x
3

0
0
0

dim(E
1
(2)) = 3 rango(A 2I) = 1, y resolviendo el sistema anterior obtenemos
una base de E
1
(2) formada por el autovector u
1
= (1, 1, 1). Recordemos que al ser
autovector asociado a este autovalor se verica que Au
1
= 2u
1
.
Para = 2:
E
1
(2) = ker(A+ 2I)

2 3 1
2 1 1
2 1 1

x
1
x
2
x
3

0
0
0

Nuevamente dim(E
1
(2)) = 3 rango(A + 2I) = 1. Resolviendo el sistema anterior
obtenemos una base de E
1
(2) formada por el vector (1, 1, 1).
De aqu podemos deducir que la matriz A no es diagonalizable, puesto que el n umero
de autovectores independientes que proporciona este autovalor es insuciente para
formar una base junto con u
1
. Observese que en este caso, E
1
(2) E
1
(2) ,= V

6 3
FORMA CAN

ONICA DE JORDAN
En la secci on anterior hemos visto las condiciones que aseguran que una aplicaci on
es diagonalizable, pero como vimos en el Ejemplo 6.2, tal proceso no siempre es
posible. Puesto que el interes de la diagonalizaci on reside en la posibilidad de trabajar
con matrices de aplicaciones que sean lo m as sencillas posibles (esto es, matrices
diagonales), de forma natural podemos preguntarnos cu al es la matriz m as sencilla
asociada a una aplicaci on que no sea diagonalizable. Tal matriz se denomina forma
can onica de Jordan.
6
Comencemos viendo la situaci on en el caso de matrices de orden dos no diagonali-
zables. Recordemos que en el Ejemplo 6.4, si los autovalores de una matriz A /
2
(C)
son iguales y rango(A I) = 1 sabemos que la matriz no es diagonalizable. En este
caso se tiene el siguiente resultado:
Lema 6.3 Si A /
2
(K) y tiene sus dos autovalores iguales entonces (AI)
2
= 0,
donde es su unico autovalor.
Demostraci on:
Veamos que (A I)
2
x = 0, x V . En primer lugar, si x E
1
() obviamente
(A I)x = 0, de modo que trivialmente (A I)
2
x = 0. Supongamos entonces
6
Aparece en 1870 en el trabajo del matematico frances Camille Jordan titulado Traite des
substitutions et des equations algebriques.
194 Tema 6 Diagonalizaci on
que x , E
1
(), y sea v un autovector asociado a . Es evidente entonces que x y v
conforman una base de V (pues V tiene dimensi on dos, y ambos son independientes).
Consideremos ahora
w = (AI)x V (6.3)
Como |x, v es una base podemos escribir w = x + v. Vamos a probar que
= 0. Una vez probado esto, entonces ocurrir a que w E
1
() (pues es un m ultiplo
de v), de modo que
0 = (AI)w = (AI)
2
x
como queramos demostrar.
Veamos entonces que = 0. De (6.3) se tiene que (AI)x = x+v, y operando
llegamos a
(A( +)I)x = v
Suponiendo que ,= 0, como el unico autovalor de A es , entonces la matriz
B = A ( + )I tiene determinante no nulo, es decir, es no singular y por tanto
podemos escribir
x = B
1
v (6.4)
Multiplicando por esta ultima expresi on, y teniendo en cuenta que los escalares
conmutan con la multiplicaci on de matrices,
x = B
1
v = B
1
v = B
1
Av
donde la ultima igualdad se debe a que v es un autovector asociado a . Pero adem as,
A = B + ( +)I, de modo que lo anterior es:
x = B
1
(B + ( +)I)v = v + ( +)B
1
v
Usando (6.4) se llega a que
x = v +x +x v +x = 0
Esto es una combinaci on lineal de dos vectores que son independientes, igualados al
vector nulo, es decir, = = 0, que contradice nuestra suposici on de que ,= 0.
As concluye la demostraci on.
Volvamos a la situaci on anterior. Denotemos por E
1
() = ker(AI). En el caso
que nos ocupa E
1
() es un espacio de dimensi on uno, y como estamos en un espacio
V de dimension dos, podemos encontrar un vector no nulo u
2
V \E.
Sea ahora u
1
= (AI)u
2
. Entonces u
1
E
1
() pues
(AI)u
1
= (AI)(AI)u
2
= 0 (por el Lema 6.3).
Por tanto u
1
es un autovector asociado al autovalor , luego Au
1
= u
1
. Por otra
parte,
u
1
= (AI)u
2
Au
2
= u
1
+u
2
.
Consideremos ahora la base |u
1
, u
2
(se trata de una base pues u
1
E
1
() y
u
2
V \E
1
()). La matriz de la aplicaci on en esta base resulta:
J
A
=

1
0

6.3 Forma can onica de Jordan 6.3 Forma can onica de Jordan 195
Esta es la forma can onica de Jordan de la matriz A.
Veamos m as ejemplos.
Ejemplo 6.5
(i) Encontrar la forma can onica de Jordan de
A =

0 2
2 4

El polinomio caracterstico es
[AI[ =

2
2 4

= ( 2)
2
con autovalores = 2 (doble).
Construimos E
1
(2) = ker(A2I):
dim(E
1
(2)) = rango

2 2
2 2

= 1 A no puede ser diagonalizable


Para obtener la forma de Jordan calculamos una base de E
1
(2), que estar a formada
por un unico vector, p.e. (1, 1). Como este espacio resulta insuciente para conseguir
vectores de una base, consideramos el espacio
E
2
(2) = ker((A2I)
2
)
Del Lema 6.3 sabemos que (A 2I)
2
= 0, luego E
2
(2) = R
2
, y entonces podemos
escoger un vector de R
2
\E
1
(2), por ejemplo u
2
= (1, 0) (cualquier vector independiente
con el anterior nos vale).
Poniendo
u
1
= (A2I)u
2

2 2
2 2

1
0

2
2

N otese que u
1
E
1
(2). Finalmente, la aplicaci on dada en la base |(2, 2), (1, 0)
(atenci on al orden!) tiene como matriz asociada
J
A
=

2 1
0 2

La matriz de cambio de base ser a


P =

2 1
2 0

y se verica J
A
= P
1
AP.
196 Tema 6 Diagonalizaci on
(ii) Recuperemos (iii) del Ejemplo 6.4:
A =

0 3 1
2 1 1
2 1 1

con autovalores = 2 (simple) y = 2 (doble) y autovectores asociados: E


1
(2) =
L((1, 1, 1)) y E
1
(2) = L((1, 1, 1))
Sabamos que la matriz A no es diagonalizable porque el n umero de autovectores
independientes que proporciona el autovalor doble es insuciente para formar una
base junto con el autovector asociado al autovalor simple.
Tambien se observa que E
1
(2) + E
1
(2) ,= V , es decir, existe un agujero entre
los espacios de autovectores y el espacio total. Esta diferencia es debida a que el
autovalor = 2 de multiplicidad dos no genera un espacio de autovectores de
suciente dimension. Por ello consideramos ahora E
2
(2) = ker((A + 2I)
2
); para
ello calculamos
(A+ 2I)
2
=

2 3 1
2 1 1
2 1 1

2 3 1
2 1 1
2 1 1

8 8 0
8 8 0
8 8 0

Se tiene que dimE


2
(2) = 3rango((A+2I)
2
) = 2 y una base se obtendr a resolviendo
el correspondiente sistema. En este caso,
Base de E
2
(2) = |(1, 1, 0), (0, 0, 1)
Es importante observar que E
1
(2) E
2
(2), como se comprueba f acilmente, ya que
la base de E
1
(2) est a en E
2
(2). Como el segundo espacio es m as grande podemos
tomar u
3
E
2
(2)\E
1
(2). Por ejemplo, nosotros escogemos u
3
= (0, 0, 1).
A continuaci on calculamos u
2
del siguiente modo:
u
2
= (A+ 2I)u
3
=

2 3 1
2 1 1
2 1 1

0
0
1

1
1
1

N otese ahora que u


2
E
1
(2), es decir es un autovector asociado a = 2 y por tanto
satisface Au
2
= 2u
2
. Por otra parte, esta claro por construcci on que Au
3
= u
2
2u
3
.
Por consiguiente, en la base |u
1
, u
2
, u
3
, la aplicaci on dada tiene por matriz
J
A
=

2 0 0
0 2 1
0 0 2

y la matriz de cambio de base es


P =

1 1 0
1 1 0
1 1 1

6.3 Forma can onica de Jordan 6.3 Forma can onica de Jordan 197
(iii)
A =

2 1 1
1 1 0
0 1 3

Polinomio caracterstico:
[AI[ =

2 1 1
1 1 0
0 1 3

C
2
+C
3
=

2 0 1
1 1 0
0 2 3

C
2
(1+)C
1
=

2 (2 )(1 ) 1
1 0 0
0 2 3

= (2 )

1 1
1 3

= ( + 2)
2
Autovalores = 2 (triple). Para calcular los autovectores asociados al unico autovalor
procedemos como antes:
E
1
(2) = ker(A+ 2I)

0 1 1
1 1 0
0 1 1

x
1
x
2
x
3

0
0
0

dim(E
1
(2)) = 3 rango(A + 2I) = 1 y una base de E
1
(1) est a formada por el
autovector (1, 1, 1). N otese que como ya no hay m as autovectores independientes con
este, la matriz A no puede ser diagonalizable; una vez m as, la multiplicidad algebraica
y la geometrica no coinciden.
Procedemos como antes calculando el espacio E
2
(2) = ker((A+ 2I)
2
):
(A+ 2I)
2
=

0 1 1
1 1 0
0 1 1

0 1 1
1 1 0
0 1 1

1 0 1
1 0 1
1 0 1

dim(E
2
(2)) = 3 rango((A + 2I)
2
) = 2 y una base de E
2
(2) obtenida al resolver
el sistema con matriz anterior es la formada por (0, 1, 0) y (1, 0, 1). Observese que
E
1
(2) E
2
(2). Al igual que antes podremos coger un vector de E
2
(2) que no
este en E
1
(2), pero uno s olo, pues la dimensi on de E
2
(2) no permite m as. Lo que
hacemos en este caso es seguir ampliando el espacio con E
3
(2) = ker((A+2I)
3
). Un
simple calculo nos muestra que (A + 2I)
3
= 0. Es decir, E
3
(2) = V . Tenemos por
tanto la inclusion de espacios siguiente
E
1
(2) E
2
(2) E
3
(2) = V
Para construir la forma can onica de Jordan y la matriz de paso correspondiente
consideramos un vector del espacio mayor que no pertenezca al espacio inmediatamente
198 Tema 6 Diagonalizaci on
inferior, esto es, u
3
E
3
(2)\E
2
(2), por ejemplo, u
3
= (1, 0, 0). Sean ahora
u
2
= (A+ 2I)u
3
y u
1
= (A+ 2I)u
2
, es decir,

0 1 1
1 1 0
0 1 1

1
0
0

0
1
0

0 1 1
1 1 0
0 1 1

0
1
0

1
1
1

Por construcci on, el vector u


2
E
2
(2) mientras que u
1
E
1
(2), es decir, es un
autovector. Luego
Au
1
= 2u
1
, Au
2
= u
1
2u
2
, Au
3
= u
2
2u
3
Si escribimos la aplicaci on en la base |u
1
, u
2
, u
3
obtenemos la forma de Jordan y la
matriz de paso:
J
A
=

2 1 0
0 2 1
0 0 2

, P =

1 0 1
1 1 0
1 0 0

(iv)
A =

2 0 1
0 1 0
1 0 0

Polinomio caracterstico:
[AI[ =

2 0 1
0 1 0
1 0

= (1 )((2 +) + 1) = ( + 1)
3
Autovalores = 1 (triple). C alculo de autovectores:
E
1
(1) = ker(A+I)

1 0 1
0 0 0
1 0 1

x
1
x
2
x
3

0
0
0

dim(E
1
(2)) = 3 rango(A + I) = 2 y una base de E
1
(1) est a formada por los
autovectores (0, 1, 0) y (1, 0, 1). Nuevamente el n umero de autovectores independientes
es insuciente para formar una base y por tanto la matriz A no es diagonalizable.
Calculamos ahora el espacio E
2
(1) = ker((A+I)
2
):
(A+I)
2
=

1 0 1
0 0 0
1 0 1

1 0 1
0 0 0
1 0 1

0 0 0
0 0 0
0 0 0

6.3 Forma can onica de Jordan 6.3 Forma can onica de Jordan 199
luego E
2
(1) = V . Tenemos ahora la cadena de subespacios
E
1
(2) E
2
(2) = V
Tomamos un vector u
3
E
2
(1)\E
1
(1), por ejemplo u
3
= (1, 0, 0), y calculamos
u
2
= (A+I)u
3
:

1 0 1
0 0 0
1 0 1

1
0
0

1
0
1

E
1
(1)
luego u
2
es un autovector. Como en el espacio E
1
(1) tenemos dos autovectores
independientes tomamos u
1
E
1
(1), independiente con este ultimo, por ejemplo,
u
1
= (0, 1, 0).
La forma de Jordan y la correspondiente matriz de paso son:
J
A
=

1 0 0
0 1 1
0 0 1

, P =

0 1 1
1 0 0
0 1 0


En los ejemplos anteriores hemos visto c omo tratar el caso de matrices no diagona-
lizables de dimensi on dos y tres. A continuaci on vamos a sistematizar el metodo para
matrices de cualquier orden.
Denici on 6.7 Dos matrices A y B se dicen equivalentes si existe una matriz
invertible P tal que B = P
1
AP.
En particular, las matrices de un endomorsmo en diferentes bases son equivalen-
tes.
Denici on 6.8 Se denomina matriz elemental de Jordan de orden k (o caja de orden
k) y autovalor C a la matriz J
k
() /
k
(C) con elementos nulos excepto en la
diagonal (donde aparece ) y encima de la misma (en la que aparecen 1).
Ejemplo 6.6 Algunas cajas elementales de Jordan son
J
1
() = (), J
2
() =

1
0

, J
3
() =

1 0
0 1
0 0


200 Tema 6 Diagonalizaci on
Denici on 6.9 Se denomina matriz de Jordan a cualquier matriz cuadrada formada
por yuxtaposici on de matrices elementales de Jordan a lo largo de su diagonal, es
decir, una matriz diagonal por cajas en la que cada caja es una matriz elemental.
J =

J
k
1
(
1
)
J
k
2
(
2
)
.
.
.
J
k
n
(
n
)

Teorema 6.5 (Teorema de Jordan (forma compleja))


Toda matriz A /
n
(C) es equivalente a una matriz de Jordan J /
n
(C) que es
unica, salvo permutaci on de las cajas que la forman.
La prueba del Teorema de Jordan est a basada en el siguiente resultado sobre los
subespacios E
j
() = ker((AI)
j
), denominados subespacios propios generalizados.
Proposici on 6.4 Sea un autovalor de A de multiplicidad r y consideremos los
subespacios E
j
(), j 0. Entonces:
(i) E
j
() es una sucesi on estrictamente creciente de subespacios de manera
que existe t tal que E
t
() = E
t+k
(), k 0; esto es,
|0 = E
0
() E
1
() E
2
() E
t
() = E
t+1
() =
A E
t
() se le denomina subespacio maximo asociado al autovalor
(ii) E
t
() es un subespacio invariante.
(iii) u E
j
() si y solo si (AI)u E
j1
().
(iv) Se verica que dim(E
t
()) = r
Adem as, si
1
, . . . ,
k
son los autovalores de A de multiplicidades respectivas
r
1
, . . . , r
k
, con n = r
1
+ +r
k
, y E
t
j
(
j
), j = 1, . . . , k son los subespacios m aximos
asociados a cada autovalor, entonces
V = E
t
1
(
1
) E
t
k
(
k
) (6.5)
donde V es el espacio ambiente.
Demostracion:
La demostraci on completa de este resultado precisa herramientas que no hemos
contemplado en este texto, por lo que solo probaremos (i)(iii).
(i) Que la sucesion de espacios E
j
() es creciente es sencillo de probar, pues si
6.3 Forma can onica de Jordan 6.3 Forma can onica de Jordan 201
v E
j
(), eso signica que
(AI)
j
v = 0 (AI)(AI)
j
v = (AI)0 = 0
es decir, (AI)
j+1
v = 0, lo que signica que v E
j+1
().
Por otra parte, si E
t
() = E
t+1
(), entonces es f acil ver que E
t
() = E
t+k
(), k 0.
En efecto, si v E
t+2
, entonces
0 = (AI)
t+2
v = (AI)
t+1
(AI)v
de modo que (AI)v E
t+1
() = E
t
(), lo que signica que
(AI)
t
((AI)v) = 0 (AI)
t+1
v = 0
de donde concluimos que v = E
t+1
(), y de aqu E
t+2
() E
t+1
(). La inclusi on
contraria ya la hemos probado al ver que los subespacios son crecientes; es decir,
E
t+1
() = E
t+2
(). El mismo razonamiento se usa para probar las igualdades siguien-
tes.
Finalmente, debe existir t tal que E
t
() = E
t+1
() pues tenemos una sucesi on creciente
de subespacios vectoriales dentro de un espacio de dimensi on nita, por lo que no puede
crecer indenidamente.
(ii) Veamos que si u E
t
() entonces Au tambien pertenece a dicho conjunto.
Esto es debido a
(AI)
t
(Au) = (AI)
t
(Au u +u) = (AI)
t
((AI)u +u)
= (AI)
t+1
u +(AI)
t
u = 0 +0 = 0
(iii) Est a claro que u E
j
() si y solo si
0 = (AI)
j
u = (AI)
j1
((AI)u)
es decir, si (AI)u E
j1
().
Construccion de la forma compleja de Jordan y de una matriz de paso
Dada una matriz A /
n
(C), para construir la matriz de Jordan seguiremos los
siguientes pasos:
(a) Calcular los autovalores de A,
1
, . . . ,
k
junto con sus multiplicidades algebrai-
cas r
1
, . . . , r
k
. Puesto que estamos en C sabemos que r
1
+ +r
k
= n.
(b) Para cada autovalor de multiplicidad r construimos los espacios E
j
() =
ker((AI)
j
), con j 0 hasta llegar al subespacio m aximo, es decir, aquel que
verica que dim(E
t
()) = r. Denotaremos por
q
j
= dim(E
j
()), j = 0, . . . , t (6.6)
202 Tema 6 Diagonalizaci on
(c) Construimos la denominada partici on de multiplicidades del autovalor . Para
ello, dados los q
j
calculados en (6.6), denimos
p
j
= q
j
q
j1
, j = 1, . . . , t
Observese que q
j
es una sucesi on estrictamente creciente de n umeros naturales,
mientras que p
j
es una sucesi on decreciente. Se dene la partici on de multi-
plicidades del autovalor como la expresi on
r = p
1
+ +p
t
Nota 6.4 La forma can onica de Jordan s olo depende de la partici on de multi-
plicidades de cada uno de sus autovalores.
(d) Construida la partici on de multiplicidades, la forma can onica de Jordan tiene,
para cada autovalor:
_

_
p
t
cajas de tama no t
p
t1
p
t
t 1
p
t2
p
t1
t 2
.
.
.
.
.
.
.
.
.
p
1
p
2
1
(6.7)
Para construir la matriz de paso procedemos como sigue:
(a) Consideramos (a nuestra elecci on) p
t
vectores de E
t
()\E
t1
() linealmente
independientes entre s, que denotaremos por u
t
1
, . . . , u
t
p
t
(b) Para cada uno de los vectores anteriores construimos
u
t1
l
= (AI)u
t
l
, l = 1, . . . , p
t
(6.8)
y los completamos con vectores de E
t1
()\E
t2
() linealmente independientes
hasta obtener un total de p
t1
vectores. Ahora en este nivel tenemos
|u
t
1
, . . . , u
t
p
t
E
t
(), |u
t1
1
, . . . , u
t1
p
t
, u
t1
p
t
+1
, . . . , u
t1
p
t1
p
t
E
t1
() (6.9)
(c) Repetimos la operaci on del paso anterior sobre el conjunto de vectores de (6.9), es
decir, aplicamos (AI) a cada uno de los vectores anteriores y los completamos
con vectores independientes de E
t2
\E
t3
hasta obtener p
t2
vectores.
Podemos usar la siguiente representaci on gr aca de la construcci on de la base:
p
t
E
t
() u
t
1
u
t
p
t
p
t1
E
t1
() u
t1
1
u
t1
p
t
u
t1
p
t
+1
u
t1
p
t1
p
t
.
.
.
.
.
.
.
.
.
p
1
E
1
() u
1
1
u
1
p
t
u
1
p
t
+1
u
1
p
t1
p
t

(6.10)
6.3 Forma can onica de Jordan 6.3 Forma can onica de Jordan 203
En cada una de las las correspondiente a un subespacio E
j
() debe-
mos tener exactamente p
j
vectores linealmente independientes. Conoci-
dos los vectores del espacio E
j
(), construimos los vectores de E
j1
() multipli-
cando cada uno de ellos por (AI). Si el n umero de vectores as obtenido es in-
ferior a p
j1
, a nadimos vectores linealmente independientes de E
j1
()\E
j2
()
en n umero necesario hasta obtener p
j1
vectores.
Finalmente, los vectores que formar an parte de la matriz de paso son los vectores
de cada uno de los subespacios anteriores escritos por columnas de abajo
hacia arriba (atenci on al orden!
7
), es decir
|u
1
1
, u
2
1
, . . . , u
t
1
, u
1
2
, . . . , u
t
2
, . . . , u
1
p
t
, . . . , u
t
p
t
, u
1
p
t
+1
, . . . u
t1
p
t
+1
, u
1
p
t
+2
, . . . (6.11)
Nota 6.5 La tabla anterior tambien nos proporciona de forma gr aca el n umero
y el tama no de las cajas elementales de Jordan que aporta cada autovalor. Hemos
de considerar tantas cajas como columnas de vectores tenemos en la tabla, y cada
caja tendr a un tama no igual al n umero de vectores que hay en cada columna.
Demostraci on: (Teorema de Jordan)
Para demostrar nalmente el resultado central probaremos dos cosas:
(i) Si es un autovalor del endomorsmo A, los vectores obtenidos en (6.11)
forman una base de E
t
(), siendo E
t
() el subespacio m aximo asociado a . Ademas,
la restricci on de A al subespacio E
t
() tiene como matriz asociada una matriz de
Jordan, cuyas cajas corresponden a (6.7).
(ii) Si V = M
1
M
r
, con M
i
subespacios invariantes por A, y A
i
son las
matrices de la aplicaci on A restringida a cada uno de estos subespacios, entonces existe
una base de V tal que la matriz de A es diagonal por bloques, en el que cada bloque
corresponde a una de la matrices A
i
.
A partir de estos dos hechos y usando (6.5) el resultado es inmediato.
Veamos (i): para probar que los vectores de (6.11) forman base solo hay que tener
en cuenta su construcci on y (iii) de la Proposici on 6.4, puesto que los vectores elegidos
en E
j
()\E
j1
() son independientes y los vectores construidos en E
j1
() a partir
de la operaci on (6.8) tambien ser an independientes. Como tenemos tantos vectores
como dimension de E
t
(), forman una base del subespacio m aximo.
Por otra parte, si restringimos la aplicacion A al subespacio E
t
() y calculamos la
matriz de esta aplicaci on en la base formada por los vectores de (6.11), debido a (6.8),
vemos que si t > 1,
Au
t
l
= u
t
l
+u
t1
l
de modo que las coordenadas en esta base son (0, . . . , 0, 1, , 0, . . . , 0), mientras que
si t = 1, los vectores u
1
j
E
1
(), luego son autovectores y por tanto Au
1
j
= u
1
j
, es
decir, las coordenadas son (0, . . . , 0, , 0, . . . , 0). En denitiva, por cada columna de
vectores de la tabla (6.10) tenemos una caja elemental de Jordan de tama no igual al
n umero de vectores existente en cada columna.
7
El orden de estos vectores debe venir de acuerdo al orden impuesto sobre las cajas
elementales en la forma de Jordan. El orden descrito aqu corresponde a una ordenacion
de las cajas de mayor a menor tama no.
204 Tema 6 Diagonalizaci on
Veamos (ii): para simplicar los detalles, supongamos que V = M
1
M
2
, con
M
1
y M
2
subespacios invariantes por A. Debido a que V es la suma directa podemos
encontrar una base de V juntando las bases de M
1
y M
2
. Pongamos que
Base de M
1
= |e
1
, . . . , e
k
, Base de M
2
= |e
k+1
, . . . , e
n

Como ambos espacios son invariantes, est a claro que


Ae
j
=
k

i=1

i,j
e
i
, j = 1, . . . , k
mientras que
Ae
j
=
n

i=k+1

i,j
e
i
, j = k + 1, . . . , n
Si A
1
= (
i,j
) /
k
(C) y A
2
= (
i,j
) /
nk+1
(C) entonces es f acil ver que la
matriz de A en la base |e
1
, . . . e
n
es
A =

A
1
0
0 A
2

La extensi on a r subespacios invariantes es inmediata.


Veamos el funcionamiento del metodo de construcci on de la forma de Jordan sobre
algunos ejemplos.
Ejemplo 6.7
(i)
A =

1 0 2 6
0 1 1 3
0 0 1 3
0 0 0 2

Comenzamos calculando el polinomio caracterstico:


[AI[ =

1 0 2 6
0 1 1 3
0 0 1 3
0 0 0 2

= (1 )
3
(2 )
Autovalores: = 1 (triple) y = 2 (simple).
Comenzamos el estudio para el autovalor = 1 de multiplicidad r = 3. Construimos
el espacio de autovectores asociado E
1
(1) = ker(AI):
AI =

0 0 2 6
0 0 1 3
0 0 0 3
0 0 0 1

rango(AI) = 2
6.3 Forma can onica de Jordan 6.3 Forma can onica de Jordan 205
Luego q
1
= dimE
1
(1) = 4 2 = 2. Para obtener una base de este espacio resolvemos
el sistema (formado por las las segunda y cuarta, con las que se tiene rango dos)
x
3
+ 3x
4
= 0
x
4
= 0

Base de E
1
(1) =

(1, 0, 0, 0)
(0, 1, 0, 0)
Puesto que el n umero de autovectores independientes asociado a este autovalor no
coincide con la multiplicidad del mismo (lo cual ya signica que la matriz no es
diagonalizable), procedemos con el siguiente espacio E
2
(1):
(AI)
2
=

0 0 2 6
0 0 1 3
0 0 0 3
0 0 0 1

0 0 2 6
0 0 1 3
0 0 0 3
0 0 0 1

0 0 0 0
0 0 0 0
0 0 0 3
0 0 0 1

cuyo rango es uno. Por tanto q


2
= dimE
2
(1) = 3, y puesto que es igual a la
multiplicidad del autovalor, este es el subespacio m aximo.
8
Es f acil encontrar una
base de E
2
(1) resolviendo el correspondiente sistema; en este caso obtenemos:
Base de E
2
(1) = |(1, 0, 0, 0), (0, 1, 0, 0), (0, 0, 1, 0)
As pues, tenemos que q
0
= 0, q
1
= 2 y q
2
= 3 y por tanto,
p
1
= q
1
q
0
= 2, p
2
= q
2
q
1
= 1
La particion de multiplicidades se escribe r = p
1
+p
2
, es decir 3 = 2 + 1.
A esta partici on le corresponden:
p
2
= 1 caja de tama no 2
p
1
= 1 caja de tama no 1
As pues, la aportaci on del autovalor = 1 a la forma de Jordan es

1 1 0
0 1 0
0 0 1

Para construir los vectores correspondientes a este autovalor que aparecer an en la


matriz de paso construimos el esquema
p
2
= 1 E
2
(1) u
2
1
= (0, 0, 1, 0)
p
1
= 2 E
1
(1) u
1
1
= (2, 1, 0, 0) u
1
2
= (1, 0, 0, 0)
8
Observese que sin necesidad de calcular la matriz (A I)
2
podramos haber sabido de
antemano la dimensi on de este subespacio. Tengase en cuenta que los subespacios propios son
estrictamente crecientes hasta que se estabilizan, justo cuando alcanzan la dimension maxima,
que siempre es igual a la multiplicidad del autovalor.
206 Tema 6 Diagonalizaci on
donde u
2
1
ha sido escogido arbitrariamente en E
2
(1)\E
1
(1), u
1
1
se ha calculado median-
te u
1
1
= (AI)u
2
1
, mientras que u
1
2
se ha tomado arbitrariamente en E
1
(1), linealmente
independiente con u
1
1
. Vemos que la tabla nos indica tambien el n umero de cajas: hay
un columna formada por dos vectores y una columna formada por uno (esto es, una
caja de tama no dos, y una caja de tama no uno).
La aportaci on de este autovalor a la matriz de paso es (insistimos en el orden)
(2, 1, 0, 0), (0, 0, 1, 0), (1, 0, 0, 0)
Con respecto al autovalor = 2, puesto que su multiplicidad es uno, el subespacio
m aximo asociado no puede ser m as que E
1
(2) = ker(A2I). En este caso,
A2I =

1 0 2 6
0 1 1 3
0 0 1 3
0 0 0 0

Sin necesidad de calcularlo, el rango(A 2I) = 3 (puesto que la dimensi on de este


subespacio debe ser uno). Una base se obtendr a resolviendo el sistema correspondiente,
x
1
+ 2x
3
6x
4
= 0
x
2
x
3
+ 3x
4
= 0
x
3
+ 3x
4
= 0
_

_
Base de E
1
(2) = |(0, 0, 3, 1)
En el caso de autovalores simples no hay necesidad de efectuar la particion de multi-
plicidad puesto que s olo le puede corresponder una caja elemental de tama no uno.
Como conclusi on, la forma de Jordan de A se escribe yuxtaponiendo las cajas obtenidas
para cada autovalor,
J
A
=

1 1 0 0
0 1 0 0
0 0 1 0
0 0 0 2

y la matriz de paso escribiendo, por columnas, los vectores obtenidos:


P =

2 0 1 0
1 0 0 0
0 1 0 3
0 0 0 1

vericandose que J
A
= P
1
AP.
(ii)
A =

0 1 1 0
0 1 0 1
1 1 0 0
0 2 0 1

6.3 Forma can onica de Jordan 6.3 Forma can onica de Jordan 207
Polinomio caracterstico:
[AI[ =

1 1 0
0 1 0 1
1 1 0
0 2 0 1

F
1
+F
3
=

0 + 1 1
2
0
0 1 0 1
1 1 0
0 2 0 1

= (1
2
)

1 1
2 1

= (
2
+ 1)
2
Autovalores: = i (doble) y = i (doble). N otese que para poder aplicar el Teorema
de Jordan debemos usar races complejas.
Para el autovalor = i de multiplicidad r = 2 consideramos el espacio de autovectores
E
1
(i) = ker(AiI), donde
AiI =

i 1 1 0
0 1 i 0 1
1 1 i 0
0 2 0 1 i

rango(AiI) = 3
ya que el menor

i 1 0
0 1 i 1
1 1 0

,= 0
(n otese que no es necesario calcular [AiI[, pues sabemos que debe ser nulo).
Entonces q
1
= dimE
1
(i) = 4 3 = 1 y obtenemos una base de este espacio al resolver
el sistema correspondiente al menor no nulo anterior:
ix
1
+x
2
x
3
= 0
(1 i)x
2
+x
4
= 0
x
1
+x
2
ix
3
= 0
_

_
para x
3
= 1 resolvemos
ix
1
+x
2
= 1
x
1
x
2
= i

de donde x
2
= 0, (1i)x
1
= 1i x
1
= i. Finalmente se tiene que x
4
= 0. Una base
de E
1
(i) est a formada por el autovector (i, 0, 1, 0). Como el n umero de autovectores
independientes asociado a este autovalor no coincide con la multiplicidad del mismo
(es decir, la matriz no es diagonalizable), calculamos el espacio E
2
(i),
(AiI)
2
=

i 1 1 0
0 1 i 0 1
1 1 i 0
0 2 0 1 i

i 1 1 0
0 1 i 0 1
1 1 i 0
0 2 0 1 i

208 Tema 6 Diagonalizaci on


=

2 2 2i 2i 1
0 2 + 2i 0 2i
2i 2i 2 1
0 4i 0 2 2i

El rango((A iI)
2
) = 2 y por tanto q
2
= dimE
2
(1) = 2. Puesto que la dimensi on de
este subespacio coincide con la multiplicidad del autovalor, estamos ante el subespacio
m aximo. Resolviendo el sistema
2x
1
+ (2 2i)x
2
+ 2ix
3
+x
4
= 0
(2 2i)x
2
2ix
4
= 0

con par ametros x


3
y x
4
obtenemos los vectores (i, 0, 1, 0), (
1
2
,
1
2

1
2
i, 0, 1).
N otese que podemos reemplazar el vector (
1
2
,
1
2

1
2
i, 0, 1) por un m ultiplo suyo, ya
que seguiramos teniendo una base de E
2
(i), as pues, por comodidad, escogemos como
base |(i, 0, 1, 0), (1, 1 i, 0, 2).
Ya tenemos la informaci on necesaria para encontrar las cajas correspondientes a este
autovalor y los vectores que aporta a la matriz de paso. Comenzamos con la partici on
de multiplicidades:
q
0
= 0, q
1
= 1, q
2
= 2 p
1
= 1, p
2
= 1
Es decir, 2 = 1 + 1. A esta partici on le corresponde una caja de tama no dos y cero
cajas de tama no uno, es decir,

i 1
0 i

Los vectores aportados a la matriz de paso se obtienen seg un la tabla siguiente:


p
2
= 1 E
2
(i) u
2
1
= (1, 1 i, 0, 2)
p
1
= 1 E
1
(i) u
1
1
= (1, 0, i, 0)
donde u
2
1
ha sido escogido en E
2
(i)\E
1
(i), mientras que u
1
1
= (AiI)u
2
1
.
Como se ha podido comprobar, el c alculo de subespacios propios cuando el autovalor
es un n umero complejo es ciertamente tedioso. Sin embargo, como vamos a ver a
continuaci on, en los casos de matrices reales con autovalores complejos como
el que nos ocupa, se presenta cierta simetra que facilita mucho la labor.
Se verica el siguiente resultado:
Lema 6.5 Si A /
n
(R) y C es un autovalor entonces (su complejo
conjugado) tambien es autovalor y ademas
AI = AI
La demostracion es trivial y se deja al lector.
Por tanto, como resolver el sistema (AI)x = 0 es equivalente a resolver (AI)x =
0 y
(AI)x = (AI)x,
6.3 Forma can onica de Jordan 6.3 Forma can onica de Jordan 209
entonces, por el Lema anterior, las soluciones de (AI)x = 0 son las conjugadas de
las soluciones de (AI)x = 0.
En nuestro caso, como = i es el conjugado de = i, entonces los vectores de E
1
(i)
coinciden con los conjugados de E
1
(i). Luego una base de E
1
(i) estar a formada por
(i, 0, 1, 0).
An alogamente, puesto que (AI)
2
= (A I)
2
los vectores de E
2
(i) son los
conjugados de los vectores de E
2
(i). As pues, una base de E
2
(i) ser a
|(i, 0, 1, 0), (1, 1 +i, 0, 2)
La partici on de multiplicidades es claramente la misma para ambos autovalores, lo que
signica que la aportaci on del autovalor = i a la forma de Jordan es:

i 1
0 i

Y las mismas operaciones anteriores son v alidas para los vectores asociados, en la
version conjugada, es decir
p
2
= 1 E
2
(i) u
2
1
= (1, 1 +i, 0, 2)
p
1
= 1 E
1
(i) u
1
1
= (1, 0, i, 0)
Finalmente, la forma de Jordan y la matriz de paso se escriben
J =

i 1 0 0
0 i 0 0
0 0 i 1
0 0 0 i

P =

1 1 1 1
0 1 i 0 1 +i
i 0 i 0
0 2 0 2

Como conclusi on podemos armar que en el caso de autovalores complejos de una


matriz real, puesto que estos vienen por pares conjugados, s olo es necesario hacer el
estudio sobre uno de ellos, obteniendose los conjugados de los resultados obtenidos
para el otro.

6 3 1 Forma de Jordan real


Como hemos visto en la secci on anterior, una matriz real A /
n
(R) puede tener
autovalores complejos que hagan que su forma de Jordan sea una matriz compleja.
En esta secci on veremos como asociar a una matriz real una pseudo-forma de Jordan
tambien real, que por abuso de lenguaje llamaremos forma de Jordan real.
Para construir esta nueva matriz debemos recordar que el Lema 6.5 arma que los
autovalores de una matriz real vienen por pares conjugados y como consecuencia, las
particiones de multiplicidad son las mismas. Por otra parte
Entonces, para calcular la forma de Jordan real tendremos en cuenta:
(i) Si R es un autovalor de A /
n
(R), las cajas correspondientes y los
vectores asociados permanecen igual.
210 Tema 6 Diagonalizaci on
(ii) Si = +i C\R es un autovalor de A /
n
(R) (y por tanto = i
tambien es autovalor) con p
t
cajas de tama no t, p
t1
p
t
cajas de tama no t 1, etc.,
entonces al par de autovalores y le asignamos
_

_
p
t
cajas de tama no 2t,
p
t1
p
t
2(t 1),
p
t2
p
t1
2(t 2),
.
.
.
.
.
.
.
.
.
p
1
p
2
2.
de manera que cada caja tiene la forma

B I
2
B I
2
.
.
.
B

(6.12)
donde B =

.
(iii) Si |v
1
, . . . , v
r
es el conjunto de los vectores que aporta el autovalor a la
forma de Jordan,
9
en el orden adecuado, entonces el par de autovalores , aporta
los vectores
|Re(v
1
), Im(v
1
), . . . , Re(v
r
), Im(v
r
) (6.13)
donde recordemos que, si escribimos v
i
= x
i
+iy
i
entonces Re(v
i
) = x
i
y Im(v
i
) = y
i
.
Proposici on 6.6 Con las notaciones anteriores, los vectores de (6.13) pertenecen al
espacio E
t
() E
t
(), son linealmente independientes y dan lugar a la caja (6.12).
Demostraci on:
Es evidente que los vectores de (6.13) est an en E
t
()E
t
() pues son combinacion
lineal de los vectores de estos subespacios:
Re(v
j
) =
1
2
v
j
+
1
2
v
j
, Im(v
j
) =
i
2
v
j
+
i
2
v
j
(6.14)
Adem as, son linealmente independientes pues si consideramos la combinaci on lineal
a
1
Re(v
1
) +b
1
Im(v
1
) + +a
r
Re(v
r
) +b
r
Im(v
r
) = 0
usando (6.14),
_
a
1
2

ib
1
2
_
v
1
+
_
a
1
2
+
ib
1
2
_
v
1
+ +
_
a
r
2

ib
r
2
_
v
r
+
_
a
r
2
+
ib
r
2
_
v
r
= 0
9
Lo que implica que v
1
, . . . , v
r
son los vectores que aporta .
6.3 Forma can onica de Jordan 6.3 Forma can onica de Jordan 211
y como los vectores v
j
y v
j
son linealmente independientes, los coecientes son nulos,
esto es,
a
1
2

ib
1
2
=
a
1
2
+
ib
1
2
=
a
r
2

ib
r
2
=
a
r
2
+
ib
r
2
= 0
de donde a
j
= b
j
= 0, para 1 j r.
Finalmente, dado que Av
j
= ( + i)v
j
, cuando v
j
es un autovector, o bien,
Av
j
= ( +i)v
j
+v
j1
, separando partes reales e imaginarias se tiene:
ARe(v
j
) = Re(v
j
) Im(v
j
), AIm(v
j
) = Re(v
j
) +Im(v
j
)
en el primer caso; o bien
ARe(v
j
) = Re(v
j
) Im(v
j
) + Re(v
j1
)
AIm(v
j
) = Re(v
j
) +Im(v
j
) + Im(v
j1
)
en el segundo, lo que conduce a cajas de la forma (6.12).
Ejemplo 6.8 En (ii) del Ejemplo 6.7 obtuvimos como forma de Jordan (compleja) y
matriz de paso las matrices:
J =

i 1 0 0
0 i 0 0
0 0 i 1
0 0 0 i

P =

1 1 1 1
0 1 i 0 1 +i
i 0 i 0
0 2 0 2

Por tanto, teniendo en cuenta que = i = 0, = 1, la forma de Jordan real y la


correspondiente matriz de paso se escriben
J
R
=

0 1 1 0
1 0 0 1
0 0 0 1
0 0 1 0

P
R
=

1 0 1 0
0 0 1 1
0 1 0 0
0 0 2 0

es decir, como al autovalor complejo (y a su conjugado) le corresponde una caja de


tama no dos, ahora al par de autovalores les corresponden un bloque de tama no cuatro
con la estructura (6.12).

6 3 2 Calculo de potencias de matrices


Una de las ventajas que supone trabajar con la forma can onica de Jordan es que
permite simplicar cierto tipo de c alculo, como puede ser el c alculo de la potencia
k-esima de una matriz. M as concretamente, si queremos calcular A
k
y conocemos la
forma de Jordan y la matriz de paso tenemos que A = PJP
1
. Entonces
A
k
=
_
PJP
1
_
k
=
_
(PJP
1
)(PJP
1
)
k)
(PJP
1
)
_
= PJ
k
P
1
212 Tema 6 Diagonalizaci on
de manera que para conocer la potencia k-esima de A s olo es necesario conocer la
correspondiente potencia de J y multiplicar convenientemente por la matriz de paso.
La ventaja es que J es una matriz mucho m as sencilla que A.
Para calcular J se pueden presentar los siguientes casos:
J diagonal,
J =

1
.
.
.

=J
k
=

k
1
.
.
.

k
n

J no diagonal,
J =

1
1
.
.
.
.
.
.
.
.
.
1

1
0
.
.
.
.
.
.
.
.
.
0

0 1
.
.
.
.
.
.
.
.
.
1
0

de modo que,
J
k
=
_

1
0
.
.
.
.
.
.
.
.
.
0

0 1
.
.
.
.
.
.
.
.
.
1
0
_

_
k
= (D +N)
k
con
D =

1
.
.
.

y N =

0 1
.
.
.
.
.
.
.
.
.
1
0

La ventaja de esta descomposici on es que D es una matriz diagonal, de modo que


sus potencias son f aciles de calcular, mientras que N es una matriz nilpotente de orden
n, esto es, N
n
es la matriz nula. As, usando el binomio de Newton para matrices (pues
D y N conmutan),
J
k
= (D +N)
k
=
k

i=0

k
i

D
ki
N
i
=
n

i=0

k
i

D
ki
N
i
6.4 Forma can onica de Jordan 6.4 Forma can onica de Jordan 213
En concreto,

0 1
.
.
.
.
.
.
.
.
.
1
0

2
=
_
_
_
_
_
_
_
_
_
0 0 1
0 0 1
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
0
_
_
_
_
_
_
_
_
_
es decir, la la de 1 se desplaza hacia arriba. De esta forma, la suma anterior s olo llega
hasta i = n 1, pues a partir de N
n
, el resto de potencias es nulo.
Ejemplo 6.9 Calculemos A
k
donde
A =

2 1
1 4

Realizando lo c alculos oportunos se tiene que los autovalores son = 3 (doble), de


manera que
J =

3 1
0 3

y una matriz de paso es


P =

1 1
1 0

As pues, A
k
= PJ
k
P
1
, y
J
k
=

3 0
0 3

0 1
0 0

k
=
1

i=0

k
i

0 1
0 0

3 0
0 3

ki
=

k
0

0 1
0 0

3 0
0 3

k
+

k
1

0 1
0 0

3 0
0 3

k1
=

1 0
0 1

3
k
0
0 3
k

+k

0 1
0 0

3
k1
0
0 3
k1

3
k
k3
k1
0 3
k

N otese que

0 1
0 0

j
es la matriz nula para j 2. As,
A
k
= PJ
k
P
1
=

3
k1
(3 k) k3
k1
k3
k1
3
k1
(3 +k)


214 Tema 6 Diagonalizaci on
6 4
C

ALCULO CON PYTHON


Como el lector habra podido comprobar, en este tema se realizan gran cantidad
de c alculos que involucran matrices de cierto tama no, por lo que el uso de Python
est a m as que justicado. Aunque vamos a ver funciones especcas que posee Python
para el c alculo de autovectores, autovalores, etc., es posible realizar estos calculos con
lo que ya conocemos de Python.
Dado que queremos realizar c alculos exactos, el m odulo SymPy jugar a un papel
fundamental en esta secci on. Comencemos calculando el polinomio caracterstico de la
matriz
A =
_
_
_
_
_
_
_
_
1 4 3 2 1
0 13 10 7 3
0 85 59 40 22
0 104 74 50 27
0 90 62 43 22
_
_
_
_
_
_
_
_
que resulta:
[AI[ = 3 + 11x + 14x
2
+ 6x
3
x
4
x
5
y cuyas races son = 1 de multiplicidad 4 y = 3 de multiplicidad 1:
1 >>> from numpy import matrix
2 >>> from sympy import Matrix ,symbols ,roots ,eye
3 >>> a=matrix(-1 -4 -3 -2 -1; 0 -13 -10 -7 -3;
4 0 -85 -59 -40 -22;0 104 74 50 27;0 90 62 43 22)
5 >>> A=Matrix(a)
6 >>> x=symbols(x)
7 >>> C=A-x*eye (5)
8 >>> p=C.det()
9 >>> p
10 3 + 11*x + 14*x**2 + 6*x**3 - x**4 - x**5
11 >>> roots(p)
12 {-1: 4, 3: 1}
Como hemos hecho en ocasiones anteriores, hemos construido la matriz usando la
funci on de NumPy, puesto que es m as c omoda de manejar. Por su parte, hemos denido
un smbolo x (en lugar de ) con el que construir la expresion simb olica AI (n otese
el uso de la funci on eye para construir la matriz identidad) y luego hemos calculado
el determinante. La funci on roots nos permite obtener las races del mismo, junto sus
multiplicidades. N otese que el resultado es un diccionario, cuyas claves son las races,
y sus valores asociados, las multiplicidades correspondientes.
Podemos calcular ahora los subespacios asociados a cada autovalor:
13 >>> B=A+eye (5)
14 >>> e1=B.nullspace ()
15 >>> e1
16 [[1]
17 [0]
6.4 C alculo con Python 6.4 C alculo con Python 215
18 [0]
19 [0]
20 [0]]
21 >>> e2=(B**2).nullspace ()
22 >>> e2
23 [[1]
24 [0]
25 [0]
26 [0]
27 [0], [ 0]
28 [ -1/4]
29 [ -7/8]
30 [ 5/4]
31 [ 1]]
32 >>> e3=(B**3).nullspace ()
33 >>> e3
34 [[1]
35 [0]
36 [0]
37 [0]
38 [0], [ 0]
39 [ -1/5]
40 [ -3/10]
41 [ 1]
42 [ 0], [ 0]
43 [ 0]
44 [ -1/2]
45 [ 0]
46 [ 1]]
47 >>> e4=(B**4).nullspace ()
48 >>> e4
49 [[1]
50 [0]
51 [0]
52 [0]
53 [0], [ 0]
54 [ -6/11]
55 [ 1]
56 [ 0]
57 [ 0], [ 0]
58 [ -4/11]
59 [ 0]
60 [ 1]
61 [ 0], [ 0]
62 [ -3/11]
63 [ 0]
64 [ 0]
65 [ 1]]
216 Tema 6 Diagonalizaci on
Lo que signica que:
E
1
(1) = L((1, 0, 0, 0, 0))
E
2
(1) = L((1, 0, 0, 0, 0), (0,
1
4
,
7
8
,
5
4
, 1))
E
3
(1) = L((1, 0, 0, 0, 0), (0,
1
5
,
3
10
, 1, 0), (0, 0,
1
2
, 0, 1))
E
4
(1) = L((1, 0, 0, 0, 0), (0,
6
11
, 1, 0, 0), (0,
4
11
, 0, 1, 0), (0,
3
11
, 0, 0, 1)
de modo que dim(E
1
(1)) = 1, dim(E
2
(1)) = 2, dim(E
3
(1)) = 3 y dim(E
4
(1)) =
4. A partir de aqu ya tenemos casi toda la informacion pertinente para construir la
forma de Jordan, esto es, p
1
= 1, p
2
= 1, p
3
= 1 y p
4
= 1.
Vamos a introducir algunas funciones nuevas para manejar la informaci on obtenida
y no tener que reescribirla en cada momento. Por ejemplo, para comprobar que vector
de E
4
(1) es independiente con los de E
3
(1) hemos de construir una matriz, y
calcular rangos:
66 >>> from mimodulo import rango
67 >>> m=e3[0]. row_join(e3[1]).row_join(e3[2])
68 >>> m
69 [1, 0, 0]
70 [0, -1/5, 0]
71 [0, -3/10, -1/2]
72 [0, 1, 0]
73 [0, 0, 1]
74 >>> rango(m.row_join(e4[3])
75 4
es decir,
rango
_
_
_
_
_
_
_
_
1 0 0 0
0
1
5
0
3
11
0
3
10

1
2
0
0 1 0 0
0 0 1 1
_
_
_
_
_
_
_
_
= 4
Luego (0,
3
11
, 0, 0, 1) E
4
(1)\E
3
(1).
Observese el uso del atributo row join, que sirve para concatenar una matriz (o
vector) con otra. Tambien hemos usado la funci on rango de nuestro propio m odulo
construida en el Tema 5. A partir de aqu, los c alculos son directos:
76 >>> u4=11*e4[3]
77 >>> u3=B*u4
78 >>> u2=B*u3
79 >>> u1=B*u2
80 >>> P=u1.row_join(u2).row_join(u3).row_join(u4)
81 >>> P
82 [5, -4, 1, 0]
83 [0, -10, 3, -3]
84 [0, -35, 13, 0]
6.4 C alculo con Python 6.4 C alculo con Python 217
85 [0, 50, -15, 0]
86 [0, 40, -17, 11]
lo que nos permite construir la tabla
p
4
= 1 E
4
(1) u
4
1
= (0, 3, 0, 0, 11)
p
3
= 1 E
3
(1) u
3
1
= (1, 3, 13, 15, 17)
p
2
= 1 E
2
(1) u
2
1
= (4, 10, 35, 50, 40)
p
1
= 1 E
1
(1) u
1
1
= (5, 0, 0, 0, 0)
Hemos tenido la precauci on de multiplicar el primer vector por 11 para evitar en la
medida de lo posible las tediosas fracciones. Si a nadimos la informaci on proveniente
del otro autovalor,
87 >>> B=A-3* eye (5)
88 >>> u5=B.nullspace ()
89 >>> P=P.row_join(u5[0])
90 >>> P
91 [5, -4, 1, 0, 0]
92 [0, -10, 3, -3, 0]
93 [0, -35, 13, 0, -1]
94 [0, 50, -15, 0, 1]
95 [0, 40, -17, 11, 1]
nos resulta la matriz de paso:
P =
_
_
_
_
_
_
_
_
5 4 1 0 0
0 10 3 3 0
0 35 13 0 1
0 50 15 0 1
0 40 17 11 1
_
_
_
_
_
_
_
_
As pues, la forma de Jordan tendr a una caja de tama no 4 para el autovalor 1 y
una caja de tama no 1 para el autovalor 3, algo que podemos comprobar f acilmente
96 >>> J=P*A*P.inv()
97 >>> J
98 [-1, 1, 0, 0, 0]
99 [ 0, -1, 1, 0, 0]
100 [ 0, 0, -1, 1, 0]
101 [ 0, 0, 0, -1, 0]
102 [ 0, 0, 0, 0, 3]
Como comentamos al inicio de la secci on, tanto NumPy como SymPy poseen
funciones destinadas a calcular autovalores y autovectores de forma m as r apida. Por
otra parte, hay que tener en cuenta que NumPy realizar a el c alculo de autovalores
y autovectores usando metodos numericos que dan lugar a los habituales errores
numericos.
En NumPy podemos calcular autovalores con el m odulo linalg.eigvals:
218 Tema 6 Diagonalizaci on
103 >>> from numpy import linalg
104 >>> linalg.eigvals(a)
105 array ([ -1.00000000 +0.00000000e+00j, 3.00000000 +0.00000000
e+00j,
106 -0.99997160 +4.92035100e-05j, -0.99997160 -4.92035100
e-05j,
107 -1.00005681 +0.00000000e+00j])
N otese que no reconoce la multiplicidad del autovalor 1 correctamente. El m odulo
linalg.eig(a) proporciona a la vez, la informaci on de autovalores y los autovecto-
res asociados. Con SymPy, el metodo es similar: tenemos m odulos para vectores y
autovectores por separado:
108 >>> A.eigenvals ()
109 {-1: 4, 3: 1}
110 >>> A.eigenvects ()
111 [(-1, 4, [[1]
112 [0]
113 [0]
114 [0]
115 [0]]), (3, 1, [[ 0]
116 [ 0]
117 [-1]
118 [ 1]
119 [ 1]])]
aunque como podemos observar, eigenvects proporciona tambien los autovalores, su
multiplicidad y los vectores del subespacio propio correspondiente.
6 5
APLICACI

ON: OSCILADORES ACOPLADOS


Entre las m ultiples aplicaciones de los autovalores y los autovectores hay una muy
destacada que tiene que ver con el estudio de vibraciones en sistemas mec anicos.
Aqu vamos a mostrar un tpico ejemplo no trivial de vibraci on de un sistema de
muelles como el de la Figura 6.2, en el que tenemos dos masas iguales concectadas
entre s, y conectadas a su vez a la pared.
Denotemos por x
1
(t) y x
2
(t) a las funciones que indican el desplazamiento lateral
(positivo a la derecha y negativo a la izquierda) de cada una de las masas desde
su posici on de equilibrio. La fuerza ejercida sobre cada una de las masas (ignorando
fuerzas de friccion y fuerzas externas como la gravedad) seguira la segunda ley de
Newton: F = m a, con m la masa y a la aceleraci on. Por otro lado, la ley de Hooke nos
dice que la fuerza que ejerce cada muelle es proporcional a la compresi on de este. Como
es bien conocido, la aceleraci on corresponde a la derivada segunda del desplazamiento,
de manera que la fuerza que act ua sobre la primera masa correspondera a la ejercida
por los muelles a los que est a conectada. Si desplazamos a la derecha la primera masa,
el muelle ejerce una fuerza opuesta al sentido de movimiento igual a kx
1
mientras
6.5 Aplicaci on: osciladores acoplados 6.5 Aplicaci on: osciladores acoplados 219
x
1
x
2
Figura 6.2: Sistema de muelles
que el muelle central ejerce una fuerza igual a k(x
2
x
1
), es decir,
mx

1
(t) = kx
1
(t) +k(x
2
(t) x
1
(t)) = k(2x
1
(t) +x
2
(t))
donde k es la constante de proporcionalidad del muelle y m la masa. En la segunda
masa, un razonamiento similar nos lleva a:
mx

2
(t) = k(x
2
(t) x
1
(t)) +k(x
2
(t)) = k(x
1
(t) 2x
2
(t))
Es decir, tenemos en este caso un sistema de ecuaciones diferenciales de segundo orden
(hay derivadas de orden dos), que admite la representaci on matricial siguiente:

1
x

=
k
m

2 1
1 2

x
1
x
2

donde hemos omitido la dependencia en t para simplicar la notaci on. En forma


vectorial este sistema se escribe
x

= Ax con x =

x
1
x
2

y A =
k
m

2 1
1 2

No vamos a entrar aqu en c omo resolver sistemas de ecuaciones diferenciales como


este, aunque hemos de resaltar que la forma de Jordan de la matriz del sistema juega
un papel fundamental en la resoluci on. Lo que haremos sera probar con cierto tipo de
soluciones expresadas a traves de la exponencial compleja: en concreto, buscaremos
soluciones del sistema de la forma x
1
(t) = c
1
e
it
y x
2
(t) = c
2
e
it
, donde c
1
, c
2
y
son constantes a determinar. Derivando y sustituyendo en el sistema:
_
c
1
i
2

2
e
it
=
k
m
_
2c
1
e
it
+c
2
e
it
_
c
2
i
2

2
e
it
=
k
m
_
c
1
e
it
2c
2
e
it
_

_
c
1

2
e
it
=
k
m
(2c
1
+c
2
)e
it
c
2

2
e
it
=
k
m
(c
1
2c
2
)e
it
que simplicando y agrupando factores resulta

2
k
m

2

k
m

k
m
2
k
m

2

c
1
c
2

0
0

Este sistema tendr a soluciones no triviales, esto es, distintas de la soluci on nula, si

2
k
m

2

k
m

k
m
2
k
m

2

= 0
220 Tema 6 Diagonalizaci on
(a)
1
(b)
2
Figura 6.3: Movimiento de los modos normales
Ahora bien, la condicion anterior se puede escribir como
det

k
m

2 1
1 2

1 0
0 1

= 0
es decir,
2
coincide con los autovalores de la matriz A. Y para cada uno de estos
autovalores las constantes c
1
y c
2
son las componentes de los autovectores asociados
a cada autovalor. Un simple c alculo nos muestra que los autovalores y autovectores
resultan:

1
=

k
m
(1, 1),
2
=

3k
m
(1, 1)
Cualquier otra soluci on se va a poder expresar como una combinaci on lineal de las dos
soluciones obtenidas, denominadas modos normales de vibraci on.
Los modos normales de vibracion corresponden a soluciones del oscilador en el que
ambas masas se mueven con igual frecuencia. La Figura 6.3 muestra el movimiento
del sistema de ambos modos. Observese que el autovector asociado a la frecuencia
1
,
(1, 1) nos indica que el movimiento de cada una de las masas tiene direcci on opuesta
(gura 6.3a), mientras que para la frecuencia
2
, se mueven en la misma direcci on
(gura 6.3b).
A la vista de los resultados, cu al ser a el modo de vibraci on m as peligroso para
la estructura? Teniendo en cuenta que con la frecuencia
1
se producen los mayores
estiramientos y compresiones de los muelles, parece claro que este modo de vibrar puede
causar m as da no en la estructura que cualquier otro. N otese adem as que este modo,
frecuentemente llamado modo fundamental, corresponde a la frecuencia asocidad al
menor autovalor
En el estudio de estructuras es importante calcular el modo fundamental de
estas, pues si son excitadas con una frecuencia pr oxima a su modo fundamental los
desplazamientos producidos pueden superar el m aximo de lo que la propia estructura
puede resistir, y tal y como hemos visto, el c alculo el modo fundamental corresponde
al menor de los autovalores.
6.5 Aplicaci on: osciladores acoplados 6.5 Aplicaci on: osciladores acoplados 221
EJERCICIOS
1. Hallar el polinomio caracterstico y los autovalores de las siguientes matrices:
(a)

4 6
3 5

(b)

5 1
4 1

(c)

1 5 4
6 10 6
6 7 3

(d)

0 0 1
1 2 1
2 3 1

(e)

2 1 2
5 3 3
3 3 1

(f)

4 5 2
5 7 3
6 9 4

(g)

1 0 0 0
0 0 0 0
0 0 0 0
1 0 0 1

(h)

1 0 0 0
1 0 1 1
0 1 2 0
0 1 1 1

2. Para cada una de las matrices del Ejercicio 1 hallar, si es posible, una base de
autovectores.
3. Decir cu ales de las siguientes matrices pueden reducirse a una diagonal y encontrar
una matriz de cambio de base:
(a)

1 3 1
3 5 1
3 3 1

(b)

2 2 1
0 2 0
3 1 1

(c)

4 1 1
1 2 1
1 1 2

(d)

0 0 1
0 1 0
1 0 0

(e)

6 6 4 4
4 2 0 4
0 2 2 2
4 4 4 2

4. Determinar los coecientes a, b, c, d, e y f de la matriz


A =

1 1 1
a b c
d e f

sabiendo que (1, 1, 1), (1, 0, 1) y (1, 1, 0) son autovectores. Cu ales son los
autovalores de la matriz?
5. Determinar para que valores a, b R, la matriz
A =

a b 0
0 1 0
0 0 1

/
3
(R)
222 Tema 6 Diagonalizaci on
es diagonalizable.
6. Dada la matriz
A =

2 2 6
0 a 4 a
0 a a

probar que esta es diagonalizable para todo a ,= 0.


7. Encontrar la forma can onica de Jordan y la matriz de cambio de base correspon-
diente de las matrices
(a)

3 1 1
1 2 1
1 1 1

(b)

14 1 12
13 0 12
17 1 15

(c)

0 1 2
1 3 1
1 0 3

(d)

3 2 3
4 10 12
3 6 7

8. Hallar las formas can onicas y las correspondientes matrices de paso de las aplica-
ciones f y g cuyas matrices respecto de la base can onica son, respectivamente,
(a)
_
_
_
_
_
_
_
_
1 4 3 2 1
0 13 10 7 3
0 85 59 40 22
0 104 74 50 27
0 90 62 43 22
_
_
_
_
_
_
_
_
(b)
_
_
_
_
_
_
_
_
5 4 3 2 1
0 12 10 8 3
0 13 11 13 1
0 37 32 30 6
0 28 20 18 7
_
_
_
_
_
_
_
_
Indicaci on: P
f
() = ( + 1)
4
(3 ) y P
g
() = (5 )
3
( 2)
2
.
9. En los siguientes casos hallar los autovalores (reales o complejos), los autovectores
de C
n
y la matriz de paso en su forma real y/o compleja de:
(a)

1 1 +i
i 1 i

(b)

1 1
9 1

(c)

0 0 1 1
0 0 0 1
1 1 0 0
0 1 0 0

10. Probar que los autovalores de una matriz real y simetrica de orden dos son siempre
reales.
11. Probar que si A es no singular, entonces los autovalores de A
1
son los inversos de
los autovalores de A.
12. Probar que si es un autovalor de una matriz A asociado a un autovector x y es
un autovalor de otra matriz B asociado al mismo autovector x, entonces + es
un autovalor de A+B asociado a x.
6.5 Aplicaci on: osciladores acoplados 6.5 Aplicaci on: osciladores acoplados 223
13. Sean A, B /
n
(K) dos matrices invertibles, v K
n
un vector no nulo y K
un escalar no nulo tales que se verica Av = Bv. Cu ales de las siguientes
armaciones son ciertas?
(a) v es un autovector asociado al autovalor de la matriz A
1
B.
(b) v es un autovector asociado al autovalor de la matriz BA
1
.
(c) v es un autovector asociado al autovalor
1
de la matriz BA
1
.
(d) v es un autovector asociado al autovalor de la matriz AB
1
.
(e) v es un autovector asociado al autovalor de la matriz B
1
A.
14. Sean A, B /
n
(K). Cu ales de las siguientes armaciones son ciertas?
(a) A es diagonalizable si y solo si AI es diagonalizable.
(b) 1 es autovalor de A si y s olo si AI no es invertible.
(c) Si v es un autovector asociado al autovalor de la matriz BA y B es invertible,
entonces B
1
v es un autovector asociado al autovalor de la matriz AB.
(d) 0 es autovalor de AB si y s olo si 0 es autovalor de BA.
15. Encontrar los autovalores y autovectores de la aplicaci on derivada
D : P
3
R
[x] P
3
R
[x]
p(x) p

(x)
16. Sea S =

con
2
+
2
= 1, la matriz de cierta aplicaci on S /(R
2
)
con respecto a la base can onica. Hallar los vectores y valores propios de S. Existe
alguna interpretaci on geometrica de la aplicaci on S?
17. Dada una suma directa V = W Z podemos denir E /(V ) como E(v) = z si
v = z +w con z Z y w W.
(a) Probar que E
2
= E, W = ker(E) y Z = Im(E).
(b) Encontrar los autovalores de la aplicaci on E.
18. Calcular A
50
donde
A =

1 2 2
2 1 2
2 2 3

19. Hallar la potencia n-esima de la matriz A =

a b b
b a b
b b a

20. Calcular, si es posible, el lm


n
A
n
, donde A es la matriz
(a)

0.9 0.15
0.1 0.85

(b)

0.5 0
0.5 1

(c)

5
2
3 0

3
2
2 0
6 6
1
2

224 Tema 6 Diagonalizaci on


21. Supongamos que A es una matriz equivalente a otra matriz D, diagonal donde los
elementos de la diagonal son
1
,
2
, ...,
n
tal que [
i
[ < 1 para i = 1, ..., n. Sea
p
k
(A) = I +A+A
2
+... +A
k
.
(a) Probar que si A = PDP
1
entonces
p
k
(A) = P(I +D +D
2
+ +D
k
)P
1
(b) Demostrar que lm
k
p
k
(A) existe.
(c) Si denotamos por B a la matriz

k=1
A
k
= I + A + A
2
+ . . . , probar que
B = (I A)
1
.
Indicaci on: considerese lm
k
(I A)p
k
(A).
22. Supongamos que la matriz A es equivalente a la matriz diagonal D cuyos elementos
de la diagonal son
1
,
2
, ...,
n
. Sea
p
k
(A) = I +
A
1!
+
A
2
2!
+... +
A
k
k!
.
Demostrar que si A = PDP
1
entonces
lm
k
p
k
(A) = P

1
0 0
0 e

2
0
.
.
.
.
.
.
.
.
.
.
.
.
0 0 e

P
1
Indicaci on:

k=0
x
k
k!
= e
x
.
7 Ecuaciones lineales en diferencias
7 1
INTRODUCCI

ON
Numerosos procesos temporales, esto es, que evolucionan con el tiempo, pueden ser
modelados a traves de sistemas discretos, en los cuales se considera que el paso de un
estado del sistema al siguiente est a separado por un intervalo temporal determinado.
Por ejemplo, imaginemos que pretendemos averiguar la evoluci on de un fondo de
inversi on cuyos intereses se abonan al nal de un perodo estipulado (usualmente, cada
mes). De este modo, el capital existente no se incrementa de forma continua, sino que
lo hace mes a mes. Los intereses abonados al nal del primer mes incrementan el
capital, de manera que el c alculo de los mismos al mes siguiente diere del c alculo en
el mes anterior.
De este modo, podemos establecer una sucesi on de valores que proporcione el
capital obtenido en cada mes; esto es, x
0
, x
1
, x
2
, . . . , siendo x
0
nuestro capital inicial.
El c alculo del capital en el mes k-esimo vendr a dado por el capital en el mes k 1
junto con los intereses que ha generado. Si i denota el interes mensual en %, entonces
x
k
= x
k1
+
i
100
x
k1
=
_
1 +
i
100
_
x
k1
, k 1
Esta ecuaci on representa un fen omeno dinamico discreto, y se denomina com unmente
ecuaci on en diferencias. La ecuaci on proporciona los valores en la etapa k a partir de
los valores en la etapa k 1. El interes en estas ecuaciones esta en averiguar el estado
del sistema en una etapa determinada, o su evoluci on en el estado lmite, es decir,
cuando k .
En este ejemplo concreto, es f acil obtener el valor en la etapa k pues,
x
k
=
_
1 +
i
100
_
x
k1
=
_
1 +
i
100
_
2
x
k2
= =
_
1 +
i
100
_
k
x
0
de manera que es posible obtener dicho valor directamente a partir del dato x
0
. Es
decir, hemos resuelto la ecuaci on en diferencias.
Este tipo de ecuaciones pueden complicarse, por ejemplo, variando el tipo de interes
de un mes a otro. En tal caso, la ecuaci on resultara
x
k
=

1 +
i(k)
100

x
k1
,
con i(k) el interes en el mes k-esimo, lo que obviamente diculta el estudio.
225
226 Tema 7 Ecuaciones lineales en diferencias
De forma similar, pueden encontrarse fen omenos modelados por ecuaciones en
diferencias de orden superior, esto es, que involucran no s olo lo que ocurre en un estado
inmediatamente anterior, sino lo ocurrido en estados anteriores, como por ejemplo, la
sucesi on de Fibonacci
x
k+2
= x
k+1
+x
k
, k 0
En este caso estamos ante una ecuaci on en diferencias de orden dos (pues el c alculo
de un estado involucra dos estados anteriores).
Incluso es posible tener sistemas de ecuaciones en diferencias, m as conocidos como
sistemas din amicos discretos que equivalen a sucesiones multidimensionales, es decir,
una sucesi on de valores vectoriales, cuya evolucion, al igual que las ecuaciones en
diferencias, viene marcada por el comportamiento del sistema en el estado anterior
(en los sistemas de primer orden), o en estados anteriores (si el sistema es de orden
superior). Al igual que antes, el interes en este tipo de sistemas es estudiar su din amica,
es decir averiguar hacia d onde tiende el sistema a partir de un dato inicial.
Denici on 7.1 Una ecuaci on en diferencias de orden n es una expresi on del tipo
f(k, x
k
, x
k+1
, . . . , x
k+n
) = 0
Si f es lineal en x
k
, . . . , x
k+n
se dir a ecuaci on en diferencias lineal, que de forma
generica se escribe
a
n
(k)x
k+n
+ +a
1
(k)x
k+1
+a
0
(k)x
k
= g(k)
donde a
0
, . . . , a
n
y g son funciones. En el caso en el que a
0
, . . . , a
n
sean constantes
se dir a ecuaci on en diferencias lineal con coecientes constantes. Si adem as g = 0 se
dice ecuaci on homogenea y si g ,= 0 no homogenea.
Si f es una funci on con valores vectoriales y x
k
es tambien un vector, estaremos
hablando de sistemas de ecuaciones en diferencias.
Proposici on 7.1 Si y
(1)
k
, . . . , y
(m)
k
son soluciones de la ecuaci on lineal homogenea,
entonces cualquier combinaci on lineal suya tambien es solucion.
Demostracion:
En efecto, si y
(1)
k
, . . . , y
(m)
k
resuelven la ecuacion
a
n
(k)x
k+n
+ +a
1
(k)x
k+1
+a
0
(k)x
k
= 0
se tendra:
a
n
(k)y
(1)
k+n
+ +a
1
(k)y
(1)
k+1
+a
0
(k)y
(1)
k
= 0
a
n
(k)y
(2)
k+n
+ +a
1
(k)y
(2)
k+1
+a
0
(k)y
(2)
k
= 0
.
.
.
a
n
(k)y
(m)
k+n
+ +a
1
(k)y
(m)
k+1
+a
0
(k)y
(m)
k
= 0
7.2 Ecuaciones y sistemas lineales de primer orden con coecientes constantes 7.2 Ecuaciones y sistemas lineales de primer orden con coecientes constantes 227
Si ahora consideramos una combinaci on lineal de las ecuaciones anteriores:
c
1

a
n
(k)y
(1)
k+n
+ +a
1
(k)y
(1)
k+1
+a
0
(k)y
(1)
k

+
+c
m

a
n
(k)y
(m)
k+n
+ +a
1
(k)y
(m)
k+1
+a
0
(k)y
(m)
k

= a
n
(k)

c
1
y
(1)
k+n
+ +c
m
y
(m)
k+n

+ +a
1
(k)

c
1
y
(1)
k+1
+ +c
m
y
(m)
k+1

+a
0
(k)

c
1
y
(1)
k
+ +c
m
y
(m)
k

= 0
es decir, c
1
y
(1)
k
+ +c
m
y
(m)
k
es solucion de la ecuaci on en diferencias.
Denici on 7.2 Un conjunto de n soluciones linealmente independientes de una
ecuaci on lineal homogenea de orden n se dice sistema fundamental de soluciones.
Denici on 7.3 Llamaremos soluci on particular a cualquier soluci on de la ecuacion
no homogenea.
Proposici on 7.2 Si y
(h)
es solucion de la ecuaci on homogenea e y
(p)
es una soluci on
particular de la ecuaci on no homogenea, la suma de ambas tambien es soluci on de la
ecuaci on no homogenea.
La demostracion es elemental y se deja al lector.
7 2
ECUACIONES Y SISTEMAS LINEALES DE PRIMER ORDEN CON COEFICIEN-
TES CONSTANTES
Consideremos la ecuaci on de primer orden homogenea con coecientes constantes:
a
1
x
k+1
+a
0
x
k
= 0
Dividiendo por a
1
(si a
1
= 0 la soluci on es trivialmente cero), se tiene que x
k+1
= ax
k
,
con a =
a
0
a
1
. Realizando reiteradas sustituciones hacia atras,
x
k
= a
k
x
0
expresi on que nos proporciona la soluci on de la ecuaci on lineal de coecientes cons-
tantes de primer orden.
Para tratar el caso de sistemas lineales de ecuaciones en diferencias con coecientes
constantes vamos a ver unos cuantos ejemplos en dimension dos.
Ejemplo 7.1
228 Tema 7 Ecuaciones lineales en diferencias
(i) Estudiemos el siguiente sistema de primer orden homogeneo con coecientes
constantes:

x
k+1
= x
k
y
k
y
k+1
= 2x
k
+ 4y
k
El sistema se puede representar en forma matricial,

x
k+1
y
k+1

1 1
2 4

x
k
y
k

o abreviadamente x
k+1
= Ax
k
, con
x
k
=

x
k
y
k

, A =

1 1
2 4

Al igual que en el caso anterior, si realizamos sustituciones regresivas se obtiene


x
k
= A
k
x
0
. N otese que para resolver estos sistemas tendremos que calcular la potencias
k-esimas de la matriz A, tal y como vimos en la secci on 6.3.2.
Calculamos para ello la forma de Jordan de A: sus autovalores son = 2 y = 3, y
por tanto se trata de una matriz diagonalizable. Si consideramos la base formada por
los autovectores, y denotamos por P a la matriz de cambio de base de la can onica a
la base formada por los autovectores sabemos que A = P
1
JP. Si hacemos el cambio
de base y
k
= Px
k
entonces
x
k+1
= Ax
k
Px
k+1
= PAx
k
Px
k+1
= JPx
k
y deshaciendo el cambio:
y
k+1
= Jy
k
y
k
= J
k
y
0
Puesto que
J =

2 0
0 3

J
k
=

2
k
0
0 3
k

obtenemos que y
k
=

c
1
2
k
c
2
3
k

, con c
1
y c
2
las componentes de y
0
. Deshaciendo el
cambio anterior, x
k
= P
1
y
k
, se tendr a que
x
k
= P
1

c
1
2
k
c
2
3
k

Observando que P
1
es la matriz de cambio de la base de autovectores a la base
can onica, bastar a calcular los autovectores, que en este caso son (1, 1) y (1, 2) para
obtener:

x
k
y
k

c
1
c
1

2
k
+

c
2
2c
2

3
k
como soluci on general. Las constantes c
1
y c
2
se determinan a partir de los datos
iniciales.
Si miramos el aspecto de la soluci on general encontrada, podemos evitar de cierta
forma la multiplicaci on de matrices y el c alculo de autovectores razonando del siguiente
7.2 Ecuaciones y sistemas lineales de primer orden con coecientes constantes 7.2 Ecuaciones y sistemas lineales de primer orden con coecientes constantes 229
modo: dado que los autovalores son 2 y 3, la soluci on general que buscamos tendr a el
siguiente aspecto:
x
k
= C
1
2
k
+C
2
3
k
donde C
1
y C
2
son vectores constantes a determinar. Dado que se trata de un sistema
bidimensional de primer orden, la soluci on general s olo depende de dos par ametros
(y no cuatro, como se nalan los vectores C
1
y C
2
). Si denotamos por C
i
=

c
i1
c
i2

e
imponemos cualquiera de las ecuaciones del sistema se obtiene que
x
k+1
= x
k
y
k
c
11
2
k+1
+c
21
3
k+1
= c
11
2
k
+c
21
3
k
c
12
2
k
c
22
3
k
de donde

2c
11
= c
11
c
12
3c
21
= c
21
c
22

c
11
= c
12
2c
21
= c
22
Es decir, la soluci on general viene dada por

x
k
y
k

c
11
c
11

2
k
+

c
21
2c
21

3
k
que coincide con la obtenida antes.
(ii) Veamos ahora el sistema

x
k+1
= 2x
k
+y
k
y
k+1
= x
k
+ 4y
k
que en forma matricial es,

x
k+1
y
k+1

2 1
1 4

x
k
y
k

El c alculo de la forma de Jordan de A se realiz o en el Ejemplo 6.8, obteniendose que


J =

3 1
0 3

J
k
=

3
k
k3
k1
0 3
k

Procediendo como en el ejemplo anterior, usando el cambio y


k
= Px
k
, donde P ser a la
inversa de la matriz de paso en el c alculo de la forma de Jordan, entonces
y
k
= J
k
y
0
y
k
=

c
1
3
k
+c
2
k3
k1
c
2
3
k

c
1
c
2

3
k
+

c
2
0

k3
k1
Para deshacer el cambio, vamos a razonar como en el ejemplo anterior; puesto que
x
k
= P
1
y
k
, en denitiva tendremos que
x
k
= C
1
3
k
+C
2
k3
k
230 Tema 7 Ecuaciones lineales en diferencias
con C
1
y C
2
vectores constantes a determinar (que depender an solo de dos par ametros,
y no de cuatro). Usando que x
k+1
= 2x
k
+y
k
y poniendo C
i
=

c
i1
c
i2

(3c
11
+ 3c
21
)3
k
+ 3c
21
k3
k
= (2c
11
+c
12
)3
k
+ (2c
21
+c
22
)k3
k
se tiene que c
12
= c
11
+ 3c
21
y c
21
= c
22
, por tanto, la soluci on general queda como

x
k
y
k

c
11
c
11
+ 3c
21

3
k
+

c
21
c
21

k3
k
(iii) Veamos nalmente un ejemplo que involucra autovalores complejos. Dado el
sistema de ecuaciones en diferencias

x
k+1
= x
k
+y
k
y
k+1
= x
k
+y
k
cuya matriz asociada es A =

1 1
1 1

, su forma de Jordan (compleja) es


J =

1 +i 0
0 1 i

En este caso es m as conveniente acudir a la forma polar de los n umeros complejos para
calcular las potencias de J:
J
k
=

_
2
_
k
e
i
k
4
0
0
_
2
_
k
e
i
k
4

Como y
k
= J
k
y
0
, obtendremos
y
k
=
_
c
1
_
2
_
k
e
i
k
4
c
2
_
2
_
k
e
i
k
4
_
=
_
c
1
_
2
_
k
_
cos
_
k
4
_
+i sen
_
k
4
__
c
2
_
2
_
k
_
cos
_

k
4
_
+i sen
_

k
4
__
_
=

c
1
c
2

_
2
_
k
cos
_
k
4
_
+

ic
1
ic
2

_
2
_
k
sen
_
k
4
_
Al igual que en los ejemplos anteriores, multiplicando por P
1
llegamos a una solucion
general de la forma
x
k
= C
1
_
2
_
k
cos
_
k
4
_
+C
2
_
2
_
k
sen
_
k
4
_
en la que, para determinar los vectores C
i
=

c
i1
c
i2

, imponemos alguna de las


ecuaciones, por ejemplo, x
k+1
= x
k
+y
k
. Entonces
7.3 Ecuaciones en diferencias lineales de orden superior 7.3 Ecuaciones en diferencias lineales de orden superior 231
c
11
_
2
_
k+1
cos

(k + 1)
4

+c
21
_
2
_
k+1
sen

(k + 1)
4

=
(c
11
+c
12
)
_
2
_
k
cos
_
k
4
_
+ (c
21
+c
22
)
_
2
_
k
sen
_
k
4
_
de donde se deduce que
1
c
12
= c
21
, c
11
= c
22
; luego la soluci on general queda

x
k
y
k

c
11
c
12

_
2
_
k
cos
_
k
4
_
+

c
12
c
11

_
2
_
k
sen
_
k
4
_

Los c alculos realizados en el ejemplo anterior pueden generalizarse a sistemas de


dimensi on superior, obteniendose el siguiente resultado.
Teorema 7.1
Sea x
k+1
= Ax
k
un sistema de ecuaciones lineales en diferencias de primer orden
con coecientes constantes de dimensi on n, es decir, A /
n
(R). Las soluciones del
sistema estan formadas por una combinaci on lineal de las siguientes soluciones:

k
, si es un autovalor real simple de A.

k
, k
k
, . . . , k
m1

k
, si es un autovalor real de multiplicidad m de A.
r
k
cos(k), r
k
sen(k) si = [[e
i
es un autovalor complejo de A (y por tanto,
su conjugado tambien).
r
k
cos(k), r
k
sen(k), kr
k
cos(k), kr
k
sen(k), . . . , k
m1
r
k
cos(k),
k
m1
r
k
sen(k), si = [[e
i
es un autovalor complejo de multiplidad
m de A (y su conjugado tambien).
La demostraci on sigue las mismas ideas desarrolladas en el Ejemplo 7.1, aunque
los detalles resultan muy engorrosos, por lo que la omitiremos.
7 3
ECUACIONES EN DIFERENCIAS LINEALES DE ORDEN SUPERIOR
A traves del Ejemplo 7.1 hemos visto que la resoluci on de sistemas lineales
homogeneos con coecientes constantes de primer orden se lleva a cabo mediante el
c omputo de los autovalores de la matriz del sistema, a partir de los cuales obtenemos
el sistema fundamental de soluciones. Veamos c omo aprovechar esta idea para abordar
ecuaciones lineales con coecientes constantes de orden superior.
Dada la ecuaci on en diferencias de orden n,
x
k+n
+a
n1
x
k+n1
+ +a
1
x
k+1
+a
0
x
k
= 0 (7.1)
1
Aqu hemos usado las conocidas formulas trigonometricas
cos(A + B) = cos(A) cos(B) sen(A) sen(B)
sen(A + B) = sen(A) cos(B) + cos(A) sen(B)
232 Tema 7 Ecuaciones lineales en diferencias
denimos el vector de n componentes
y
k
= (x
k
, x
k+1
, . . . , x
k+n1
)
de manera que y
k+1
= (x
k+1
, . . . , x
k+n
). Entonces la ecuaci on (7.1) se transforma en
el sistema de primer orden
y
k+1
=

0 1 0 0
0 0 1 . . . 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
a
0
a
1
a
2
a
n1

y
k
No es difcil probar por inducci on que el polinomio caracterstico de la matriz anterior
es

n
+a
n1

n1
+ +a
1
+a
0
de manera que los autovalores de la matriz se deducen de las soluciones de lo que se
conoce como ecuaci on caracterstica de (7.1):

n
+a
n1

n1
+ +a
1
+a
0
= 0
la cual puede obtenerse directamente de la expresi on (7.1) sin necesidad de pasar por
el sistema.
A partir de lo establecido en el Teorema 7.1 se deduce que:
(i) Si es una raz real simple de la ecuaci on caracterstica, una solucion
vendra dada por
k
.
(ii) Si es un raz de multiplicidad m de la ecuaci on caracterstica, obtendremos
m soluciones de la forma:
k
, k
k
, . . . , k
m1

k
.
(iii) Si = [[e
i
es un raz compleja (junto con su conjugada) de la ecuaci on
caracterstica, entonces tenemos dos soluciones del tipo [[
k
cos(k) y [[
k
sen(k).
(iv) Si = [[e
i
es un raz compleja (junto con su conjugada) de multipli-
cidad m, entonces las 2m soluciones asociadas son: [[
k
cos(k), k[[
k
cos(k), . . . ,
k
m1
[[
k
cos(k), [[
k
sen(k), k[[
k
sen(k), . . . , k
m1
[[
k
sen(k)
7 3 1 Ecuaciones no homogeneas
Para resolver ecuaciones en diferencias no homogeneas haremos uso de la Propo-
sici on 7.2, es decir, primero resolveremos la ecuaci on homogenea y luego obtendremos
una soluci on particular de la no homogenea. La suma de ambas nos dara la soluci on
general de la ecuacion no homogenea.
Para obtener soluciones particulares buscaremos soluciones que se asemejen a la
parte no homogenea de la ecuaci on a resolver, introduciendo constantes indeterminadas
que resolveremos imponiendo que se satisfaga la ecuaci on.
Consideremos la ecuaci on lineal de primer orden no homogenea
x
k+1
= x
k
+ (7.2)
7.3 Ecuaciones en diferencias lineales de orden superior 7.3 Ecuaciones en diferencias lineales de orden superior 233
La soluci on de la ecuaci on homogenea la vimos al inicio de la secci on 7.2, resultan-
do x
k
= C
k
. Para obtener una soluci on particular de la ecuaci on no homogenea
probaremos con una soluci on del tipo x
k
= A, con A constante. Sustituyendo en (7.2):
A = A+ A =

1
, si ,= 1
Si = 1, podemos probar con x
k
= Ak, que nos lleva a
A(k + 1) = Ak + A =
As pues la soluci on general de la ecuaci on no homogenea es:
x
k
=

C
k
+

1
si ,= 1
C
k
+k si = 1
La constante C quedar a determinada con la condici on inicial.
Veamos algunos ejemplos:
Ejemplo 7.2
(i) Resolver la ecuaci on de primer orden
x
k+1
= 5x
k
+ 3
k
, x
0
= 1
Al igual que antes, resolvemos en primer lugar la ecuaci on homogenea x
k+1
= 5x
k
cuya soluci on general es x
k
= C5
k
. Para obtener una soluci on particular de la ecuaci on
no homogenea probaremos con una sucesi on del tipo x
k
= A3
k
. Sustituyendo en la
ecuaci on
A3
k+1
= 5A3
k
+ 3
k
A =
1
2
La soluci on general es x
k
=
1
2
3
k
+C5
k
. Para obtener la soluci on con condici on inicial
x
0
= 1 bastar a sustituir en la expresi on anterior para obtener que C =
3
2
y por tanto
x
k
=
1
2
3
k
+
3
2
5
k
(ii) Resolvamos la ecuacion
x
k+2
+x
k+1
+x
k
= k
2
+k + 1, x
0
= x
1
= 0
Para resolver la ecuacion homogenea observamos que la ecuaci on caracterstica es

2
+ + 1 = 0
cuyas races son =
1
2

3
2
i = e

2
3
i
. Luego la soluci on general de la ecuacion
homogenea es
x
k
= c
1
cos
_
2k
3
_
+c
2
sen
_
2k
3
_
Por otra parte, buscaremos una soluci on particular de la forma x
k
= Ak
2
+ Bk + C.
Sustituyendo,
A(k + 2)
2
+B(k + 2) +C +A(k + 1)
2
+B(k + 1) +C +Ak
2
+Bk +C = k
2
+k + 1
234 Tema 7 Ecuaciones lineales en diferencias
se obtiene
A =
1
3
, B =
1
3
, C =
1
9
obteniendose as la soluci on general de la ecuaci on dada:
x
k
= c
1
cos
_
2k
3
_
+c
2
sen
_
2k
3
_
+
1
3
k
2

1
3
k +
1
9
Sustituyendo esta expresi on para x
0
= x
1
= 0 se obtiene que c
1
=
1
9
y c
2
=
1
3

3
.
(iii) Resolvamos la ecuacion en diferencias
x
k+4
+x
k
= 2k + 1
La soluci on general de la ecuaci on homogenea (atendiendo a las soluciones de la
ecuaci on caracterstica
4
+ 1 = 0 que son
n
= e
i(

4
+n

2
)
, con n = 0, 1, 2, 3) es
x
k
= c
1
cos
_
k
4
_
+c
2
sen
_
k
4
_
+c
3
cos
_
3k
4
_
+c
4
sen
_
3k
4
_
mientras que podemos buscar una soluci on particular de la ecuaci on no homogena que
sea de la forma x
k
= Ak +B, obteniendose
A(k + 4) +B +Ak +B = 2k + 1 A = 1, B =
3
2
y por tanto, la soluci on general de la ecuaci on es
x
k
= c
1
cos
_
k
4
_
+c
2
sen
_
k
4
_
+c
3
cos
_
3k
4
_
+c
4
sen
_
3k
4
_
+k
3
2
(iv) Resolver el sistema de ecuaciones en diferencias

x
k+1
= y
k
+k
y
k+1
= 9x
k
x
0
= 0, y
0
= 1
Procedemos a calcular la soluci on general del sistema homogeneo asociado

x
k+1
y
k+1

0 1
9 0

x
k
y
k

cuyos autovalores son 3 y 3, y los autovectores (1, 3) y (1, 3), respectivamente; de


modo que la soluci on general vendr a dada por

x
k
y
k

c
11
3c
11

3
k
+

c
21
3c
21

(3)
k
Para buscar una soluci on particular procedemos de forma similar a los ejemplos
anteriores, es decir, buscamos un vector de la forma

x
k
y
k

A
1
k +B
1
A
2
k +B
2

7.4 Cadenas de Markov 7.4 Cadenas de Markov 235


Imponiendo que esta expresi on sea soluci on de la ecuaci on en diferencias:
A
1
(k + 1) +B
1
= A
2
k +B
2
+k
A
2
(k + 1) +B
2
= 9(A
1
k +B
1
)
se obtiene el sistema
_

_
A
1
A
2
= 1
A
1
+B
1
B
2
= 0
A
2
9A
1
= 0
A
2
+B
2
9B
1
= 0
cuya soluci on es A
1
=
1
8
, B
1
=
5
32
, A
2
=
9
8
y B
2
=
9
32
. La soluci on general de
la ecuacion no homogenea ser a

x
k
y
k

c
11
3c
11

3
k
+

c
21
3c
21

(3)
k
+
_

1
8
k
5
32

9
8
k
9
32
_
Imponiendo ahora la condici on inicial x
0
= 0, y
0
= 1 se tiene

c
11
+c
21

5
32
= 0
3c
11
3c
21

9
32
= 1
c
11
=
7
24
, c
21
=
13
96

7 4
CADENAS DE MARKOV
Una de las aplicaciones tpicas de los sistemas din amicos discretos aparece cuando
los sistemas de ecuaciones en diferencias tratan con cantidades porcentuales que pasan
de un lugar a otro sin variar en su conjunto. Veam oslo en el siguiente ejemplo.
Ejemplo 7.3 Supongamos que los N habitantes de una cierta ciudad realizan sus
compras en uno de los tres supermercados existentes X, Y y Z. Considerando que las
grandes compras se realizan una vez por semana, y que los consumidores comparan
calidad, precio, comodidad, etc., algunos deciden cambiar de supermercado, mientras
que otros permanecen eles. Pongamos que el porcentaje de clientes que al cabo de
una semana deciden permanecer o cambiar de supermercado est a dado en la siguiente
tabla:
X Y Z
X .80 .20 .10
Y .10 .70 .30
Z .10 .10 .60
donde el porcentaje p que aparece en la la i y la columna j signica que si en
una semana hay m clientes que compran en el supermercado j, la semana siguiente
habr a pm clientes que compran en el supermercado i. Suponiendo que el n umero de
236 Tema 7 Ecuaciones lineales en diferencias
clientes es constante, se trata de averiguar cu al ser a el mercado que atraiga al mayor
n umero de compradores.
Si denotamos por x
k
, y
k
y z
k
al n umero de clientes que compran en los supermer-
cados X, Y y Z en la semana k, respectivamente, es facil darse cuenta que
x
k+1
= 0.80x
k
+ 0.20y
k
+ 0.1z
k
y
k+1
= 0.10x
k
+ 0.70y
k
+ 0.3z
k
z
k+1
= 0.10x
k
+ 0.10y
k
+ 0.6z
k
(7.3)
es decir, tenemos un sistema de ecuaciones en diferencias lineal homogeneo.

El anterior es un tpico ejemplo de lo que se conoce como una cadena o sistema de


Markov.
Denici on 7.4 Diremos que una matriz real cuadrada es de Markov si sus elementos
son no negativos y sus columnas suman uno.
La interpretaci on tpica en terminos de probabilidad de una matriz de Markov es
la de un sistema que consta de n estados posibles E
1
,. . . ,E
n
en la que la probabilidad
de pasar del estado E
j
al estado E
i
viene dada por el elemento a
ij
.
Proposici on 7.3 Si A es una matriz de Markov que tiene autovalores reales, enton-
ces:
(i) Todos sus autovalores verican que [[ 1.
(ii) = 1 es autovalor de A.
Demostraci on:
(i) Procederemos por reducci on al absurdo. Supongamos que > 1 es un
autovalor de A asociado a un autovector v, que podemos suponer, sin perdida de
generalidad, que satisface que

n
i=1
v
i
= 1 (si < 1, la prueba se hara de forma
identica). Entonces
1 < =
n

i=1
v
i
=
n

i=1
(v)
i
=
n

i=1
(Av)
i
=
n

i=1
n

j=1
a
ij
v
j
=
n

j=1

i=1
a
ij

v
j
=
n

j=1
v
j
= 1
pues las columnas de A suman uno.
(ii) Puesto que las columnas de A suman uno, si e = (1, . . . , 1) se tiene que
e
T
A = e
T
. Trasponiendo esta expresi on: A
T
e = e, por tanto e es un autovector de
A
T
asociado al autovalor 1. Puesto que una matriz y su traspuesta tienen los mismos
autovalores, se tiene el resultado.
7.4 Cadenas de Markov 7.4 Cadenas de Markov 237
Denici on 7.5 Un vector v se dice vector de probabilidad si sus componentes son
todas no negativas y suman uno.
En la demostraci on de (i) de la Proposici on 7.3 se demuestra implcitamente el
siguiente resultado:
Proposici on 7.4 Si A es una matriz de Markov y v un vector de probabilidad,
entonces Av tambien es un vector de probabilidad.
El signicado de este resultado es el siguiente: en un proceso de Markov, no
se gana ni se pierde nada, es decir, la cantidad total que hay al inicio permanece
constante durante todo el proceso.
Denici on 7.6 Se denomina vector estacionario o de equilibrio de una matriz de
Markov a todo vector de probabilidad v tal que Av = v.
En particular, los vectores de equilibrio de una matriz de Markov son los autovec-
tores asociados al autovalor 1.
Ejemplo 7.4 Retomemos el Ejemplo 7.3. El sistema (7.3) se representa en forma
matricial por x
k+1
= Ax
k
, donde
x
k
=

x
k
y
k
z
k

A =

0.8 0.2 0.1


0.1 0.7 0.3
0.1 0.1 0.6

de modo que x
k
= A
k
x
0
. Supongamos que el dato inicial es (x
0
, y
0
, z
0
) = (0.2, 0.3, 0.5),
es decir, que inicialmente, hay un 20 % de la poblaci on que va al supermercado X, un
30 % va al Y y un 50 % va al Z. Tratemos de averiguar la tendencia del mercado, es
decir, que porcentaje de poblacion acudir a a cada uno de los supermercados pasado
un cierto tiempo.
Teniendo en cuenta que los autovalores de A son 1, 0.6 y 0.5 se tendr a que la
soluci on general del sistema vendr a dada por
x
k
= C
1
+C
2
(0.6)
k
+C
3
(0.5)
k
Dado que esto es un sistema tridimensional, la soluci on general deber a depender de
tres constantes, y no de nueve como indica la aparici on de los vectores C
i
. Podramos
proceder de forma similar a los ejemplos de sistemas de ecuaciones en diferencias que
hemos tratado, imponiendo en este caso dos de las ecuaciones para reducir el n umero
de constantes, pero esto es bastante tedioso.
238 Tema 7 Ecuaciones lineales en diferencias
En este caso, razonaremos de otro modo. Si calculamos los autovectores asociados
a cada autovalor obtenemos los vectores (9, 7, 4), (1, 1, 0) y (1, 2, 1) asociados a 1,
0.6 y 0.5 respectivamente. Calculemos ahora (
1
,
2
,
3
) tales que
(0.2, 0.3, 0.5) =
1
(9, 7, 4) +
2
(1, 1, 0) +
3
(1, 2, 1)
_

1
= 0.05

2
= 0.55

3
= 0.3
Entonces, el estado lmite
x

= lm
k
A
k
x
0
= lm
k
A
k
_

_
0.05

9
7
4

0.55

1
1
0

+ 0.3

1
2
1
_

_
= lm
k
_

_
0.05A
k

9
7
4

0.55A
k

1
1
0

+ 0.3A
k

1
2
1
_

_
= lm
k
_

_
0.05 1
k

9
7
4

0.55 (0.6)
k

1
1
0

+ 0.3 (0.5)
k

1
2
1
_

_
=

0.45
0.35
0.2

N otese que hemos usado que si v es autovector de A asociado al autovalor , entonces


v es autovector de A
k
asociado al autovalor
k
, es decir,
Av = v A
k
v =
k
v
Por otro lado, los c alculos realizados son v alidos en cualquier situaci on, no hemos
usado para realizarlos que la matriz es de Markov.
Pero si tenemos en cuenta este hecho, nos hubiera sobrado con calcular el auto-
vector asociado al autovalor 1, pues en el estado lmite, los autovectores asociados a
autovalores menores que uno desaparecen, por lo que el estado lmite es un vector
estacionario.

Ejemplo 7.5 Un rat on se encuentra en un laberinto con 5 compartimentos que est an


conectados entre s a traves de t uneles tal y como se representa en la Figura 7.1.
Se supone que cada vez que el rat on deja un compartimento y elige un t unel que lo
conecta, lo hace con igual probabilidad, y que en cada etapa, el rat on siempre elige un
t unel para moverse. Encontrar en que compartimento pasara el rat on la mayor parte
del tiempo, tras un perodo sucientemente largo.
7.4 Cadenas de Markov 7.4 Cadenas de Markov 239
1
2
3
4
5
Figura 7.1: Laberinto
Seg un la Figura 7.1, la probabilidad de que el rat on se mueva de un compartimento
a otro en una determinada etapa vendr a dada por la siguiente matriz:
A =
_
_
_
_
_
_
_
_
0
1
2
1
5
1
3
0
1
3
0 0 0
1
5
1
3
0
2
5
1
3
1
5
1
3
0
1
5
0
1
5
0
1
2
1
5
1
3
2
5
_
_
_
_
_
_
_
_
donde el elemento de la la i columna j representa la probabilidad de que el rat on
vaya desde el compartimento j al i.
Denotando por x
(k)
i
, a la probabilidad de que en la etapa k el rat on este en el
compartimento i, el estado del sistema vendr a dado por x
(k+1)
= Ax
(k)
. Suponiendo
que el rat on se encuentra en el estado inicial en cualquiera de los compartimentos con
igual probabilidad, es decir, el estado inicial x
(0)
= (
1
5
,
1
5
,
1
5
,
1
5
,
1
5
) veamos cu al es el
estado lmite.
Puesto que se trata de un proceso de Markov, todos los estados asociados a
autovalores menores que uno desparecer a en el lmite, por lo que solo hemos de
preocuparnos por los estados estacionarios, es decir, los autovectores asociados al
autovalor 1.
Si calculamos ker(AI) se obtiene como autovector independiente v = (3, 2, 5, 3, 5),
de modo que x
(k)
= A
k
x
(0)
= cv, donde c es una constante que determinamos ob-
servando que el resultado tiene que ser un vector de probabilidad (seg un la Proposi-
cion 7.4). As, la suma de sus elementos debe ser uno y por tanto c =
1
18
. El estado
lmite corresponde al vector (
1
6
,
1
9
,
5
18
,
1
6
,
5
18
), lo que signica que pasar a el mayor tiem-
po en los compartimentos 3 y 5.

240 Tema 7 Ecuaciones lineales en diferencias


7 5
APLICACI

ON: MODELOS BIOL

OGICOS
Un ejemplo tpico de aplicaci on de los sistemas din amicos en Biologa aparece en
los modelos de evoluci on de dos especies competidoras que interact uan unas con otras,
como los modelos depredador-presa.
De manera simplicada se suele suponer que el crecimiento de una determinada
especie de presas (altamente reproductoras, como por ejemplo, los conejos) en ausencia
de depredadores crece seg un la ecuaci on
x
k+1
= ax
k
, a > 1
donde x
k
denota el n umero de presas en un instante temporal k, y a es un par ametro
que estima la tasa de reproducci on de la especie. Por otra parte, el crecimiento de los
depredadores en ausencia de presas (y por tanto sin alimento) es negativo, modelandose
por
y
k+1
= dy
k
, 0 < d < 1
La interacci on de ambas especies nos lleva a un sistema como el siguiente
x
k+1
= ax
k
by
k
y
k+1
= dy
k
+cx
k
en el que los parametros b y c miden la inuencia que cada especie tiene en el
crecimiento de poblaci on de la otra. As, b > 0 indica que la presencia de depredadores
disminuye la poblaci on de presas, mientras que c > 0 signica que la cantidad de presas
(es decir, de alimento) incrementa el n umero de depredadores. El sistema anterior
admite una representaci on matricial del tipo

x
k+1
y
k+1

a b
c d

x
k
y
k

que no es m as que un sistema de ecuaciones en diferencias de orden uno. Ve amoslo


con m as detenimiento a traves de un ejemplo concreto:
Ejemplo 7.6 Consideremos una poblaci on de zorros en una regi on de un bosque cuyo
alimento preferido son los conejos. Si denotamos por Z
k
y C
k
al n umero de individuos
(en miles) de cada especie medidos en un perodo de tiempo k, supongamos que la
evoluci on de las dos poblaciones obedece a las ecuaciones siguientes:
Z
k+1
= 0.5Z
k
+ 0.4C
k
C
k+1
= pZ
k
+ 1.1C
k
donde p es un par ametro positivo a especicar. Como vemos, en ausencia de conejos,
la poblacion de zorros se divide por la mitad en cada etapa temporal, mientras que
en ausencia de zorros, la poblaci on de conejos aumenta un 10 % en cada etapa. Sin
embargo, la aparici on de conejos incrementa la poblaci on de zorros, mientras que la
existencia de zorros hace que la poblaci on de conejos disminuya.
7.5 Aplicaci on: modelos biol ogicos 7.5 Aplicaci on: modelos biol ogicos 241
Imaginemos en primer lugar que el par amero p = 0.2, y ve amos cu al es la evoluci on
de las poblaciones a largo plazo. En este caso el sistema din amico queda:

Z
k+1
C
k+1

0.5 0.4
0.2 1.1

Z
k
C
k

Vamos a usar Python para realizar los c alculos de autovalores y autovectores:


1 >>> from sympy import Matrix
2 >>> a=Matrix ([[0.5 ,0.4] ,[ -0.2 ,1.1]])
3 >>> a.eigenvects ()
4 [(0.700000000000000 , 1, [[2.0]
5 [ 1]]), (0.900000000000000 , 1, [[1.0]
6 [ 1]])]
Esto es, los autovalores y autovectores asociados son:
0.7 (2, 1) 0.9 (1, 1)
Que signicado tiene el resultado? Teniendo en cuenta que los autovalores son 0.7
y 0.9, el sistema tender a a algo del estilo

Z
k
C
k

= A
1
(0.7)
k
+A
2
(0.9)
k

0
0

Es decir, para el valor de p = 0.2, las dos especies se extinguir an. Es facil intuir el
por que: la voracidad de los zorros hace que la poblaci on de conejos se extinga y
posteriormente, al quedarse sin alimento, desaparecen tambien los zorros.
La pregunta ahora sera, cu anto debe valer p para que se mantengan constantes
ambas poblaciones. Si los autovalores son menores que uno, acabamos de ver que
ambas poblaciones est an condenadas a la extinci on; si ambos son mayores que uno,
las poblaciones se disparan, es decir ambas poblaciones crecen indenidamente (lo que
desde un punto de vista realista no tiene sentido, pues los recursos son limitados, pero
este es un efecto que no estamos considerando en el sistema). Por otro lado, si un
autovalor es mayor que uno y el otro menor que uno, en funci on del dato inicial se
tendra que las poblaciones pueden crecer o extinguirse. Se observa que la unica forma
de llegar al equilibrio es que alguno de los autovalores sea igual a uno.
1 >>> from sympy import Matrix ,symbols ,eye ,solve
2 >>> p=symbols(p)
3 >>> a=Matrix ([[0.5 ,0.4] ,[ -p ,1.1]])
4 >>> b=a-eye (2)
5 >>> b.det()
6 -0.05 + 0.4*p
7 >>> solve(_)
8 [0.125000000000000]
9 >>> a.subs(p ,0.125).eigenvals ()
10 {0.600000000000000: 1, 1.00000000000000: 1}
242 Tema 7 Ecuaciones lineales en diferencias
luego

0.5 1 0.4
p 1.1 1

= 0.04 + 0.4p = 0 p = 0.125


Es decir, para p = 0.125 los autovalores son 1 y 0.6.
Observese el uso del gui on bajo para reutilizar la ultima salida en Python (lnea 7)
y el m odulo subs (lnea 9) para sustituir el valor de p en la matriz y luego calcular los
autovalores.
Para el valor de p = 0.125 aseguramos que uno de los autovalores es 1 y el otro es
menor que uno, de forma que el vector asociado al autovalor 1 nos dar a estados en los
que la poblaci on se mantiene constante. Si intentamos obtener el autovector asociado
al autovalor 1:
11 >>> a.subs(p ,0.125).eigenvects ()
12 [(0.600000000000000 , 1, [[4.0]
13 [ 1]]), (1.00000000000000 , 1, [])]
nos encontramos con que Python no es capaz de proporcionarlo, posiblemente por
alg un error de redondeo.
2
En este caso hemos de calcularlo a mano, resultando el
vector (4, 5). Es decir, si el estado inicial es un m ultiplo de este vector, entonces ambas
poblaciones se mantienen constantes.

7 6
EJERCICIOS
1. Resolver las siguientes ecuaciones en diferencias:
(a) x
n+2
x
n+1
2x
n
= 0, x
1
= 0, x
2
= 5
(b) x
n+2
5x
n+1
+ 6x
n
= 0, x
1
= 1, x
2
= 2
(c) x
n+3
5x
n+2
+ 3x
n+1
+ 9x
n
= 0
(d) x
n+4
+ 2x
n+2
+x
n
= 0
2. Sea la sucesi on (de Fibonacci) 0, 1, 1, 2, 3, 5, 8, 13, . . . i.e. x
n+2
= x
n+1
+x
n
. Calcula
de forma aproximada el termino x
100
.
3. Sea la sucesi on 0, 1, 2, 5, 12, 29, . . . , i.e. x
n
= 2x
n1
+x
n2
. Demostrar que
x
n
=
_
1 +

2
_
n
2

_
1

2
_
n
2

2
y usar el hecho de que (x
n+1
/x
n
) 1 +

2 para aproximar

2.
4. Calcular, si es posible, el estado lmite para el sistema cuya matriz es

0.9 0.15
0.1 0.85

2
Este comportamiento, aunque anomalo, puede ocurrir en determinadas ocasiones debido
a las limitaciones o posible errores del software.
7.6 Ejercicios 7.6 Ejercicios 243
5. Se sabe que la posici on de una partcula en el plano en el instante t 0 esta dada
por

x
t
y
t

0.5 0
0.5 1

x
t1
y
t1

Estudiar la din amica de dicha partcula seg un sea la posici on inicial (x


0
, y
0
).
6. Se dan las sucesiones recurrentes
u
n
= 3u
n1
+ 3v
n1
v
n
= 5u
n1
+v
n1
con u
0
= 1 y v
0
= 1. Hallar u
n
y v
n
en funcion de n.
7. Estudiar la din amica de un punto cuyas coordenadas en el instante n vienen dadas
por las ecuaciones

x
n
y
n
z
n

5
2
3 0

3
2
2 0
6 6
1
2

x
n1
y
n1
z
n1

8. Los coches espa noles sin catalizador se dividen en tres grupos: Los que cada a no han
de pasar la inspecci on tecnica de vehculos (la ITV), los que a un son sucientemente
nuevos como para no tener que pasarla y los que causan baja (van a la chatarra).
Se sabe que el 2 % de los coches nuevos tienen que pasar la ITV al a no siguiente y
que el 3 % de los que ya la pasaban causan baja. Se supone que ya no se fabrican
coches sin catalizador y que por tanto el n umero de coches sin catalizador es jo.
Si en el a no 95 hay 3000 coches que deben pasar revision y 15000 que todava no,
calcula cu antos a nos han de pasar para que se reduzca a la mitad la cantidad de
coches que no tienen que pasar la ITV.
9. Un estudio realizado sobre la comunidad de ingenieros industriales revela el hecho
siguiente: El 90 % de los hijos de padres ingenieros industriales cursan estudios de
ingeniera industrial y s olo el 20 % de los hijos de padres no ingenieros industriales
cursan esa carrera. Cu al ser a el porcentaje de estudiantes que cursar an la carrera
de ingeniera industrial despues de muchas generaciones? (se supondr a un hijo como
descendencia por cada familia).
10. El ascensor de un edicio con bajo y dos pisos realiza viajes de uno a otro piso. Se
sabe que la mitad de los viajes que parten del bajo se dirigen a cada uno de los
otros dos pisos, mientras que si un viaje comienza en el primer piso, s olo el 25 % de
las veces naliza en el segundo. Por ultimo, si un trayecto comienza en el segundo
piso, siempre naliza en el bajo. Cu al es la probabilidad de que, a largo plazo, el
ascensor se encuentre en cada uno de los tres pisos?
11. Las familias de cierto pas se clasican seg un residan en areas rurales, urbanas o
suburbanas. Los estudios de movilidad demogr aca estiman que, en promedio, en el
curso de un a no, el 15 % de las familias urbanas cambia de residencia y se traslada
a un area suburbana, y el 5 % a un area rural; mientras que el 6 % de las familias
residentes en areas suburbanas se traslada a areas urbanas, y el 4 % a areas rurales,
y nalmente el 4 % de las familias rurales migra a las areas urbanas y el 6 % a las
suburbanas. Supongamos que en el momento actual el 40 % de las familias del pas
viven en areas urbanas, el 35 % en suburbanas y el 25 % en rurales. Que distribuci on
de poblaci on es de prever en el futuro si las tendencias no cambian?
8 Espacio vectorial eucldeo
8 1
PRODUCTO ESCALAR
En este tema vamos a introducir una nueva operaci on en un espacio vectorial,
el producto escalar, que nos va a dar acceso a nuevas e interesantes posibilidades.
Entre ellas, el producto escalar nos va a permitir introducir el concepto de longitud
en un espacio vectorial, y gracias a este, podremos calcular distancias entre vectores
e introducir una noci on de proximidad que tiene importantes aplicaciones.
La introducci on de esta nueva operaci on dota a los espacios vectoriales de una
estructura nueva, denominada espacio eucldeo, cuya denicion damos a continuaci on.
Denici on 8.1 Sea E un espacio vectorial real. Una aplicaci on
, ) : E E R
(x, y) x, y)
se dice que es un producto escalar si satisface las siguientes propiedades:
(i) x, y) = y, x), x, y E.
(ii) x +y, z) = x, z) +y, z), x, y, z E.
(iii) x, y) = x, y), x, y E, R.
(iv) x, x) 0, x E. Adem as x, x) = 0 x = 0.
Si en un espacio vectorial E hay denido un producto escalar se dir a que E es
un espacio eucldeo (e.e.).
La propiedad (i) se denomina de simetra, (ii) y (iii) son propiedades de linealidad,
mientras que la propiedad (iv) se conoce como positividad. N otese tambien que de (i)
(iii) se deduce
x, y +z) = x, y) +x, z)
x, y) = x, y)
x, y, z E, R
Nota 8.1 Si E es un espacio vectorial complejo, tambien se puede dar una denici on
similar para lo que se conoce genericamente como producto interno. En este caso se
245
246 Tema 8 Espacio vectorial eucldeo
trata de un aplicaci on
, ) : E E C
(x, y) x, y)
que satisface (ii)(iv), y en la que (i) se sustituye por
x, y) = y, x), x, y E
En tal caso diremos que E es un espacio unitario.
Ejemplo 8.1
(i) En R
n
, la aplicaci on
x, y) =
n

i=1
x
i
y
i
es un producto escalar, que ser a el producto escalar habitual que usaremos en este
espacio. La notaci on habitual para el mismo es x, y) = x y, o en forma matricial,
x
T
y.
1
(ii) En R
2
,
x, y) =

x
1
x
2

1 1
1 2

y
1
y
2

es un producto escalar.
(iii) c([a, b]) es un espacio eucldeo con el producto
f, g) =
_
b
a
f(x)g(x) dx
1
Esta operacion, la multiplicacion de una matriz la por una matriz columna fue introdu-
cida por el fsico Paul M. Dirac a nales del s. XIX.
8.1 Producto escalar 8.1 Producto escalar 247
(iv) En R
2
, x, y) = x
1
y
1
no es un producto escalar puesto que no verica la
propiedad de positividad. Oobservese que, por ejemplo, x = (0, 1) no la satisface, pues
(0, 1), (0, 1)) = 0, pero (0, 1) no es el vector nulo.

Nota 8.2 En C
n
, el producto interno habitual es x, y) =
n

i=1
x
i
y
i
.
Denici on 8.2 Sea E un e.e. Se denomina norma o longitud de un vector x a
_
x, x). Se notar a por |x|.
La norma es un concepto fundamental, pues nos permite cuanticar o medir el
tama no de un vector. Si un vector tiene norma pr oxima a cero, ser a un vector peque no,
y viceversa. Gracias a esto, dos vectores son proximos si la norma de su diferencia es
peque na (vease la secci on 3.3.2).
El siguiente resultado es una desigualdad notable que relaciona las normas de dos
vectores con su producto escalar.
Proposici on 8.1 (Teorema de Schwartz) Si x, y E, un e.e., entonces
1
x, y)
|x| |y|
1
Demostraci on:
Sea R. La propiedad de positividad del producto escalar implica que
x y, x y) 0, x, y E, R
Desarrollando la expresi on anterior haciendo uso de las propiedades de linealidad del
producto escalar se tiene que

2
x, x) 2x, y) +y, y) 0
Esta ultima expresi on puede ser vista como un polinomio de segundo grado en que,
dado que es positivo, tendr a a lo mas una raz. Es decir, el discriminante de la ecuaci on
de segundo grado correspondiente debe ser menor o igual que cero. De este modo,
4x, y)
2
4|x|
2
|y|
2
0
x, y)
2
|x|
2
|y|
2
1
de donde se sigue el resultado.
Como consecuencia del Teorema de Schwartz obtenemos otras desigualdades rele-
vantes:
248 Tema 8 Espacio vectorial eucldeo
Desigualdad de Cauchy:
n

i=1
x
i
y
i

i=1
x
2
i

1/2

i=1
y
2
i

1/2
(que se obtiene al aplicar el Teorema de Schawartz al producto escalar (i) del Ejem-
plo 8.1).
Desigualdad de Buniakowski:
_
b
a
f(x)g(x)dx

_
b
a
(f(x))
2

1/2

_
b
a
(g(x))
2

1/2
(obtenida al aplicar el mismo resultado al producto escalar (iii) del Ejemplo 8.1).
Estas desigualdades son difciles de probar directamente, pero inmediatas gracias
a la desigualdad de Schwartz. La siguiente desigualdad es cl asica, y tambien se prueba
usando la desigualdad de Schwartz.
Proposici on 8.2 (Desigualdad triangular) x, y de un e.e. E, se verica:
|x +y| |x| +|y|.
Demostraci on:
|x +y|
2
= x +y, x +y) = |x|
2
+ 2x, y) +|y|
2
(Des. Schwartz) |x|
2
+ 2|x| |y| +|y|
2
=
_
|x|
2
+|y|
2
_
de donde se sigue el resultado.
Nota 8.3 En la Secci on 3.3.2 denimos una norma como un aplicaci on vericando
(i) |x| 0, y |x| = 0 si y s olo si x = 0.
(ii) |x| = [[ |x|, K.
(iii) |x +y| |x| +|y|.
Las dos primeras propiedades son consecuencia inmediata de la Denici on 8.2 y
las propiedades del producto escalar, mientras que la tercera es precisamente la
desigualdad triangular. Es decir, la norma dada en la Denici on 8.2 cumple con las
propiedades anteriores.
8 1 1 Matriz de un producto escalar
Una vez m as, el hecho de trabajar en un espacio vectorial de dimensi on nita en
el que existen bases, nos permite acudir a las coordenadas respecto de una base para
trabajar con los productos escalares.
8.1 Producto escalar 8.1 Producto escalar 249
En concreto, si B = |u
1
, . . . , u
n
es una base de E y x, y E sabemos que
x =
n

i=1
x
i
u
i
, y =
n

i=1
y
i
u
i
.
Entonces, por las propiedades de linealidad del producto escalar tenemos que
x, y) =
_
n

i=1
x
i
u
i
,
n

j=1
y
j
u
j
_
=
n

i=1
x
i
_
u
i
,
n

j=1
y
j
u
j
_
=
n

i=1
n

j=1
x
i
y
j
u
i
, u
j
)
=

x
1
x
n

P
B

y
1
.
.
.
y
n

= x
T
P
B
y
donde (P
B
)
ij
= u
i
, u
j
), es la denominada matriz del producto escalar o matriz de
Gram. Debido a la simetra del producto escalar est a claro que la matriz P
B
es
simetrica. N otese tambien que para el producto escalar habitual P
B
= I
n
.
Dicho de otra forma, si conocemos la matriz de Gram respecto de una base, el
producto escalar se convierte en una operaci on matricial que involucra las coordenadas
de los vectores respecto de esa misma base.
Ejemplo 8.2 Consideremos el espacio eucldeo P
2
R
de polinomios de grado menor o
igual con coecientes reales dotado del producto escalar
p(t), q(t)) =
_
1
1
p(t)q(t) dt
La matriz de este producto escalar respecto de la base can onica B
c
= |1, t, t
2
se
calcula:
1, 1) =
_
1
1
1 dt = 2, 1, 1) =
_
1
1
t dt = 0, 1, t
2
) =
_
1
1
t
2
dt =
2
3
,
t, t) =
_
1
1
t
2
dt =
2
3
, t, t
2
) =
_
1
1
t
3
dt = 0, t
2
, t
2
) =
_
1
1
t
4
dt =
2
5
es decir
P
B
c
=

2 0
2
3
0
2
3
0
2
3
0
2
5

Veamos c omo usar esta matriz. Supongamos que queremos calcular el producto
escalar de dos vectores de P
2
R, por ejemplo, 1 + 2t
2
y 1 3t t
2
. Podemos usar la
denici on del producto escalar:
1+2t
2
, 13t t
2
) =
_
1
1
(1+2t
2
)(13t t
2
) dt =
_
1
1
(13t +t
2
6t
3
2t
4
) dt =
28
15
250 Tema 8 Espacio vectorial eucldeo
Mientras que si usamos la matriz, el producto escalar se efect ua usando coordenadas:
1 + 2t
2
, 1 3t t
2
) =

1 0 2

2 0
2
3
0
2
3
0
2
3
0
2
5

1
3
1

=
28
15

8 2
ORTOGONALIDAD.
La seccion anterior nos ha mostrado que es un producto escalar, la denici on
de norma y algunas propiedades interesantes; pero sin duda alguna, el concepto
fundamental vinculado al producto escalar es el de ortogonalidad.
Denici on 8.3 Sea E un e.e.
(i) Dos vectores x e y se dicen ortogonales respecto de un producto escalar
si x, y) = 0. Se notar a x y.
(ii) Un conjunto de vectores |x
1
, . . . , x
n
se dice ortogonal (dos a dos) si
x
i
, x
j
) = 0 si i ,= j.
(iii) Un vector x es ortogonal a un conjunto S si x, y) = 0, y S.
Ejemplo 8.3
(i) Si consideramos en R
2
un vector x = (, ), entonces el vector y = (, )
es ortogonal a x, pues
x y = (, ) (, ) = + = 0
(ii) Si consideramos R
n
con el producto escalar, la base canonica es un conjunto
ortogonal.
(iii) En c([, ]) con el producto escalar
f, g) =
_

f(x)g(x) dx
el conjunto |sen(mx), cos(nx)
m,nN
es ortogonal (dos a dos).

Una consecuencia inmediata de la ortogonalidad es la independencia lineal:


Proposici on 8.3 Si x
1
, . . . , x
n
son ortogonales entre s y no nulos entonces son l.i.
8.2 Ortogonalidad. 8.2 Ortogonalidad. 251
x
y
x
+
y

2
Figura 8.1: Ilustracion del Teorema de Pitagoras
Demostraci on:
Veamos que la combinaci on lineal nula de estos vectores,

1
x
1
+ +
n
x
n
= 0
implica que los escalares deben ser nulos. Haciendo el producto escalar para cada uno
de los vectores x
j
se tiene

1
x
1
+ +
n
x
n
, x
j
) = 0, x
j
) = 0
Y usando la linealidad,

1
x
1
, x
j
) + +
n
x
n
, x
j
) = 0
j
x
j
, x
j
) = 0
j
= 0, j
Otra consecuencia de la ortogonalidad es la siguiente version del Teorema de
Pit agoras:
Proposici on 8.4 (Teorema de Pitagoras) Si x y entonces
|x +y|
2
= |x|
2
+|y|
2
La demostraci on se propone como ejercicio al lector. En la Figura 8.1 representamos
el resultado en el contexto de vectores en un plano. La suma de dos vectores ortogonales
corresponde a un vector que coincide con la hipotenusa del tri angulo rect angulo que
forman, mientras que las normas corresponden a las longitudes de los mismos; es decir,
en un tri angulo rect angulo, la suma de los cuadrados de las longitudes de los lados
ortogonales es igual al cuadrado de la longitud de la hipotenusa, esto es, el enunciado
cl asico del Teorema de Pitagoras.
8 2 1 Bases ortonormales
Un concepto que jugar a un papel fundamental m as adelante es el de base ortonor-
mal.
252 Tema 8 Espacio vectorial eucldeo
Denici on 8.4 Se dice que una base B es ortogonal si los elementos que la forman
son ortogonales dos a dos. Si adem as los vectores son de norma uno respecto del
mismo producto escalar, se dir a que B es ortonormal.
Teorema 8.1
En todo espacio eucldeo de dimensi on nita existen bases ortonormales.
La demostracion de este resultado es consecuencia inmediata del siguiente teorema.
Teorema 8.2 (Gram-Schmitz, metodo de ortogonalizaci on)
Sea x
1
, . . . , x
n
, . . . , una sucesion (nita o innita) de vectores linealmente indepen-
dientes. Denotemos por L
k
= L(x
1
, . . . , x
k
) el espacio generado por los k primeros
vectores. Entonces, existen y
1
, . . . , y
n
, . . . tales que
(i) L
k
= L(y
1
, . . . , y
k
).
(ii) y
k+1
L
k
, k 1.
Antes de pasar a la demostraci on conviene entender bien lo que signica este resul-
tado. Dado un conjunto de vectores linealmente independientes, es posible encontrar
un nuevo conjunto de vectores que generan lo mismo que los vectores originales
(propiedad (i)), y que adem as son ortogonales entre s, dos a dos (consecuencia de la
propiedad (ii)). Es decir, dado un conjunto de vectores, podemos ortogonalizar dicho
conjunto, con vectores que son esencialmente iguales, en el sentido de que generan
los mismos subespacios.
Demostraci on:
Denimos inductivamente la sucesi on de vectores y
j
del siguiente modo:
y
1
= x
1
, y
k+1
= x
k+1

j=1
y
j
, x
k+1
)
|y
j
|
2
y
j
, para k 1 (8.1)
Veamos en primer lugar que esta sucesi on satisface (i), usando el principio de
inducci on:
Para k = 1 es evidente que L
1
= L(y
1
).
Supongamos ahora que L
k
= L(y
1
, . . . , y
k
) y veamos que tambien se tiene el
resultado para k + 1. Observese que de (8.1), y
k+1
= x
k+1
v, con v L
k
(por hip otesis de inducci on), luego y
k+1
L
k+1
. De aqu es evidente que
L
k+1
= L(y
1
, . . . , y
k+1
).
Probemos ahora (ii), tambien por inducci on.
y
2
L
1
pues
y
2
, y
1
) = x
2
, x
1
)
x
1
, x
2
)
|x
1
|
2
x
1
, x
1
) = 0
8.2 Ortogonalidad. 8.2 Ortogonalidad. 253
Supongamos ahora que y
k
L
k1
y probemos que y
k+1
es ortogonal a L
k
. Para
ello debemos ver que y
k+1
, y
j
) = 0, 1 j k. Entonces,
y
k+1
, y
j
) =
_
x
k+1

i=1
y
i
, x
k+1
)
|y
i
|
2
y
i
, y
j
_
= x
k+1
, y
j
)
k

i=1
y
i
, x
k+1
)
|y
i
|
2
y
i
, y
j
)
Por hip otesis de inducci on sabemos que y
i
, y
j
) = 0 si i ,= j; luego
y
k+1
, y
j
) = x
k+1
, y
j
) y
j
, x
k+1
) = 0
La demostraci on de este resultado es constructiva, es decir, nos dice c omo, a partir
de un cierto conjunto de vectores, podemos construir un nuevo conjunto que genera lo
mismo, y que son ortogonales. Este metodo de construcci on de vectores ortogonales se
denomina metodo de ortogonalizaci on de Gram-Schmidtz. Veamos algunos ejemplos.
254 Tema 8 Espacio vectorial eucldeo
Ejemplo 8.4
(i) Consideremos el conjunto |(0, 1, 2), (1, 0, 0), (0, 1, 1). Ortonormalizar respec-
to del producto escalar habitual en R
3
.
Aplicamos el metodo de Gram-Schmidtz del siguiente modo,
y
1
= (0, 1, 2)
y
2
= x
2

y
1
x
2
|y
1
|
2
y
1
= (1, 0, 0)
(1, 0, 0) (0, 1, 2)
|(0, 1, 2)|
2
(0, 1, 2) = (1, 0, 0)
y
3
= x
3

y
1
x
3
|y
1
|
2
y
1

y
2
x
3
|y
2
|
2
y
2
= (0, 1, 1)
(0, 1, 2) (0, 1, 1)
|(0, 1, 2)|
2
(0, 1, 2)
(1, 0, 0) (0, 1, 1)
|(1, 0, 0)|
2
(1, 0, 0)
= (0,
2
5
,
1
5
)
As pues, el conjunto |(0, 1, 2), (1, 0, 0), (0,
2
5
,
1
5
) es ortogonal. N otese que puesto
que (0, 1, 2) y (1, 0, 0) ya son ortogonales, el metodo no los modica. Por otro lado, es
evidente que los subespacios
L
1
= L((0, 1, 2)), L
2
= L((0, 1, 2), (1, 0, 0)),
L
3
= L((0, 1, 2), (1, 0, 0), (0,
2
5
,
1
5
))
son los mismos que
L
1
= L((0, 1, 2)), L
2
= L((0, 1, 2), (1, 0, 0)),
L
3
= L((0, 1, 2), (1, 0, 0), (0, 1, 1))
Puesto que adem as, los vectores iniciales forman base de R
3
(son tres vectores inde-
pendientes), podemos obtener una base ortonormal dividiendo cada uno de ellos por
su norma:
|(0, 1, 2)| =
_
(0, 1, 2) (0, 1, 2) =

1 + 4 =

5, |(1, 0, 0)| = 1,
|(0,
2
5
,
1
5
)| =
_
1
5
Es decir, el conjunto |(0,
1

5
,
2

5
), (1, 0, 0), (0,
2

5
5
,

5
5
) es una base ortonormal.
(ii) Ortonormalizar los vectores |1, t, t
2
, t
3
de P
R
[t] respecto del producto escalar
p, q) =
_
1
1
p(t)q(t) dt
En el ejemplo anterior hemos acudido directamente a la expresi on (8.1) que nos
proporciona el metodo de Gram-Schmidtz. Sin embargo, en la pr actica no es necesario
conocer esta f ormula de memoria, sino observar c omo se construye cada nuevo
elemento de la sucesi on para ortogonalizar un conjunto cualquiera. Para el caso que
nos ocupa, est a claro que el primer elemento de la nueva sucesi on es el primer elemento
que ya tenemos:
y
1
= 1
8.2 Ortogonalidad. 8.2 Ortogonalidad. 255
Ahora, para calcular el siguiente elemento basta ver que se trata del elemento de la
sucesi on conocida menos una combinaci on lineal de todos los elementos que acabamos
de construir. As,
y
2
= x
2
y
1
con la condici on de que y
2
, y
1
) = 0. Es decir, y
2
= t , siendo tal que
t , 1) =
_
1
1
(t ) dt = 0 = 0
luego y
2
= t. N otese que puesto que x
1
= 1 y x
2
= t son ya ortogonales, el metodo
Gram-Schmidtz no modica dichos vectores.
Del mismo modo, y
3
se construye como y
3
= x
3

1
y
1

2
y
2
, con las condiciones
adicionales y
3
, y
1
) = y
3
, y
2
) = 0. Imponiendo ambas condiciones:
t
2

2
t, 1) =
_
1
1
(t
2

2
t) dt = 0
t
2

2
t, t) =
_
1
1
(t
2

2
t)t dt = 0

_
2
3
2
1
= 0

2
3

2
= 0
luego
1
=
1
3
y
2
= 0. Es decir, y
3
= t
2

1
3
.
Finalmente, y
4
= t
3

2
t
3
(t
2

1
3
), con las condiciones y
4
, y
j
) = 0, 1 j 3,
es decir
t
3

2
t
3
(t
2

1
3
), 1) =
_
1
1
_
t
3

2
t
3
(t
2

1
3
)
_
dt = 0
t
3

2
t
3
(t
2

1
3
), t) =
_
1
1
_
t
3

2
t
3
(t
2

1
3
)
_
t dt = 0
t
3

2
t
3
(t
2

1
3
), t
2

1
3
)
=
_
1
1
_
t
3

2
t
3
(t
2

1
3
)
_ _
t
2

1
3
_
dt = 0
de donde se obtiene el sistema
_

_
2
1
= 0
2
5

2
3

2
= 0

8
45

3
= 0
cuyas soluciones son
1
=
3
= 0,
2
=
3
5
. As pues, y
4
= t
3

3
5
t. Es importante
observar que el calculo de las integrales anteriores se puede simplicar bastante si
observamos que en diversos momentos estamos calculando integrales del tipo
_
1
1
(t
2

1
3
) dt = 1, t
2

1
3
) = 0 o
_
1
1
t(t
2

1
3
) dt = t, t
2

1
3
) = 0
que son nulas debido a la ortogonalidad entre estos polinomios.
256 Tema 8 Espacio vectorial eucldeo
Finalmente, el conjunto |1, t, t
2

1
3
, t
3

3
5
t es ortogonal, y calculando sus normas:
|1| =

_
1
1
1 dt)
1
2
=

2, |t| =

_
1
1
t
2
dt)
1
2
=
_
2
3
|t
2

1
3
| =
_
8
45
, |t
3

3
5
t| =
_
8
175
obtenemos el siguiente conjunto ortonormal:

2
,
_
3
2
t,
_
45
8
(t
2

1
3
),
_
175
8
(t
3

3
5
t)

En particular, observese que con el producto escalar dado, la base can onica de P
3
R
no
es ortonormal.

Nota 8.4
(i) Observese que en una base ortonormal B, la matriz del producto escalar
P
B
= I
n
. Recprocamente, si la matriz de un producto escalar es la identidad, entonces
la base es ortonormal.
(ii) Dada una base ortonormal B = |u
1
, . . . , u
n
, las coordenadas de un
vector x respecto de esta base son
x
B
= (x, u
1
), . . . , x, u
n
))
pues si x =
n

i=1
x
i
u
i
, multiplicando escalarmente por cada vector u
j
se tiene
x, u
j
) =

i=1
x
i
u
i
, u
j

=
n

i=1
x
i
u
i
, u
j
) = x
j
(iii) Si B es una base de un e.e., P
B
la matriz del producto escalar y B

=
|u
1
, . . . , u
n
es una base ortonormal respecto del producto escalar, entonces la matriz
A cuyas columnas corresponden a las coordenadas de los vectores u
i
respecto de la
base B verica que A
T
P
B
A = I
n
.
En particular, si consideramos el producto escalar habitual en R
n
y la base canonica,
cualquier matriz A cuyas columnas correspondan a las coordenadas (can onicas) de
los vectores de una base ortonormal verica que A
T
A = I
n
. Esto motiva la siguiente
denici on.
Denici on 8.5 Se dice que una matriz A /
n
(K) es ortogonal si A
T
A = I
n
, o
equivalentemente, A
T
= A
1
8 2 2 Subespacios ortogonales
El concepto de ortogonalidad puede ser extendido tambien a subespacios:
8.2 Ortogonalidad. 8.2 Ortogonalidad. 257
Denici on 8.6 Dos subespacios W
1
, W
2
se dicen ortogonales, y se notar a W
1
W
2
,
si todos los vectores de W
1
son ortogonales a todos los vectores de W
2
.
Como es habitual en los espacios vectoriales, lo que sucede con una base es
extensible a todo el subespacio.
Proposici on 8.5 W
1
W
2
si y solo si los vectores de una base de W
1
son
ortogonales a los vectores de una base de W
2
.
Demostraci on:
La implicaci on hacia la derecha es trivial. Veamos la implicaci on contraria. Sea
|u
1
, . . . , u
n
una base de W
1
y |v
1
, . . . , v
m
una base de W
2
, de forma que los
elementos de la base de W
1
son ortogonales a los elementos de la base de W
2
.
Consideremos ahora x W
1
e y W
2
. Por la condici on de base,
x =
n

i=1
x
i
u
i
, y =
m

j=1
y
j
v
j
Entonces, de la linealidad del producto escalar
x, y) =
n

i=1
m

j=1
x
i
y
j
u
i
, v
j
) = 0
pues u
i
, v
j
) = 0 i, j, de modo que x y. De la arbitrariedad de los vectores se
obtiene el resultado.
Proposici on 8.6 W
1
W
2
W
1
W
2
= |0.
Demostraci on:
Est a claro que si x W
1
W
2
, dado que W
1
W
2
se debe tener que x.x) = 0,
de lo que se deduce que x = 0.
Denici on 8.7 Sea W un subespacio vectorial de un e.e. E. Se dene el ortogonal
de W, tambien denominado complemento ortogonal de W, y se notar a por W

, como
W

= |y E : x y, x W
Es decir, el complemento ortogonal de un conjunto W est a formado por los vectores
que son ortogonales (simult aneamente) a todos los vectores de W.
258 Tema 8 Espacio vectorial eucldeo
Proposici on 8.7 W

es un subespacio vectorial.
La demostracion se propone como ejercicio al lector.
Proposici on 8.8 (W

= W.
Demostraci on:
Sea x W. Entonces si y W

entonces x y, es decir, x (W

. De aqu se
concluye que W W

.
Recprocamente, si x (W

entonces x y para todo y W

. Esto es,
x W, lo que implica que W

W. De la doble inclusi on se obtiene el resultado


deseado.
Calculo del ortogonal a un subespacio
La Proposici on 8.5 nos indica que para obtener la ortogonalidad a un subespacio,
basta trabajar con una base del subespacio. Esta es la idea central para obtener el
ortogonal de un subespacio.
De forma general podemos armar que si W tiene una base formada por los vectores
|u
1
, . . . , u
n
, entonces W

viene dado por el sistema de ecuaciones implcitas


x, u
1
) = 0, . . . , x, u
n
) = 0
Es mas, si usamos el producto escalar habitual de R
n
, y |u
1
, . . . , u
n
es una base de
W, entonces, la matriz cuyas las est an formadas por las coordenadas de los vectores
de la base corresponde a la matriz de un sistema de ecuaciones implcitas que dene a
W

.
Si estamos usando un producto escalar distinto, cuya matriz respecto de la base
con la que trabajemos es P
B
, entonces la matriz AP
B
, donde A es la matriz cuyas las
est an formadas por las coordenadas respecto de la base B de los vectores de la base
de W, es la matriz de un sistema de ecuaciones implcitas que dene a W

.
Ejemplo 8.5
(i) Para encontrar el ortogonal de W = L((1, 1, 0), (0, 0, 1)) respecto al producto
escalar habitual de R
3
bastar a imponer ortogonalidad respecto a la base de W:
x (1, 1, 0), x (0, 0, 1)
Si ponemos x = (x
1
, x
2
, x
3
) entonces el requerimiento anterior nos lleva al sistema
x
1
+x
2
= 0
x
3
= 0

8.2 Ortogonalidad. 8.2 Ortogonalidad. 259


que resulta un sistema de ecuaciones implcitas de W

. Resolviendo dicho sistema


encontramos una base de W

; en este caso W

= L((1, 1, 0)). N otese que la matriz


del sistema de ecuaciones que dene a W

es
A =

1 1 0
0 0 1

cuyas las corresponden a las coordenadas de los vectores de la base de W.


(ii) Calculemos ahora el subespacio de W = L(|2 + t, 1 t
2
) en P
2
R
. Dado que
la base de W est a formada por los polinomios 2 +t y 1 t
2
, una primera opci on para
obtener W

sera obtener los polinomios x


1
+x
2
t +x
3
t
2
tales que
x
1
+x
2
t +x
3
t
2
, 2 +t) = 0, x
1
+x
2
t +x
3
t
2
, 1 t
2
) = 0
es decir,
_

_
_
1
1
(1 +x
2
t +x
3
t
2
)(2 +t) dt = 4x
1
+
2
3
x
2
+
4
3
x
3
= 0
_
1
1
(x
1
+x
2
t +x
3
t
2
)(1 t
2
) dt =
4
3
x
1
+
4
15
x
3
= 0
cuya soluci on es (1, 4, 5), que corresponde al polinomio 1 + 4t 5t
2
.
En lugar de calcular los productos escalares mediante integrales, podemos hacer uso de
la matriz de Gram de este producto escalar respecto de la base can onica, ya obtenida
en el Ejemplo 8.2. En tal caso, W

viene dado por un sistema de ecuaciones homogeneo


cuya matriz es

2 1 0
1 0 1

2 0
2
3
0
2
3
0
2
3
0
2
5

4
2
3
4
3
4
3
0
4
15

que obviamente coincide con el obtenido anteriormente.


(iii) Encontrar el ortogonal de W = |x R
3
: x
1
+ 2x
2
x
3
= 0.
En una primera aproximaci on, para calcular W

procederamos como en (i), es


decir, calcularamos una base de W (resolviendo el sistema) y posteriormente la
emplearamos para construir un sistema de ecuaciones implcitas de W

. Sin embargo
es m as sencillo prestar atenci on al hecho de que x W si satisface la ecuaci on
x
1
+ 2x
2
x
3
= 0 (x
1
, x
2
, x
3
) (1, 2, 1) = 0
Es decir, todos los vectores de W deben ser ortogonales a (1, 2, 1), de manera que
este vector forma una base de W

Atendiendo a este ultimo ejemplo, si estamos usando el producto escalar habitual


en R
n
y tenemos un subespacio W generado por las soluciones del sistema homogeneo
Ax = 0, entonces una base de W

estar a formada por los vectores cuyas coordenadas


corresponden a las las de la matriz A.
260 Tema 8 Espacio vectorial eucldeo
8 2 3 Proyeccion ortogonal
Una vez introducido el concepto de complemento ortogonal de un subespacio,
vamos a probar un resultado que nos permitir a denir la proyecci on ortogonal.
Proposici on 8.9 Si W es un subespacio vectorial de un e.e. E, entonces WW

=
E.
Demostraci on:
Por la Proposici on 8.6 es evidente que W W

= |0. Veamos ahora que


W +W

= E.
Consideramos una base de W, |u
1
, . . . u
n
y la completamos hasta obtener
una base de E que posteriormente ortogonalizamos mediante el metodo de Gram-
Schmidtz. De este modo tenemos una base ortogonal formada por unos vectores
|v
1
, . . . , v
n
, v
n+1
, . . . , v
m
tales que L(u
1
, . . . , u
n
) = L(v
1
, . . . , v
n
) = W.
Est a claro que si z E, entonces
z =
m

i=1
z
i
v
i
=
n

i=1
z
i
v
i
+
m

j=n+1
z
j
v
j
= x +y
Obviamente x W. Por otro lado, y v
i
, 1 i n, pues
y, v
i
) =
_
m

j=n+1
z
j
v
j
, v
i
_
=
m

j=n+1
z
j
v
j
, v
i
) = 0, i = 1, . . . n
de modo que y W

(pues es ortogonal a una base de W). Es decir, hemos escrito


un vector cualquiera de E como suma de uno de W m as otro de W

, lo cual signica
que E = W +W

. Esto concluye la prueba.


Observese que como consecuencia de este resultado todo vector x E puede
escribirse de forma unica (recordad el Teorema 4.13) como
x = y +z, con y W y z W

Denici on 8.8 Con las notaciones anteriores se dice que y es la proyecci on ortogonal
de x sobre W, que denotaremos por T
W
(x) = y. Asimismo, se dice que z es la
proyecci on ortogonal sobre W

, que denotaremos por Q


W
(x) = z.
La gura 8.4 ilustra la tpica proyecci on de un vector sobre un plano vectorial W.
Descomponemos el vector x en suma de un vector de W, el vector y, m as otro vector
del ortogonal de W (que en este caso es la recta perpendicular a W), z, de tal forma
que x = y +z. La proyecci on ortogonal sobre W es en este caso el vector y.
8.2 Ortogonalidad. 8.2 Ortogonalidad. 261
y
z x
W
Figura 8.2: Proyeccion sobre un plano
Calculo de la proyeccion ortogonal a un subespacio
Procedamos ahora a calcular la proyecci on ortogonal de un vector x sobre un
subespacio W.
Dada una base de W, |e
1
, . . . , e
r
, sabemos que la proyecci on ortogonal de un
vector x E es un vector y W, de manera que y =

r
i=1

i
e
i
, donde los
i
son
escalares que vamos a determinar.
Por otra parte, como x = y + z con z W

, eso signica que x y W

. Es
decir, el vector z = x y, conocido como el error,
2
es ortogonal a W. Por tanto debe
ser ortogonal a su base, es decir

x
r

i=1

i
e
i
, e
j

= 0, j = 1 . . . r (8.2)
De este modo, (8.2) es un sistema de r ecuaciones con r inc ognitas (
1
, . . .
r
) a partir
del cual obtenemos los escalares que nos determinan la proyecci on.
Ejemplo 8.6
(i) Determinar la proyeccion del vector x = (0, 2, 1) sobre W = L((1, 1, 0)),
Denotando por T
W
(x) al vector buscado, est a claro que T
W
(x) debe pertenecer al
subespacio W, de modo que T
W
(x) = (1, 1, 0). Por otra parte, el error (0, 2, 1)
(1, 1, 0) debe ser ortogonal a W, de manera que
((0, 2, 1) (1, 1, 0)) (1, 1, 0) = 0 (0, 2, 1) (1, 1, 0) (1, 1, 0) (1, 1, 0) = 0
de lo que se deduce que = 1 y la proyecci on buscada ser a T
W
(x) = (1, 1, 0).
(ii) Determinar la proyecci on ortogonal del vector t
2
respecto del subespacio
W = L(|1, t) en P
R
, dotado del producto escalar
p, q) =
_
1
1
p(t)q(t) dt
2
Se denomina as pues es la diferencia entre el vector y su proyecci on.
262 Tema 8 Espacio vectorial eucldeo
Al igual que antes, la proyecci on T
W
(t
2
) debe ser un vector de W es decir, sera de la
forma
1
1 +
2
t. El vector error, esto es
Q
W
(t
2
) = t
2

2
t
estar a en W

, por tanto ser a ortogonal a una base de W. De este modo,


t
2

2
t, 1) = 0,
t
2

2
t, t) = 0,

_
_
1
1
(t
2

2
t) dt = 0
_
1
1
(t
3

1
t
2
t
2
) dt = 0
de donde se obtiene el sistema
2
3
2
1
= 0

2
3

2
= 0
_

1
=
1
3
,
2
= 0
As pues la proyecci on ortogonal es T
W
(t
2
) =
1
3
.
(iii) Calculemos la proyecci on del vector x = (0, 1, 1) sobre W = L((0, 1, 0), (0, 0, 1)).
Siguiendo los ejemplos anteriores buscamos un vector T
W
(x) W, es decir, T
W
(x) =

1
(0, 1, 0) +
2
(0, 0, 1) que adem as verica
x T(x) W

((0, 1, 1)
1
(0, 1, 0)
2
(0, 0, 1)) (0, 1, 0) = 0
((0, 1, 1)
1
(0, 1, 0)
2
(0, 0, 1)) (0, 0, 1) = 0
de donde obtenemos el sistema 1
1
= 0, 1
2
= 0. luego el vector buscado es
T
W
(x) = (0, 1, 1).

Nota 8.5 Del ultimo ejemplo podemos extraer dos consecuencias importantes.
(i) La proyecci on de un vector x sobre un subespacio W cuando x W es
el propio vector x. Esto es evidente pues la unica forma de escribir x como suma de
un vector de W m as otro de W

es x = x +0.
(ii) Si |e
1
, . . . e
r
es una base ortogonal de W, la proyecci on ortogonal es
m as f acil de calcular, puesto que el sistema dado en (8.2) se puede escribir
x, e
j
)
r

i=1

i
e
i
, e
j
) = 0 j = 1, . . . , r.
Teniendo en cuenta que e
i
, e
j
) = 0 si i ,= j, entonces

j
=
x, e
j
)
|e
j
|
2
, j = 1, . . . , r.
A los
j
se les denomina componentes de la proyeccion en la direccion e
j
, pues la
proyecci on resulta
T
W
(x) =
r

j=1
x, e
j
)
|e
j
|
2
e
j
8.2 Ortogonalidad. 8.2 Ortogonalidad. 263
Una forma alternativa de calcular la proyecci on de un vector x sobre un subespacio
W generado por unos vectores e
1
, . . . , e
k
(que supondremos independientes) consiste
en lo siguiente: siempre podemos considerar que el subespacio W coincide con el
subespacio imagen de una cierta aplicaci on de matriz A. Bastar a para ello considerar la
matriz A como aquella cuyas columnas corresponden a las coordenadas de los vectores
que conforman una base de W. Dicho de otro modo, W = Im(A).
Nuevamente, buscar la proyecci on supondra encontrar unos escalares
1
, . . . ,
r
de
modo que el vector buscado corresponde a T
W
(x) =

r
i=1

i
e
i
. Esta combinaci on
lineal se puede representar en forma matricial como
T
W
(x) = A

, con

= (
1
, . . . ,
r
)
T
Otra forma de verlo es observar que si la proyeccion T
W
(x) W = Im(A), entonces
T
W
(x) = Ac, para cierto vector c.
Por otra parte sabemos que (x A

) W, es decir, que el producto escalar de


x A

con cualquier vector de la base de W es cero. Si estamos usando el producto


escalar habitual en R
n
es f acil darse cuenta que podemos representar todos estos
productos escalares de la forma
A
T
(x A

) = 0 A
T
A

= A
T
x
Si los vectores e
i
son independientes, se tiene que la matriz A
T
A es invertible,
3
as pues

= (A
T
A)
1
A
T
x. Puesto que T
W
(x) = A

tenemos una expresi on de la proyecci on


que resulta
T
W
(x) = A(A
T
A)
1
A
T
x (8.3)
A la matriz A(A
T
A)
1
A
T
se le conoce como matriz de proyecci on.
Nota 8.6 Si el producto escalar no es el habitual, entonces hemos de usar la matriz
de Gram, resultando que
(x A

) W A
T
P
B
(x A

) = 0 T
W
(x) = A(A
T
P
B
A)
1
A
T
P
B
x
Ejemplo 8.7 Calculemos la matriz de proyecci on sobre el subespacio W = L((1, 2, 1), (1, 0, 1)).
Si consideramos la matriz
A =

1 1
2 0
1 1

entonces es evidente que W = Im(A). Seg un (8.3), la matrix de la proyecci on sobre W


vendra dada por
A(A
T
A)
1
A =

1 1
2 0
1 1

6 2
2 2

1 2 1
1 0 1

1
2
0
1
2
0 1 0

1
2
0
1
2

3
De hecho se tiene que rango(A) = rango(A
T
A). Notese que A M
nr
(R) con rango(A) =
r < n y A
T
A M
rr
(R). Si consideramos x ker(A
T
A) entonces A
T
Ax = 0, de donde se
deduce que x
T
(A
T
Ax) = 0, o lo que es igual (Ax)
T
(Ax) = 0, es decir Ax = 0, y por tanto
x ker(A). Con esto se prueba que ker(A
T
A) ker(A). La inclusi on contraria es evidente, y
como ambos espacios coinciden, l ogicamente tambien los rangos de ambas matrices.
264 Tema 8 Espacio vectorial eucldeo
Es decir, si ahora queremos calcular la proyecci on del vector (1, 1, 2) sobre W, no
tenemos mas que multiplicar por dicha matriz:
T
W
((1, 1, 2)) =

1
2
0
1
2
0 1 0

1
2
0
1
2

1
1
2

1
2
1
1
2


Finalmente damos una propiedad esencial de la proyecci on que aplicaremos en la
siguiente secci on.
Proposici on 8.10 Si E es un e.e., W un subespacio vectorial de E y x E con
x = x
1
+x
2
tal que x
1
W, entonces |Q
W
(x)| |x
2
|.
Demostraci on:
|x
2
|
2
= |x x
1
|
2
= |T
W
(x) +Q
W
(x) x
1
|
2
y usando el Teorema de Pit agoras (pues T
W
(x) x
1
W y Q
W
(x) W

)
= |T
W
(x) x
1
|
2
+|Q
W
(x)|
2
|Q
W
(x)|
2
Es interesante prestar atenci on a este resultado, pues arma que dada cualquier
descomposici on de un vector x en una suma x
1
+x
2
donde x
1
W, entonces el error
entre x y su proyecci on ortogonal, esto es el vector Q
W
(x) es siempre m as peque no,
en norma, que x x
1
. La Figura 8.3 trata de ilustrar este hecho. Por simplicidad
hemos considerado W una recta vectorial (punteada en el dibujo). Las dos primeras
guras muestran descomposiciones del vector x en suma de un elemento de W, x
1
, m as
otro vector x
2
. La tercera, muestra la descomposici on correspondiente a la proyecci on
ortogonal sobre W. Podemos apreciar que las longitudes de los vectores x
2
siempre
ser an mayores que las de Q
W
(x).
La consecuencia de este resultado es la siguiente: T
W
(x), esto es la proyecci on
ortogonal respecto de un subespacio W, es la mejor aproximacion a x que podemos
encontrar en W. El concepto de mejor aproximaci on viene dado en funci on de la norma
que induce el producto escalar en el que estemos trabajando. Dicho de otra forma
T
W
(x) es la soluci on del problema mn
yW
|x y| (8.4)
Ejemplo 8.8 Encontrar la mejor aproximaci on a la funci on
f(x) =

1 si x 0,
1 si 0 < x ,
8.2 Ortogonalidad. 8.2 Ortogonalidad. 265
W
x
x
2
x
1
(a) x = x
1
+x
2
W
x
x
2
x
1
(b) x = x
1
+x
2
W
x
Q
W
(x)
P
W
(x)
(c) x = P
W
(x) +Q
W
(x)
Figura 8.3: Ilustracion de la Proposicion 8.10
en los subespacios W
k
= L(|sen(nx), cos(nx)), n = 0, 1, 2, . . . , k de c([0, ]) con el
producto escalar
f, g) =
_

f(x)g(x) dx.
Es decir nos est an pidiendo la proyecci on ortogonal de la funci on f en varios
subespacios W
k
, cada uno de ellos mayor que el anterior.
Puesto que los vectores que generan cada subespacio W
k
conforman una base
ortogonal (se deja al lector la comprobacion), el c alculo de la proyecci on es inmediato
a partir de (ii) la Nota 8.5. Los coecientes vendr an dados por

0
=
f, 1)
|1|
2
= 0,
n
=
f, sen(nx))
| sen(nx)|
2
=
2
n
(1 (1)
n
),

n
=
f, cos(nx))
| cos(nx)|
2
= 0, n = 1, . . . , k
Es decir, la proyecci on en W
1
, W
2
coincide y es T
W
1
(f(x)) =
4

sen x; para W
3
y W
4
,
la proyeccion es la misma y resulta
T
W
3
(f(x)) =
4

sen x +
4
3
sen(3x)
mientras que en W
5
y W
6
la proyeccion es
T
W
3
(f(x)) =
4

sen x +
4
3
sen(3x) +
4
5
sen(5x)
En el espacio generado por la funciones trigonometricas |sen(nx), cos(mx), que
son ortogonales respecto de este producto escalar, los coecientes de la proyecci on son
conocidos como coecientes de Fourier.
266 Tema 8 Espacio vectorial eucldeo
x

y
1
1
P
W
1
P
W
3
P
W
5
Figura 8.4: Funcion f y sus proyecciones ortogonales en W
k
, k = 1, 3, 5
En la Figura 8.4, est an representadas la funci on y sus proyecciones.

8 3
M

ETODO DE LOS M

INIMOS CUADRADOS.
El metodo de los mnimos cuadrados es una aplicaci on de la propiedad descrita
en la Proposicion 8.10 sobre la proyecci on ortogonal que permite resolver de forma
aproximada sistemas de ecuaciones.
Supongamos que tratamos de resolver un sistema de la forma Ax = b, donde
A /
mn
(K), x K
n
y b K
m
. Identicando la matriz A con la matriz de una
determinada aplicaci on lineal que la dene, en una base dada, podemos entender que el
sistema tiene soluci on siempre y cuando b Im(A). O dicho de otro modo, la columna
correspondiente al segundo miembro debe ser linealmente dependiente de las columnas
de la matriz A, que en esencia es lo que arma el Teorema de Rouche-Frobenius.
Supongamos que no existe soluci on para este sistema. En este caso, puede ser
interesante estudiar para que vector o vectores x, A x b, esto es, tratamos de buscar
una soluci on aproximada del sistema.
Una forma de interpretar esta aproximacion es la siguiente: si A x b, entonces
podemos intentar encontrar x tal que |A xb| sea lo menor posible, esto es, tratamos
de resolver el problema
mn
x
|Ax b|
Observese que si el sistema s tiene soluci on, entonces el mnimo del problema anterior
es cero, y por tanto Ax = b; pero si no hay solucion, tiene sentido buscar el vector x
que haga menor esa norma, y por tanto que m as se parece a una soluci on.
Por otra parte, dado cualquier vector x, es evidente que Ax Im(A), luego el
problema anterior se puede escribir en los terminos
mn
yIm(A)
|y b|
Si ahora miramos (8.4), el mnimo anterior se alcanza para T
Im(A)
(b).
8.3 M etodo de los mnimos cuadrados. 8.3 M etodo de los mnimos cuadrados. 267
Ejemplo 8.9 Resolver de forma aproximada el sistema
x
1
+x
2
+x
3
= 1
x
1
+x
2
x
3
= 1
x
3
= 1
_

_
Est a claro que el sistema dado es incompatible. Deniendo la aplicaci on de matriz
A =

1 1 1
1 1 1
0 0 1

el sistema anterior se escribe como Ax = b con b = (1, 1, 1). Para resolverlo de forma
aproximada hemos de encontrar T
Im(A)
(b).
En lugar de proceder con el calculo de la proyecci on tal y como hemos hecho en
el Ejemplo 8.6, vamos a usar la expresi on obtenida en (8.3). Puesto que en este caso
W = Im(A), la proyecci on buscada resulta
T
Im(A)
(b) = A(A
T
A)
1
A
T
b
Ahora bien, lo que nosotros queremos es resolver el sistema de forma aproximada, de
modo que debemos usar esta proyecci on en el sistema y resolver, es decir,
A x = T
Im(A)
(b) A x = A(A
T
A)
1
A
T
b
de aqu se deduce que
x = (A
T
A)
1
A
T
b
aunque en realidad no es necesario invertir, sino resolver el sistema
A
T
A x = A
T
b
que en nuestro caso resulta

1 1 0
1 1 0
1 1 1

1 1 1
1 1 1
0 0 1

x
1
x
2
x
3

1 1 0
1 1 0
1 1 1

1
1
1

esto es

2 2 0
2 2 0
0 0 3

x
1
x
2
x
3

2
2
1

x
1
+x
2
= 1
x
3
=
1
3
que posee innitas soluciones, de la forma (, 1 ,
1
3
). Cualquiera de ellas es una
soluci on aproximada.
4

4
En estos casos es frecuente seleccionar una de las soluciones atendiendo a alg un criterio
como por ejemplo la de menor norma.
268 Tema 8 Espacio vectorial eucldeo
8 3 1 Ajuste de datos
Un ejemplo tpico en el que se emplea el metodo de los mnimos cuadrados es en
el de los problemas de ajuste de datos. Una situacion habitual en muchas aplicaciones
sucede cuando disponemos de una serie de datos que han sido tomados y queremos
encontrar una funci on que represente de la forma m as precisa posible tal conjunto de
datos. La elecci on del tipo de funci on a usar depende del fenomeno con el que estemos
estudiando, y en la pr actica se suelen usar funciones sencillas, como pueden ser rectas
o funciones cuadr aticas. Veamos un ejemplo.
Ejemplo 8.10 Encontrar la recta que mejor aproxima a los puntos (1, 1), (2, 3), (3, 5)
y (4, 6).
5
En este caso buscamos una funci on lineal, de la forma y = a + bx que se ajuste
de forma eciente a los puntos dados. Si todos los puntos coincidieran sobre la misma
recta, esta claro que se debera poder resolver el siguiente sistema
a +b = 1
a + 2b = 3
a + 3b = 5
a + 4b = 6
_

_
(8.5)
Puesto que dicha recta no existe, el sistema no tiene soluci on y lo que haremos
ser a buscar una soluci on aproximada usando el metodo de los mnimos cuadrados.
Procediendo como en el Ejemplo 8.9, bastar a resolver el sistema A
T
Ax = A
T
b donde
A =

1 1
1 2
1 3
1 4

x =

a
b

b =

1
3
5
6

En este caso resulta


4a + 10b = 15
10a + 30b = 46

cuya soluci on es a =
1
2
y b =
17
10
.
La Figura 8.5 muestra los puntos y la recta obtenida, tambien conocida como recta
de regresi on.

8 4
C

ALCULO CON PYTHON


La introducci on de diversos productos escalares en este tema nos invita a seguir
explorando nuevas capacidades de Python, que nos ayudar an a realizar este nuevo tipo
de c alculos.
5
Esto es lo que se denomina recta de regresion.
8.4 C alculo con Python 8.4 C alculo con Python 269
x
1 2 3 4 5
y
1
2
3
4
5
6
Figura 8.5: Ajuste de datos lineal
El producto escalar habitual en vectores de R
n
puede ser llevado a cabo desde
NumPy con la funci on dot. Por ejemplo
(1, 2, 3) (1, 0, 2) = 5
corresponde a
1 >>> from numpy import array ,dot
2 >>> a=array ([1 ,2 ,3])
3 >>> b=array ([-1,0,2])
4 >>> dot(a,b)
5 5
Por el contrario, SymPy no posee ninguna funci on especca para calcular el
producto escalar, por lo que usamos simplemente la expresion x y = x
T
y, pero
s posee un atributo para calcular la norma inducida por el producto escalar habitual:
1 >>> from sympy import Matrix
2 >>> a=Matrix ([1,-2,-3,0])
3 >>> b=Matrix ([-1,0,1,2])
4 >>> a.T*b
5 [-4]
6 >>> a.norm()
7 14**(1/2)
es decir, (1, 2, 3, 0) (1, 0, 1, 2) = 4 y |(1, 2, 3, 0)| =

14.
Los productos escalares m as laboriosos que se han llevado a cabo son los que
involucran el c alculo de integrales. Tanto NumPy como SymPy permiten realizar
c alculo integral, aunque el primero lo hace mediante tecnicas numericas, mientras que
el segundo permite hacer c alculo simbolico, adapt andose mejor a nuestras necesidades.
270 Tema 8 Espacio vectorial eucldeo
1 >>> from sympy import symbols ,integrate
2 >>> t=symbols(t)
3 >>> p=1+t+t**2
4 >>> q=2-3*t+t**2
5 >>> integrate(p*q,(t,-1,1))
6 22/5
esto es
_
1
1
(1 +t +t
2
)(2 3t +t
2
) dt =
22
5
con |(1, 2, 3, 0)| =

14.
De este modo es posible calcular las normas y la ortogonalidad de las funciones
del Ejemplo 8.8:
1 >>> from sympy import symbols ,integrate ,cos ,sin ,pi
2 >>> x,n,m=symbols(xnm )
3 >>> integrate(sin(n*x)*cos(m*x) ,(x,-pi,pi))
4 0
5 >>> integrate(sin(n*x)*sin(m*x) ,(x,-pi,pi))
6 2*m**3* cos(pi*m)*sin(pi*n)/(2*m**2*n**2 - m**4 - n**4) + 2*n
**3* cos(pi*n)*sin(pi*m)/(2*m**2*n**2 - m**4 - n**4) - 2*m
*n**2* cos(pi*m)*sin(pi*n)/(2*m**2*n**2 - m**4 - n**4) -
2*n*m**2* cos(pi*n)*sin(pi*m)/(2*m**2*n**2 - m**4 - n**4)
7 >>> integrate(sin(n*x)**2,(x,-pi,pi))
8 (pi*n/2 - cos(pi*n)*sin(pi*n)/2)/n - (cos(pi*n)*sin(pi*n)/2
- pi*n/2)/n
Si leemos con calma el resultado se observa que, si n y m son n umeros naturales
distintos:
_

sen(nx) cos(mx) dx = 0
_

sen(nx) sen(mx) dx = 0
_

sen(nx)
2
dx =
N otese que sen(n) = 0, n N. Las integrales con la funci on coseno son similares.
La soluci on aproximada de sistemas mediante el metodo de mnimos cuadrados
est a implementada en NumPy con una funci on que empleamos en el Tema 4 para
obtener el rango de una matriz. Dicha funci on, linalg.lstsq, proporciona la soluci on
mediante mnimos cuadrados de un sistema de la forma Ax = b, as como informa-
ci on adicional sobre el sistema, como el rango de la matriz. Esta funci on tiene dos
par ametros de entrada, la matriz A y el segundo miembro b. Por ejemplo, si queremos
resolver el sistema (8.5) del Ejemplo 8.10, haremos lo siguiente
1 >>> from numpy import array ,linalg
2 >>> a=array ([[1 ,1] ,[1 ,2] ,[1 ,3] ,[1 ,4]])
8.5 Aplicaci on: Lights Out!, segunda parte 8.5 Aplicaci on: Lights Out!, segunda parte 271
3 >>> b=array ([1,3,5,6])
4 >>> linalg.lstsq(a,b)
5 (array ([-0.5, 1.7]), array([ 0.3]), 2, array([ 5.77937881 ,
0.77380911]))
Observamos que la respuesta de la funci on lstsq(A, b) es amplia: el primer argumento
es un array con la soluci on aproximada del sistema; el segundo argumento es el residuo,
que es igual a |Axb|, con x la soluci on aproximada, salvo que el rango de la matriz
no sea m aximo, en cuyo caso es un array vaco; el tercer argumento es, como ya vimos,
el rango de la matriz A, mientras que el ultimo proporciona los valores singulares de
la matriz A.
6
Si resolvemos un sistema cuya matriz no tiene rango m aximo, y que por tanto
conduce a innitas soluciones, como en el Ejemplo 8.9,
1 >>> from numpy import array , linalg
2 >>> a=array ([[1,1,1],[1,1,-1],[0,0,1]])
3 >>> b=array ([1 ,1 ,1])
4 >>> linalg.lstsq(a,b)
5 (array([ 0.5 , 0.5 , 0.33333333]) , array([],
dtype=float64), 2, array([ 2.00000000e+00, 1.73205081e
+00, 7.23911034e-17]))
vemos que la soluci on obtenida es la de menor norma.
8 5
APLICACI

ON: LIGHTS OUT!, SEGUNDA PARTE


En la secci on 4.7 presentamos el juego Lights Out! y lo planteamos como un
problema algebraico equivalente a resolver un sistema de ecuaciones. En concreto,
vimos que una determinada conguraci on de luces encendidas y apagadas representada
por un vector b Z
25
2
es alcanzable si resulta ser una combinaci on lineal de las
columnas de la matriz A denida en (4.12).
Ahora vamos a usar lo aprendido sobre aplicaciones lineales y ortogonalidad para
identicar de forma sencilla cu ando un vector b corresponde a una conguraci on
alcanzable. Para ello hemos de prestar atenci on a un resultado, cuya demostraci on
est a propuesta en el Ejercicio 18, y que arma que si A es la matriz de un endomorsmo,
entonces
ker(A) = Im(A
T
)

y Im(A) ker(A
T
)

En nuestro caso particular, la matriz A de (4.12) es simetrica, por lo que el resultado


anterior se traduce en
ker(A)

= Im(A)
Dicho de otro modo, un vector que pertenezca a Im(A) debe ser, necesariamente,
ortogonal a ker(A).
En resumen, si un vector b Z
25
2
es alcanzable, entonces debe pertenecer al
subespacio generado por las columas de A, es decir, debe pertenecer al subespacio
Im(A), y seg un acabamos de ver, debe ser ortogonal a cualquier vector de ker(A).
Tenemos por tanto un sencillo test para comprobar si b es alcanzable.
6
Los valores singulares de una matriz son las races de los autovalores de la matriz A
T
A.
272 Tema 8 Espacio vectorial eucldeo
Vamos pues a determinar el espacio ker(A): para ello hemos de resolver el sistema
x
1
+x
2
+x
6
= 0
x
1
+x
2
+x
3
+x
7
= 0
x
2
+x
3
+x
4
+x
8
= 0
.
.
.
x
19
+x
23
+x
24
+x
25
= 0
x
20
+x
24
+x
25
= 0
obteniendose que una base de soluciones del mismo viene dada por los vectores
n
1
= (0, 1, 1, 1, 0, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 1, 1, 1, 0)
n
2
= (1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1)
Por ejemplo, supongamos que la conguraci on inicial es la que aparece en la
Figura 8.6. Es decir,
b = (1, 1, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 1, 1)
Figura 8.6: Se pueden apagar todas las luces?
Ver si es posible apagar todas las luces de la Figura 8.6 equivale a comprobar si
b n
1
= b n
2
= 0
Haciendo el producto escalar habitual, m odulo 2, se verica que, en efecto, b
ker(A)

.
Con un poco de paciencia se puede usar el metodo de Gauss para el sistema Ax = b,
realizando todas las operaciones m odulo 2, para obtener una soluci on:
x = (0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1)
Pero adem as, puesto que An
1
= 0 y An
2
= 0, se tendr a que
x, x +n
1
, x +n
2
, x +n
1
+n
2
tambien son soluciones.
8.6 Ejercicios 8.6 Ejercicios 273
8 6
EJERCICIOS
1. Decir cu ales de las siguientes funciones , ) : R
2
R
2
R denen un producto
escalar en R
2
:
(a) x, y) = x
1
y
1
+ 2x
2
y
2
+ 2x
2
y
1
3x
1
y
2
(b) x, y) = x
1
y
1
x
2
y
2
(c) x, y) = x
1
y
2
+ 2x
1
y
2
+ 3y
1
x
2
+ 7x
2
y
1
(d) x, y) = 2x
1
y
2
+ 3x
2
y
2
+ 2x
1
y
2
+ 2x
2
y
1
2. En el espacio vectorial de las matrices /
2
(R), demostrar que el producto
A, B) = tr(AB
T
)
es un producto escalar.
3. Sea V un espacio eucldeo. Demostrar:
(a) 2
_
|u|
2
+|v|
2
_
= |u +v|
2
+|u v|
2
(b) 4u, v) = |u +v|
2
|u v|
2
(c) 2u, v) = |u +v|
2
|u|
2
|v|
2
4. Demostrar que la desigualdad de Schwarzt es una igualdad si y solo si los vectores
son proporcionales.
5. Si x e y son dos vectores cualesquiera de un e.e. E, demostrar que
|x y| |x| |y|
6. Sea E un e.e., demostrar que u +v y u v son ortogonales si y s olo si |u| = |v|.
7. Demostrar la siguiente generalizaci on del teorema de Pit agoras:
|x
1
+x
2
+... +x
n
|
2
= |x
1
|
2
+|x
2
|
2
+ +|x
n
|
2
si los vectores x
1
, ..., x
n
son ortogonales entre s.
8. Sea V un e.e. y |u
1
, u
2
, . . . , u
n
un conjunto de vectores ortogonales. Demostrar
que:
(a)
n

i=1
[v, u
i
)[
2
|u
i
|
2
|v|
2
, v V (desigualdad de Bessel).
(b) Si los u
i
forman una base ortogonal de V entonces
v, w) =
n

i=1
v, u
i
)u
i
, w)
|u
i
|
2
, v, w V (identidad de Parserval)
9. Sea x, y) = x
1
y
1
+ (x
1
+x
2
)(y
1
+y
2
) + (x
1
+x
2
+x
3
)(y
1
+y
2
+y
3
) un producto
escalar en R
3
. Encontrar la matriz del producto escalar respecto de la base can onica
de R
3
.
274 Tema 8 Espacio vectorial eucldeo
10. Sean u
1
= (2, 1, 1), u
2
= (0, 1, 0) y u
3
= (1, 1, 0) vectores l.i. de R
3
.
Denimos un producto escalar en R
3
armando que |u
1
, u
2
, u
3
es una base
ortonormal. Encontrar la expresi on analtica de este producto escalar en la base
can onica de R
3
.
11. Demostrar que si x, x) =
n

i=1
x
2
i
, con (x
1
, ..., x
n
) las coordenadas de x en una base
B, entonces esta base es ortonormal.
12. Ortogonalizar la base de R
3
dada por los vectores x
1
= (1, 0, 0), x
2
= (4, 2, 0) y
x
3
= (1, 1, 5).
13. Ortogonalizar los vectores de R
4
: x
1
= (1, 1, 0, 0), x
2
= (1, 2, 0, 0) y x
3
=
(0, 0, 1, 1), y hallar una base ortogonal de R
4
que los contenga.
14. Comprobar que el conjunto de funciones de c([0, 2])

2
,
1

sen t,
1

cos t,
1

sen 2t,
1

cos 2t, . . . ,
1

sen nt,
1

cos nt,

es un conjunto ortonormal.
15. Encontrar una base ortogonal del subespacio vectorial
M = |x R
3
: x
1
+ 2x
2
+ 3x
3
= 0
16. Encontrar una base ortonormal para los siguientes subespacios vectoriales:
(a) El subespacio de P
3
R
[1, 1]
M = |p(x) P
3
R
[1, 1] : xp

(x) = p(x)
con el producto escalar
p(x), q(x)) =
_
1
1
p(x)q(x) dx
(b) El subespacio de /
2
(R)
N = |A /
2
(R) : tr(A) = 0
con el producto escalar denido en el Ejercicio 2.
17. Decidir si los siguientes pares de subespacios son ortogonales:
(a) L
1
= L((2, 1, 1), (0, 1, 1)), L
2
= L((1, 2, 0)).
(b) L
1
= L((3, 0, 1), L
2
= |(x
1
, x
2
, x
3
) R
3
: 3x
1
x
3
= 0.
(c) L
1
= |(x
1
, x
2
, x
3
) R
3
: x
1
+x
2
x
3
= 0, x
1
x
2
= 0,
L
2
= |(x
1
, x
2
, x
3
) R
3
: x
1
+x
2
= 0.
18. Sea A la matriz de un endomorsmo de R
n
. Demostrar que ker(A) = Im(A
T
)

y
Im(A) = ker(A
T
)

.
19. Encontrar el complemento ortogonal de los subespacios vectoriales M y N del
Ejercicio 16.
8.6 Ejercicios 8.6 Ejercicios 275
20. En /
2
(R) con el producto escalar del Ejercicio 2, hallar el complemento ortogonal
del subespacio de las matrices diagonales de /
2
(R) y el complemento ortogonal de
las matrices simetricas de /
2
(R).
21. Se considera el espacio de polinomios P
3
R
[1, 1] con el producto escalar del Ejerci-
cio 16 y sea W el subespacio generado por los polinomios x 1 y x
2
. Determinar
una base ortogonal de W

.
22. Sean los vectores de R
5
, a = (1, 2, 0, 1, 0), b = (0, 1, 1, 1, 0) y c = (0, 0, 1, 2, 1).
Descomponer c en dos vectores, uno de ellos combinaci on lineal de a y b y el otro
ortogonal a este.
23. Que combinaci on lineal de los vectores (1, 2, 1) y (1, 0, 1) es la m as cercana a
(2, 1, 1)?
24. Determinar la proyecci on ortogonal y la mnima distancia de una matriz X
/
2
(R) al subespacio de las matrices diagonales, esto es, calcular mn
DD
|D X|,
donde T es el conjunto de las matrices diagonales de /
2
(R).
25. Considera P
1
la matriz de la aplicaci on que a cada vector le asocia su proyecci on
sobre el espacio generado por el vector a
1
, donde a
1
= (1, 2, 2). Haz lo mismo con
P
2
, donde a
2
= (2, 2, 1). Multiplica las matrices resultantes P
1
P
2
y explica por
que sale ese resultado.
26. Sea C([, ]) el espacio eucldeo de las funciones continuas en el intervalo [, ],
con el producto escalar
f(t), g(t)) =
_

f(t)g(t) dt
Sea L el subespacio vectorial de V generado por los vectores 1, sen t y cos t. Se pide
(a) Encontrar la proyecci on ortogonal del vector h(t) = (t ) sobre L.
(b) Hallar el vector p(t) L que haga mnimo el valor de la integral
_

[(t ) p(t)]
2
dt
(Ayuda:
_

sin
2
t dt =
_

cos
2
t dt = ).
27. En el espacio vectorial
V = |f : [0, 1] R : f es derivable, f(0) = 0,
se considera el producto escalar
f, g) =
_
1
0
f

(x)g

(x) dx
(a) Ortogonaliza las funciones f
1
(x) = x, f
2
(x) = x
2
.
(b) Halla la proyecci on ortogonal de f(x) = e
x
1 sobre el subespacio generado
por f
1
y f
2
.
276 Tema 8 Espacio vectorial eucldeo
28. Hallar el polinomio Q(t) = t
3
+at
2
+bt +c para el cual la integral
_
1
1
(Q(t))
2
dt
sea lo m as peque na posible.
29. Para los siguientes apartados, hallar la soluci on del sistema Ax = b por mnimos
cuadrados:
(a) A =

2 1
1 2
1 1

, b =

2
0
3

(b) A =

1 0 1
1 1 1
0 1 1
1 1 0

, b =

4
1
0
1

30. En un concesionario de autom oviles se han realizado una serie de observaciones


tratando de relacionar el precio y
i
de los vehculos con su peso x
i
. Dados los datos
de la tabla adjunta hallar por el metodo de los mnimos cuadrados el mejor ajuste
lineal y = ax +b.
peso (en Tm) 0.8 1 1.2 1.3
precio (en millones) 1 2 3 5
31. Una editorial analiza las ventas realizadas de los libros de uno de sus mejores autores
durante los ultimos cuatro a nos, reejadas en la tabla
a no 1 2 3 4
venta (en millones) 1 1.5 3 5
(a) Hallar el ajuste lineal por el metodo de los mnimos cuadrados.
(b) Cu antos libros de dicho autor espera vender la editorial en el quinto a no?
32. Se consideran los puntos (1, 1), (2, 4), (3, 7), (4, 9). Ajustar dichos puntos
(a) Por una funci on polin omica de segundo grado y = a + bx + cx
2
utilizando el
metodo de los mnimos cuadrados.
(b) Por una funci on y = a +bx +cx
2
+dx
3
.
9 Espacio afn
En los temas anteriores hemos interpretado en m as de una ocasi on diversos elemen-
tos que aparecen en los espacios vectoriales como conjuntos geometricos tales como
rectas o planos. Sin embargo, desde un punto de riguroso, esta interpretaci on no es
exacta, pues los objetos geometricos est an formados por puntos y estos son objetos
jos, mientras que el concepto de vector es una magnitud que no est a sujeta a una
posicion espacial determinada. En denitiva, los espacios vectoriales no son los con-
juntos apropiados para describir los objetos geometricos que el lector habr a estudiado
en cursos anteriores.
En este tema vamos a introducir el espacio afn como el marco geometrico adecuado
en el que poder trabajar con los objetos tpicamente estudiados en geometra plana o
espacial, y en el que poder plantear problemas metricos y transformaciones lineales.
9 1
ESPACIO AF

IN Y ESPACIO M

ETRICO
La denici on de espacio afn recupera el concepto intuitivo de vector como el objeto
que marca la direcci on entre dos puntos del espacio, asoci andolo a un elemento de un
espacio vectorial.
Denici on 9.1 Sea V un espacio vectorial y /un conjunto no vaco cuyos elementos
denominaremos puntos. Se dice que / es un espacio afn asociado a V si existe una
aplicaci on
: // V
(P, Q) (P, Q) =

PQ
que posee las siguientes propiedades:
(i) Para todo punto M / y todo vector x V existe un punto N /
tal que

MN = x.
(ii) Para cualesquiera tres puntos M, N y P de / se tiene que

MN+

NP =

MP.
Un vector x =

PQ diremos que tiene origen en P y extremo en Q. Tambien se
dene la dimensi on de un espacio afn como la dimensi on del espacio vectorial asociado.
En denitiva, un espacio afn es una colecci on de puntos de manera que para cada
par ordenado de ellos, P y Q, podemos construir el vector con origen P y extremo Q,
277
278 Tema 9 Espacio afn
esto es

PQ. Se verican las siguientes propiedades:
Proposici on 9.1 Dados los puntos M, N, P y Q, se tiene:
(i) Si

MN =

PQ entonces

MP =

NQ.
(ii)

MN = 0 si y solo si M = N.
(iii)

MN =

NM.
Demostraci on:
(i) Sumando a ambos miembros de la igualdad

NP,

MN +

NP =

NP +

PQ
y usando la propiedad (ii) de la denici on,

MP =

NQ.
(ii) Nuevamente por la propiedad (ii) de la denici on,

MN +

NN =

MN

NN = 0
Recprocamente, si

MN =

NN = 0, por la propiedad (i) de la denici on M = N.


(iii) Es evidente que

MN +

NM =

MM = 0, luego

MN =

NM.
9 1 1 Sistema de referencia y coordenadas
Si en el espacio afn n-dimensional / se considera un punto jo O /, que
se denomina origen de coordenadas, y una base B del espacio vectorial asociado,
el conjunto 1 = |O; B es un sistema de referencia que nos permite obtener las
coordenadas de un punto cualquiera P /, a traves de las coordenadas del vector

OP
respecto de la base B. Se notar a P = (p
1
, . . . , p
n
)
R
, o simplemente P = (p
1
, . . . , p
n
)
cuando no haya posibilidad de confusi on.
Si tenemos dos puntos P = (p
1
, . . . , p
n
)
R
y Q = (q
1
, . . . , q
n
)
R
, entonces el vector

PQ satisface

PQ =

PO +

OQ =

OQ

OP
y dado que las coordenadas de

OP y

OQ coinciden con las de P y Q respectivamente,
entonces

PQ = (q
1
p
1
, . . . , q
n
p
n
)
B
que coincide con la expresion que el lector habr a visto en cursos previos de geometra.
Cuando el punto O = (0, . . . , 0) y B es la base canonica, lo denominaremos sistema
de referencia cartesiano.
9.2 Espacio afn y espacio m etrico 9.2 Espacio afn y espacio m etrico 279
9 1 2 Cambio de sistema de referencia
Al igual que ocurre con las bases, dados dos sistemas de referencia 1 = |O; B
y 1

= |O

; B

en un espacio afn /, buscamos la relaci on existente entre las


coordenadas en cada uno de los sistemas de referencia de un mismo punto P /.
Supongamos que P = (x
1
, . . . , x
n
)
R
= (x

1
, . . . x

n
)
R
y pongamos que O

=
(c
1
, . . . , c
n
)
R
. Dado que para cada punto P se verica que

OP =

OO

P
entonces, si M
B

B
= (a
ij
) es la matriz de cambio de base de B

a B, se tiene que

x
1
.
.
.
x
n

c
1
.
.
.
c
n

+M
B

1
.
.
.
x

que son las ecuaciones del cambio de sistema de referencia. Estas ecuaciones se
pueden abreviar del siguiente modo:

1
x
1
.
.
.
x
n

1 0 0
c
1
a
11
a
1n
.
.
.
.
.
.
.
.
.
.
.
.
c
n
a
n1
a
nn

1
x

1
.
.
.
x

(9.1)
Estas ecuaciones permiten calcular el cambio de sistema de referencia inverso
usando para ello la inversa de esta matriz, tal y como sucede con los cambios de
base en espacios vectoriales.
9 1 3 Espacio afn eucldeo
Si el espacio vectorial asociado a un espacio afn / es adem as un espacio eucldeo,
es decir, dotado de un producto escalar, se dir a que / es un espacio afn eucldeo. Se
dir a que un sistema de referencia en un espacio afn 1 = |O; B es ortonormal si la
base B es ortonormal.
Denici on 9.2 Dado un conjunto cualquiera A, una aplicaci on:
d : AA R
+
|0
(x, y) d(x, y)
que verique:
(i) d(x, y) = 0 x = y, x, y A
(ii) d(x, y) = d(y, x), x, y A.
(iii) d(x, y) d(x, z) +d(z, y), x, y, z A.
se dice que es una distancia. En tal caso decimos que A es un espacio metrico.
280 Tema 9 Espacio afn
En el espacio afn eucldeo / podemos denir una distancia d(P, Q) = |

PQ|, de
modo que / es un espacio metrico.
9 2
VARIEDADES AFINES
Denici on 9.3 Dado un espacio afn / asociado a un espacio vectorial V , se dice
que un subconjunto L / es una variedad afn de / si existe un punto P L tal
que el conjunto
W = |

PQ : Q L
es un subespacio vectorial de V .
En denitiva, una variedad afn es a un espacio afn, lo que un subespacio vectorial
es a un espacio vectorial. Las variedades anes tambien se puede denir del siguiente
modo: dado P / y W un subespacio vectorial, una variedad afn L es un subconjunto
de / de la forma
L = |Q / :

PQ W
De este modo, podemos escribir una variedad afn como L = P +W = |P +w : w
W. Al subespacio W se le denomina direcci on de la variedad.
Proposici on 9.2 La variedad afn es independiente del punto usado en su denici on.
Es decir, si L = P +W y P

L, entonces L = P

+W.
Demostraci on:
Observemos en primer lugar que si P

L entonces

PP

= w W. Sea ahora
Q P +W, entonces Q = P +x para cierto x W. As,

Q =

P +

PQ = w +x W
luego Q P

+ W; es decir, P + W P

+ W. La inclusion contraria se prueba de


indentica forma.
Proposici on 9.3 Sea A /
mn
(K) y b K
m
y consideremos el sistema de
ecuaciones lineal Ax = b. Si el conjunto de soluciones de este sistema es no vaco y
P es una solucion del mismo, entonces dicho conjunto dene una variedad lineal en
el espacio afn que pasa por P y tiene como direcci on el subespacio vectorial formado
por las soluciones del sistema homogeneo asociado, Ax = 0.
Recprocamente, toda variedad afn puede denirse como el conjunto de solucio-
nes de un sistema lineal de ecuaciones Ax = b.
9.2 Variedades anes 9.2 Variedades anes 281
La demostraci on es consecuencia inmediata de la Proposici on 3.2 que trata de la
estructura de las soluciones de un sistema no homogeneo, y de los Teoremas 4.7 y 4.8.
Ejemplo 9.1
(i) En el espacio afn R
2
, consideramos el punto P = (1, 2) y el subespacio
W = L((1, 1)). La variedad afn L = P + W corresponde a la recta que pasa por
P y tiene la direcci on W. Los puntos de esta recta tendr an por expresi on
(x, y) = (1, 2) +t(1, 1), t R

x = 1 +t
y = 2 +t
que corresponden a la ecuaci on vectorial y ecuaci on parametrica de una recta, respec-
tivamente. Si despejamos el par ametro t de las ecuaciones parametricas se obtiene
x 1 = y 2 x y = 1
que es la ecuaci on general o cartesiana de la recta.
Es posible obtener directamente la ecuaci on general de la recta si obtenemos primero
un sistema de ecuaciones homogeneo para la direcci on de esta, en este caso, la ecuaci on
x y = 0. Por tanto, seg un la Proposicion 9.3, la ecuaci on ser a un sistema no
homogeneo con la misma matriz, es decir de la forma x y = . Para determinar
el par ametro basta imponer que el punto P = (1, 2) verique dicha ecuaci on, luego
= 1.
(ii) En R
3
consideramos un punto P = (3, 1, 1) y el subespacio W generado
por el vector v = (2, 0, 1). Para obtener las ecuaciones de la recta correspondiente a
la variedad afn L = P + W procedemos como en el ejemplo anterior, obteniendo un
sistema de ecuaciones homogeneo del espacio W:
rango

2 0 1
x
1
x
2
x
3

= 1

x
2
= 0
2x
3
x
1
= 0
de manera que las ecuaciones de la recta ser an

x
2
=
2x
3
x
1
=
= 1, = 1
donde y se obtienen al imponer que el punto P satisfaga ambas ecuaciones.
(iii) La variedad afn correspondiente al plano que pasa por el punto P = (1, 2, 0)
y tiene como vector normal el vector (1, 1, 1) se obtiene considerando el subespacio
vectorial ortogonal a dicho vector, que tiene como ecuaci on x
1
+x
2
x
3
= 0; de modo
que la ecuaci on del plano ser a
x
1
+x
2
x
3
= = 1
donde es obtenida como en los ejemplos anteriores.
(iv) Para calcular la ecuacion del plano que pasa por tres puntos dados, M =
(1, 1, 0), N = (1, 2, 1) y P = (0, 1, 2), nos basta considerar cualquiera de los tres
282 Tema 9 Espacio afn
puntos, junto con el subespacio generado por dos vectores independientes del plano,
que se obtiene mediante pares de puntos, es decir,
M = (1, 1, 0);

MN = (2, 1, 1);

MP = (1, 2, 2)
En lugar de proceder como en los ejemplos anteriores calculando la ecuaci on homogenea
correspondiente al subespacio vectorial y luego obteniendo el termino independiente,
podemos tambien razonar del siguiente modo. Cualquier punto del plano buscado
Q = (x, y, z), satisfar a que el vector

MQ debe ser linealmente dependiente de los otros


vectores

MN y

MQ, de modo que
rango

x 1 y 1 z
2 1 1
1 2 2

= 2

x 1 y 1 z
2 1 1
1 2 2

= 0 4x + 3y + 5z = 7

9 2 1 Posicion relativa de variedades anes


Dadas dos variedades anes L
1
y L
2
, diremos que estas se cortan si L
1
L
2
,= . Si
las variedades no se cortan diremos que son paralelas si W
1
W
2
( o W
2
W
1
), donde
W
i
es la direcci on de la variedad L
i
. En caso contrario diremos que las variedades se
cruzan. Del mismo modo, dos variedades son perpendiculares si W
1
W

2
( o W
2

W

1
).
Para estudiar si la posici on relativa de variedades lineales hemos de estudiar su
intersecci on, resolviendo los sistemas lineales de ecuaciones que las denen. Veamos
algunos ejemplos.
Ejemplo 9.2
(i) Dada la recta r P +v), con P = (2, 0, 1) y v = (3, 1, 1) y el plano de
ecuaci on x
1
x
3
= 2, para averigurar su posici on relativa consideraremos el sistema
formado por las ecuaciones de ambas variedades.
Puesto que las ecuaciones de r son x
1
3x
2
= 1, x
2
x
3
= 1, debemos resolver el
sistema
_
_
_
x
1
3x
2
= 1
x
2
3x
3
= 1
x
1
x
3
= 2
x
1
=
7
4
, x
2
=
1
4
, x
3
=
1
4
es decir, la recta y el plano se cortan en el punto (
7
4
,
1
4
,
1
4
).
(ii) Estudiamos ahora la posici on relativa de los planos

1
x
1
x
2
+ 3x
3
= 1,
2
x
2
x
3
= 5
Estudiando el sistema formado por ambas ecuaciones resulta un sistema compatible
indeterminado, de modo que existen innitas soluciones, lo cual expresa que ambos
planos se cortan en una recta. Para averiguar un punto y un vector que generan dicha
recta nos basta resolver el sistema en forma parametrica, esto es

x
1
x
2
+ 3x
3
= 1
x
2
x
3
= 5
(4 2t, 5 +t, t) = (4, 5, 0) +t(2, 1, 1)
9.3 Problemas m etricos 9.3 Problemas m etricos 283
es decir, es la recta generada por el punto (4, 5, 0) y el vector (2, 1, 1).
Tambien es posible obtener la ecuaci on de la recta resolviendo el sistema homogeneo
asociado, con lo que obtendramos un vector de la misma, obteniendose luego una
soluci on particular para el sistema.
(iii) Posici on relativa de las rectas
r
1

x y = 1
y +z = 0
r
2

x = 3
y z = 1
Si tratamos de resolver el sistema formado por las cuatro ecuaciones que denen ambas
rectas observamos que este es incompatible, de manera que las rectas son paralelas o
se cortan. Veamos entonces c omo son sus direcciones: para ello resolvemos los sistemas
homogeneos asociados obteniendo:
W
r
1
= L(1, 1, 1), W
r
2
= L((0, 1, 1))
Puesto que W
r
1
,= W
r
2
las rectas no son paralelas y por tanto se cruzan. De hecho
podemos observar que las rectas son perpendiculares pues W
r
1
W
r
2
.

9 3
PROBLEMAS M

ETRICOS
El concepto de proyecci on ortogonal en un espacio eucldeo puede ser extendido a
los espacios anes a traves del siguiente resultado.
Proposici on 9.4 Sea L = A + W una variedad afn de un espacio afn eucldeo /
y sea B /. Entonces existe una variedad unidimensional (una recta) r = B + V
tal que r es perpendicular a L y r L ,= .
Demostraci on:
Consideremos el vector

AB y su proyecci on ortogonal sobre el espacio W, esto es
T
W
(

AB). Sea B

= A+T
W
(

AB), es decir

AB

= T
W
(

AB). Est a claro que

AB =

AB

B
y de la denici on de proyecci on ortogonal (Denici on 8.8) se tiene que

AB = T
W
(

AB) +Q
W
(

AB)
Dado que esta descomposici on es unica se tiene que Q
W
(

AB) =

B.
Consideramos ahora el subespacio V generado por el vector

BB

y la variedad (la
recta) r = B+V . Est a claro que V W

, es decir r es perpendicular a L y B

rL.
El punto B

obtenido en la construcci on anterior se denomina proyecci on ortogonal


del punto B sobre L y se notar a por T
L
(B). Es importante resaltar que B

tambien
se obtiene como la interseccion entre L y L

B
= B +W

.
284 Tema 9 Espacio afn
Ejemplo 9.3 Proyectar el punto A = (1, 0, 2) sobre la recta L = P + w), con
P = (1, 1, 1) y w = (1, 2, 1).
Tal y como hemos comentado, para construir T
L
(A) construimos en primer lugar
la variedad L

A
= A+W

, donde W = L(w), es decir la variedad afn que pasa por A


y tiene como direcci on el espacio ortogonal al generado por el vector w. Como hemos
visto en el tema anterior, un sistema de ecuaciones implcitas para W

viene dado por


x
1
+ 2x
2
+x
3
= 0, de modo que la variedad L

A
tiene por ecuaciones
x
1
+ 2x
2
+x
3
= 1
Intersectamos ahora con la recta L de ecuaciones
x
1
+x
3
= 2, x
1
+ 2x
2
= 3
que da lugar a un sistema cuya soluci on es la proyecci on buscada (
4
3
,
5
6
,
2
3
).

Como vimos en la secci on 9.1, la distancia entre dos puntos en el espacio afn se
obtiene a traves de la norma del vector que une los puntos. Gracias a la proyecci on
ortogonal podemos obtener la distancia entre un punto y una variedad afn; dado un
punto P y una variedad L, la distancia de P a L, denida por
d(P, L) = mn
QL
|

PQ|
la obtenemos a traves del siguiente resultado.
Proposici on 9.5 Dado P un punto y L una variedad afn de un espacio /, se tiene
que d(P, L) = d(P, T
L
(P))
Demostraci on:
Sea L = A + W, con A / y W la direcci on de L. Sabemos que P

= T
L
(P)
corresponde al punto tal que

AP

= T
W
(

AP). Sea ahora Q L cualquiera, entonces

AP =

AQ+

QP
y como

AQ W, de la Proposici on 8.10 sabemos que
|

PP

| |

QP|, Q L
lo que prueba que la menor distancia entre P y cualquier punto de L se obtiene a
traves de la proyecci on ortogonal.
Ejemplo 9.4 En R
3
consideremos un punto P = (x
0
, y
0
, z
0
) y un plano de ecuaci on
ax + by + cz + d = 0. Para calcular la distancia del punto al plano construimos la
variedad ortogonal al plano que pasa por P, esto es, P +w con w = (a, b, c). Usando
la ecuaci on vectorial de esta recta, para intersectarla con el plano se ha de encontrar
t R tal que
a(x
0
+at) +b(y
0
+tb) +c(z
0
+tc) +d = 0 t =
ax
0
+by
0
+cz
0
+d
a
2
+b
2
+c
2
9.3 Problemas m etricos 9.3 Problemas m etricos 285
Para este valor de t se obtiene el punto P

correspondiente a la proyecci on del P sobre


el plano. Por tanto, la distancia ser a la norma de este vector:
|

PP

| = |(ta, tb, tc)| =


_
t
2
(a
2
+b
2
+c
2
)
=

ax
0
+by
0
+cz
0
+d
a
2
+b
2
+c
2

_
a
2
+b
2
+c
2
=
[ax
0
+by
0
+cz
0
+d[

a
2
+b
2
+c
2
con lo que se obtiene la f ormula conocida de la distancia de un punto a un plano.

Tambien podemos denir la distancia entre dos variedades L


1
y L
2
como la menor
distancia existente entre cualesquiera puntos de las variedades, es decir,
d(L
1
, L
2
) = mn
PL
1
QL
2
d(P, Q)
Proposici on 9.6 Dadas dos variedades L
1
= A
1
+W
1
y L
2
= A
2
+W
2
se tiene que
d(L
1
, L
2
) = d(A
1
, L)
donde L = A
2
+ (W
1
+ W
2
), es decir, la variedad que contiene a L
2
y es paralela a
L
1
.
Demostraci on:
Consideremos dos puntos P
1
y P
2
de L
1
y L
2
, respectivamente. Sea ahora w
1
=

P
1
A
1
W
1
y sea P = P
2
+w
1
. N otese que P L.
Se tiene que

P
1
P
2
=

P
1
A
1
+

A
1
P +

PP
2
= w
1
+

A
1
P w
1
=

A
1
P
de modo que d(P
1
, P
2
) = d(A
1
, P). Puesto que P L, deducimos que d(P
1
, P
2
)
d(A
1
, L). Como esto es cierto cualesquiera que sean los puntos P
1
y P
2
en L
1
y
L
2
, respectivamente, en particular es cierto para los puntos en los que se alcanza
la distancia mnima, es decir,
d(L
1
, L
2
) d(A
1
, L)
Por otro lado, consideremos ahora Q = T
L
(A
1
). Puesto que Q L, podemos
escribir Q = A
2
+ v
1
+ v
2
, para ciertos vectores v
1
W
1
y v
2
W
2
. Si ahora
llamamos P
1
= A
1
v
1
y P
2
= A
2
+ v
2
, que obviamente verican que P
1
L
1
y
P
2
L
2
, tambien se tiene que

A
1
Q =

A
1
P
1
+

P
1
P
2
+

P
2
Q = v
1
+

P
1
P
2
+v
1
=

P
1
P
2
Como Q es el punto que da la distancia mnima de A
1
a L, tenemos que d(A
1
, L) =
|

P
1
P
2
|. Dado que P
1
y P
2
est an en L
1
y L
2
, respectivamente est a claro que
d(A
1
, L) d(L
1
, L
2
)
286 Tema 9 Espacio afn
De la doble desigualdad se obtiene el resultado.
Ejemplo 9.5 Calcular la distancia entre las rectas r y s dadas por
r (1, 0, 1) +(0, 1, 1)), s

x y +z = 1
x +y = 2
Seg un la proposici on anterior, la distancia d(r, s) viene dada por la distancia de un
punto de r, a la variedad L que contiene a s y es paralela a r. Por tanto, construyamos
en primer lugar dicha variedad L.
Calculamos la direcci on de s encontrando una base del subespacio vectorial aso-
ciado, esto es

x y +z = 0
x +y = 0
Direcci on de s : (1, 1, 2)
Consideremos un punto cualquiera de s, por ejemplo (1, 1, 1), y construyamos la varie-
dad L, en este caso el plano, que pasa por (1, 1, 1) y tiene direcci on (0, 1, 1), (1, 1, 2)).
Como vimos en (iv) del Ejemplo 9.1, la ecuaci on del plano vendr a dada resolviendo

x 1 y 1 z 1
0 1 1
1 1 2

= 0 x y +z = 1
Luego d(r, s) = d((1, 0, 1), L), que seg un hemos visto en el Ejemplo 9.4 viene dada
por
d((1, 0, 1), L) =
[ 1[

9 4
APLICACIONES AFINES
La diferencia entre una aplicaci on lineal y una aplicaci on afn es similar a la
existente entre una variedad afn y un subespacio vectorial.
Denici on 9.4 Sean / y /

dos espacios anes. Una aplicaci on f : / /

se
dice que es una aplicaci on afn si existe un punto O / tal que la aplicaci on lineal

f : V V

, donde V y V

son los espacios vectoriales asociados a los espacios anes


/ y /

, respectivamente, verica

f (

OX) =

f(O)f(X), X /.
La aplicacion

f se dir a la aplicaci on lineal asociada a f.
El siguiente resultado muestra que la aplicacion lineal asociada no depende de la
elecci on del punto O.
9.4 Aplicaciones anes 9.4 Aplicaciones anes 287
Proposici on 9.7 Si f es una aplicaci on afn, entonces la aplicaci on lineal asociada
verica

f (

AB) =

f(A)f(B), A, B /.
Demostraci on:
Dado que

AB =

OB

OA y que

f es lineal,

f (

AB) =

f (

OB)

f (

OA) =

f(O)f(B)

f(O)f(A) =

f(A)f(B)
De la denici on de aplicaci on afn se sigue que esta s olo depende de la imagen de
un punto O dado y de la aplicaci on lineal asociada, pues de la expresi on

f (

OX) =

f(O)f(X), se sigue que


f(X) = f(O) +

f (

OX) (9.2)
9 4 1 Matriz de una aplicacion lineal
Consideremos dos sistemas de referencia 1 = |O; B y 1

= |O

; B

de los
espacios / y /

, respectivamente. De la expresi on (9.2), conocidas las coordenadas del


punto f(O) = (c
1
, . . . , c
m
)
R
y la matriz de la aplicacion lineal

f en las bases B y B

,
M = (a
ij
), se tiene que si X = (x
1
, . . . , x
n
)
R
y f(X) = (y
1
, . . . , y
m
)
R
, entonces

y
1
.
.
.
y
m

c
1
.
.
.
c
m

a
11
a
1n
.
.
.
.
.
.
.
.
.
a
m1
a
mn

x
1
.
.
.
x
n

que en formato abreviado escribiremos como f(X) = f(O) + MX. La expresi on


matricial anterior puede ser escrita del siguiente modo

1
y
1
.
.
.
y
m

1 0 0
c
1
a
11
a
1n
.
.
.
.
.
.
.
.
.
.
.
.
c
m
a
m1
a
mn

1
x
1
.
.
.
x
n

donde la matriz

1 0
C M

se denomina matriz asociada a la aplicacion f respecto de los sistemas de referencia


1 y 1

.
Ejemplo 9.6
(i) Dado un vector jo v, consideremos la aplicaci on afn f : R
n
R
n
denida
por
f(P) = P +v
288 Tema 9 Espacio afn
es decir, la aplicaci on afn cuya aplicaci on lineal asociada es la identidad. Esta aplica-
ci on afn es una traslaci on de vector v, es decir, a cada punto le asocia el trasladado
por el vector v.
(ii) Encontrar la ecuaci on de la simetra respecto del plano de ecuacion x+yz =
1.
En primer lugar calcularemos la matriz de la aplicaci on lineal asociada. Para ello,
consideramos la simetra correspondiente a la direcci on de la variedad afn dada, esto
es, el subespacio x
1
+x
2
x
3
= 0. Para calcular la matriz de esta simetra procedemos
como en (iii) del Ejemplo 5.4, obteniendo en primer lugar una matriz respecto de una
base adecuada y posteriormente realizando un cambio de base. As, la matriz de la
aplicaci on lineal en la base can onica es

1 0 1
0 1 1
1 1 1

1 0 1
0 1 1
1 1 1

1
=

1
3

2
3
2
3

2
3
1
3
2
3
2
3
2
3
1
3

lo que signica que la matriz de la aplicaci on afn que buscamos ser a de la forma:

1 0 0 0
c
1
1
3

2
3
2
3
c
2

2
3
1
3
2
3
c
3
2
3
2
3
1
3

1
x
y
z

y para calcular los coecientes c


1
, c
2
y c
3
bastar a conocer la imagen de cualquier punto
de la aplicaci on; por ejemplo, como cualquier punto del plano x +y z = 1 es jo, se
tendr a que f(1, 0, 0) = (1, 0, 0). Imponiendo esta condici on resulta que
c
1
+
1
3
= 1, c
2

2
3
= 0, c
3
+
2
3
= 0
es decir, la simetra buscada tiene por ecuaciones
f(x, y, z) =
1
3
(2 +x 2y + 2z, 2 2x +y + 2z, 2 + 2x + 2y +z)

9 5
C

ALCULO CON PYTHON


Aunque los c alculos involucrados en este tema no requieren de la introduccion
de nuevas herramientas de Python, mostraremos en esta secci on nuevas instrucciones
para manejar matrices que nos ayudar an a resolver algunos ejemplos sencillos.
Comencemos calculando las coordenadas de un mismo punto en dos sistemas
de referencia distintos: dados 1 = |O; B el sistema de referencia cartesiano y
1

= |O

; B

, donde
O

= (1, 1, 0), B

= |(1, 0, 1), (1, 1, 0), (0, 0, 1)


para calcular las coordenadas del punto (1, 2, 3)
R
respecto de 1

hemos de construir
la matriz del cambio de base de 1

a 1 de (9.1):
9.6 C alculo con Python 9.6 C alculo con Python 289
1 >>> from numpy import matrix ,concatenate ,zeros ,bmat ,r_,dot
2 >>> A=matrix(1 0 -1; 1 1 0; 0 0 1).T
3 >>> M=concatenate ((zeros ((1 ,3)),A))
4 >>> M
5 matrix ([[ 0., 0., 0.],
6 [ 1., 1., 0.],
7 [ 0., 1., 0.],
8 [-1., 0., 1.]])
9 >>> a=concatenate ((bmat(r_[1,1,1,0]).T,M) ,1)
10 >>> a
11 matrix ([[ 1., 0., 0., 0.],
12 [ 1., 1., 1., 0.],
13 [ 1., 0., 1., 0.],
14 [ 0., -1., 0., 1.]])
En este caso hemos construido la matriz de cambio de sistema de referencia usando
nuevas instrucciones de NumPy, como concatenate, que se usa para concatenar dos
matrices. En la lnea 3 adjuntamos una la de ceros a la matriz M del cambio de
base (formada por los vectores de B

por columnas), mientras que en la lnea 9, hemos


adjuntado a la matriz M una columna formada por un 1 y las coordendadas de O

.
N otese que hemos usado la funci on r seguida de una lista para crear un arreglo,
que luego convertimos en matriz con la funci on bmat. Observese tambien que para
adjuntar una columna, en lugar de una la, usamos un segundo par ametro opcional
en la instrucci on concatenate.
Para transformar coordenadas nos bastar a multiplicar la matriz de cambio por el
vector (1, 1, 2, 3)
15 >>> dot(a,r_[1,1,2,3])
16 matrix ([[ 1., 4., 3., 2.]])
es decir, (1, 2, 3)
R
= (4, 3, 2)
R
.
Podemos usar el m odulo SymPy para obtener la ecuaci on de un plano que pasa
por los puntos (1, 0, 0), (2, 0, 1) y (1, 1, 2), seg un hemos visto en (iv) del Ejemplo 9.1,
1 >>> from sympy import symbols ,Matrix
2 >>> x,y,z=symbols(xyz )
3 >>> A=Matrix ([[x-1,y,z],[1,0,-1],[0,1,2]])
4 >>> A
5 [-1 + x, y, z]
6 [ 1, 0, -1]
7 [ 0, 1, 2]
8 >>> A.det()
9 -1 + x + z - 2*y
9 6
290 Tema 9 Espacio afn
EJERCICIOS
1. Se considera un espacio afn /, el sistema de referencia cartesiano 1 = |O; |u
1
, u
2

y 1

= |O

; |v
1
, v
2
otro sistema de referencia, con 0

= (1, 2), v
1
= (2, 2) y
v
2
= (1, 2). Encontrar las ecuaciones del cambio de sistema de referencia y la
ecuaci on de la recta r x +y 5 = 0 respecto de 1

.
2. En los siguientes apartados encontrar las ecuaciones de la recta:
(a) Que pasa por los puntos P = (1, 2, 1) y Q = (2, 1, 3).
(b) Pasa por el punto Q = (0, 1, 1, 0) y tiene como direcci on el subespacio
generado por el vector (0, 1, 1, 1).
(c) Paralela a la recta de ecuaciones x y +z = 1, 2x +y = 0 y que pasa por el
punto P = (0, 0, 0).
3. En R
4
se consideran las variedades anes
L
1
= |(x
1
, x
2
, x
3
, x
4
) R
4
: x
1
+x
2
= 4, x
3
+x
4
= a
L
2
= (3, 2, 2, 1) +(1, 2, 2, 1))
Hallar a para que L
1
y L
2
tengan intersecci on no vaca.
4. Estudiar la posici on relativa de las rectas de ecuaciones
r (2, 1, 4) +(3, 2, 1)) s

x 3y +z = 2
4x + 2y 3z = 1
5. En los siguientes apartados hallar la ecuaci on del plano
(a) Pasa por los puntos A = (1, 0, 0), B = (2, 0, 1) y C = (1, 1, 2).
(b) Pasa por el punto P = (1, 0, 2) y es paralelo a las rectas del ejercicio 4.
(c) Pasa por el origen y es perpendicular a la recta
r

x +y 2z = 1
x y + 3z = 0
6. Halla la distancia del punto P = (1, 3, 1) a la recta de ecuaciones parametricas
r
_
_
_
x = 2t
y = 2 t
z = 1 + 2t
y al plano x +y + 2z = 0.
7. Dadas las rectas
r
x 2
2
=
y 1
2
= z, s
x a
a
= y 1 = z + 1
Se pide:
(a) Calcula los valores de a que hacen que las rectas anteriores se corten en un
punto P a determinar.
9.6 Ejercicios 9.6 Ejercicios 291
(b) Calcula la distancia del punto P a la recta de ecuaciones

x = 2
x +y 2z = 1
(c) Calcula la perpendicular por P al plano que pasa por los puntos (0, 1, 0),
(1, 1, 0) y (0, 0, 1).
8. Halla la distancia entre las variedades anes
r
1

_
_
_
x +y 2z +t = 0
x y + 3z 2t = 1
x t = 2
r
2
(0, 3, 2, 1) +(0, 1, 0, 1))
9. En los siguientes apartados calcular la proyeccion ortogonal del punto P sobre la
variedad L, donde
(a) P = (0, 1, 2), L x +y +z = 1
(b) P = (2, 0, 1), L

2x +y z = 0
x z = 2
(c) P = (0, 1, 1, 2), L 2x +y +z t = 2
10. Una homotecia de raz on k ,= 0 es una transformaci on afn cuya matriz de la
aplicaci on lineal asociada es kI
n
. Calcula las ecuaciones de una homotecia de raz on
2 que transforma el punto (1, 2, 1) en el punto (1, 3, 1).
11. Encontrar las ecuaciones de una aplicacion afn que transforma los puntos P
1
=
(0, 0, 0), P
2
= (1, 0, 0), P
3
= (1, 1, 0) y P
4
= (1, 1, 1) en los puntos (1, 1, 1), (1, 2, 3),
(1, 2, 4) y (0, 0, 0), respectivamente.
12. Encuentra las ecuaciones de las siguientes transformaciones anes de R
3
:
(a) Simetra respecto del plano x +y +z = 1.
(b) Simetra respecto de la recta de ecuaciones x = y = z.
(c) Simetra respecto del punto (1, 0, 1).
13. Hallar las ecuaciones de la transformaci on afn que asocia a cada punto de R
2
su
proyecci on ortogonal sobre la recta y = 2x.
14. Calcula las ecuaciones de la proyecci on ortogonal sobre el plano de ecuaci on x
2y +z = 3.
A Conceptos generales
En este apendice tratamos de incluir una serie de nociones basicas que se suponen
conocidas por el lector y que incluimos aqu a modo de repaso. En esencia recordaremos
brevemente algunos conceptos de teora de conjuntos y estructuras algebraicas y vere-
mos con m as detalle el Principio de Inducci on que es usado en diversas demostraciones
a lo largo del texto.
A 1
TEOR

IA DE CONJUNTOS
Las nociones que siguen a continuaci on ser an presentadas de forma intuitiva,
dado que una profundizaci on en algunos de los conceptos que vamos a mostrar queda
fuera del alcance de este texto.
El lector estar a familiarizado con el smbolo l ogico de implicaci on, , que relaciona
una armaci on con su consecuencia. La proposici on p q, que se lee si p entonces
q, signica que si la armaci on p es cierta, entonces la armaci on q tambien lo es. Por
ejemplo,
si llueve entonces la calles se mojan
En este caso se dice que p es una condici on suciente para q, mientras que q se dice
condici on necesaria para p. Es importante se nalar que si la armaci on p no es cierta,
no se puede deducir nada sobre la veracidad de q (si no llueve, las calles podran estar
o no mojadas por ejemplo, podran haber regado). Pero si q es falsa, entonces p
no puede ser cierta (si las calles no est an mojadas es porque no ha llovido).
Debemos recordar la diferencia entre la implicaci on simple y la doble implicacion
p q, que se lee p si y solo si q, y que signica
p q y q p
simult aneamente. En este caso se dice que p es una condici on necesaria y suciente
para q, o que p y q son equivalentes.
El lector tambien debe conocer el concepto de conjunto y de elemento, as como la
relaci on de pertenencia a un conjunto, que denotamos por x A, y que signica que el
elemento x est a en el conjunto A. La no pertenencia se denota por x , A. Recordamos
tambien la notacion habitual para un conjunto formado por una serie de elementos:
A = |a, b, c, d (A.1)
Una coleccion de elementos de un conjunto se dice que forma un subconjunto, y
en tal caso usamos la notaci on de inclusi on, B A, para decir que todo elemento del
293
294 Ap endice A Conceptos generales
conjunto B est a en A. La inclusi on estricta se denota por B A y signica que todo
elemento de B est a en A, pero hay elementos de A que no est an en B. Observese que
si A es el conjunto dado en (A.1) entonces podemos escribir
a A, b A, |b A, |a, c A
pero no |b, c, d A. Asimismo, el lector podr a entender de inmediato la siguiente
armaci on:
A B y B A A = B
Recordamos tambien la notaci on para el conjunto vaco , y que se verica que A
para cualquier conjunto A.
El conjunto formado por todos los subconjuntos de un conjunto A (includos el
conjunto vaco y el propio conjunto) se denomina partes de A y se denota por T(A).
Usaremos a lo largo de todo el texto los cuanticadores y , as como la negaci on
de este ultimo , y cuyos signicados se muestran en los siguientes ejemplos:
p(x), x A se lee, p(x) para todo x de A
y signica que la propiedad p(x) se tiene para cualquier elemento x del conjunto A.
x A : p(x) se lee, existe x en A tal que p(x)
quiere decir que existe al menos un elemento x del conjunto A para el que la propiedad
p(x) se tiene.
N otese que:
x A : p(x) p(x) es falso x A
es decir, no hay ning un elemento de A para el que la propiedad p(x) sea cierta.
Es importante no confundir lo anterior con la negaci on de p(x), x A. Tal
negaci on es equivalente a que x A tal que p(x) se cumple.
Las operaciones entre conjuntos que usaremos son la uni on, AB, que corresponde
el conjunto de elementos formados por todos los del conjunto A y todos los del conjunto
B, y la intersecci on, A B, que se forma con los elementos que est a a la vez en el
conjunto A y en el B. Se usar an tambien las uniones e intersecciones genericas
n
_
i=1
A
i
= A
1
A
2
A
n
n

i=1
A
i
= A
1
A
2
A
n
Por otro lado, la diferencia de conjuntos, A\B, est a formada por los elementos de A
que no est an en B. L ogicamente se tiene que
A\B ,= B A
El producto cartesiano de dos conjuntos A y B, que se denota por AB, se dene
como el conjunto de pares ordenados de la forma (x, y) con x A e y B. La denici on
se puede extender a un n umero mayor de conjuntos.
A.2 Estructuras algebraicas A.2 Estructuras algebraicas 295
Una relaci on R sobre un conjunto A es un subconjunto del producto cartesiano
A A. S x, y A son tales que el par (x, y) R, se representar a por xRy, y se
dir a que x est a relacionado con y por la relaci on R.
Dada una relaci on R en un conjunto A, se dice que esta es
reexiva, si xRx, x A
simetrica, si xRy y Rx
antisimetrica si xRy y y Rx x = y
transitiva, si xRy y y Rz xRz
Una relaci on que sea reexva, antisimetrica y transitiva se dice relaci on de orden,
o simplemente orden. Por ejemplo, la relaci on de inclusi on entre conjuntos () es
un orden en el conjunto T(A). La relaci on de desigualdad entre n umeros (), bien
conocida por el lector, tambien es una relaci on de orden. Cuando existe una relacion
de orden en un conjunto se dice que este es ordenado.
Una relacion R sobre un conjunto A se dice de equivalencia si es reexiva, simetrica
y transitiva. Si xRy con R una relaci on de equivalencia, se dice que x es equivalente
a y y se suele usar la notaci on x y. Dado x A, el conjunto de elementos de A que
son equivalentes a x se denomina clase de equivalencia de x. El conjunto formado por
todas las clases de equivalencia se denomina conjunto cociente y se denota por A/ .
A 2
ESTRUCTURAS ALGEBRAICAS
Se denomina operaci on (interna) sobre un conjunto A a una aplicaci on
: AA A
que a cada par de elementos (x, y) AA le asocia un elemento x y A. Es decir,
una operaci on consiste esencialmente en hacer algo con un par de elementos de un
conjunto para producir un nuevo elemento del conjunto.
Se dice que una operaci on es:
conmutativa, si x y = y x, x, y A
asociativa, si x (y z) = (x y) z, x, y, z A
Decimos que e es un elemento neutro para la operaci on , si x e = e x = x, x A.
Si la operacion posee elemento neutro e, dado x A se dice que x

A es su
simetrico (tambien llamado opuesto o inverso) si x x

= x

x = e.
Cuando en un conjunto tenemos dos operaciones + y , se dice que es distributiva
por la izquierda respecto de + si
x (y +z) = (x +y) (x +z), x, y, z A
o distributiva por la derecha respecto de + si
(y +z) x = (y +x) (z +x), x, y, z A
Obviamente, si es conmutativa y distributiva respecto de + por alguno de los lados,
lo ser a por el otro.
296 Ap endice A Conceptos generales
Una estructura algebraica debe entenderse como una etiqueta con la que se
trata de identicar las propiedades que ciertas operaciones poseen en un determinado
conjunto. El principal interes en trabajar con estructuras algebraicas estriba en el
hecho de que las propiedades que se pueden deducir a partir de la estructura son
independientes de la naturaleza de los elementos del conjunto en cuesti on.
Si A es un conjunto y + es una operaci on asociativa y que posee elemento neutro
y elemento simetrico, se dice que el par (A, +) es un grupo. Si adem as la operaci on es
conmutativa, se dice que es un grupo conmutativo.
Si en A tenemos dos operaciones, + y , tales que (A, +) es un grupo conmutativo,
la operaci on es asociativa y distributiva respecto de + tanto por la izquierda como
por la derecha se dice que la terna (A, +, ) es un anillo. El anillo es conmutativo si la
operacion lo es, y se dir a que es un anillo unitario si la operaci on posee elemento
neutro.
Por ejemplo, el conjunto de n umeros enteros Z es un anillo conmutativo y unitario.
Por ultimo, un conjunto A dotado de dos operaciones + y tales que (A, +, ) es
un anillo y (A

, ) es un grupo, donde A

= A\|0, siendo 0 el elemento neutro para


la operaci on +, se dice cuerpo.
Los ejemplos tpicos de cuerpos que el lector probablemente conoce son Q, el
conjunto de n umeros racionales, y R, el conjunto de n umeros reales.
A 3
PRINCIPIO DE INDUCCI

ON
El Principio de Inducci on es una tecnica de demostraci on que se usa en varias
ocasiones a lo largo del texto y que permite probar propiedades vinculadas de alg un
modo con el conjunto de n umeros naturales N.
Funciona del siguiente modo: si se pretende demostrar que una cierta propiedad
p(n) es cierta para todo n umero natural n N, entonces es necesario probar:
(i) p(1) es cierto
(ii) p(n) p(n + 1)
Podemos tratar de entender el mecanismo si pensamos, por ejemplo, en subir una
escalera. Para recorrer toda una escalera solo necesitamos realizar dos acciones: la
primera y m as evidente es llegar al primer escal on (lo que identicamos con probar
que la propiedad en el caso n = 1, esto es, que p(1) se cumple); la segunda consiste en,
estando en un determinado escal on, saber llegar al escal on inmediatamente superior,
es decir, si la propiedad en el caso n es cierta, hemos de poder probar que tambien es
cierta en el caso n + 1 (lo que denotamos con p(n) p(n + 1)). C omo hemos llegado
al nivel n es irrelevante aqu; lo que realmente importa es ver c omo llegar del nivel n
al nivel n + 1, es decir, c omo se sube de un escal on al siguiente.
Debe ser ahora evidente que si somos capaces de llegar al primer escal on, y sabemos
c omo pasar de un escal on al siguiente, entonces podemos subir completamente la
escalera, no importa cu an larga sea. Ve amoslo con un ejemplo.
A.3 Principio de inducci on A.3 Principio de inducci on 297
Ejemplo A.1 Probar que
n

i=1
i =
n(n + 1)
2
.
Es f acil comprobar que la f ormula funciona para algunos valores de n:
n = 1 1 =
12
2
n = 2 1 + 2 =
23
2
n = 3 1 + 2 + 3 =
34
2
sin embargo es muy importante tener claro que esto no constituye una demostraci on
del resultado (c omo podemos garantizar que la f ormula es v alidad para cualquier otro
valor de n?). Vamos a probar la f ormula por inducci on. El primer paso ya esta hecho
(la f ormula es cierta para n = 1, como acabamos de comprobar); veamos el segundo:
hay que probar que si la f ormula es cierta en el caso n, entonces tambien lo es en el
caso n + 1.
Escribamos como es la f ormula en el caso n + 1:
n+1

i=1
i =
(n + 1)(n + 2)
2
(A.2)
Esta expresi on es la que queremos demostrar, por lo que comenzaremos desde un
miembro de la igualdad y trataremos de llegar al otro. Aqu es importante se nalar que
estamos suponiendo que la f ormula es cierta en el caso n, es decir, que
n

i=1
i =
n(n + 1)
2
(A.3)
se tiene. Esto puede ser confuso para el lector, pues parece que asumimos lo que
queremos probar, pero no debemos olvidar que lo que debemos hacer es demostrar los
pasos que marca el principio de inducci on. Por tanto para probar (A.2):
n+1

i=1
i =
n

i=1
i + (n + 1) =
n(n + 1)
2
+ (n + 1) =
(n + 1)(n + 2)
2
N otese que en el primer paso hemos separado la suma hasta n + 1 en la suma hasta
n m as el termino n + 1 y en el segundo paso usamos (A.3), a la que usualmente nos
referiremos como hip otesis de induccion.

B Introducci on a Python
Este tema no pretende ser un manual de uso de Python sino una breve introducci on
al mismo que proporcione al lector un punto de partida a partir del cual pueda usar el
lenguaje para abordar una buena parte de los c alculos, en algunos momentos tediosos,
que son precisos realizar a lo largo de este texto.
Python es un lenguaje de programaci on creado por Guido Van Rossum a nales
de los ochenta. Su nombre deriva de la aci on de su creador al grupo de humor ingles
Monty Python. Python es un lenguaje de alto nivel, interpretado, interactivo y de
prop osito general. Un lenguaje se dice de alto nivel cuando su lexico y estructura
est a m as pr oximo al lenguaje humano que al lenguaje que entiende el computador. El
lenguaje es interpretado cuando no necesita de un proceso de compilacion.
1
En estos
casos, el interprete lee las lneas de c odigo y las ejecuta una a una. Es interactivo porque
proporciona la posibilidad de ejecutar codigo directamente sobre el interprete sin
necesidad de escribir un programa, capacidad esta, que nos ser a de especial utilidad a
lo largo del texto, y es un lenguaje de proposito general puesto que es lo sucientemente
versatil como para programar cualquier tarea que pueda realizarse con un ordenador.
Como carta de presentaci on podemos decir que Python es uno de los tres lenguajes
ociales empleados en Google.
Los lectores con conocimiento de alg un lenguaje de programaci on encontrar an en
Python un lenguaje sencillo, vers atil y que proporciona c odigo f acilmente legible. Para
aquellos que no estan familiarizados con la programaci on, Python supone un primer
contacto agradable, pues los programas pueden ser comprobados y depurados con
facilidad, permitiendo al usuario concentrarse m as en el problema a resolver que en
los aspectos concretos de la programaci on.
Python es software de c odigo abierto que est a disponible en m ultiples plataformas
(Linux, Unix, Windows, Mac OS, etc.), de manera que el mismo c odigo funciona en
diferentes sistemas,
2
aunque para ello es preciso disponer del interprete. En este tema
veremos algunos aspectos generales relacionados con la instalaci on y uso del interprete,
as como las caractersticas b asicas del lenguaje y los paquetes esenciales que nos ser an
de utilidad a lo largo del texto.
B 1
1
Los lenguajes compilados precisan de un proceso de compilaci on (y posterior enlazado)
que transforman el codigo escrito por el programador (el llamado c odigo fuente) en un c odigo
ejecutable (binario).
2
Con la excepcion de las extensiones que son especcas de cada sistema operativo.
299
300 Ap endice B Introducci on a Python
INSTALACI

ON DE PYTHON
Python puede ser obtenido desde la p agina web del lenguaje.
3
El proceso de
instalaci on depender a del sistema empleado y no suele presentar complicaciones. Tanto
en Windows como en Mac, bastar a con bajar el instalador y ejecutarlo.
4
En la mayora
de distribuciones Linux, Python viene instalado por defecto o puede ser instalado
f acilmente con la herramienta de gestion de paquetes.
Una de las principales virtudes de Python est a en la gran cantidad de extensiones
del lenguaje que posee. Estas extensiones suponen complementos adecuados para
realizar de forma r apida y sencilla ciertas operaciones que no forman parte del n ucleo
principal del lenguaje. As, en este texto trataremos dos extensiones que nos ser an de
gran utilidad: NumPy y SymPy. La primera de ellas est a dise nada para trabajar con
c alculo vectorial avanzado, mientras que la segunda incorpora a Python elementos de
c alculo simb olico que nos permitir an realizar operaciones matem aticas con expresiones
simb olicas y c alculos exactos. Estas dos extensiones no vienen con la instalaci on
inicial de Python y deben ser instaladas posteriormente. Pueden ser descargadas desde
numpy.org y sympy.org, respectivamente.
5
2 1 1 Primeros pasos
Una vez instalado el interprete de Python podemos trabajar con el lenguaje de dos
formas distintas: a traves de la consola o mediante la ejecuci on de scripts de ordenes.
El primer metodo es bastante util cuando queremos realizar operaciones inmediatas,
y podemos compararlo con el uso de una calculadora avanzada. El uso de scripts de
ordenes corresponde a la escritura de c odigo Python que es posteriormente ejecutado
a traves del interprete.
Hay diversas formas de iniciar el interprete Python: en Windows lo haremos di-
rectamente abriendo la consola Python o el programa IDLE Python en el men u de
programas, mientras que en Linux o Mac OS abriremos la tpica terminal y ejecuta-
remos la orden python. El resultado ser a algo por el estilo:
Python 2.6.5 (r265 :79063 , Apr 16 2010, 13:09:56)
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more
information.
>>>
que nos informa de la versi on que tenemos instalada y nos se nala el prompt >>> del
sistema, el cual indica la situaci on del terminal a la espera de ordenes. Podemos salir
con la orden exit() o pulsando las teclas Ctrl+D (en Linux y Mac) o Ctrl+Z y

6
(en Windows).
Una vez dentro del interprete podemos ejecutar ordenes del sistema, por ejemplo
>>> print "Hola Mundo"
3
www.python.org/download
4
En las ultimas versiones de los sistemas Mac ya viene instalado por defecto.
5
La descarga e instalacion en una distribucion Ubuntu se hace sencillamente con la orden
sudo apt-get install python-numpy python-sympy
6
El smbolo

denotara la tecla Enter o retorno de carro.
B.1 Instalaci on de Python B.1 Instalaci on de Python 301
Hola Mundo
>>>
Obviamente la orden print imprime la cadena de texto o string Hola Mundo que va
encerrada entre comillas para indicar precisamente que se trata de un string. Una vez
ejecutada la orden, el sistema vuelve a mostrar el prompt.
La otra alternativa a la ejecuci on de ordenes con Python es la creaci on de un script
o gui on. Se trata de un archivo de texto en el que listamos las ordenes Python que
pretendemos ejecutar. Para la edici on del archivo nos vale cualquier editor de texto
sin formato. Escribiendo el comando
print "Hola Mundo"
en un archivo,
7
lo salvamos con un nombre cualquiera, por ejemplo hola.py. Desde
Windows podemos ejecutar el script haciendo doble click sobre el archivo en cuesti on,
lo que ocurre es que se mostrar a el resultado en una ventana de comandos r apidamente
y esta se cerrara, lo cual no nos permitir a ver nada. Esto puede se arreglado a nadiendo
al chero la orden raw input(), que har a que el programa se quede a la espera de una
entrada por teclado para cerrarse despues.
En los sitemas Linux o Mac, podemos ejecutar el c odigo sencillamente escribiendo
en una consola la orden python hola.py (obviamente situ andonos correctamente en el
path
8
). Tambien es posible hacer ejecutable el c odigo Python escribiendo en la primera
lnea del archivo
9
#!/usr/bin/env python
y dando permisos de ejecuci on al archivo con la orden chmod a+x hola.py desde una
consola. En tal caso podemos ejecutar con un doble click sobre el archivo o escribiendo
./hola.py en una consola.
Se pueden utilizar codicaciones diferentes de la ASCII en los scripts de Python
a nadiendo, justo detr as del shebang la lnea
# -*- coding: codificacion -*-
donde codicaci on se reere al c odigo de caracteres que empleemos (tpicamente utf-8
en Linux o Mac). El empleo de caracteres no ASCII en un script sin esta lnea produce
errores.
2 1 2 La consola iPython
En lugar del interprete Python habitual existe una consola interactiva denominada
iPython con una serie de caractersticas muy interesantes que facilitan el trabajo con
el interprete.
10
7
En Windows, si se esta usando el programa IDLE Python, para obtener un editor abrimos
una nueva ventana desde el men u archivo y escribimos all. En Linux o Mac, es necesario usar
cualquier editor de texto disponible.
8
El path o ruta de un archivo nos indica la localizaci on de este dentro del sistema de
archivos.
9
Esto es lo que se conoce como el shebang, y es el metodo estandar para poder ejecutar un
programa interpretado como si fuera un binario.
10
Se puede descargar desde ipython.scipy.org.
302 Ap endice B Introducci on a Python
La principal virtud de esta consola es la presencia del autocompletado, caracterstica
que se activa al pulsar la tecla de tabulaci on y que nos permite que al teclear las
primeras letras de una orden aparezcan todas las ordenes disponibles que comienzan
de esa forma. Tambien existe un operador ? que puesto al nal de una orden nos
muestre una breve ayuda acerca de dicha orden. Adem as, esta consola pone a nuestra
disposicion comandos del entorno (cd, ls, etc.) que nos permiten movernos por el
arbol de directorio desde dentro de la consola, y el comando run con el que podemos
ejecutar desde la consola un script de ordenes.
B 2
ASPECTOS B

ASICOS DEL LENGUAJE


2 2 1 Variables y tipos de datos
En un lenguaje de programaci on, una variable es un smbolo que representa alg un
tipo de dato, ya sea un n umero entero, un n umero real, una cadena de caracteres,
etc. Python es lo que se conoce como un lenguaje din amicamente tipado, es decir,
las variables pueden cambiar de tipo en distintos momentos sin necesidad de ser
previamente declaradas. Las variables son identicadas con un nombre, mediante el
cual podemos acceder al dato que almacenan o modicarlo. Los nombres de variables
deben obligatoriamente comenzar por una letra y hay distinci on entre may usculas y
min usculas.
Los tipos de datos que usaremos en este texto son los n umeros enteros (int), reales
en doble precisi on (float), complejos (complex), cadenas de caracteres (str) y listas
(list).
Las variables se denen con el operador de asignaci on =, por ejemplo
>>> a=2
>>> b=5.
>>> c=3+1j
dene las variables a, b y c como un entero de valor 2, un real de valor 5 y un n umero
complejo de valor 3 + i, respectivamente. Observese la necesidad de poner un punto
para denir el valor como real y no como entero y el uso de j en lugar de i en el
n umero complejo, as como la obligaci on de anteponer un n umero. Tambien se puede
declarar un n umero complejo del siguiente modo:
>>> complex (3,2)
(3+2j)
Podemos recuperar el tipo de dato de cada variable con la orden type,
>>> type(a)
<type int >
>>> type(b)
<type float >
>>> type(c)
<type complex >
B.2 Aspectos b asicos del lenguaje B.2 Aspectos b asicos del lenguaje 303
Como vemos, Python asigna el tipo a cada variable en funci on de su denici on. Es
importante resaltar la diferencia entre los tipos numericos, pues si no somos cuidadosos
podemos caer en el siguiente error:
>>> a=5; b=2
>>> a+b
7
>>> a/b
2
Observese que hemos denido las variables a y b en la misma lnea, separadas por ;.
Claramente a+b calcula la suma de los valores de las variables, sin embargo a/b parece
que no calcula correctamente la divisi on. En realidad la respuesta es correcta dado
que ambas variables son enteros, y por tanto se realiza la divisi on entre enteros, que
corresponde a la parte entera de la divisi on. Si lo que esperamos es obtener la division
debemos escribir al menos uno de los n umeros en forma real, lo que se hace con el
comando float
>>> a/float(b)
2.5
Cuando Python opera con n umeros de distinto tipo, realiza la operaci on transformando
todos los n umeros involucrados al mismo tipo, seg un una jeraqua establecida, que va
de enteros a reales y luego a complejos. Observese el siguiente ejemplo
>>> a=3.
>>> b=2+3j
>>> c=a+b
>>> c
(5+3j)
>>> type(c)
<type complex >
Como vemos, la operaci on de suma entre un real y un complejo se realiza correctamente
como suma de n umeros complejos y el resultado corresponde a un n umero de ese tipo.
Las cadenas no son m as que texto encerrado entre comillas:
>>> a="Hola"
>>> b=mundo
>>> a
Hola
>>> b
mundo
>>> type(a)
<type str >
en las que se puede comprobar, que da igual denirlas con comillas simples o dobles.
Por ultimo,
11
las listas son colecciones de variables de cualquier tipo (inclusive
listas). Observese el siguiente ejemplo:
11
Hay m as tipos de datos en Python, pero de momento solo usaremos los aqu descritos.
304 Ap endice B Introducci on a Python
>>> a=[1 ,2. ,3+1j,"hola"]
>>> type(a)
<type list >
>>> a
[1, 2.0, (3+1j), hola ]
>>> a[1]
2.0
>>> type(a[1])
<type float >
>>> a[0]
1
Hemos denido una lista encerrando sus elementos (de tipos diversos) entre corchetes
y separ andolos por comas. Podemos acceder a cada uno de los elementos de la lista
escribiendo el nombre de la lista y el ndice del elemento entre corchetes, teniendo en
cuenta que el primer elemento tiene ndice 0. Si alg un elemento de la lista es otra lista,
podemos acceder a los elementos de esta ultima usando el corchete dos veces, como en
el siguiente ejemplo:
>>> milista =[1,2,a]
>>> milista
[1, 2, [1, "mundo "]]
>>> a=[1 ,2. ,3+1j,"hola"]
>>> milista =[1,2,a]
>>> milista
[1, 2, [1, 2.0, (3+1j), hola ]]
>>> milista [2][3]
hola
2 2 2 Operadores
Las operaciones numericas mas comunes se realizan en Python con los operadores
+ (suma), - (resta), * (multiplicaci on), / (divisi on) y ** (exponenciaci on). Tambien
existe el operador // (divisi on entera), que da la parte entera de la divisi on entre
dos reales y el operador % (m odulo), que proporciona el resto de la divisi on entre dos
n umeros.
Los operadores suma y multiplicaci on pueden aplicarse a cadenas y a listas, como
vemos en el siguiente ejemplo:
>>> a="hola"; b=" amigo"
hola amigo
>>> a*3
holaholahola
>>> a=[1,5,3]
>>> 3*a
[1, 5, 3, 1, 5, 3, 1, 5, 3]
>>> a+a
[1, 5, 3, 1, 5, 3]
B.3 Bucles y condicionales B.3 Bucles y condicionales 305
Pero adem as, con las listas disponemos de operadores que nos permiten acceder no
solo a elementos concretos de la lista, sino a trozos, lo que se denomina slicing. Veamos
el siguiente ejemplo en el que se usa el comando range, cuyo funcionamiento es claro:
>>> a=range (10)
>>> a
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> a[2:6]
[2, 3, 4, 5]
>>> a[:3]
[0, 1, 2]
>>> a[7:]
[7, 8, 9]
N otese como el operador de slicing inicio:fin permite recuperar una parte de una
lista entre los valores inicio y fin, sin contar este ultimo. Mas adelante veremos su
utilidad en el manejo de submatrices.
B 3
BUCLES Y CONDICIONALES
Las ordenes que vamos a ver en esta secci on estan orientadas a la escritura de scripts
y a la realizaci on de programas aunque tambien pueden usarse en el modo interactivo.
Los bucles permiten ejecutar fragmentos de codigo repetidamente para una serie de
valores. Una caracterstica esencial de Python es que la sintaxis del lenguaje impone
obligatoriamente que escribamos con cierta claridad. As, el fragmento de c odigo a
repetir en un bloque for est a marcado por el sangrado de lnea:
>>> for i in range (3):
... print i
...
0
1
2
La sintaxis de la orden for es simple: la variable i recorre la lista generada por
range(3), nalizando con dos puntos (:) obligatoriamente. La siguiente lnea, co-
menzada por ... por el interprete, debe ser sangrada, bien con el tabulador, bien con
espacios (uno es suciente, aunque lo habitual es cuatro). Al dejar la siguiente lnea
en blanco el interprete entiende que hemos nalizado el bucle for y lo ejecuta. En un
script volveramos al sangrado inicial para indicar el n del bucle.
N otese que el bucle en Python corre a traves de la lista y no de los ndices de esta,
como se muestra en el siguiente ejemplo:
>>> a=[hola ,mundo ]
>>> for b in a:
... print b
...
hola
mundo
306 Ap endice B Introducci on a Python
La escritura de sentencias condicionales es similar a la de los bucles for, usando
el sangrado de lnea para determinar el bloque
>>> if 4 %3 != 0:
... print "4 no es divisible por 3"
...
4 no es divisible por 3
La orden if eval ua la operaci on l ogica el resto de la divisi on de 4 entre 3 no es igual
a cero, puesto que la respuesta es armativa, se ejecuta la sentencia de impresi on.
Los operadores relacionales en Python son == (igual), != (distinto), > (mayor que), >=
(mayor o igual que), < (menor que) y <= (menor o igual que), y los operadores l ogicos
son and, or y not.
B 4
M

ODULOS
Una de las principales caractersticas de Python es su extensa biblioteca que
nos provee de funciones para realizar las tareas m as diversas. Esta modularizaci on
del lenguaje permite adem as que los programas creados puedan ser reutilizados con
facilidad. Para cargar un m odulo usamos la orden import:
>>> import os
En este ejemplo hemos cargado el m odulo os (Operating System) que nos provee de
funciones del sistema operativo con las que podemos, por ejemplo, movernos a un
directorio. El comando dir(os) nos proporciona un listado de los objetos, atributos y
funciones del m odulo. Para usar cualquier funci on del m odulo es preciso anteponer su
nombre. Por ejemplo,
>>> os.getcwd ()
/home/usuario
nos proporciona una cadena de texto correspondiente al directorio en el que nos
encontramos.
12
El comando chdir nos permite cambiar de directorio, tanto en forma
absoluta como relativa, teniendo en cuenta que usamos la separaci on de directorios
con la barra usual (/) en todos los sistemas:
>>> os.listdir (.)
[dir1 ,dir2 ,archivo ]
>>> os.chdir(dir1 )
>>> os.getcwd ()
/home/usuario/dir1
Python est a dise nado para ser usado a traves de m odulos, es decir, solo unas pocas
funciones son cargadas con el n ucleo principal, y para acceder a c alculos tan comunes,
como por ejemplo la raz cuadrada (sqrt), es necesario cargar el m odulo apropiado.
12
La respuesta en un sistema Windows podra ser algo similar a C:\\Python27.
B.4 M odulos B.4 M odulos 307
N otese que para usar las funciones del modulo cargado hemos de anteponer el
nombre del m odulo seguido de un punto. Podemos evitar el tener que hacer esto si
cargamos los m odulos del siguiente modo:
>>> from math import *
Con esta orden importamos todas las funciones del m odulo math (b asicamente las
trigonometricas, logaritmo, exponencial, raz cuadrada, n umero , etc.), las cuales
estar an accesibles sin necesidad de anteponer el nombre del m odulo. Ahora, si queremos
calcular

2, escribimos
>>> sqrt (2)
1.4142135623730951
L ogicamente, esta forma de cargar los m odulos tiene ventajas evidentes en cuanto a
la escritura de ordenes, pero tiene tambien sus inconvenientes. Por ejemplo, es posible
que haya m as de un m odulo que use la misma funci on, como es el caso de la raz
cuadrada, que aparece tanto en el m odulo math como en el m odulo cmath. De manera
que podemos encontrarnos situaciones como la siguiente:
>>> import math
>>> import cmath
>>> math.sqrt(-1)
Traceback (most recent call last):
File "<stdin >", line 1, in <module >
ValueError: math domain error
>>> cmath.sqrt(-1)
1j
Como vemos, hemos cargado los m odulos math y cmath y calculado la raz cuadrada de
1 con la funci on sqrt que posee cada m odulo. El resultado es bien distinto: la funci on
raz cuadrada del m odulo math no permite el uso de n umeros negativos, mientras que
la funcion sqrt del modulo cmath s. Si en lugar de cargar los m odulos como en el
ultimo ejemplo los hubiesemos cargado as:
>>> from math import *
>>> from cmath import *
que ocurrir a al hacer sqrt(-1)? Como el lector puede imaginar, la funci on sqrt del
m odulo math es sobreescrita por la del m odulo cmath, por lo que solo la ultima es
accesible.
Existe una tercera opci on para acceder a las funciones de los m odulos que no
precisa importarlo al completo. As,
>>> from math import sqrt
>>> from cmath import cos ,sin
nos deja a nuestra disposici on la funci on raz cuadrada del m odulo math y las funciones
trigonometricas seno y coseno del m odulo cmath. Es importante se nalar que con estas
funciones no tenemos acceso a ninguna otra funci on de los m odulos que no hubiera
sido previamente importada.
308 Ap endice B Introducci on a Python
Esta ultima opci on es de uso m as frecuente en los scripts, debido a que con
ella cargamos exclusivamente las funciones que vamos a necesitar y de esa forma
mantenemos el programa con el mnimo de recursos. En el uso de la consola interactiva
es m as frecuente cargar el m odulo al completo, y es aconsejable hacerlo sin el uso de
*. De hecho, hay una posibilidad adicional que nos evita tener que escribir el nombre
del m odulo, seguido del punto para usar una funci on. Si realizamos una importaci on
del m odulo como sigue.
>>> import math as m
entonces no es necesario escribir math. para acceder a la funciones sino
>>> m.cos(m.pi)
-1.0
2 4 1 Funciones, metodos y atributos
Aunque no es la intenci on de este texto introducir al lector en cuestiones relacio-
nadas con la Programaci on Orientada a Objetos, es inevitable usar en alg un momento
algo de su terminologa. De manera muy supercial podemos decir que las funciones,
los metodos y los atributos en Python son esencialmente operaciones que pueden ha-
cerse con los datos (objetos) que tenemos a nuestra disposici on. La diferencia entre
unos y otros est a en la forma en la que se accede a ellos. Ya hemos visto en ejemplos
anteriores como trabajar con las funciones. A diferencia de estas, los metodos y atri-
butos no precisan importaci on, pues vienen denidos con el propio objeto. El siguiente
ejemplo nos muestra la diferencia entre ambos:
>>> a=3+2j
>>> a.real
3.0
>>> a.conjugate
<built -in method conjugate of complex object at 0xb7738968 >
>>> a.conjugate ()
(3-2j)
Como vemos, el atributo real nos permite obtener la parte real del n umero complejo
denido en el objeto a. Si queremos obtener su conjugado, vemos que a.conjugate
nos informa que eso es un metodo, pero no nos proporciona el valor esperado. Para
ello hemos de usar la notaci on a.conjugate().
2 4 2 El m odulo NumPy
NumPy es un m odulo fundamental para el c alculo cientco con Python, principal-
mente porque est a dise nado para obtener un buen nivel de rendimiento (cercano a lo
que pueden proporcionarnos lenguajes compilados como FORTRAN o C) cuando ma-
nejamos un gran n umero de datos. Aunque en este texto no llevaremos a cabo c alculos
en los que el rendimiento pueda ser un factor a tener en cuenta, cualquier aplicaci on
avanzada en matem aticas requiere de un tratamiento eciente en los c alculos, y en ese
sentido NumPy es actualmente la opci on m as adecuada para ello.
B.4 M odulos B.4 M odulos 309
El m odulo NumPy incorpora un nuevo tipo de dato, el array o arreglo, que tiene
una estructura similar a una lista, aunque es m as restrictivo y computacionalmente
mucho m as eciente. A diferencia de las listas, cuyos elementos pueden ser de cualquier
tipo, un array de NumPy debe tener todos sus elementos del mismo tipo. Para denirlo,
obviamente ser a necesario importar el m odulo previamente,
>>> import numpy as np
>>> a=np.array ([1 ,4 ,9])
>>> a
array([1, 4 ,9])
El acceso a los elementos del arreglo es identico al de las listas. Es muy importante tener
presente el tipo de valores denidos en el arreglo, pues este no cambia al modicar los
elementos de tipo. Es decir, el arreglo denido antes tiene todos sus elementos enteros,
como podemos comprobar con el metodo dtype
>>> a.dtype
dtype(int32 )
La respuesta int32 se reere a un tipo de entero.
13
Si ahora pretendemos modicar
los valores del arreglo, podemos llevarnos alguna sorpresa
>>> a[0]=3.6
>>> a
array([3, 4 ,9])
Como vemos, al ser el arreglo entero, la modicaci on del primer valor de este toma solo
su parte entera. Si queremos que el arreglo admita valores reales, hemos de modicar
previamente su tipo:
>>> a=a.astype(float)
>>> a
array([ 3., 4., 9.])
>>> a[0]=3.6
>>> a
array([ 3.6, 4., 9.])
Para evitarnos el tener que cambiar de tipo lo m as sencillo es denir desde el principio
el arreglo usando reales (bastar a usarlo en una unica entrada), es decir
>>> a=np.array ([2. ,5 ,7])
>>> a.dtype
dtype(float64 )
Los arreglos tambien pueden ser multidimensionales; en particular, podemos tra-
bajar con matrices como arreglos bidimensionales, deniendoles del siguiente modo:
13
En NumPy existen varios tipos de enteros, reales y complejos, en funci on del n umero de
cifras que queramos manejar. En todo este texto trabajaremos con los tipos que NumPy dene
por defecto.
310 Ap endice B Introducci on a Python
>>> M=np.array ([[1. ,3 ,5] ,[2 ,1 ,8]])
>>> M
array ([[ 1., 3., 5.],
[ 2., 1., 8.]])
y podemos acceder a sus elementos con un doble ndice, tal y como haramos con una
matriz (recordando que los ndices comienzan en 0):
>>> M[0,2]
5.0
Si bien trabajar con los arreglos multidimensionales es sencillo, NumPy incorpora
un tipo especial de dato para trabajar con matrices, que sera el que usemos en todo
este texto, por estar especialmente dise nado para el algebra lineal. Las matrices se
pueden denir de varias formas, aqu mostramos algunos ejemplos:
>>> a=np.array ([[1 ,2. ,3] ,[2 ,5 ,2]])
>>> A=np.matrix(a)
>>> B=np.matrix ([[1,0.,1],[2,0 ,-1]])
>>> C=np.matrix(1 3 6.; 0 1 1)
Observese que la matriz A se ha construido a partir de un arreglo bidimensional, la
matriz B se ha obtenido usando el mismo tipo de denici on que los arreglos, mientras
que C se ha construido de forma m as sencilla, como una especie de lista, separando
los elementos de cada la por espacios y los de cada columna por ;. En el Tema 2
trataremos las diversas operaciones y metodos existentes para las matrices.
2 4 3 El m odulo SymPy
El c alculo numerico con un ordenador lleva aparejado ciertos inconvenientes debido
a la imposibilidad de almacenar un numero innito de cifras decimales. As, el n umero
1
3
no puede almacenarse m as que a traves de una aproximaci on numerica con un
n umero nito de cifras decimales. Este hecho da lugar a los denominados errores de
redondeo que tratamos en el tema 3. Los programas para el c alculo simb olico permiten
que los ordenadores puedan trabajar, no con aproximaciones numericas, sino con el
n umero exacto, al igual que podemos hacer nosotros a mano. El lector quizas se
pregunte que, si esto es posible, por que los ordenadores no trabajan siempre con
c alculo simb olico. La respuesta es que el c alculo simb olico es mucho m as lento que el
c alculo numerico y no es posible trabajar con n umero grande de datos.
SymPy es una librera de c alculo simb olico que no solo nos permitira hacer c alculos
de forma exacta, sino trabajar tambien con expresiones simb olicas, es decir, con
letras, como podemos hacer nosotros. Por ejemplo,
>>> import sympy as sp
>>> x,y=sp.symbols(x y)
>>> a=(x+y)**2
>>> sp.simplify(a)
2*x*y + x**2 + y**2
B.4 M odulos B.4 M odulos 311
Hemos denido dos variables simb olicas x e y mediante la funci on symbols, de modo
que la expresi on (x+y)
2
ahora toma pleno sentido. Con la funci on simplify obtenemos
dicha expresion simplicada. Este m odulo tambien posee una forma de denir matrices
simb olicas, aunque las formas cambian:
>>> A = sp.Matrix ([[1,x], [y,1]])
>>> B=sp.Matrix (2,3,[1,2,x,0,1,y])
>>> B
[1, 2, x]
[0, 1, y]
y posibilita el c alculo exacto del siguiente modo:
>>> a=sp.Rational (1,2)
>>> b=sp.Rational (2,3)
>>> a+b
7/6
A lo largo de los diferentes temas iremos viendo algunas de las capacidades de este
m odulo.