:: Eigenvalues of a Linear Transformation
:: by Karol P\c{a}k
::
:: Received July 11, 2008
:: Copyright (c) 2008-2018 Association of Mizar Users
:: (Stowarzyszenie Uzytkownikow Mizara, Bialystok, Poland).
:: This code can be distributed under the GNU General Public Licence
:: version 3.0 or later, or the Creative Commons Attribution-ShareAlike
:: License version 3.0 or later, subject to the binding interpretation
:: detailed in file COPYING.interpretation.
:: See COPYING.GPL and COPYING.CC-BY-SA for the full text of these
:: licenses, or see http://www.gnu.org/licenses/gpl.html and
:: http://creativecommons.org/licenses/by-sa/3.0/.
environ
vocabularies NUMBERS, NAT_1, VECTSP_1, SUBSET_1, MATRIX_1, FINSEQ_2, ZFMISC_1,
RELAT_1, TARSKI, CARD_1, ARYTM_3, FUNCT_1, FREEALG, FINSET_1, FINSEQ_1,
MESFUNC1, GROUP_1, SUPINF_2, LAPLACE, XBOOLE_0, ARYTM_1, XXREAL_0,
POLYNOM1, POLYNOM2, MATRIX_3, CARD_3, AFINSQ_1, ORDINAL4, POLYNOM3,
STRUCT_0, PARTFUN1, RANKNULL, RLSUB_1, RLVECT_5, PRVECT_1, RLVECT_3,
ALGSTR_0, VECTSP10, MATRLIN, MATRLIN2, POLYNOM5, NEWTON, MONOID_0,
BINOP_1, RLVECT_1, LATTICES, RLSUB_2, FINSEQ_4, MCART_1, RLVECT_2,
VALUED_1, FUNCT_2, VECTSP11, MSSUBFAM, UNIALG_1;
notations TARSKI, XBOOLE_0, ZFMISC_1, SUBSET_1, ORDINAL1, NUMBERS, CARD_1,
XCMPLX_0, ALGSTR_0, XXREAL_0, FINSET_1, RELAT_1, FUNCT_1, PARTFUN1,
FUNCT_2, NAT_1, FINSEQ_1, BINOP_1, STRUCT_0, RLVECT_1, GROUP_1, VECTSP_1,
FINSEQ_2, MATRIX_0, MATRIX_1, NAT_D, GROUP_4, MATRIX_3, DOMAIN_1,
MEASURE6, PRVECT_1, VECTSP_4, VECTSP_5, VECTSP_6, VECTSP_7, VECTSP_9,
FINSEQOP, MATRIX13, MATRLIN, LAPLACE, MOD_2, RANKNULL, POLYNOM3,
MONOID_0, ALGSEQ_1, POLYNOM4, POLYNOM5, MATRLIN2;
constructors FINSOP_1, GROUP_4, VECTSP_7, VECTSP_9, MATRIX13, REALSET1,
LAPLACE, VECTSP_5, RANKNULL, MONOID_0, POLYNOM4, POLYNOM5, MATRLIN2,
BINOP_2, RELSET_1, MATRIX_1, ALGSEQ_1;
registrations XBOOLE_0, FUNCT_1, FINSET_1, STRUCT_0, VECTSP_1, FUNCT_2,
ORDINAL1, XXREAL_0, NAT_1, FINSEQ_1, FINSEQ_2, SEQM_3, MATRIX13, XREAL_0,
VECTSP_9, RANKNULL, POLYNOM3, POLYNOM5, MONOID_0, CARD_1, RELSET_1,
MOD_2, GRCAT_1, PRVECT_1, MATRLIN2;
requirements ARITHM, NUMERALS, REAL, BOOLE, SUBSET;
begin :: Preliminaries
reserve i,j,m,n,k for Nat,
x,y for set,
K for Field,
a for Element of K;
theorem :: VECTSP11:1
for A,B be Matrix of K for nt be Element of n-tuples_on NAT, mt
be Element of m-tuples_on NAT st [:rng nt,rng mt:] c= Indices A holds Segm(A+B,
nt,mt) = Segm(A,nt,mt) + Segm(B,nt,mt);
theorem :: VECTSP11:2
for P be without_zero finite Subset of NAT st P c= Seg n holds
Segm(1.(K,n),P,P) = 1.(K,card P);
theorem :: VECTSP11:3
for A,B be Matrix of K for P, Q be without_zero finite Subset of
NAT st [:P,Q:] c= Indices A holds Segm(A+B,P,Q) = Segm(A,P,Q) + Segm(B,P,Q);
theorem :: VECTSP11:4
for A,B be Matrix of n,K st i in Seg n & j in Seg n holds Delete(
A+B,i,j)=Delete(A,i,j) + Delete(B,i,j);
theorem :: VECTSP11:5
for A be Matrix of n,K st i in Seg n & j in Seg n holds Delete(a*
A,i,j)=a*Delete(A,i,j);
theorem :: VECTSP11:6
i in Seg n implies Delete(1.(K,n),i,i)=1.(K,n-'1);
theorem :: VECTSP11:7
for A,B be Matrix of n,K ex P be Polynomial of K st len P <= n+1
& for x be Element of K holds eval(P,x) = Det(A+x*B);
:: The Characteristic Polynomials of Square Matrixs
theorem :: VECTSP11:8
for A be Matrix of n,K ex P be Polynomial of K st len P = n+1 &
for x be Element of K holds eval(P,x) = Det(A+x*1.(K,n));
registration
let K;
cluster non trivial finite-dimensional for VectSp of K;
end;
begin :: Maps with Eigenvalues
definition
let R be non empty doubleLoopStr;
let V be non empty ModuleStr over R;
let IT be Function of V,V;
attr IT is with_eigenvalues means
:: VECTSP11:def 1
ex v be Vector of V, a be Scalar of R st v <> 0.V & IT.v = a*v;
end;
reserve V for non trivial VectSp of K,
V1,V2 for VectSp of K,
f for linear-transformation of V1,V1,
v,w for Vector of V,
v1 for Vector of V1,
L for Scalar of K;
registration
let K,V;
cluster with_eigenvalues for linear-transformation of V,V;
end;
definition
let R be non empty doubleLoopStr;
let V be non empty ModuleStr over R;
let f be Function of V,V such that
f is with_eigenvalues;
mode eigenvalue of f -> Element of R means
:: VECTSP11:def 2
ex v be Vector of V st v <> 0.V & f.v = it * v;
end;
definition
let R be non empty doubleLoopStr;
let V be non empty ModuleStr over R;
let f be Function of V,V;
let L be Scalar of R such that
f is with_eigenvalues & L is eigenvalue of f;
mode eigenvector of f,L -> Vector of V means
:: VECTSP11:def 3
f.it = L * it;
end;
theorem :: VECTSP11:9
for a st a <> 0.K for f be with_eigenvalues Function of V,V for L be
eigenvalue of f holds a*f is with_eigenvalues & a*L is eigenvalue of a*f & ( w
is eigenvector of f,L iff w is eigenvector of a*f,a*L );
theorem :: VECTSP11:10
for f1,f2 be with_eigenvalues Function of V,V for L1,L2 be Scalar of K
st L1 is eigenvalue of f1 & L2 is eigenvalue of f2 & ex v st v is eigenvector
of f1,L1 & v is eigenvector of f2,L2 & v<>0.V holds f1+f2 is with_eigenvalues &
L1+L2 is eigenvalue of f1+f2 & for w st w is eigenvector of f1,L1 & w is
eigenvector of f2,L2 holds w is eigenvector of f1+f2,L1+L2;
theorem :: VECTSP11:11
id V is with_eigenvalues & 1_K is eigenvalue of id V & for v
holds v is eigenvector of id V,1_K;
theorem :: VECTSP11:12
for L be eigenvalue of id V holds L = 1_K;
theorem :: VECTSP11:13
ker f is non trivial implies f is with_eigenvalues & 0.K is eigenvalue of f;
theorem :: VECTSP11:14
f is with_eigenvalues & L is eigenvalue of f iff ker (f+(-L)*id
V1) is non trivial;
theorem :: VECTSP11:15
for V1 be finite-dimensional VectSp of K, b1,b19 be OrdBasis of
V1 for f be linear-transformation of V1,V1 holds f is with_eigenvalues & L is
eigenvalue of f iff Det AutEqMt(f+(-L)*id V1,b1,b19) =0.K;
theorem :: VECTSP11:16
for K be algebraic-closed Field, V1 be non trivial finite-dimensional
VectSp of K, f be linear-transformation of V1,V1 holds f is with_eigenvalues;
theorem :: VECTSP11:17
for f,L st f is with_eigenvalues & L is eigenvalue of f holds v1
is eigenvector of f,L iff v1 in ker (f+(-L)*id V1);
definition
let S be 1-sorted;
let F be Function of S,S;
let n be Nat;
func F |^ n -> Function of S,S means
:: VECTSP11:def 4
for F9 be Element of GFuncs the
carrier of S st F9=F holds it = Product(n|-> F9);
end;
reserve S for 1-sorted,
F for Function of S,S;
theorem :: VECTSP11:18
F |^ 0 = id S;
theorem :: VECTSP11:19
F |^ 1 = F;
theorem :: VECTSP11:20
F |^(i+j) = (F |^ j) * (F |^ i);
theorem :: VECTSP11:21
for s1,s2 be Element of S,n,m st (F|^m).s1 = s2 & (F|^n).s2 = s2 holds
(F|^(m+i*n)).s1 = s2;
theorem :: VECTSP11:22
for K be add-associative right_zeroed right_complementable Abelian
associative well-unital distributive non empty doubleLoopStr, V1 be Abelian
add-associative right_zeroed right_complementable vector-distributive
scalar-distributive scalar-associative scalar-unital
non empty
ModuleStr over K for W be Subspace of V1, f be Function of V1,V1, fW be
Function of W,W st fW=f|W holds (f|^n)|W=fW|^n;
registration
let K,V1;
let f be linear-transformation of V1,V1;
let n be Nat;
cluster f |^ n -> homogeneous additive;
end;
theorem :: VECTSP11:23
(f|^i).v1 = 0.V1 implies (f|^(i+j)).v1=0.V1;
begin :: Generalized Eigenspace of a Linear Transformation
definition
let K,V1,f;
func UnionKers f -> strict Subspace of V1 means
:: VECTSP11:def 5
the carrier of it = { v where v is Vector of V1:ex n st (f|^n).v = 0.V1};
end;
theorem :: VECTSP11:24
v1 in UnionKers f iff ex n st (f|^n).v1 = 0.V1;
theorem :: VECTSP11:25
ker (f|^i) is Subspace of UnionKers f;
theorem :: VECTSP11:26
ker (f|^i) is Subspace of ker (f|^(i+j));
theorem :: VECTSP11:27
for V be finite-dimensional VectSp of K,f be linear-transformation of
V,V ex n st UnionKers f = ker (f|^n);
theorem :: VECTSP11:28
f|ker (f|^n) is linear-transformation of ker (f|^n),ker (f|^n);
theorem :: VECTSP11:29
f|ker ((f+L*id V1)|^n) is linear-transformation of ker ((f+L*id V1)|^n
), ker ((f+L*id V1)|^n);
theorem :: VECTSP11:30
f|(UnionKers f) is linear-transformation of UnionKers f, UnionKers f;
theorem :: VECTSP11:31
f|(UnionKers (f+L*id V1)) is linear-transformation of UnionKers
(f+L*id V1), UnionKers (f+L*id V1);
theorem :: VECTSP11:32
f|im (f|^n) is linear-transformation of im (f|^n),im (f|^n);
theorem :: VECTSP11:33
f|im ((f+L*id V1)|^n) is linear-transformation of im ((f+L*id V1)|^n),
im ((f+L*id V1)|^n);
theorem :: VECTSP11:34
UnionKers f = ker (f|^n) implies ker (f|^n) /\ im (f|^n) = (0). V1;
theorem :: VECTSP11:35
for V be finite-dimensional VectSp of K, f be linear-transformation of
V,V,n st UnionKers f = ker (f|^n) holds V is_the_direct_sum_of ker (f|^n),im (f
|^n);
theorem :: VECTSP11:36
for I be Linear_Compl of UnionKers f holds f|I is one-to-one;
theorem :: VECTSP11:37
for I be Linear_Compl of UnionKers (f+(-L)*id V1), fI be
linear-transformation of I,I st fI = f|I for v be Vector of I st fI.v = L * v
holds v = 0.V1;
theorem :: VECTSP11:38
n >= 1 implies ex h be linear-transformation of V1,V1 st (f + L*
id V1) |^ n = f * h + ((L*id V1) |^ n) & for i holds (f |^ i) * h = h * (f |^ i
);
theorem :: VECTSP11:39
for L1,L2 be Scalar of K st f is with_eigenvalues & L1 <> L2 & L2 is
eigenvalue of f for I be Linear_Compl of UnionKers (f+(-L1)*id V1), fI be
linear-transformation of I,I st fI = f|I holds fI is with_eigenvalues & not L1
is eigenvalue of fI & L2 is eigenvalue of fI & UnionKers (f+(-L2)*id V1) is
Subspace of I;
:: Main Lemmas for Expansion of Matrices of Nilpotent Linear Transformations
theorem :: VECTSP11:40
for U be finite Subset of V1 st U is linearly-independent for u be
Vector of V1 st u in U for L be Linear_Combination of U\{u} holds card U=card (
U\{u}\/{u+Sum(L)}) & U\{u}\/{u+Sum(L)} is linearly-independent;
theorem :: VECTSP11:41
for A be Subset of V1 for L be Linear_Combination of V2, f be
linear-transformation of V1,V2 st Carrier L c= f.:A ex M be Linear_Combination
of A st f.(Sum M)=Sum L;
theorem :: VECTSP11:42
for f be linear-transformation of V1,V2 for A be Subset of V1,B be
Subset of V2 st f.:A = B holds f.:(the carrier of Lin A) = the carrier of Lin B
;
theorem :: VECTSP11:43
for L be Linear_Combination of V1, F be FinSequence of V1, f be
linear-transformation of V1,V2 st f|(Carrier L /\ rng F) is one-to-one & rng F
c= Carrier L ex Lf be Linear_Combination of V2 st Carrier Lf = f.:(Carrier L /\
rng F) & f*(L(#)F) = Lf(#)(f*F) & for v1 st v1 in Carrier L /\ rng F holds L.v1
=Lf.(f.v1);
theorem :: VECTSP11:44
for A,B be Subset of V1 for L be Linear_Combination of V1 st Carrier L
c= A\/B & Sum L = 0.V1 for f be additive homogeneous Function of V1,V2
st f|B is one-to-one &
f.:B is linearly-independent Subset of V2 & f.:A c= {0.V2} holds Carrier L c= A
;