login  home  contents  what's new  discussion  bug reports     help  links  subscribe  changes  refresh  edit

Edit detail for SandBoxHermitianIsomorphisms4 revision 1 of 2

1 2
Editor: Bill Page
Time: 2011/07/03 17:36:16 GMT-7
Note:

changed:
-
EigenVectors and Diagonalization

\begin{axiom}
p1:ℂ:=complex(ℜp1,𝔍p1)
q1:ℂ:=complex(ℜq1,𝔍q1)
p2:ℂ:=complex(ℜp2,𝔍p2)
q2:ℂ:=complex(ℜq2,𝔍q2)
ρ:Matrix ℂ := matrix [[p1,q1],[p2,q2]]
\end{axiom}
\begin{axiom}
s1:=solve(imag determinant ρ,ℜp2)
s2:=solve(eval(imag trace ρ,s1),𝔍p1)
s3:=solve(eval(eval(imag trace(ρ*ρ),s1), s2),ℜp1)
eval(eval(imag trace (ρ*ρ),s1),s2)
\end{axiom}
\begin{axiom}
C:=eval(eval(characteristicPolynomial ρ,s1),s2)
C0:=zerosOf(C)
#C0
imag(C0.1)
imag(C0.2)
\end{axiom}

Given an operator $ρ \in End V$, one must find the tensor $H=0$
for unknown manifold of hermitian isomorphisms $h$.
\begin{axiom}
h:Matrix ℂ:=matrix [[ℜa,complex(ℜb,𝔍b)],[complex(ℜb,-𝔍b),ℜe]]
test(h = htranspose h)
H:=htranspose(ρ)*h-h*ρ
\end{axiom}

We wish to find expressions for $h$ in terms of the components of
$ρ$. To do this we will determine how the components of $H$ depend
on the components of $h$.
\begin{axiom}
J:=jacobian(concat( map(x+->[real x, imag x], concat(H::List List ?)) ),
     [ℜa,ℜb,𝔍b,ℜe]::List Symbol)
\end{axiom}
The null space (kernel) of the Jacobian
\begin{axiom}
N:=nullSpace(map(x+->eval(eval(x,s1),s2),J))
\end{axiom}
gives the general solution to the problem.
\begin{axiom}
s4:=map((x,y)+->x=y,[ℜa,ℜb,𝔍b,ℜe],𝔍b*N.1+ℜe*N.2)
H0:=map(x+->eval(eval(eval(x,s1),s2),s4),H)
h0:=map(x+->eval(eval(eval(x,s1),s2),s4),h)
\end{axiom}

\begin{axiom}
ρ0:=map(x+->eval(eval(x,s1),s2),ρ)
E:=eigenvalues(ρ0)
E0:=eigenvector(E.1,ρ0)
E1:=map(x+->eval(x,%D=C0.1),E0.1)
E2:=map(x+->eval(x,%D=C0.2),E0.1)
test(ρ0*E1=C0(1)*E1)
test(ρ0*E2=C0(2)*E2)
EE := horizConcat(E1,E2)
EI := inverse EE
ρ1:=EI*ρ0*EE
h1:=map(x+->eval(eval(x,s1),s2),h)
hh:=EI*h1*EE
htranspose(h)==map(x+->conjugate(x::Complex Expression Integer),transpose h)
H1:=htranspose(ρ1)*hh-hh*ρ1
J1:=jacobian(concat( map(x+->[real x, imag x], concat(H1::List List ?)) ),
     [ℜa,ℜb,𝔍b,ℜe]::List Symbol)
N1:=nullSpace(map(x+->eval(eval(x,s1),s2),J1))
s5:=map((x,y)+->x=y,[ℜa,ℜb,𝔍b,ℜe],t*N1.1)
map(x+->eval(x,s5),H1)
\end{axiom}

\begin{axiom}
h2:=EE*map(x+->eval(x,s5),hh)*EI
H0:=map(x+->eval(eval(eval(x,s1),s2),s5),H)
\end{axiom}


EigenVectors? and Diagonalization

axiom
p1:ℂ:=complex(ℜp1,𝔍p1)

\label{eq1}\begin{array}{@{}l}
\displaystyle
� � p 1 +{
\begin{array}{@{}l}
\displaystyle
�� � p 1 \  \cdot 
\
\
\displaystyle
i 
(1)
Type: Complex(Polynomial(Integer))
axiom
q1:ℂ:=complex(ℜq1,𝔍q1)

\label{eq2}\begin{array}{@{}l}
\displaystyle
� � q 1 +{
\begin{array}{@{}l}
\displaystyle
�� � q 1 \  \cdot 
\
\
\displaystyle
i 
(2)
Type: Complex(Polynomial(Integer))
axiom
p2:ℂ:=complex(ℜp2,𝔍p2)

\label{eq3}\begin{array}{@{}l}
\displaystyle
� � p 2 +{
\begin{array}{@{}l}
\displaystyle
�� � p 2 \  \cdot 
\
\
\displaystyle
i 
(3)
Type: Complex(Polynomial(Integer))
axiom
q2:ℂ:=complex(ℜq2,𝔍q2)

\label{eq4}\begin{array}{@{}l}
\displaystyle
� � q 2 +{
\begin{array}{@{}l}
\displaystyle
�� � q 2 \  \cdot 
\
\
\displaystyle
i 
(4)
Type: Complex(Polynomial(Integer))
axiom
ρ:Matrix ℂ := matrix [[p1,q1],[p2,q2]]
Matrix(ℂ) is not a valid type.

axiom
s1:=solve(imag determinant ρ,ℜp2)
There are 3 exposed and 1 unexposed library operations named determinant having 1 argument(s) but none was determined to be applicable. Use HyperDoc Browse, or issue )display op determinant to learn more about the available operations. Perhaps package-calling the operation or using coercions on the arguments will allow you to apply the operation.
Cannot find a definition or applicable library operation named determinant with argument type(s) Variable(ρ)
Perhaps you should use "@" to indicate the required return type, or "$" to specify which version of the function you need. s2:=solve(eval(imag trace ρ,s1),𝔍p1)
There are 3 exposed and 0 unexposed library operations named trace having 1 argument(s) but none was determined to be applicable. Use HyperDoc Browse, or issue )display op trace to learn more about the available operations. Perhaps package-calling the operation or using coercions on the arguments will allow you to apply the operation.
Cannot find a definition or applicable library operation named trace with argument type(s) Variable(ρ)
Perhaps you should use "@" to indicate the required return type, or "$" to specify which version of the function you need. s3:=solve(eval(eval(imag trace(ρ*ρ),s1), s2),ℜp1)
There are 3 exposed and 0 unexposed library operations named trace having 1 argument(s) but none was determined to be applicable. Use HyperDoc Browse, or issue )display op trace to learn more about the available operations. Perhaps package-calling the operation or using coercions on the arguments will allow you to apply the operation.
Cannot find a definition or applicable library operation named trace with argument type(s) Polynomial(Integer)
Perhaps you should use "@" to indicate the required return type, or "$" to specify which version of the function you need. eval(eval(imag trace (ρ*ρ),s1),s2)
There are 3 exposed and 0 unexposed library operations named trace having 1 argument(s) but none was determined to be applicable. Use HyperDoc Browse, or issue )display op trace to learn more about the available operations. Perhaps package-calling the operation or using coercions on the arguments will allow you to apply the operation.
Cannot find a definition or applicable library operation named trace with argument type(s) Polynomial(Integer)
Perhaps you should use "@" to indicate the required return type, or "$" to specify which version of the function you need.

axiom
C:=eval(eval(characteristicPolynomial ρ,s1),s2)
There are 4 exposed and 1 unexposed library operations named characteristicPolynomial having 1 argument(s) but none was determined to be applicable. Use HyperDoc Browse, or issue )display op characteristicPolynomial to learn more about the available operations. Perhaps package-calling the operation or using coercions on the arguments will allow you to apply the operation.
Cannot find a definition or applicable library operation named characteristicPolynomial with argument type(s) Variable(ρ)
Perhaps you should use "@" to indicate the required return type, or "$" to specify which version of the function you need. C0:=zerosOf(C)

\label{eq5}\left[ 0 \right](5)
Type: List(AlgebraicNumber?)
axiom
#C0

\label{eq6}1(6)
Type: PositiveInteger?
axiom
imag(C0.1)

\label{eq7}0(7)
Type: Expression(Integer)
axiom
imag(C0.2)
>> Error detected within library code: index out of range

Given an operator ρ \in End V, one must find the tensor H=0 for unknown manifold of hermitian isomorphisms h.

axiom
h:Matrix ℂ:=matrix [[ℜa,complex(ℜb,𝔍b)],[complex(ℜb,-𝔍b),ℜe]]
Matrix(ℂ) is not a valid type. test(h = htranspose h)
There are no library operations named htranspose Use HyperDoc Browse or issue )what op htranspose to learn if there is any operation containing " htranspose " in its name.
Cannot find a definition or applicable library operation named htranspose with argument type(s) Variable(h)
Perhaps you should use "@" to indicate the required return type, or "$" to specify which version of the function you need. H:=htranspose(ρ)*h-h*ρ
There are no library operations named htranspose Use HyperDoc Browse or issue )what op htranspose to learn if there is any operation containing " htranspose " in its name.
Cannot find a definition or applicable library operation named htranspose with argument type(s) Variable(ρ)
Perhaps you should use "@" to indicate the required return type, or "$" to specify which version of the function you need.

We wish to find expressions for h in terms of the components of ρ. To do this we will determine how the components of H depend on the components of h.

axiom
J:=jacobian(concat( map(x+->[real x, imag x], concat(H::List List ?)) ),
     [ℜa,ℜb,𝔍b,ℜe]::List Symbol)
Cannot convert from type Variable(H) to List(List(?)) for value H

The null space (kernel) of the Jacobian

axiom
N:=nullSpace(map(x+->eval(eval(x,s1),s2),J))
There are 3 exposed and 3 unexposed library operations named nullSpace having 1 argument(s) but none was determined to be applicable. Use HyperDoc Browse, or issue )display op nullSpace to learn more about the available operations. Perhaps package-calling the operation or using coercions on the arguments will allow you to apply the operation.
Cannot find a definition or applicable library operation named nullSpace with argument type(s) Polynomial(Integer)
Perhaps you should use "@" to indicate the required return type, or "$" to specify which version of the function you need.

gives the general solution to the problem.

axiom
s4:=map((x,y)+->x=y,[ℜa,ℜb,𝔍b,ℜe],𝔍b*N.1+ℜe*N.2)
There are no library operations named N Use HyperDoc Browse or issue )what op N to learn if there is any operation containing " N " in its name.
Cannot find a definition or applicable library operation named N with argument type(s) PositiveInteger
Perhaps you should use "@" to indicate the required return type, or "$" to specify which version of the function you need. H0:=map(x+->eval(eval(eval(x,s1),s2),s4),H)

\label{eq8}H(8)
Type: Polynomial(Integer)
axiom
h0:=map(x+->eval(eval(eval(x,s1),s2),s4),h)

\label{eq9}h(9)
Type: Polynomial(Integer)

axiom
ρ0:=map(x+->eval(eval(x,s1),s2),ρ)

\label{eq10}��(10)
Type: Polynomial(Integer)
axiom
E:=eigenvalues(ρ0)
There are 1 exposed and 0 unexposed library operations named eigenvalues having 1 argument(s) but none was determined to be applicable. Use HyperDoc Browse, or issue )display op eigenvalues to learn more about the available operations. Perhaps package-calling the operation or using coercions on the arguments will allow you to apply the operation.
Cannot find a definition or applicable library operation named eigenvalues with argument type(s) Polynomial(Integer)
Perhaps you should use "@" to indicate the required return type, or "$" to specify which version of the function you need. E0:=eigenvector(E.1,ρ0)
There are no library operations named E Use HyperDoc Browse or issue )what op E to learn if there is any operation containing " E " in its name.
Cannot find a definition or applicable library operation named E with argument type(s) PositiveInteger
Perhaps you should use "@" to indicate the required return type, or "$" to specify which version of the function you need. E1:=map(x+->eval(x,%D=C0.1),E0.1)
There are no library operations named E0 Use HyperDoc Browse or issue )what op E0 to learn if there is any operation containing " E0 " in its name.
Cannot find a definition or applicable library operation named E0 with argument type(s) PositiveInteger
Perhaps you should use "@" to indicate the required return type, or "$" to specify which version of the function you need. E2:=map(x+->eval(x,%D=C0.2),E0.1)
There are no library operations named E0 Use HyperDoc Browse or issue )what op E0 to learn if there is any operation containing " E0 " in its name.
Cannot find a definition or applicable library operation named E0 with argument type(s) PositiveInteger
Perhaps you should use "@" to indicate the required return type, or "$" to specify which version of the function you need. test(ρ0*E1=C0(1)*E1)

\label{eq11} \mbox{\rm false} (11)
Type: Boolean
axiom
test(ρ0*E2=C0(2)*E2)
>> Error detected within library code: index out of range

axiom
h2:=EE*map(x+->eval(x,s5),hh)*EI

\label{eq12}EE \  EI \  hh(12)
Type: Polynomial(Integer)
axiom
H0:=map(x+->eval(eval(eval(x,s1),s2),s5),H)

\label{eq13}H(13)
Type: Polynomial(Integer)