In[]:=
QuantumToMultiwaySystem[<|"Operator"{{1,1},{1,-1}},"Basis"IdentityMatrix[2]|>]
Out[]=
{{1, 0}{1, 0},{1, 0}{0, 1},{0, 1}{1, 0},{0, 1}{0, -1},{0, -1}{0, 1},{-1, 0}{-1, 0},{-1, 0}{0, -1},{0, -1}{-1, 0},{I, 0}{I, 0},{I, 0}{0, I},{0, I}{I, 0},{0, I}{0, -I},{0, -I}{0, I},{-I, 0}{-I, 0},{-I, 0}{0, -I},{0, -I}{-I, 0}}
In[]:=
InputForm[%]
Out[]//InputForm=
{{1, 0} -> {1, 0}, {1, 0} -> {0, 1}, {0, 1} -> {1, 0}, {0, 1} -> {0, -1},
{0, -1} -> {0, 1}, {-1, 0} -> {-1, 0}, {-1, 0} -> {0, -1}, {0, -1} -> {-1, 0},
{I, 0} -> {I, 0}, {I, 0} -> {0, I}, {0, I} -> {I, 0}, {0, I} -> {0, -I},
{0, -I} -> {0, I}, {-I, 0} -> {-I, 0}, {-I, 0} -> {0, -I}, {0, -I} -> {-I, 0}}
{0, -1} -> {0, 1}, {-1, 0} -> {-1, 0}, {-1, 0} -> {0, -1}, {0, -1} -> {-1, 0},
{I, 0} -> {I, 0}, {I, 0} -> {0, I}, {0, I} -> {I, 0}, {0, I} -> {0, -I},
{0, -I} -> {0, I}, {-I, 0} -> {-I, 0}, {-I, 0} -> {0, -I}, {0, -I} -> {-I, 0}}
In[]:=
QuantumToMultiwaySystem[<|"Operator"{{1,1},{1,-1}},"Basis"IdentityMatrix[2]|>,{{1,0},{0,1},{0,1}},2,"EvolutionGraph","IncludeStatePathWeights"True,VertexLabels"VertexWeight"]
Out[]=
In[]:=
graph=QuantumToMultiwaySystem[<|"Operator"{{1,1},{1,-1}},"Basis"IdentityMatrix[2]|>,{{1,0}},2,"EvolutionGraphUnmerged"]
Out[]=
In[]:=
TreePlot[graph,Center]
Out[]=
In[]:=
MatrixPower[{{1,1},{1,-1}},2].({1,0}+2*{0,1})
Out[]=
{2,4}
In[]:=
QuantumToMultiwaySystem[<|"Operator"{{1,1,1,1},{1,I,-1,-I},{1,-1,1,-1},{1,-I,-1,I}},"Basis"IdentityMatrix[4]|>]
Out[]=
In[]:=
graph=QuantumToMultiwaySystem[<|"Operator"{{1,1,1,1},{1,I,-1,-I},{1,-1,1,-1},{1,-I,-1,I}},"Basis"IdentityMatrix[4]|>,{{1,0,0,0},{I,0,0,0},{0,0,0,1}},1,"EvolutionGraph","IncludeStatePathWeights"True,VertexLabels"VertexWeight"]
Out[]=
In[]:=
{{1,1,1,1},{1,I,-1,-I},{1,-1,1,-1},{1,-I,-1,I}}.{1+,0,0,1}
Out[]=
{2+,1,,1+2}
In[]:=
Total[{{1,0,0,0},{I,0,0,0},{0,0,0,1}}]
Out[]=
{1+,0,0,1}
In[]:=
finalState=Last/@Select[VertexList[graph],First[#]1&]
Out[]=
{{0, 0, 0, 1},{0, 0, 0, I},{0, 0, -1, 0},{0, 0, 1, 0},{0, 0, I, 0},{0, 1, 0, 0},{0, -I, 0, 0},{0, I, 0, 0},{1, 0, 0, 0},{I, 0, 0, 0}}
In[]:=
weightedStates=Select[Thread[(Last/@VertexList[graph])->PropertyValue[graph,VertexWeight]],MemberQ[finalState,First[#]]&]
Out[]=
{{1, 0, 0, 0}1,{0, 0, 0, 1}1,{0, 0, 0, 1}1,{0, 0, 0, I}2,{I, 0, 0, 0}1,{0, 0, -1, 0}1,{0, 0, 1, 0}1,{0, 0, I, 0}1,{0, 1, 0, 0}1,{0, -I, 0, 0}1,{0, I, 0, 0}1,{1, 0, 0, 0}2,{I, 0, 0, 0}1}
In[]:=
(ToExpression[First[#]]*Last[#])&/@weightedStates
Out[]=
{{1,0,0,0},{0,0,0,1},{0,0,0,1},{0,0,0,2},{,0,0,0},{0,0,-1,0},{0,0,1,0},{0,0,,0},{0,1,0,0},{0,-,0,0},{0,,0,0},{2,0,0,0},{,0,0,0}}
In[]:=
Total[%]
Out[]=
{3+2,1,,2+2}
In[]:=
Fourier[{1+,0,0,1}]
Out[]=
{1.+0.5,0.5+0.,0.+0.5,0.5+1.}
In[]:=
PropertyValue[graph,VertexWeight]
Out[]=
{1,1,1,1,1,3,1,1,2,2,1,1,2,2,1,3,1}
In[]:=
Fourier[{1,0,0,0}]*2
Out[]=
{1.,1.,1.,1.}
In[]:=
MultiwayToQuantumSystem[{"AA""AB","AA""BA"}]
Out[]=
Operator{{0,0,0},{1,0,0},{1,0,0}},Basis{AA,AB,BA}
In[]:=
{{0,0,0},{1,0,0},{1,0,0}}.{1,0,0}
Out[]=
{0,1,1}
In[]:=
graph=QuantumToMultiwaySystem[<|"Operator"{{1,1,1,1},{1,I,-1,-I},{1,-1,1,-1},{1,-I,-1,I}},"Basis"IdentityMatrix[4]|>,{{1,0,0,0},{I,0,0,0},{0,0,0,1}},3,"EvolutionGraph","IncludeStatePathWeights"True,VertexLabels"VertexWeight"]
Out[]=
Fock space is represented by a growing (string) multiway system?