Práctica Nº 12
Aplicaciones lineales y matrices.
Núcleo e Imagen de una aplicación lineal.

Aplicación lineal:

Ejemplo 1:
			Definir en Mathematica la aplicación lineal f: (R^3)-> (R^4) que viene dada por   
f(x,y,z)=(2x,x+y,3x+y-z,y+5z) y calcular f(3,2,1).

f[{x_,y_,z_}]:={2x,x+y,3x+y-z,y+5z}

f[{3,2,1}]

Ejemplo 2:
	Estudiar si la aplicación anterior es lineal:

Simplify[f[a*{x1,y1,z1}+b*{x2,y2,z2}]]==Simplify[a*f[{x1,y1,z1}]+b*f[{x2,y2,z2}]]

Ejemplo 3:
		Idem para g: (R^3)-> (R^2) que viene dada por  g(x,y,z)=(x*y,x+y).

g[{x_,y_,z_}]:={x*y, x+y}

Simplify[g[a*{x1,y1,z1}+b*{x2,y2,z2}]]==Simplify[a*g[{x1,y1,z1}]+b*g[{x2,y2,z2}]]

Expresión matricial de una aplicación lineal:

Ejemplo 4:(Método general)
		Calcular la expresión matricial de la aplicación lineal f: (R^3)-> (R^4) dada por   
f(x,y,z)=(2x,x+y,3x+y-z,y+5z) respecto de la bases 
B={(1,1,1),(1,1,0),(1,0,0)} y 
B'={(1,2,3,0),(2,4,6,1),(1,0,0,0),(0,1,0,0)}.

f[{x_,y_,z_}]:={2x,x+y,3x+y-z,y+5z}
B={{1,1,1},{1,1,0},{1,0,0}};
Bp={{1,2,3,0},{2,4,6,1},{1,0,0,0},{0,1,0,0}};
A=Transpose[Table[LinearSolve[Transpose[Bp],f[B[[i]]]],{i,1,3}]];
MatrixForm[A]

Observación: Cuando no te nemos una expresión explicita de la aplicación lineal basta con dar las imagenes de los vectores de una base.

Relación entre matrices asociadas a distintas bases:

Ejemplo 5:
			Comprobar  la relación entre la matriz asiciada a f respecto de las bases anteriores y la matriz asociada a f respecto de las 
			bases canónicas.

f[{x_,y_,z_}]:={2x,x+y,3x+y-z,y+5z}
Bc3=IdentityMatrix[3];
Bc4=IdentityMatrix[4];
c=Transpose[Table[LinearSolve[Transpose[Bc4],f[Bc3[[i]]]],{i,1,3}]];
MatrixForm[c]
B={{1,1,1},{1,1,0},{1,0,0}};
Bp={{1,2,3,0},{2,4,6,1},{1,0,0,0},{0,1,0,0}};
A=Transpose[Table[LinearSolve[Transpose[Bp],f[B[[i]]]],{i,1,3}]];
P=Transpose[Table[LinearSolve[Transpose[B],Bc3[[i]]],{i,1,3}]];
Q=Transpose[Table[LinearSolve[Transpose[Bp],Bc4[[i]]],{i,1,4}]];
MatrixForm[A]
Inverse[Q].A.P==c

Operaciones con aplicaciones lineales y relación con las matrices asociadas:

Ejemplo 6:
					Calcular las matrices asociadas a f,g y h  respecto  de las bases canónicas y comprobar la proposición anterior.

Clear["Global`*"]

f[{x_,y_,z_}]:={x+y,3x+y-z,y+5z}
g[{x_,y_,z_}]:={2x,y+z,x+y}
h[{x_,y_,z_}]:={2x-z,x+y,3x+y-z,2y+z}
s[{x_,y_,z_}]=f[{x,y,z}]+g[{x,y,z}];
p[{x_,y_,z_}]=3*f[{x,y,z}];
c[{x_,y_,z_}]=h[f[{x,y,z}]];
B=IdentityMatrix[3];
Af=Transpose[Table[f[B[[i]]],{i,1,3}]];
Ag=Transpose[Table[g[B[[i]]],{i,1,3}]];
Ah=Transpose[Table[h[B[[i]]],{i,1,3}]];
As=Transpose[Table[s[B[[i]]],{i,1,3}]];
Ap=Transpose[Table[p[B[[i]]],{i,1,3}]];
Ac=Transpose[Table[c[B[[i]]],{i,1,3}]];

Af+Ag==As

3*Af==Ap

Ah.Af==Ac

Núcleo e imagen de una aplicación lineal:

Ejemplo 7:		
	Calcular el núcleo y la imagen de la aplicación lineal f: (R^3)-> (R^4) que viene dada por   
f(x,y,z)=(2x-z,x+y,3x+y-z,2y+z).

f[{x_,y_,z_}]:={2x-z,x+y,3x+y-z,2y+z}
B=IdentityMatrix[3];
Bp=IdentityMatrix[4];
A=Transpose[Table[LinearSolve[Transpose[Bp], f[B[[i]]]],{i,1,3}]];
MatrixForm[A]

La base del núcleo es:

baseNucleo=NullSpace[A]

Ecuaciones paramétricas e implícitas:

param={a};
coord={x,y,z};
paramNucleo=LogicalExpand[coord==Transpose[baseNucleo].param]

implicitasNucleo=Eliminate[paramNucleo,param]

Para la base de la imagen:

generadorImagen=Transpose[A];
RowReduce[generadorImagen]

baseImagen=Table[%[[i]],{i,2}]

Ecuaciones paramétricas e implícitas:

param={a,b};
coord={x,y,z,t};
paramImagen=LogicalExpand[coord==Transpose[baseImagen].param]

implicitasImagen=Eliminate[paramImagen,param]

Calcular de nuevo el nucleo y la imagen de f usando para ello la forma normal de Hermite:

f[{x_,y_,z_}]:={2x-z,x+y,3x+y-z,2y+z}
B=IdentityMatrix[3];
A=Transpose[Table[f[B[[i]]],{i,1,3}]];
Join[A,B];
AI=Transpose[%];
CP=RowReduce[AI];
MatrixForm[Transpose[CP]]