Appendix F Direct Sum of Vector Spaces

Appendix F
Direct Sum of Vector Spaces
Let U and V be vector spaces with dim (U ) = n and dim (V ) = m. Additionally, let the sets of
vectors {ui } and {vj } be basis sets for U and V respectively. The direct sum, U ⊕ V , is defined
to be
U ⊕ V ≡ {(u, v) | u ∈ U, v ∈ V } ,
(F.1)
where vector addition and scalar multiplication are defined by for all (a1 , b1 ) , (a2 , b2 ) ∈ U ⊕ V
and α ∈ �
(a1 , b1 ) + (a2 , b2 ) ≡ (a1 + a2 , b1 + b2 )
α (a1 , b1 ) ≡ (αa1 , αb1 ) .
(F.2)
(F.3)
Now define the maps iU : U → U ⊕ V and iV : V → U ⊕ V by
iU (u) ≡ (u, 0)
iV (v) ≡ (0, v) .
(F.4)
(F.5)
Thus (u, v) = iU (u) + iV (v) and the set {iU (ui ) , iV (vj ) | 0 < i ≤ n, 0 < j ≤ m} form a basis
for U ⊕ V so that if x ∈ U ⊕ V then (αi , β j ∈ �) and using the Einstein summation convention
x = αi iU (ui ) + β j iV (vj ) .
(F.6)
If from context we known that x ∈ U ⊕ V and we are expanding x in terms of a basis of U ⊕ V
we will write as a notational convenience ui for iU (ui ) and vi for iV (vi ) so that we may write
x = αi ui + β j vj .
197
(F.7)
198
APPENDIX F. DIRECT SUM OF VECTOR SPACES
Also for notational convenience denote for any x ∈ U ⊕ V , xU = iU (x) and xV = iV (x).
Likewise we define the mappings pU : U ⊕ V → U and pV : U ⊕ V → V by
pU ((u, v)) ≡ u
pV ((u, v)) ≡ v.
(F.8)
(F.9)
For notational convenience if pV ((u, v)) = 0 we write u = pU ((u, v)) and if pU ((u, v)) = 0 we
write v = pV ((u, v)). We always make the identifications
u ↔ (u, 0)
v ↔ (0, v) .
Which one to use will be clear from context or will be explicitly identified.
One final notational convenience is that for (u, v) ∈ U ⊕ V we make the equivalence
(u, v) ↔ u + v.
Appendix G
sympy/galgebra evaluation of GL (n, �)
structure constants
The structure constants of GL (n, �) can be calculated using the sympy python computer algebra
system wiht the latest galgebra modules (https://github.com/brombo/sympy). The python
program used for the calculation is shown below:
#Li e
from
from
from
from
Algebras
sympy import symbols
sympy . g a l g e b r a . ga import Ga
sympy . g a l g e b r a . mv import Com
sympy . g a l g e b r a . p r i n t e r import Format , xpdf
#General L i near Group E g e n e r a t o r s
def E( i , j ) :
global e , eb
B = e [ i ] ∗ e [ j ] − eb [ i ] ∗ eb [ j ]
Bstr = ’ E { ’ + i + j + ’ } ’
print ’%’ + B s t r + ’ = ’ ,B
return Bstr , B
#General L i near Group F g e n e r a t o r s
def F( i , j ) :
global e , eb
B = e [ i ] ∗ eb [ j ] − eb [ i ] ∗ e [ j ]
199
200APPENDIX G. SYMPY/GALGEBRA EVALUATION OF GL (N, �) STRUCTURE CONSTANTS
Bstr = ’ F { ’ + i + j + ’ } ’
print ’%’ + B s t r + ’ = ’ ,B
return Bstr , B
#General L inear Group K g e n e r a t o r s
def K( i ) :
global e , eb
B = e [ i ] ∗ eb [ i ]
Bstr = ’K { ’ + i + ’ } ’
print ’%’ + B s t r + ’ = ’ ,B
return Bstr , B
#P r i n t Commutator
def ComP(A, B ) :
AxB = Com(A [ 1 ] , B [ 1 ] )
AxBstr = ’%’ + A [ 0 ] + r ’ \ t i m e s ’ + B [ 0 ] + ’ = ’
print AxBstr , AxB
return
Format ( )
( g l g , e i , e j , em , en , e b i , ebj , ebm , ebn ) = Ga . b u i l d ( r ’ e i e j e k e l \ bar { e } i \ bar
e = { ’ i ’ : e i , ’ j ’ : e j , ’ k ’ : em , ’ l ’ : en }
eb = { ’ i ’ : e b i , ’ j ’ : ebj , ’ k ’ : ebm , ’ l ’ : ebn }
print r ’#\ c e n t e r l i n e { General L i n e a r Group o f Order $n$ \ n e w l i n e } ’
print r ’#L i e Algebra G e n e r a t o r s : $1 \ l e i < j \ l e n$ and $1 \ l e i < l \ l e n$ ’
#C a l c u l a t e L ie
E i j = E( ’ i ’ , ’ j
F i j = F( ’ i ’ , ’ j
Ki = K( ’ i ’ )
E i l = E( ’ i ’ , ’ l
F i l = F( ’ i ’ , ’ l
Algebra Generators
’)
’)
’)
’)
print r ’#Non Zero Commutators ’
201
#C a l c u l a t e and P r i n t Non−Zero Generator Commutators
ComP( E i j , F i j )
ComP( E i j , Ki )
ComP( F i j , Ki )
ComP( E i j , E i l )
ComP( F i j , F i l )
ComP( F i j , E i l )
xpdf ( paper= ’ l e t t e r ’ , pt= ’ 12 pt ’ , debug=True , prog=True )
Only those commutators that share one or two indices are calculated (all others are zero). The
LATEX output of the program follows:
General Linear Group of Order n
Lie Algebra Generators: 1 ≤ i < j ≤ n and 1 ≤ i < l ≤ n
Eij = ei ∧ ej − ēi ∧ ēj
Fij = ei ∧ ēj + ej ∧ ēi
Ki = ei ∧ ēi
Eil = ei ∧ el − ēi ∧ ēl
Fil = ei ∧ ēl + el ∧ ēi
Non Zero Commutators
Eij × Fij = 2ei ∧ ēi − 2ej ∧ ēj
Eij × Ki = −ei ∧ ēj − ej ∧ ēi
Fij × Ki = −ei ∧ ej + ēi ∧ ēj
Eij × Eil = −ej ∧ el + ēj ∧ ēl
Fij × Fil = ej ∧ el − ēj ∧ ēl
Fij × Eil = ej ∧ ēl + el ∧ ēj
The program does not completely determine the structure constants since the galgebra module
cannot currently solve a bivector equation. One must inspect the calculated commutator to see
202APPENDIX G. SYMPY/GALGEBRA EVALUATION OF GL (N, �) STRUCTURE CONSTANTS
what the linear expansion of the commuatator is in terms of the Lie algebra generators. For this
case the answer is:
Eij × Fij
Eij × Ki
Fij × Ki
Eij × Eil
Fij × Fil
Fij × Eil
= 2 (Ki − Kj )
= −Fij
= −Eij
= −Ejl
= Ejl
= Fjl .
(G.1)
(G.2)
(G.3)
(G.4)
(G.5)
(G.6)