130A Quantum Physics

Part 1. Matrix Mechanics

Introduction

Everything Is a Vector

What Is Quantum Mechanics?

Describe the state of the system: a set of variables encoding the relevant information of the system.

Predict (i) the observables (measurement outcomes) and (ii) their dynamics (time evolution).

How to Encode Information

State variables may not have “physical meaning”.

Choice of state variables may not be unique. (There can be more than one way to describe a system.)

Block[{dat},
dat=ColorNegate/@RandomChoice[#,3]&/@GroupBy[ResourceData["MNIST","TestData"],Last->First];Grid[Partition[RandomSample@Flatten@Values@dat,6]]]

Image file: brightness of each pixel. - describe a state by all possible observables.

Human: digits 0, 1, 2, …, 9. - describe a state by a name.

Machine learning: feature vectors in the latent space. - describe a state by a vector in a vector space. [This is the closest to what we do in quantum mechanics.]

Block[{dat,imgs,pts},
dat=ColorNegate/@RandomChoice[#,3]&/@GroupBy[ResourceData["MNIST","TestData"],Last->First];
imgs=Flatten@Values@dat;
SeedRandom[449];
pts=Flatten[Table[#+ϵ,{ϵ,0.2RandomVariate[NormalDistribution[],{3,2}]}]&/@RandomVariate[NormalDistribution[],{10,2}],1];
pts=pts/Max[Norm/@pts];
Graphics[{{Arrow[{#,0}&/@{-1,1.2}],Text["feature 1",{1.2,0},{1,1}],Arrow[{0,#}&/@{-1,1.2}],Text["feature 2",{0,1.2},{1,-1},{0,1}]},Inset[#1,#2,{0,0},0.15]&@@@Thread[{imgs,pts}]},PlotRange->All,ImageSize->180]]

The vector components are the state variables, and they may not need to have physical meanings. [They are also called probability amplitudes or wave amplitudes, but I don’t explain what is “waving” here.]

While the state vector (vector-based) approach is widely used, quantum mechanics can also be formulated using other frameworks.

Examples: density matrix (matrix-based), classical shadow (probability-based) [], quantum bootstrap (observable-based) [].

However, the state vector description remains a precise and efficient method for representing pure states of quantum systems. Therefore, we will begin our discussion with state vectors.

The information encoded in the state vector, known as quantum information, forms the foundation for quantum computation and communication.

Hsin-Yuan Huang, Richard Kueng, John Preskill. arXiv:2002.08953.

Xizhi Han, Sean A. Hartnoll, Jorrit Kruthoff. arXiv:2004.10212.

What Is a Vector?

Geometrical interpretation: a vector (in high-school physics) is an arrow, used to represent a physical quantity that has both magnitude and direction.

Example: the displacement vector x in a two-dimensional coordinate space

DynamicModule[{x={0.6,0.8}},
Column[{LocatorPane[Dynamic[x],Graphics[{{AbsoluteThickness[1],LightGray,Dashed,Line[Dynamic[{{1,0}x,x}]],Line[Dynamic[{{0,1}x,x}]]},{Arrowheads[{{0.01,1,Graphics[Line[Offset/@{{-4,3},{0,0},{-4,-3}}]]}}],
AbsoluteThickness[1],Arrow[{#,0}&/@{-1,1}],Arrow[{0,#}&/@{-1,1}],Text["\!\(x\_1\)",Dynamic[{1,0}x],{0,1}],Text["\!\(x\_2\)",Dynamic[{0,1}x],{1,0}],Text["0",{0,0},{1.5,1}]},{Arrowheads[0.1],Arrow[{{0,0},Dynamic[x]}]}},PlotRange->1,PlotRangePadding->0.02,ImageSize->120],Appearance->None],Style[Dynamic[StringTemplate["\!\(x=(x\_1,x\_2)=(`1`,`2`)\)"]@@x],"InlineFormula"]}]]

Computational interpretation: a vector (in computer science) is an array of numbers, serves as a data structure to store and represent information.

Example 1: Color vector (the red/green/blue values form a vector)

.rgb = [1., 0.5, 0.25] # [r, g, b]
.rgb = [0.25, 0.5, 1.]

Example 2: Word vector (in natural language processing), vector representations of words that encode the meaning and semantics of the words.

Block[{a={-0.2,0.1},b={-0.2,0.5},c={0.6,0.2}},Graphics[{{Arrowheads[{{0.01,1,Graphics[Line[Offset/@{{-4,3},{0,0},{-4,-3}}]]}}],
AbsoluteThickness[1],Arrow[{#,0}&/@{0,1}],Arrow[{0,#}&/@{0,1}],Text["\!\(feature\_1\)",{1,0},{1,1}],Text["\!\(feature\_2\)",{0,1},{1,-1},{0,1}]},{#3,Arrowheads[{0.08}],Arrow[{{0,0},#1}],Text[#2,#1,{-1,-0.5}]}&@@@Thread[{{c,c+a,c+b,c+a+b},{"man","woman","king","queen"},{Blue,Red,Green,Orange}}],
{Arrowheads[{0.08}],LightGray,Arrow[{{c,c+a},{c+b,c+a+b}}]}},ImageSize->140]]

Use semantic relationship by vector arithmetic []:

(Ket[king])-(Ket[man])+(Ket[woman])=(Ket[queen]).

The notion of state vector in quantum mechanics is closer to the computational interpretation --- it is used to encode the state of a quantum system, or to store the data of quantum information. There is no direct physical meaning associated with its amplitude and direction.

Real and complex vectors:

Real vector: an array of real numbers --- the space of n-component real vectors is denoted as (ℝ^n)

x=((Subscript[x, 1]),(Subscript[x, 2]),…,(Subscript[x, n]))∈(ℝ^n).

Complex vector: an array of complex numbers --- the space of n-component complex vectors is denoted as (ℂ^n)

z=((Subscript[z, 1]),(Subscript[z, 2]),…,(Subscript[z, n]))∈(ℂ^n).

They are just arrays of different data types. It has been shown [] that the formulation of quantum mechanics involving complex rather than real numbers is necessary to reproduce certain behavior of quantum entanglement observed in experiments.

Ekaterina Vylomova, Laura Rimell, Trevor Cohn, Timothy Baldwin. arXiv:1509.01692

Alessio Avella. Quantum Mechanics Must Be Complex. (2022)

Complex Algebra

Complex Number

x∈ℝ, y∈ℝ→z=x+i y∈ℂ.

1×1=1, 1×i=i×1=i, i×i=-1.

Addition:

Multiplication:

Complex conjugation:

Real and imaginary parts can be extracted from

Re z=(1/2)(z+(SuperStar[z]))=x,
Im z=(1/(2i))(z-(SuperStar[z]))=y.

Complex Number in Mathematica

3+1I

(3+I)(4+2I)

Conjugate[3+I]

Re[3+I]
Im[3+I]

Polar Complex Form

Graphics[{{AbsoluteThickness[1],Gray,Circle[{0,0},1],Line[{{0,0},{0.6,0.8}}],Dashed,Line[{{0.6,0},{0.6,0.8}}],Line[{{0,0.8},{0.6,0.8}}]},
{Arrowheads[0.08],Arrow[1.3{-#,#}]&/@{{1,0},{0,1}}},{AbsolutePointSize[6],Point[{0.6,0.8}]},{Circle[{0,0},0.2,{0,ArcTan[0.6,0.8]}],Text["\!\( z=x+I y\)",{0.6,0.8},{-1,-1}],Text["θ",{0.3,0.1}],Text["\!\(\[LeftBracketingBar]z\[RightBracketingBar]\)",{0.3,0.4},{0.5,-0.5}]},Text["\!\( x\)",{1.3,0},{-1,0}],Text["\!\( y\)",{0,1.3},{0,-1}]},ImageSize->{Automatic,140}]

|z| - complex modulus (or magnitude)

((|z|)^2)=(SuperStar[z])z=(x^2)+(y^2).

Note that ((|z|)^2)≥0, such that its (positive) square root |z| is defined.

θ - complex argument (or phase)

arg z =θ=Im ln z=arctan (y/x).

({{ , z, =, |z|(e^(i θ)),}, {(Overscript[=>, ×(e^(i ϕ))]), (e^(i ϕ))z, =, |z|(e^(i (θ+ϕ))).}})

Two rotations can be composed into a new rotation with the rotation angles add up,

Complex conjugation simply flips the phase angle (ϕ→-ϕ), representing an inverse rotation,

3Blue1Brown. (e^(i π)) in 3.14 minutes, using dynamics. (watch on YouTube)

Linear Algebra

Matrix and Vector

A matrix is a two-dimensional array of numbers,

M=(({{(Subscript[M, 11]), (Subscript[M, 12]), ⋯}, {(Subscript[M, 21]), (Subscript[M, 22]), ⋯}, {⋮, ⋮, ⋱}}))∈(ℂ^(m×n)).

Matrix elements (components) (Subscript[M, i j]) are labeled by a row index i=1,…,m and a column index j=,1,…,n. Each component itself is a number. Let us consider (Subscript[M, i j])∈ℂ to be general, such that the space of m-row n-column matrices will be denoted as (ℂ^(m×n)).

If m=n, the matrix is said to be a square matrix. In quantum mechanics, we will be mostly dealing with square matrices.

A vector can be viewed as a special case of a matrix.

Column vectors (multi-row single-column)

(Ket[v])=(({{(Subscript[v, 1])}, {(Subscript[v, 2])}, {⋮}}))∈(ℂ^(n×1))≅(ℂ^n).

Row vectors (single-row multi-column)

(Bra[v])=(({{(Subscript[v, 1]^( * )), (Subscript[v, 2]^( * )), ⋯}}))∈(ℂ^(1×n))≅(ℂ^n).

Column v.s. row: In terms of encoding information in n numbers, it doesn’t matter whether they are arranged in a column or a row. But when it comes to matrix-vector multiplication (to be discussed soon), there is a difference. So we use the (Ket[v]) and (Bra[v]) notation to distinguish them, instead of writing both as v.

Linear Superposition

∀A,B∈(ℂ^(m×n));α,β∈ℂ:
α A+β B∈(ℂ^(m×n))

Scalar multiplication:

A=(({{(Subscript[A, 11]), (Subscript[A, 12]), ⋯}, {(Subscript[A, 21]), (Subscript[A, 22]), ⋯}, {⋮, ⋮, ⋱}}))→α A=(({{α (Subscript[A, 11]), α (Subscript[A, 12]), ⋯}, {α (Subscript[A, 21]), α (Subscript[A, 22]), ⋯}, {⋮, ⋮, ⋱}})),

meaning that

Addition:

A=(({{(Subscript[A, 11]), (Subscript[A, 12]), ⋯}, {(Subscript[A, 21]), (Subscript[A, 22]), ⋯}, {⋮, ⋮, ⋱}})),B=(({{(Subscript[B, 11]), (Subscript[B, 12]), ⋯}, {(Subscript[B, 21]), (Subscript[B, 22]), ⋯}, {⋮, ⋮, ⋱}}))
→A+B=(({{(Subscript[A, 11])+(Subscript[B, 11]), (Subscript[A, 12])+(Subscript[B, 12]), ⋯}, {(Subscript[A, 21])+(Subscript[B, 21]), (Subscript[A, 22])+(Subscript[B, 22]), ⋯}, {⋮, ⋮, ⋱}})),

meaning that

Matrix Multiplication

(ℂ^(m×n))×(ℂ^(n×l))→(ℂ^(m×l)),

Explicitly, when we write

(({{(Subscript[A, 11]), (Subscript[A, 12]), ⋯}, {(Subscript[A, 21]), (Subscript[A, 22]), ⋯}, {⋮, ⋮, ⋱}}))(({{(Subscript[B, 11]), (Subscript[B, 12]), ⋯}, {(Subscript[B, 21]), (Subscript[B, 22]), ⋯}, {⋮, ⋮, ⋱}}))=(({{(Subscript[C, 11]), (Subscript[C, 12]), ⋯}, {(Subscript[C, 21]), (Subscript[C, 22]), ⋯}, {⋮, ⋮, ⋱}})),

we mean that

where k=1,…,n is the index to be contracted (to be summed over).

We can denote Eq. () on the matrix level simply as

A B=C.

Left-multiplication

(({{(Subscript[A, 11]), (Subscript[A, 12]), ⋯}, {(Subscript[A, 21]), (Subscript[A, 22]), ⋯}, {⋮, ⋮, ⋱}}))(({{(Subscript[u, 1])}, {(Subscript[u, 2])}, {⋮}}))=(({{(Subscript[v, 1])}, {(Subscript[v, 2])}, {⋮}}))
=>(Subscript[v, i])=(∑_j)(Subscript[A, i j])(Subscript[u, j]),

Right-multiplication

(({{(Subscript[u, 1]), (Subscript[u, 2]), ⋯}}))(({{(Subscript[A, 11]), (Subscript[A, 12]), ⋯}, {(Subscript[A, 21]), (Subscript[A, 22]), ⋯}, {⋮, ⋮, ⋱}}))=(({{(Subscript[v, 1]), (Subscript[v, 2]), ⋯}}))
=>(Subscript[v, j])=(∑_i)(Subscript[u, i])(Subscript[A, i j]),

Inner product

(({{(Subscript[u, 1]), (Subscript[u, 2]), ⋯}}))(({{(Subscript[v, 1])}, {(Subscript[v, 2])}, {⋮}}))=(∑_i)(Subscript[u, i])(Subscript[v, i])="a scalar (number)",

Outer product

(({{(Subscript[v, 1])}, {(Subscript[v, 2])}, {⋮}}))(({{(Subscript[u, 1]), (Subscript[u, 2]), ⋯}}))=(({{(Subscript[v, 1])(Subscript[u, 1]), (Subscript[v, 1])(Subscript[u, 2]), ⋯}, {(Subscript[v, 2])(Subscript[u, 1]), (Subscript[v, 2])(Subscript[u, 2]), ⋯}, {⋮, ⋮, ⋱}})).

Multiplying two row vectors or two column vectors are illegal (because dimensions do not match).

(({{(Subscript[u, 1]), (Subscript[u, 2]), ⋯}}))(({{(Subscript[u, 1]), (Subscript[u, 2]), ⋯}}))→No!
(({{(Subscript[v, 1])}, {(Subscript[v, 2])}, {⋮}}))(({{(Subscript[v, 1])}, {(Subscript[v, 2])}, {⋮}}))→No!

Identity Matrix and Kronecker Symbol

𝟙=(({{1, 0, 0, ⋯}, {0, 1, 0, ⋱}, {0, 0, 1, ⋱}, {⋮, ⋱, ⋱, ⋱}})).

The matrix element of an identity matrix can be expressed using the Kronecker delta symbol (Subscript[δ, i j]),

Identity matrix multiplying on any vector keeps the vector unchanged, i.e. ∀u∈(ℂ^n):u 𝟙=𝟙 u=u. This implies that the Kronecker delta has the following property

(∑_i)(Subscript[u, i])(Subscript[δ, i j])=(Subscript[u, j]),
(∑_j)(Subscript[δ, i j])(Subscript[u, j])=(Subscript[u, i]).

Rule of thumb: when (Subscript[δ, i j]) appears in a summation of i (or j), it annihilates with the summation symbol and replaces summation index i by j (or j by i) in the summand.

Matrix Algebra in Mathematica

A={{1,2,3},{4,5,6},{7,8,9}};
B={{9,8,7},{6,5,4},{3,2,1}};
A//MatrixForm
B//MatrixForm

Linear combine them simply as

A+B//MatrixForm
α A+β B//MatrixForm

Multiply them using “.” symbol, standing for the “dot product”.

A.B//MatrixForm

B.A//MatrixForm

Unlike multiplying two number (a b=b a, which is commutative), matrix multiplication is non-commutative, meaning that

A B≠B A,

for two square matrices A,B∈(ℂ^(n×n)) in general.

Matrix as a Machine

u(Overscript[→, M])v=M u.

Exchanging the two components in the vector by

M=(({{0, 1}, {1, 0}})).

DynamicModule[{u={0.6,0.8},M={{0,1},{1,0}}},
Column[{LocatorPane[Dynamic[u],Graphics[{{Arrowheads[{{0.01,1,Graphics[Line[Offset/@{{-4,3},{0,0},{-4,-3}}]]}}],
AbsoluteThickness[1],Arrow[{#,0}&/@{-1,1}],Arrow[{0,#}&/@{-1,1}],Text["0",{0,0},{1.5,1}]},{Arrowheads[0.1],Red,Arrow[{{0,0},Dynamic[u]}],Text["\!\( u\)",Dynamic[u],Dynamic[-0.5Normalize@u]]},{Arrowheads[0.1],Blue,Arrow[{{0,0},Dynamic[M.u]}],Text["\!\( v\)",Dynamic[M.u],Dynamic[-0.5Normalize@(M.u)]]}},PlotRange->1,PlotRangePadding->0.02,ImageSize->120],Appearance->None],Row[{Style[Dynamic[StringTemplate["\!\(u=(\*GridBox[{{`1`},{`2`}}])\)"]@@u],"DisplayFormula"],
Style[Dynamic[StringTemplate["\!\(v=(\*GridBox[{{`1`},{`2`}}])\)"]@@(M.u)],"DisplayFormula"]},Style["\!\(→\&M\)","InlineFormula"]]}]]

Reflecting the vector with respect to an axis by

M=(({{1, 0}, {0, -1}})).

DynamicModule[{u={0.6,0.8},M={{1,0},{0,-1}}},
Column[{LocatorPane[Dynamic[u],Graphics[{{Arrowheads[{{0.01,1,Graphics[Line[Offset/@{{-4,3},{0,0},{-4,-3}}]]}}],
AbsoluteThickness[1],Arrow[{#,0}&/@{-1,1}],Arrow[{0,#}&/@{-1,1}],Text["0",{0,0},{1.5,1}]},{Arrowheads[0.1],Red,Arrow[{{0,0},Dynamic[u]}],Text["\!\( u\)",Dynamic[u],Dynamic[-0.5Normalize@u]]},{Arrowheads[0.1],Blue,Arrow[{{0,0},Dynamic[M.u]}],Text["\!\( v\)",Dynamic[M.u],Dynamic[-0.5Normalize@(M.u)]]}},PlotRange->1,PlotRangePadding->0.02,ImageSize->120],Appearance->None],Row[{Style[Dynamic[StringTemplate["\!\(u=(\*GridBox[{{`1`},{`2`}}])\)"]@@u],"DisplayFormula"],
Style[Dynamic[StringTemplate["\!\(v=(\*GridBox[{{`1`},{`2`}}])\)"]@@(M.u)],"DisplayFormula"]},Style["\!\(→\&M\)","InlineFormula"]]}]]

Rotating the vector by 90° counterclockwise by

M=(({{0, -1}, {1, 0}})).

DynamicModule[{u={0.6,0.8},M={{0,-1},{1,0}}},
Column[{LocatorPane[Dynamic[u],Graphics[{{Arrowheads[{{0.01,1,Graphics[Line[Offset/@{{-4,3},{0,0},{-4,-3}}]]}}],
AbsoluteThickness[1],Arrow[{#,0}&/@{-1,1}],Arrow[{0,#}&/@{-1,1}],Text["0",{0,0},{1.5,1}]},{Arrowheads[0.1],Red,Arrow[{{0,0},Dynamic[u]}],Text["\!\( u\)",Dynamic[u],Dynamic[-0.5Normalize@u]]},{Arrowheads[0.1],Blue,Arrow[{{0,0},Dynamic[M.u]}],Text["\!\( v\)",Dynamic[M.u],Dynamic[-0.5Normalize@(M.u)]]}},PlotRange->1,PlotRangePadding->0.02,ImageSize->120],Appearance->None],Row[{Style[Dynamic[StringTemplate["\!\(u=(\*GridBox[{{`1`},{`2`}}])\)"]@@u],"DisplayFormula"],
Style[Dynamic[StringTemplate["\!\(v=(\*GridBox[{{`1`},{`2`}}])\)"]@@(M.u)],"DisplayFormula"]},Style["\!\(→\&M\)","InlineFormula"]]}]]

Eigen System of a Matrix

M (u^((k)))=(λ^((k)))(u^((k))),

Exchanging the two components in the vector by

M=(({{0, 1}, {1, 0}})).

DynamicModule[{u={0.6,0.8},M={{0,1},{1,0}},λs,us},
{λs,us}=Eigensystem[M];
us=Normalize/@us;
Column[{LocatorPane[Dynamic[u],Graphics[{{Arrowheads[{{0.01,1,Graphics[Line[Offset/@{{-4,3},{0,0},{-4,-3}}]]}}],
AbsoluteThickness[1],Arrow[{#,0}&/@{-1,1}],Arrow[{0,#}&/@{-1,1}],Text["0",{0,0},{1.5,1}]},
{Arrowheads[0.1],Lighter[Black,0.6],Arrow[{{0,0},#2}],Text[StringTemplate["\!\( u\^(`1`)\)"][#1],#2,-0.5#2]}&@@@Thread[{{1,2},us}],
{Arrowheads[0.1],Red,Arrow[{{0,0},Dynamic[u]}],Text["\!\( u\)",Dynamic[u],Dynamic[-0.5Normalize@u]]},{Arrowheads[0.1],Blue,Arrow[{{0,0},Dynamic[M.u]}],Text["\!\( v\)",Dynamic[M.u],Dynamic[-0.5Normalize@(M.u)]]}},PlotRange->1,PlotRangePadding->0.02,ImageSize->120],Appearance->None],
Style[Grid[Prepend[Thread[{Range@Length@λs,λs,MatrixForm/@us}],{"\!\( k\)","\!\(λ\^(k)\)","\!\(u\^(k)\)"}],Dividers->{{2->True},{2->True}},Alignment->Center],"DisplayFormula"]}]]

Reflecting the vector with respect to an axis by

M=(({{1, 0}, {0, -1}})).

DynamicModule[{u={0.6,0.8},M={{1,0},{0,-1}},λs,us},
{λs,us}=Eigensystem[M];
us=Normalize/@us;
Column[{LocatorPane[Dynamic[u],Graphics[{{Arrowheads[{{0.01,1,Graphics[Line[Offset/@{{-4,3},{0,0},{-4,-3}}]]}}],
AbsoluteThickness[1],Arrow[{#,0}&/@{-1,1}],Arrow[{0,#}&/@{-1,1}],Text["0",{0,0},{1.5,1}]},
{Arrowheads[0.1],Lighter[Black,0.6],,Arrow[{{0,0},#2}],Text[StringTemplate["\!\( u\^(`1`)\)"][#1],#2,1.3{{0,-1},{1,0}}.#2+#2]}&@@@Thread[{{1,2},us}],
{Arrowheads[0.1],Red,Arrow[{{0,0},Dynamic[u]}],Text["\!\( u\)",Dynamic[u],Dynamic[-0.5Normalize@u]]},{Arrowheads[0.1],Blue,Arrow[{{0,0},Dynamic[M.u]}],Text["\!\( v\)",Dynamic[M.u],Dynamic[-0.5Normalize@(M.u)]]}},PlotRange->1,PlotRangePadding->0.02,ImageSize->120],Appearance->None],
Style[Grid[Prepend[Thread[{Range@Length@λs,λs,MatrixForm/@us}],{"\!\( k\)","\!\(λ\^(k)\)","\!\(u\^(k)\)"}],Dividers->{{2->True},{2->True}},Alignment->Center],"DisplayFormula"]}]]

Rotating the vector by 90° counterclockwise by

M=(({{0, -1}, {1, 0}})).

DynamicModule[{u={0.6,0.8},M={{0,-1},{1,0}},λs,us},
{λs,us}=Eigensystem[M];
us=Normalize/@us;
Column[{LocatorPane[Dynamic[u],Graphics[{{Arrowheads[{{0.01,1,Graphics[Line[Offset/@{{-4,3},{0,0},{-4,-3}}]]}}],
AbsoluteThickness[1],Arrow[{#,0}&/@{-1,1}],Arrow[{0,#}&/@{-1,1}],Text["0",{0,0},{1.5,1}]},
{Arrowheads[0.1],Dashed,{Lighter[Orange,0.5],Arrow[{{0,0},#2}],Text[StringTemplate["\!\(Re  u\^(`1`)\)"][#1],#2,1.6{{0,-1},{1,0}}.#2+(-1+1.5#1)#2]}&@@@Thread[{{1,2},Re[us]}],
{Lighter[Cyan,0.5],Arrow[{{0,0},#2}],Text[StringTemplate["\!\(Im  u\^(`1`)\)"][#1],#2,1.6{{0,-1},{1,0}}.#2+#2]}&@@@Thread[{{1,2},Im[us]}]},
{Arrowheads[0.1],Red,Arrow[{{0,0},Dynamic[u]}],Text["\!\( u\)",Dynamic[u],Dynamic[-0.5Normalize@u]]},{Arrowheads[0.1],Blue,Arrow[{{0,0},Dynamic[M.u]}],Text["\!\( v\)",Dynamic[M.u],Dynamic[-0.5Normalize@(M.u)]]}},PlotRange->1,PlotRangePadding->0.02,ImageSize->120],Appearance->None],
Style[Grid[Prepend[Thread[{Range@Length@λs,λs,MatrixForm/@us}],{"\!\( k\)","\!\(λ\^(k)\)","\!\(u\^(k)\)"}],Dividers->{{2->True},{2->True}},Alignment->Center],"DisplayFormula"]}]]

3Blue1Brown. Eigenvectors and eigenvalues | Chapter 14, Essence of linear algebra. (watch on YouTube).

Finding eigen systems in Mathematica

M={{3,1},{0,2}};
M//MatrixForm

Eigensystem[M]

M.{1,0}
M.{-1,1}

Quantum States

Ket and Bra

Ket Vector

(Ket[v])≏(({{(Subscript[v, 1])}, {(Subscript[v, 2])}, {⋮}})),

Note: “≏” implies the vector representation is basis dependent and the values of vector components may change if we view the same state in a different basis.

To write down the vector representation, we must specified a set of (orthonormal) basis vectors in the vector space, and represent them as one-hot unit vectors:

(Ket[1])≏(({{1}, {0}, {⋮}})),(Ket[2])≏(({{0}, {1}, {⋮}})), ….

Such that (Ket[v]) can be expressed as a linear combination of basis vectors

The ith vector component (Subscript[v, i]) is the linear combination coefficient in front of the ith basis vector (Ket[i]).

Bra Vector

Every basis vector (Ket[i]) also has a dual basis vector (Bra[i]), the are represented as

(Bra[1])≏(({{1, 0, ⋯}})),
(Bra[2])≏(({{0, 1, ⋯}})),
⋯.

The dual basis vectors form a set of basis for the bra vector. In terms of basis vectors,

The ith vector component (Subscript[v, i]^( * )) is the linear combination coefficient in front of the ith dual basis vector (Bra[i]).

Qubit System

The two distinct states are (Ket[0]) and (Ket[1]).

We can choose (Ket[0]) and (Ket[1]) to be the basis vectors (like choosing a coordinate system) and write:

(Ket[0])≏(({{1}, {0}})), (Ket[1])≏(({{0}, {1}}))

The vector representation of a quantum state is also called a state vector.

By saying that a qubit is a two-state system, its state vector has two components.

A generic quantum state of a qubit is a complex linear superposition of the basis states

(Ket[ψ])=(Subscript[ψ, 0])(Ket[0])+(Subscript[ψ, 1])(Ket[1])≏(({{(Subscript[ψ, 0])}, {(Subscript[ψ, 1])}})).

(Subscript[ψ, 0]),(Subscript[ψ, 1])∈ℂ are complex numbers. They parameterize the state (Ket[ψ]).

Conversely, every two-component complex vector describes a qubit state.

Statistical interpretation: ((|(Subscript[ψ, 0])|)^2) and ((|(Subscript[ψ, 1])|)^2) are respectively the probabilities to observe the qubit in the 0 and the 1 states.

There is a dual bra vector (Bra[ψ]) associated with each ket vector (Ket[ψ]),

(Bra[ψ])=(Subscript[ψ, 0]^( * ))(Bra[0])+(Subscript[ψ, 1]^( * ))(Bra[1])≏(({{(Subscript[ψ, 0]^( * )), (Subscript[ψ, 1]^( * ))}})),

which, the bra state, encodes the same information about the qubit as the ket state. They are equally good description of the quantum state of a qubit (but play different roles in defining the scalar product, as to be discussed soon).

Scalar Product

Definition

(Ket[u])≏(({{(Subscript[u, 1])}, {(Subscript[u, 2])}, {⋮}})),(Ket[v])≏(({{(Subscript[v, 1])}, {(Subscript[v, 2])}, {⋮}})),

Exchanging the two states in a scalar product lead to a complex conjugation of result

(BraKet[v, u])=(SuperStar[(BraKet[u, v])]).

Scalar product of any vector (Ket[v]) with itself is real and positive definite,

(BraKet[v, v])>=0.

More specifically,

(BraKet[v, v])({{{, ({{=0, if (Ket[v])=0}, {>0, otherwise}})}}).

This implies the Cauchy-Schwarz inequality

((|(BraKet[u, v])|)^2)<=(BraKet[u, u])(BraKet[v, v]).

Prove Eq. ().

(BraKet[u, v])= (BraKet[v, v])=0,

(Ket[w])=(Ket[u])(BraKet[v, v])-(Ket[v])(BraKet[v, u]),

(BraKet[w, w])=((BraKet[v, v])(Bra[u])-(BraKet[u, v])(Bra[v]))((Ket[u])(BraKet[v, v])-(Ket[v])(BraKet[v, u]))
=(BraKet[v, v])(BraKet[u, u])(BraKet[v, v])-(BraKet[v, v])(BraKet[u, v])(BraKet[v, u])-(BraKet[u, v])(BraKet[v, u])(BraKet[v, v])+(BraKet[u, v])(BraKet[v, v])(BraKet[v, u])
=(BraKet[v, v])((BraKet[u, u])(BraKet[v, v])-(BraKet[u, v])(BraKet[v, u])).

(BraKet[u, u])(BraKet[v, v])-(BraKet[u, v])(BraKet[v, u])=((BraKet[w, w])/(BraKet[v, v]))>=0,

((|(BraKet[u, v])|)^2)=(BraKet[u, v])(BraKet[v, u])≤(BraKet[u, u])(BraKet[v, v]).

Normalization

((‖v‖)^2)=(BraKet[v, v]).

Example: Consider a qubit state

(Ket[v])≏(({{(Subscript[v, 0])}, {(Subscript[v, 1])}})),

the normalization condition means

(BraKet[v, v])=(Subscript[v, 0]^( * ))(Subscript[v, 0])+(Subscript[v, 1]^( * ))(Subscript[v, 1])=1.

In general, the normalization condition means

(BraKet[v, v])=(∑_i)((|(Subscript[v, i])|)^2)=1.

According to the statistical interpretation of quantum state, ((|(Subscript[v, i])|)^2) is the probability to observe the system in the ith basis state. The normalization condition is simply a requirement that the probabilities must sum up to unity.

Normalization of a state: if a state (Ket[v]) was not normalized, it can be normalized by

(Ket[v])->((Ket[v])/(‖v‖))=(1/(Sqrt[(BraKet[v, v])]))(Ket[v]),

unless ‖v‖ is zero or infinity.

Normalize the vector (Ket[v])≏(({{1}, {2i}})).

(BraKet[v, v])=(({{1, -2i}}))(({{1}, {2i}}))=1+4=5.
(Sqrt[(BraKet[v, v])])=(Sqrt[5]).

(Ket[v])->(1/(Sqrt[(BraKet[v, v])]))(Ket[v])
≏(1/(Sqrt[5]))(({{1}, {2i}})).

Orthogonality

For example, the qubit states |0⟩ and |1⟩ (see Eq. ()) are orthogonal, as

(BraKet[0, 1])=(({{1, 0}}))(({{0}, {1}}))=0.

|0⟩ and |1⟩ are orthogonal for a good reason: they are distinct states of a qubit, i.e. if the qubit is in state 0, it is definitely not in state 1, vice versa.

Basis and Hilbert Space

Orthonormal Basis

Each orthogonal basis state describes a distinct reality of the quantum system.

Orthonormal basis states are represented by one-hot vectors, as they are normalized and orthogonal to each other

(Ket[1])≏(({{1}, {0}, {0}, {⋮}})), (Ket[2])≏(({{0}, {1}, {0}, {⋮}})), (Ket[3])≏(({{0}, {0}, {1}, {⋮}})), ….

Hilbert Space

The dimension of the vector space dim ℋ = the number n of basis vectors = the maximal number of linearly independent vectors in the space.

The Hilbert space dimension of a quantum system can be finite or infinite. Example: a qubit - dim ℋ=2, ten qubits - dim ℋ=(2^10)=1024, a particle in a continuous space - dim ℋ=∞.

Dimension of the Hilbert space is often a choice: we don’t really know how many independent states are there in a quantum system. We only care about the states that are relevant to us.

Example: (Ket[0]) and (Ket[1]) form an orthonormal basis of the qubit Hilbert space. They represent two distinct realities: if the qubit is in state (Ket[0]), it is definitely not in state (Ket[1]) (and vice versa).

State Basis Expansion

Each basis state (Ket[i]) describes a distinct reality that the quantum system can realize under observation.

The superposition coefficient (Subscript[v, i]) are the components of the state vector, which can be extracted by the scalar product with the basis state,

Eq. () and Eq. () can be written in a more elegant form in terms of bras and kets only

Statistical interpretation: If a quantum system is known to be in a superposition state (Ket[v])=(∑_i)(Subscript[v, i])(Ket[i]) of distinct realities described by orthogonal states (Ket[i]) (i=1,2,…), an observation designed to discern which reality the system is really in will find the system in the state (Ket[i]) with the probability

p(i|v)=((|(Subscript[v, i])|)^2)=((|(BraKet[i, v])|)^2).

Born’s Rule

Fidelity

Fidelity is symmetric: F(u,v)=F(v,u).

Fidelity takes values in the range of

0<=F(u,v)≤1.

This follows from the Cauchy-Schwarz inequality of scalar product Eq. () that ((|(BraKet[u, v])|)^2)<=(BraKet[u, u])(BraKet[v, v]).

Statistical Interpretation

p(u|v)=p(v|u)=F(u,v)=((|(BraKet[u, v])|)^2).

Identical states. Two states (Ket[u]) and (Ket[v]) are identical iff the fidelity between them is one (fully overlap)

((|(BraKet[u, v])|)^2)=1.

This is only achievable when

(Ket[u])=(e^(i φ))(Ket[v]),

i.e. the two states are the same up to phase ambiguity.

Reality must be confirmable by repeated observations: if a quantum system is known to be in a state (Ket[v]), observing the system again will certainly confirm the state (Ket[v]) (with probability 1).

Distinct states. Two states (Ket[u]) and (Ket[v]) are distinct iff the fidelity between them is zero (no overlap)

((|(BraKet[u, v])|)^2)=0.

Orthogonal states ⇔ distinct realities.

Distinct realities are distinguishable by repeated observations: if a quantum system is known to be in a state (Ket[v]), observing the system again will certainly not find the system in another orthogonal state (Ket[u]).

Overlapping states. In general, two different states (Ket[u]) and (Ket[v]) may have partial overlap (they don’t need to be orthogonal), i.e. their fidelity falls between zero and one

0<((|(BraKet[u, v])|)^2)<1.

Realities can overlap: if two quantum states are more similar to (more overlapped with) each other, the probability to confuse them is higher.

(Ket["3"])≏, (Ket["5"])≏.

Leonard Susskind, Art Friedman. Quantum Mechanics - the Theoretical Minimum. Publisher: Basic Books (2014).

Quantum Operators

Matrix Representation

Definition

({{(OverHat[O]), :, ℋ, →, ℋ}, { ,  , (Ket[v]), ↦, (Ket[w])=(OverHat[O])(Ket[v])}})

Linear operator: action of the operator commutes with linear combination of the state

(OverHat[O]) (α(Ket[v])+β(Ket[u]))=α(OverHat[O])(Ket[v])+β(OverHat[O])(Ket[u]).

Identity operator is a special operator that maps any state to itself (the do-nothing operator), denoted as 𝟙.

∀(Ket[v]): 𝟙(Ket[v])=(Ket[v]).

Operator Acting on State

(Subscript[w, i])=(∑_j)(Subscript[O, i,j])(Subscript[v, j]).

The matrix element (Subscript[O, i j]) tells how the operator should act on each basis states: the operator (OverHat[O]) will turn a basis state (Ket[j]) to a superposition state of basis states (Ket[i]) with superposition coefficients (Subscript[O, i j]).

(OverHat[O])(Ket[j])=(∑_i)(Subscript[O, i j])(Ket[i]).

Show Eq. () as a result of Eq. () using one-hot representation for basis vectors.

(OverHat[O])(Ket[1])≏({{(({{(Subscript[O, 11]), (Subscript[O, 12]), ⋯}, {(Subscript[O, 21]), (Subscript[O, 22]), ⋯}, {⋮, ⋮, ⋱}})), (({{1}, {0}, {⋮}}))}})=(({{(Subscript[O, 11])}, {(Subscript[O, 21])}, {⋮}})),
(OverHat[O])(Ket[2])≏({{(({{(Subscript[O, 11]), (Subscript[O, 12]), ⋯}, {(Subscript[O, 21]), (Subscript[O, 22]), ⋯}, {⋮, ⋮, ⋱}})), (({{0}, {1}, {⋮}}))}})=(({{(Subscript[O, 12])}, {(Subscript[O, 22])}, {⋮}})),
…

(OverHat[O])(Ket[j])≏(({{(Subscript[O, 1j])}, {(Subscript[O, 2j])}, {⋮}}))
=(Subscript[O, 1 j])(({{1}, {0}, {⋮}}))+(Subscript[O, 2j])(({{0}, {1}, {⋮}}))+…
≏(Subscript[O, 1 j])(Ket[1])+(Subscript[O, 2j])(Ket[2])+…
=(∑_i)(Subscript[O, i j])(Ket[i])

In other words, (Subscript[O, i j]) is the amplitude to transform basis state (Ket[j]) to basis state (Ket[i]) under the action of the operator (OverHat[O]). It is sufficient to specify the operator by specifying its action on basis states, as all possible states are just linear combination of basis states, and the operator acts linearly.

Operator Basis Expansion

(Ket[i])(Bra[j]) denotes the operator that targets the state (Ket[j]) and transforms it to the state (Ket[i]), because

((Ket[i])(Bra[j]))(Ket[k])=(Ket[i])(BraKet[j, k])=(Ket[i])(Subscript[δ, j,k])
=({{{, ({{(Ket[i]), if k=j,}, {0, if k≠j.}})}})

Thus Eq. () is consistent with the Eq. () in describing how the operator (OverHat[O]) acts on the state.

(Subscript[O, i,j])∈ℂ are complex coefficients, which can be extracted by

Prove Eq. () from Eq. () using the orthonormal property of the basis vectors, without representing them as on-hot vectors explicitly.

(Bra[i])(OverHat[O])(Ket[j])=(Bra[i])((∑_(k,l))(Ket[k])(Subscript[O, k,l])(Bra[l]))(Ket[j])
=(∑_(k,l))(BraKet[i, k])(Subscript[O, k,l])(BraKet[l, j])
=(∑_(k,l))(Subscript[δ, i,k])(Subscript[O, k,l])(Subscript[δ, l,j])
=(Subscript[O, i,j]).

Alternatively, (Ket[i])(Bra[j]) can be represented as an one-hot matrix that is zero everywhere with a single 1 at the row-i column-j. For example, in a 2-dimensional Hilbert space [recall Eq. () for how to outer product two vectors]

(Ket[1])(Bra[1])≏(({{1}, {0}}))(({{1, 0}}))=(({{1, 0}, {0, 0}})),
(Ket[1])(Bra[2])≏(({{1}, {0}}))(({{0, 1}}))=(({{0, 1}, {0, 0}})),
(Ket[2])(Bra[1])≏(({{0}, {1}}))(({{1, 0}}))=(({{0, 0}, {1, 0}})),
(Ket[2])(Bra[2])≏(({{0}, {1}}))(({{0, 1}}))=(({{0, 0}, {0, 1}})).

Therefore, Eq. () indeed reconstructs the matrix representation

(Subscript[O, 11])(Ket[1])(Bra[1])+(Subscript[O, 12])(Ket[1])(Bra[2])+(Subscript[O, 21])(Ket[2])(Bra[1])+(Subscript[O, 22])(Ket[2])(Bra[2])
≏(({{(Subscript[O, 11]), (Subscript[O, 12])}, {(Subscript[O, 21]), (Subscript[O, 22])}})).

The above can be generalized to larger matrices (higher dimensions).

The linear combination coefficient in front of the basis operator (Ket[i])(Bra[j]), as in Eq. ().

The amplitude to transform state (Ket[j]) to state (Ket[i]) under the action of the operator (OverHat[O]), as in Eq. ().

Examples of Operators

(Subscript[𝟙, i j])=(Bra[i])𝟙(Ket[j])=(BraKet[i, j])=(Subscript[δ, i j])=({{{, ({{1, i=j}, {0, i≠j}})}}).

In matrix representation Eq. (),

𝟙=(({{1,  ,  }, { , 1,  }, { ,  , ⋱}})).

Using Dirac notation Eq. (),

This is also call the resolution of identity.

((OverHat[σ])^x)=(Ket[1])(Bra[0])+(Ket[0])(Bra[1]),
((OverHat[σ])^y)=i (Ket[1])(Bra[0])-i(Ket[0])(Bra[1]),
((OverHat[σ])^z)=(Ket[0])(Bra[0])-(Ket[1])(Bra[1]),

𝟙=(Ket[0])(Bra[0])+(Ket[1])(Bra[1]),

Operator Algebra

Operator Product

((OverHat[O])(OverHat[P]))(Ket[v])=((OverHat[O])((OverHat[P])(Ket[v]))).

Composing two operators ≏ multiplying two matrices.

Prove Eq. () using Eq. ().

(OverHat[O])(OverHat[P])=((∑_(i j))(Ket[i])(Subscript[O, i j])(Bra[j]))((∑_(k l))(Ket[k])(Subscript[P, k l])(Bra[l]))
=(∑_(i j,k l))(Ket[i])(Subscript[O, i j])(BraKet[j, k])(Subscript[P, k l])(Bra[l])
=(∑_(i j,k l))(Ket[i])(Subscript[O, i j])(Subscript[δ, j,k])(Subscript[P, k l])(Bra[l])
=(∑_(i j l))(Ket[i])(Subscript[O, i j])(Subscript[P, j l])(Bra[l])
=(∑_(i l))(Ket[i])((∑_j)(Subscript[O, i j])(Subscript[P, j l]))(Bra[l])
=(∑_(i j))(Ket[i])((∑_k)(Subscript[O, i k])(Subscript[P, k j]))(Bra[j]).

Operator product is non-commutative in general, i.e.

(OverHat[O])(OverHat[P])≠(OverHat[P])(OverHat[O]).

Single-Qubit Pauli Operators

({{ , 𝟙, ((OverHat[σ])^x), ((OverHat[σ])^y), ((OverHat[σ])^z)}, {𝟙, 𝟙, ((OverHat[σ])^x), ((OverHat[σ])^y), ((OverHat[σ])^z)}, {((OverHat[σ])^x), ((OverHat[σ])^x), 𝟙, i ((OverHat[σ])^z), -i ((OverHat[σ])^y)}, {((OverHat[σ])^y), ((OverHat[σ])^y), -i ((OverHat[σ])^z), 𝟙, i ((OverHat[σ])^x)}, {((OverHat[σ])^z), ((OverHat[σ])^z), i ((OverHat[σ])^y), -i ((OverHat[σ])^x), 𝟙}})

Verify Eq. () by multiplying Pauli matrices defined in Eq. ().

TableForm[Table[MatrixForm[PauliMatrix[a].PauliMatrix[b]],{a,0,3},{b,0,3}],TableHeadings->({#,#}&@{"𝟙","\!\(σ\^x\)","\!\(σ\^y\)","\!\(σ\^z\)"})]

The table Eq. () can be summarized in a single formula: the product of Pauli matrices (as the defining property of Pauli matrices)

where a,b,c=x,y,z.

(δ^(a b)) denotes the Kronecker delta symbol, defined as

(δ^(a b))=({{{, ({{1, if a=b}, {0, if a≠b}})}})

(ϵ^(a b c)) denotes the Levi-Civita symbol, defined as

(ϵ^(a b c))=({{{, ({{1, if (a b c) is a cyclic of (x y z)}, {-1, if (a b c) is a cyclic of (z y x)}, {0, otherwise}})}})

Another version of Eq. () using vector notation

where m,n are three-component vectors (each component is a scalar).

The generalized vector (OverHat[σ]) should be understood as a vector of matrices, or as a three-dimensional tensor (shape: 3×2×2).

Here m·(OverHat[σ]) means

m·(OverHat[σ])=(Subscript[m, x])((OverHat[σ])^x)+(Subscript[m, y])((OverHat[σ])^y)+(Subscript[m, z])((OverHat[σ])^z)
≏(({{(Subscript[m, z]), (Subscript[m, x])-i (Subscript[m, y])}, {(Subscript[m, x])+i (Subscript[m, y]), -(Subscript[m, z])}})).

As we contract a 3-component vector m with a 3×2×2-component tensor (OverHat[σ]) along the first index (the dimension 3 index), the result is a 2×2 matrix.

Repeatedly applying Eq. () enables us to product more Pauli operators together. For example

(l·(OverHat[σ])) (m·(OverHat[σ])) (n·(OverHat[σ]))=i l·(m×n)𝟙+ ((m·n)l-(l·n) m+(l·m) n)·(OverHat[σ]) .

Derive Eq. ().

(l·(OverHat[σ])) (m·(OverHat[σ])) (n·(OverHat[σ]))=(l·(OverHat[σ])) ((m·n) 𝟙+i (m×n)·(OverHat[σ]))
=(m·n) (l·(OverHat[σ]))+i (l·(OverHat[σ])) (m×n)·(OverHat[σ])
=(m·n) (l·(OverHat[σ]))+i (l·(m×n)𝟙+i (l×(m×n))·(OverHat[σ]))
=i l·(m×n)𝟙+ ((m·n) l-l×(m×n))·(OverHat[σ])
=i l·(m×n)𝟙+((m·n)l-(l·n) m+(l·m) n)·(OverHat[σ])

Commutator

Commutator is antisymmetric, [(OverHat[O]),(OverHat[P])]=-[(OverHat[P]),(OverHat[O])].

As a result, commutator of an operator with itself always vanishes [(OverHat[O]),(OverHat[O])]=0.

If the commutator vanishes [(OverHat[O]),(OverHat[P])]=0, we say that the two operators (OverHat[O]) and (OverHat[P]) commute, i.e. (OverHat[O])(OverHat[P])=(OverHat[P])(OverHat[O]) (operators can pass though each other as if they were numbers) => it does not matter which operator is applied first, the consequence will be the same.

A: put on the socks,

B: put on the shoes,

C: put on the hat,

Bi-linearity:

[(OverHat[O]),(OverHat[P])+(OverHat[Q])]=[(OverHat[O]),(OverHat[P])]+[(OverHat[O]),(OverHat[Q])],
[(OverHat[O])+(OverHat[P]),(OverHat[Q])]=[(OverHat[O]),(OverHat[Q])]+[(OverHat[P]),(OverHat[Q])].

Prove Eq. ().

[(OverHat[O]),(OverHat[P])+(OverHat[Q])]=(OverHat[O]) ((OverHat[P])+(OverHat[Q]))-((OverHat[P])+(OverHat[Q]))(OverHat[O])
=(OverHat[O]) (OverHat[P])+(OverHat[O]) (OverHat[Q])-(OverHat[P])(OverHat[O])-(OverHat[Q])(OverHat[O])
=(OverHat[O]) (OverHat[P])-(OverHat[P])(OverHat[O])+(OverHat[O]) (OverHat[Q])-(OverHat[Q])(OverHat[O])
=[(OverHat[O]),(OverHat[P])]+[(OverHat[O]),(OverHat[Q])].

Product rules:

[(OverHat[O]),(OverHat[P]) (OverHat[Q])]=[(OverHat[O]),(OverHat[P])](OverHat[Q])+(OverHat[P]) [(OverHat[O]),(OverHat[Q])],
[(OverHat[O]) (OverHat[P]),(OverHat[Q])]=[(OverHat[O]),(OverHat[Q])](OverHat[P])+(OverHat[O]) [(OverHat[P]),(OverHat[Q])].

Prove Eq. ().

[(OverHat[O]),(OverHat[P]) (OverHat[Q])]=(OverHat[O])(OverHat[P]) (OverHat[Q])-(OverHat[P]) (OverHat[Q])(OverHat[O])
=(OverHat[O])(OverHat[P]) (OverHat[Q])-(OverHat[P]) (OverHat[O])(OverHat[Q])+(OverHat[P]) (OverHat[O])(OverHat[Q])-(OverHat[P]) (OverHat[Q])(OverHat[O])
=((OverHat[O])(OverHat[P]) -(OverHat[P]) (OverHat[O]))(OverHat[Q])+(OverHat[P]) ((OverHat[O])(OverHat[Q])-(OverHat[Q])(OverHat[O]))
=[(OverHat[O]),(OverHat[P])](OverHat[Q])+(OverHat[P]) [(OverHat[O]),(OverHat[Q])]

[((OverHat[σ])^x),((OverHat[σ])^y)]=2i ((OverHat[σ])^z),
[((OverHat[σ])^y),((OverHat[σ])^z)]=2i ((OverHat[σ])^x),
[((OverHat[σ])^z),((OverHat[σ])^x)]=2i ((OverHat[σ])^y).

Eq. () can be considered as the defining algebraic properties of single-qubit operators (Pauli matrices). Or even more compactly expressed using the cross product of vectors

Operator Function

((OverHat[O])^n)=(OverHat[O])(OverHat[O])…(n times)…(OverHat[O]).

f(x)=(∑_n)(Subscript[c, n])(x^n),

f((OverHat[O])) is still an operator that can act on states in ℋ.

Operator exponential. Given the exponential function

(e^x)=1+x+((x^2)/(2!))+…=(∑_(n=0)^∞)(1/(n!))(x^n),

the exponential of an operator is defined as

(e^(OverHat[O]))=𝟙+(OverHat[O])+(((OverHat[O])^2)/(2!))+…=(∑_(n=0)^∞)(1/(n!))((OverHat[O])^n),

Note: exponentiating an matrix is NOT exponentiating each of the matrix element.

See [] for a nice video about matrix exponential.

3Blue1Brown. How (and why) to raise e to the power of a matrix. (watch on YouTube)

Given ((OverHat[σ])^y)≏(({{0, -i}, {i, 0}})), 
show that the matrix representation of (e^(i θ ((OverHat[σ])^y))) is 
(e^(i θ ((OverHat[σ])^y)))≏(({{cos θ, sin θ}, {-sin θ, cos θ}})).

(e^(i θ ((OverHat[σ])^y)))≏(e^((({{0, θ}, {-θ, 0}}))))=(({{cos θ, sin θ}, {-sin θ, cos θ}})).

MatrixExp[{{0,θ},{-θ,0}}]

(e^(i θ ((OverHat[σ])^y)))=(∑_n)(1/(n!))(((i θ ((OverHat[σ])^y)))^n)
=(∑_n)((((i θ))^n)/(n!))(((((OverHat[σ])^y)))^n)

(((((OverHat[σ])^y)))^n)=({{{, ({{𝟙, if n is even,}, {((OverHat[σ])^y), if n is odd.}})}})

(e^(i θ ((OverHat[σ])^y)))=(∑_m)((((i θ))^(2m))/((2m)!))(((((OverHat[σ])^y)))^(2m))+(∑_m)((((i θ))^(2m+1))/((2m+1)!))(((((OverHat[σ])^y)))^(2m+1))
=(∑_m)((((i θ))^(2m))/((2m)!))𝟙+(∑_m)((((i θ))^(2m+1))/((2m+1)!))((OverHat[σ])^y)
=cos θ 𝟙+i sin θ ((OverHat[σ])^y)
≏(({{cos θ, sin θ}, {-sin θ, cos θ}})).

Operator Trace

On the matrix level, taking the trace is simply summing over diagonal matrix elements

Tr(({{(Subscript[O, 11]), (Subscript[O, 12]), ⋯}, {(Subscript[O, 21]), (Subscript[O, 22]), ⋯}, {⋮, ⋮, ⋱}}))=(Subscript[O, 11])+(Subscript[O, 22])+…=(∑_i)(Subscript[O, i,i]).

Linear property: trace is a linear functional of operators.

Tr (α(OverHat[O])+β (OverHat[P]))=a Tr (OverHat[O])+β Tr (OverHat[P]).

Cyclic property: the trace of a product of operators is invariant under the cyclic permutation of the operators.

Tr ((OverHat[O]) (OverHat[P]))=Tr ((OverHat[P])(OverHat[O])),
Tr ((OverHat[O]) (OverHat[P])(OverHat[Q]))=Tr ((OverHat[P])(OverHat[Q]) (OverHat[O]))=Tr ((OverHat[Q])(OverHat[O]) (OverHat[P])),
…

Prove Eq. ().

Tr ((OverHat[O]) (OverHat[P]))=(∑_i)(Bra[i])(OverHat[O])(OverHat[P])(Ket[i])
=(∑_(i,j))(Bra[i])(OverHat[O])(Ket[j])(Bra[j])(OverHat[P])(Ket[i])
=(∑_(i,j))(Bra[j])(OverHat[P])(Ket[i])(Bra[i])(OverHat[O])(Ket[j])
=(∑_j)(Bra[j])(OverHat[P])(OverHat[O])(Ket[j])
=Tr ((OverHat[P])(OverHat[O])).

Tr ((OverHat[O]) (OverHat[P])(OverHat[Q]))=Tr (((OverHat[O]) (OverHat[P]))(OverHat[Q]))=Tr ((OverHat[Q ])((OverHat[O]) (OverHat[P])))=Tr ((OverHat[Q])(OverHat[O]) (OverHat[P])).

Scalar product

Fidelity

((|(BraKet[u, v])|)^2)=(BraKet[u, v])(BraKet[v, u])=Tr(Ket[v])(Bra[v])(Ket[u])(Bra[u]).

Tr ((OverHat[σ])^x)=Tr ((OverHat[σ])^y)=Tr ((OverHat[σ])^z)=0.

Measurement

Hermitian Operators

Hermitian Conjugate

({{ , ket, bra (dual)}, {Hilbert space, ℋ, (SuperStar[ℋ])}, {basis, ℬ={(Ket[i])}, (SuperStar[ℬ])={(Bra[i])}}, {state, (Ket[v])=(∑_i)(Subscript[v, i])(Ket[i]), (Bra[v])=(∑_i)(Subscript[v, i]^( * ))(Bra[i])}, {vector, (({{(Subscript[v, 1])}, {(Subscript[v, 2])}, {⋮}})), (({{(Subscript[v, 1]^( * )), (Subscript[v, 2]^( * )), ⋯}}))}, {component, (Subscript[v, i])=(BraKet[i, v]), (Subscript[v, i]^( * ))=(BraKet[v, i])}, {operator, (OverHat[O])=(∑_(i,j))(Ket[i])(Subscript[O, i,j])(Bra[j]), (SuperDagger[(OverHat[O])])=(∑_(i,j))(Ket[i])(Subscript[O, j,i]^( * ))(Bra[j])}, {matrix, (({{(Subscript[O, 11]), (Subscript[O, 12]), ⋯}, {(Subscript[O, 21]), (Subscript[O, 22]), ⋯}, {⋮, ⋮, ⋱}})), (({{(Subscript[O, 11]^( * )), (Subscript[O, 21]^( * )), ⋯}, {(Subscript[O, 12]^( * )), (Subscript[O, 22]^( * )), ⋯}, {⋮, ⋮, ⋱}}))}, {component, (Subscript[O, i,j])=(Bra[i])(OverHat[O])(Ket[j]), (Subscript[O, i,j]^( * ))=(Bra[j])(SuperDagger[(OverHat[O])])(Ket[i])}, {action, (Ket[w])=(OverHat[O])(Ket[v]), (Bra[w])=(Bra[v])(SuperDagger[(OverHat[O])])}})

Just like the bra (Bra[v]) is the dual of the ket (Ket[u]), the Hermitian conjugate operator (SuperDagger[(OverHat[O])]) is the dual of the original operator (OverHat[O]), such that

if the operator (OverHat[O]) takes (Ket[v]) to (Ket[w]):

({{(OverHat[O]), :, ℋ, →, ℋ}, { ,  , (Ket[v]), ↦, (Ket[w])=(OverHat[O])(Ket[v])}})

then the operator (SuperDagger[(OverHat[O])]) takes (Bra[v]) to (Bra[w]):

({{(SuperDagger[(OverHat[O])]), :, (SuperStar[ℋ]), →, (SuperStar[ℋ])}, { ,  , (Bra[v]), ↦, (Bra[w])=(Bra[v])(SuperDagger[(OverHat[O])])}})

Given an orthonormal basis  ℬ={(Ket[i]):i=1,2,…} of the Hilbert space ℋ, if (OverHat[O]) is given by

(OverHat[O])=(∑_(i,j))(Ket[i])(Subscript[O, i,j])(Bra[j]),

then (SuperDagger[(OverHat[O])]) should be given by

Verify that Eq. () is consistent with the definition Eq. ().

(Bra[v])=(∑_i)(Subscript[v, i]^( * ))(Bra[i]), (Bra[w])=(∑_i)(Subscript[w, i]^( * ))(Bra[i]),
(SuperDagger[(OverHat[O])])=(∑_(i,j))(Ket[i])(Subscript[O, j,i]^( * ))(Bra[j]).

(Bra[v])(SuperDagger[(OverHat[O])])=((∑_i)(Subscript[v, i]^( * ))(Bra[i]))((∑_(j,k))(Ket[j])(Subscript[O, k,j]^( * ))(Bra[k]))
=(∑_(i ,j,k))(Subscript[v, i]^( * ))(Subscript[O, k,j]^( * ))(BraKet[i, j])(Bra[k])
=(∑_(i ,j,k))(Subscript[v, i]^( * ))(Subscript[O, k,j]^( * ))(Subscript[δ, i,j])(Bra[k])
=(∑_(,j,k))(Subscript[v, j]^( * ))(Subscript[O, k,j]^( * ))(Bra[k])
=(∑_(i,j))(Subscript[v, j]^( * ))(Subscript[O, i,j]^( * ))(Bra[i]),

(Subscript[w, i]^( * ))=(∑_(i,j))(Subscript[v, j]^( * ))(Subscript[O, i,j]^( * )).

(Subscript[w, i])=(∑_j)(Subscript[O, i,j])(Subscript[v, j]),

In terms of matrix representation, the Hermitian conjugate acts as

matrix transpose (interchanges the rows and columns),

followed by complex conjugation of each matrix element.

(SuperDagger[(({{(Subscript[O, 11]), (Subscript[O, 12]), ⋯}, {(Subscript[O, 21]), (Subscript[O, 22]), ⋯}, {⋮, ⋮, ⋱}}))])=(({{(Subscript[O, 11]^( * )), (Subscript[O, 21]^( * )), ⋯}, {(Subscript[O, 12]^( * )), (Subscript[O, 22]^( * )), ⋯}, {⋮, ⋮, ⋱}})).

Duality: suppose (OverHat[O]) is an operator

((OverHat[O])^(† †))=(OverHat[O]).

Linearity: suppose (OverHat[O]) and (OverHat[P]) are operators, α and  β are complex numbers,

(SuperDagger[(α (OverHat[O])+β (OverHat[P]))])=(SuperStar[α])(SuperDagger[(OverHat[O])])+(SuperStar[β])(SuperDagger[(OverHat[P])]).

Transpose Property: suppose (OverHat[O]) and (OverHat[P]) are operators

Prove the property Eq. ().

(OverHat[O])=(∑_(i,j))(Ket[i])(Subscript[O, i,j])(Bra[j]), (OverHat[P])=(∑_(i,j))(Ket[i])(Subscript[P, i,j])(Bra[j]),

(SuperDagger[((OverHat[O]) (OverHat[P]))])=(SuperDagger[((∑_(i j))(Ket[i])((∑_k)(Subscript[O, i k])(Subscript[P, k j]))(Bra[j]))])
=(∑_(i j))(Ket[j])((∑_k)(Subscript[O, i k]^( * ))(Subscript[P, k j]^( * )))(Bra[i])
=(∑_(i j,k))(Subscript[O, i k]^( * ))(Subscript[P, k j]^( * ))(Ket[j])(Bra[i])
=(∑_(i j,k,l))(Subscript[O, i k]^( * ))(Subscript[P, l j]^( * ))(Ket[j])(BraKet[l, k])(Bra[i])
=(∑_(i j,k,l))(Ket[j])(Subscript[P, l j]^( * ))(BraKet[l, k])(Subscript[O, i k]^( * ))(Bra[i])
=((∑_(j,l))(Ket[j])(Subscript[P, l j]^( * ))(Bra[l]))((∑_(i k))(Ket[k])(Subscript[O, i k]^( * ))(Bra[i]))
=(SuperDagger[(OverHat[P])])(SuperDagger[(OverHat[O])]).

Hermitian Operator

A real number is a number whose complex conjugation is itself.

z=(SuperStar[z])⇔z∈ℝ.

A real operator Hermitian operator is an linear operator whose Hermitian conjugate is itself.

(Subscript[O, i j])=(Subscript[O, j i]^( * )).

Eigensystem (General)

Eq. () is called the eigen equation of an operator (OverHat[O]).

The eigenvalues can be found by solving the algebraic (polynomial) equation for O

det((OverHat[O])-O 𝟙)=0.

For each solution of eigenvalue  O=(Subscript[O, k]), the corresponding eigenvector (Ket[(Subscript[O, k])]) is found by solving the linear equation

((OverHat[O])-(Subscript[O, k]) 𝟙)(Ket[(Subscript[O, k])])=0.

Use Mathematica to solve the eigen problem (recommended)

Eigensystem[{{0,1},{1,0}}]

Eigensystem (Hermitian Operators)

(OverHat[O])(Ket[(Subscript[O, k])])=(Subscript[O, k])(Ket[(Subscript[O, k])]), (k=1,2,…).

Eigenvalues are real.

(OverHat[O])=(SuperDagger[(OverHat[O])])=>(Subscript[O, k])∈ℝ.

Eigenvectors form a complete set of basis. (Any vector  can be expanded as a sum of these eigenvectors.)

Eigenvectors of different eigenvalues are orthogonal (automatically)

(Subscript[O, k])≠(Subscript[O, l])=>(BraKet[(Subscript[O, k]), (Subscript[O, l])])=0.

Eigenvectors of the same eigenvalue can be made orthogonal (by orthogonalization, e.g. Gram-Schmidt procedure).

Orthogonalize[{{1,2},{3,4}}]

For bounded Hermitian operators (e.g. finite matrices in finite dimensional Hilbert space), eigenvectors can be normalized.

Prove Eq. () and Eq. ().

(OverHat[O])(Ket[(Subscript[O, k])])=(Subscript[O, k])(Ket[(Subscript[O, k])]),

(OverHat[O])(Ket[(Subscript[O, l])])=(Subscript[O, l])(Ket[(Subscript[O, l])]).

(Bra[(Subscript[O, k])])(SuperDagger[(OverHat[O])])=(Bra[(Subscript[O, k])])(OverHat[O])=(Bra[k])(Subscript[O, k]^( * )),

(Bra[(Subscript[O, k])])(OverHat[O])(Ket[(Subscript[O, l])])=(Subscript[O, k]^( * ))(BraKet[(Subscript[O, k]), (Subscript[O, l])]),
(Bra[(Subscript[O, k])])(OverHat[O])(Ket[(Subscript[O, l])])=(Subscript[O, l])(BraKet[(Subscript[O, k]), (Subscript[O, l])]).

If k=l, Eq. () implies

(Bra[(Subscript[O, k])])(OverHat[O])(Ket[(Subscript[O, k])])=(Subscript[O, k]^( * ))(BraKet[(Subscript[O, k]), (Subscript[O, k])])=(Subscript[O, k])(BraKet[(Subscript[O, k]), k]),

i.e. (Subscript[O, k]^( * ))=(Subscript[O, k]), so (Subscript[O, k])∈ℝ. This proves Eq. ().

If k≠l, Eq. () implies

0=((Subscript[O, k])-(Subscript[O, l]))(BraKet[(Subscript[O, k]), (Subscript[O, l])]).

If (Subscript[O, k])!=(Subscript[O, l]), Eq. () implies (BraKet[(Subscript[O, k]), (Subscript[O, l])])=0. This proves Eq. ().

If (Subscript[O, k])=(Subscript[O, l]), then (Ket[(Subscript[O, k])]) and (Ket[(Subscript[O, l])]) are degenerated. Degenerated states can be arbitrarily recombined within the degenerate subspace to form a set of orthogonal basis.

The completeness of the basis implies

Hermitian operator (OverHat[O]) can always be represented in its own eigenbasis, leading to the spectral decomposition

Note: unlike a generic matrix representation (OverHat[O])=(∑_(i j))(Ket[i])(Subscript[O, i j])(Bra[j]), in the spectral decomposition Eq. (), the summation only run through the eigenbasis once.

In the eigenbasis, the Hermitian operator is represented as a diagonal matrix.

(OverHat[O])≏(({{(Subscript[O, 1]),  ,  }, { , (Subscript[O, 2]),  }, { ,  , ⋱}})).

So the procedure of bring the matrix representation to its diagonal form by transforming to its eigenbasis is called diagonalization. (We will discuss more about it later.)

f((OverHat[O]))=(∑_k)(Ket[(Subscript[O, k])])f((Subscript[O, k]))(Bra[(Subscript[O, k])]),

Prove Eq. ().

((OverHat[O])^n)=(∑_k)(Ket[(Subscript[O, k])])(Subscript[O, k]^n)(Bra[(Subscript[O, k])]),

𝟙=(∑_k)(Ket[(Subscript[O, k])])(Bra[(Subscript[O, k])]),

((OverHat[O])^(n+1))=((OverHat[O])^n)(OverHat[O])
=((∑_k)(Ket[(Subscript[O, k])])(Subscript[O, k]^n)(Bra[(Subscript[O, k])]))((∑_l)(Ket[(Subscript[O, l])])(Subscript[O, l])(Bra[(Subscript[O, l])]))
=(∑_(k,l))(Subscript[O, k]^n)(Subscript[O, l])(Ket[(Subscript[O, k])])(BraKet[(Subscript[O, k]), (Subscript[O, l])])(Bra[(Subscript[O, l])])
=(∑_(k,l))(Subscript[O, k]^n)(Subscript[O, l])(Subscript[δ, k,l])(Ket[(Subscript[O, k])])(Bra[(Subscript[O, l])])
=(∑_k)(Ket[(Subscript[O, k])])(Subscript[O, k]^(n+1))(Bra[(Subscript[O, k])]).

f((OverHat[O]))=(∑_n)(Subscript[c, n])((OverHat[O])^n)
=(∑_n)(Subscript[c, n])((∑_k)(Ket[(Subscript[O, k])])(Subscript[O, k]^n)(Bra[(Subscript[O, k])]))
=(∑_k)((∑_n)(Subscript[c, n])(Subscript[O, k]^n))(Ket[(Subscript[O, k])])(Bra[(Subscript[O, k])])
=(∑_k)f((Subscript[O, k]))(Ket[(Subscript[O, k])])(Bra[(Subscript[O, k])]).

f((OverHat[O]))≏(({{f((Subscript[O, 1])),  ,  }, { , f((Subscript[O, 2])),  }, { ,  , ⋱}})).

Eigensystem (Pauli Operators)

Pauli-x

((OverHat[σ])^x)=(Ket[+])(Bra[+])-(Ket[-])(Bra[-]),

with projection operators

(Ket[+])(Bra[+])=((𝟙+((OverHat[σ])^x))/2),
(Ket[-])(Bra[-])=((𝟙-((OverHat[σ])^x))/2).

Pauli-y

((OverHat[σ])^y)=(Ket[i])(Bra[i])-(Ket[(OverBar[i])])(Bra[(OverBar[i])]),

with projection operators

(Ket[i])(Bra[i])=((𝟙+((OverHat[σ])^y))/2),
(Ket[(OverBar[i])])(Bra[(OverBar[i])])=((𝟙-((OverHat[σ])^y))/2).

Pauli-z

((OverHat[σ])^z)=(Ket[0])(Bra[0])-(Ket[1])(Bra[1]),

with projection operators

(Ket[0])(Bra[0])=((𝟙+((OverHat[σ])^z))/2),
(Ket[1])(Bra[1])=((𝟙-((OverHat[σ])^z))/2).

n·(OverHat[σ])=(Ket[n·σ=+1])(Bra[n·σ=+1])-(Ket[n·σ=-1])(Bra[n·σ=-1]),

Prove Eq. () and Eq. ().

n·(OverHat[σ])≏(({{(Subscript[λ, 1]), 0}, {0, (Subscript[λ, 2])}}))

(Subscript[λ, 1])+(Subscript[λ, 2])=Tr (n·(OverHat[σ]))=0,
(({{(Subscript[λ, 1]^2), 0}, {0, (Subscript[λ, 2]^2)}}))≏(((n·(OverHat[σ])))^2)=𝟙,

(Subscript[λ, 1]^2)=(Subscript[λ, 2]^2)=1=>(Subscript[λ, 1]),(Subscript[λ, 2])=±1,
(Subscript[λ, 1])+(Subscript[λ, 2])=0=>(Subscript[λ, 1])=-(Subscript[λ, 2]).

n·(OverHat[σ])=(Ket[n·σ=+1])(Bra[n·σ=+1])-(Ket[n·σ=-1])(Bra[n·σ=-1]),

n·(OverHat[σ])≏(({{1, 0}, {0, -1}})).

(Ket[n·σ=+1])(Bra[n·σ=+1])≏(({{1, 0}, {0, 0}})), 
(Ket[n·σ=-1])(Bra[n·σ=-1])≏(({{0, 0}, {0, 1}})).

(Ket[n·σ=±1])(Bra[n·σ=±1]),=((𝟙±n·(OverHat[σ]))/2).

Observables

Physical Observable

(OverHat[O])=(∑_k)(Ket[(Subscript[O, k])])(Subscript[O, k])(Bra[(Subscript[O, k])]).

All possible measurement outcomes (or observation values) of the observable O are given by (and only by) the eigenvalues (Subscript[O, k]).

The measurement projects (collapses) the quantum state to the eigenspace (Subscript[ℋ, k]) spanned by the eigenstates of the corresponding measurement outcome (Subscript[O, k]).

Measurement Postulate

In quantum measurement, there is no way to tell for certain which outcome will be observed. There is only a conditional probability p((Subscript[O, k])|ψ) that we can predict.

Upon observing the measurement outcome (Subscript[O, k]), the quantum state will be updated --- a process known as quantum state collapse.

(Ket[ψ])(Underscript[(Overscript[⟶, measure O]),  observe (Subscript[O, k])])(Ket[(Subscript[O, k])]).

(Ket[ψ]) is called the prior state (pre-measurement state)

(Ket[(Subscript[O, k])]) is called the posterior state (post-measurement state)

Bayesian view of quantum state collapse:

The quantum state represents our subjective knowledge or belief about the system, not (necessarily) an objective physical reality.

Measurements provide new information that forces us to update our beliefs → the “collapse” happens in our knowledge.

The measurement postulate tells us how to update the quantum state given the observation, in a logically consistent manner.

How to deal with degeneracy?

An eigenvalue (Subscript[O, k]) is n-fold degenerated ⇔ there exists n orthonormal eigenstates (their choices are not unique) of (OverHat[O]) corresponding to the same eigenvalue:

(OverHat[O])(Ket[(Subscript[O, k]),1])=(Subscript[O, k])(Ket[(Subscript[O, k]),1]),
(OverHat[O])(Ket[(Subscript[O, k]),2])=(Subscript[O, k])(Ket[(Subscript[O, k]),2]),
…
(OverHat[O])(Ket[(Subscript[O, k]),n])=(Subscript[O, k])(Ket[(Subscript[O, k]),n]).

Then if the measurement outcome (Subscript[O, k]) is observed in measuring O on state (Ket[ψ]), how to compute p((Subscript[O, k])|ψ) and the posterior state?

Step I: Compute the scalar products (Subscript[α, m])=(BraKet[(Subscript[O, k]),m, ψ]), meaning that

(Ket[ψ])=(∑_(m=1)^n)(Subscript[α, m])(Ket[(Subscript[O, k]),m])+… (other states).

Step II: Aggregate the probability:

Step III: Renormalize the amplitudes (Subscript[α, m])

(Subscript[(OverTilde[α]), m])=((Subscript[α, m])/(Sqrt[p((Subscript[O, k])|ψ)]))=((BraKet[(Subscript[O, k]),m, ψ])/(Sqrt[p((Subscript[O, k])|ψ)])),

and reconstruct the posterior state

Note: it is always a good practice to normalize the state (i.e. ensuring (BraKet[ψ', ψ'])=1) after quantum state collapse.

Expectation Value

⟨O⟩:=(∑_k)(Subscript[O, k])p((Subscript[O, k])|ψ)
=(∑_k)(Subscript[O, k])((|(BraKet[(Subscript[O, k]), ψ])|)^2)
=(∑_k)(BraKet[ψ, (Subscript[O, k])])(Subscript[O, k])(BraKet[(Subscript[O, k]), ψ])

The answer is a real scalar (as (OverHat[O]) is Hermitian).

Represented as vectors and matrices,

⟨O⟩=(({{(Subscript[ψ, 1]^( * )), (Subscript[ψ, 2]^( * )), ⋯}}))(({{(Subscript[O, 11]), (Subscript[O, 12]), ⋯}, {(Subscript[O, 21]), (Subscript[O, 22]), ⋯}, {⋮, ⋮, ⋱}}))(({{(Subscript[ψ, 1])}, {(Subscript[ψ, 2])}, {⋮}})).

⟨O⟩=Tr (OverHat[O]) (Ket[ψ])(Bra[ψ]).

The advantage of this approach is to circumvent solving for (Ket[ψ]) explicitly (sometimes the state projector is easier to construct than the state vector).

Variance

std O=(Sqrt[var O]).

Prove Eq. ().

(Bra[ψ])((OverHat[A])-i x (OverHat[B]))((OverHat[A])+i x (OverHat[B]))(Ket[ψ])=(BraKet[ϕ, ϕ])≥0.

(Bra[ψ])((OverHat[A])-i x (OverHat[B]))((OverHat[A])+i x (OverHat[B]))(Ket[ψ])
=(Bra[ψ])((OverHat[A])^2)+i x [(OverHat[A]),(OverHat[B])]+(x^2)((OverHat[B])^2)(Ket[ψ])
=⟨(B^2)⟩(x^2)+i⟨[A,B]⟩x+⟨(A^2)⟩≥0.

Δ=(((i⟨[A,B]⟩))^2)-4⟨(B^2)⟩⟨(A^2)⟩≤0.

((⟨(A^2)⟩)^(1/2))((⟨(B^2)⟩)^(1/2))≥(1/2)|⟨[A,B]⟩|.

In words, the product of the uncertainties cannot be smaller than half of the magnitude of the expectation value of the commutator.

For commuting observables ([A,B]=0), (std A)(std B)≥0, it is possible to have std A=std B=0 simultaneously, i.e. A and B can be jointly measured with perfect certainty.

For non-commuting observables, there exists a state on which |⟨[A,B]⟩|≠0. Then on such state, it is impossible to have std A=std B=0 simultaneously, i.e. A and B can not be jointly measured with certainty.

Dynamics

Unitary Operators

Basis Transformation

ℬ={(Ket[i]):i=1,2,…,dim ℋ},
ℬ'={(Ket[i])':i=1,2,…,dim ℋ}.

The same state (Ket[v]) can have different vector representations in different bases

(Subscript[v, i])=(Bra[i])(Ket[v]), (Subscript[v, i]^′)=(Bra[i])'(Ket[v]).

The same operator (OverHat[O]) can have different matrix representations in different bases

(Subscript[O, i j])=(Bra[i])(OverHat[O])(Ket[j]), (Subscript[O, i j]^′)=(Bra[i])'(OverHat[O])(Ket[j])'.

(Subscript[v, i]^′)=(∑_j)(Subscript[U, i j])(Subscript[v, j]),
(Subscript[O, i j]^′)=(∑_(k,l))(Subscript[U, i k])(Subscript[O, k l])(Subscript[U, j l]^( * )).

Using Eq. () to prove that Eq. () is compatible with Eq. () and Eq. ().

(Subscript[v, i]^′)=(∑_j)(Subscript[U, i j])(Subscript[v, j])
=(∑_j)(Bra[i])'(Ket[j])(Bra[j])(Ket[v])
=(Bra[i])'𝟙(Ket[v])
=(Bra[i])'(Ket[v]).

(Subscript[O, i j]^′)=(∑_(k,l))(Subscript[U, i k])(Subscript[O, k l])(Subscript[U, j l]^( * ))
=(∑_(k,l))(Bra[i])'(Ket[k])(Bra[k])(OverHat[O])(Ket[l])(Bra[l])(Ket[j])'
=(Bra[i])'𝟙(OverHat[O])𝟙(Ket[j])'
=(Bra[i])'(OverHat[O])(Ket[j])'.

Check that the matrix element of (OverHat[U]) in Eq. () is indeed given by Eq. (), regardless of represented in the basis ℬ or ℬ'.

(Subscript[U, i j])=(Bra[i])(OverHat[U])(Ket[j])
=(∑_k)(BraKet[i, k])(Bra[k])'(Ket[j])
=(∑_k)(Subscript[δ, i k])(Bra[k])'(Ket[j])
=(Bra[i])'(Ket[j]).

(Subscript[U, i j]^′)=(Bra[i])'(OverHat[U])(Ket[j])'
=(∑_k)(Bra[i])'(Ket[k])(Bra[k])'(Ket[j])'
=(∑_k)(Bra[i])'(Ket[k])(Subscript[δ, k j])
=(Bra[i])'(Ket[j]).

Check that Eq. () satisfies the defining property Eq. () for unitary operator.

(SuperDagger[(OverHat[U])])(OverHat[U])=(∑_i)(Ket[i])'(Bra[i])(∑_j)(Ket[j])(Bra[j])'
=(∑_(i,j))(Ket[i])'(BraKet[i, j])(Bra[j])'
=(∑_(i,j))(Ket[i])'(Subscript[δ, i j])(Bra[j])'
=(∑_(i,j))(Ket[i])'(Bra[i])'=𝟙.

The inverse of a unitary operator is its Hermitian conjugate

((OverHat[U])^(-1))=(SuperDagger[(OverHat[U])]).

The operator (basis transformation) implemented by (OverHat[U]) is reversed by that of (SuperDagger[(OverHat[U])]), and vice versa.

When the two sets of basis (Ket[i]) and (Ket[i])' are identical, U=𝟙 becomes the identity operator (which is also unitary).

({{for ket state:, (Ket[v])->(OverHat[U])(Ket[v]),}, {for bra state:, (Bra[v])→(Bra[v])(SuperDagger[(OverHat[U])]),}, {for operator:, (OverHat[O])→(OverHat[U]) (OverHat[O]) (SuperDagger[(OverHat[U])]).}})

The operator (OverHat[O]) is also made of ket and bra states, so the unitary operator must be applied from both sides, when transforming an operator.

The expectation value of an observable is invariant under basis transformation. (Physical reality should be basis-independent.)

⟨O⟩=(Bra[ψ])(OverHat[O])(Ket[ψ])→(Bra[ψ])(SuperDagger[(OverHat[U])]) (OverHat[U]) (OverHat[O]) (SuperDagger[(OverHat[U])])(OverHat[U])(Ket[ψ])=(Bra[ψ])𝟙 (OverHat[O]) 𝟙(Ket[ψ])=⟨O⟩.

Matrix Diagonalization

(OverHat[O])=(∑_k)(Ket[(Subscript[O, k])])(Subscript[O, k])(Bra[(Subscript[O, k])]),
(OverHat[U])=(∑_k)(Ket[k])(Bra[(Subscript[O, k])]),

(OverHat[Λ])=(OverHat[U]) (OverHat[O]) (SuperDagger[(OverHat[U])])=(∑_k)(Ket[k])(Subscript[O, k])(Bra[k])≏(({{(Subscript[O, 1]),  ,  }, { , (Subscript[O, 2]),  }, { ,  , ⋱}}))

Every Hermitian matrix can be written as

(OverHat[O])=(SuperDagger[(OverHat[U])])(OverHat[Λ]) (OverHat[U]),

with (OverHat[Λ]) being diagonal and (OverHat[U]) being unitary.

Or equivalently, the unitary transformation (OverHat[U]) brings the Hermitian matrix to its diagonal form,

(OverHat[U]) (OverHat[O]) (SuperDagger[(OverHat[U])])=(OverHat[Λ]).

(Subscript[(OverHat[U]), H])=(({{(Bra[+])}, {(Bra[-])}}))≏(1/(Sqrt[2]))(({{1, 1}, {1, -1}})).

This unitary operation (Subscript[(OverHat[U]), H]) is also known as the Hadamard gate in quantum information, an example of single-qubit gate.

Under the unitary transformation, ((OverHat[σ])^x) is brought to its diagonal form, which is ((OverHat[σ])^z)

(Subscript[(OverHat[U]), H]) ((OverHat[σ])^x) (Subscript[(OverHat[U]), H]^†)≏(1/(Sqrt[2]))(({{1, 1}, {1, -1}}))(({{0, 1}, {1, 0}}))(1/(Sqrt[2]))(({{1, 1}, {1, -1}}))
=(({{1, 0}, {0, -1}}))≏((OverHat[σ])^z).

Hermitian Generators

A complex number z∈ℂ is a phase factor, iff |z|=1. Any phase factor can be written as z=(e^(i θ)), where θ∈ℝ is a real phase angle.

(SuperStar[z])z=z (SuperStar[z])=((|z|)^2)=1⇔z=(e^(i θ))

Similar ideas apply to unitary operators: every unitary operator can be generated by a Hermitian operator (OverHat[Θ]) in the form of

(OverHat[Θ])=(∑_k)(Ket[(Subscript[Θ, k])])(Subscript[Θ, k])(Bra[(Subscript[Θ, k])]),

either by operator Taylor expansion (recall Eq. () on operator exponential)

(e^( i (OverHat[Θ])))=𝟙+i (OverHat[Θ])+((((i (OverHat[Θ])))^2)/(2!))+((((i (OverHat[Θ])))^3)/(3!))+….

or by spectral decomposition (HW )

(e^( i (OverHat[Θ])))=(∑_k)(Ket[(Subscript[Θ, k])])(e^(i (Subscript[Θ, k])))(Bra[(Subscript[Θ, k])])

Use Eq. () to show that (OverHat[U])=(e^( i (OverHat[Θ]))) is unitary as long as (OverHat[Θ]) is Hermitian.

(SuperDagger[(OverHat[U])])(OverHat[U])=(SuperDagger[((e^( i (OverHat[Θ]))))])(e^( i (OverHat[Θ])))
=(SuperDagger[((∑_k)(e^(i (Subscript[Θ, k])))(Ket[(Subscript[Θ, k])])(Bra[(Subscript[Θ, k])]))])((∑_l)(e^(i (Subscript[Θ, l])))(Ket[(Subscript[Θ, l])])(Bra[(Subscript[Θ, l])]))
=(∑_(k,l))(e^(-i (Subscript[Θ, k])))(e^(i (Subscript[Θ, l])))(Ket[(Subscript[Θ, k])])(Bra[(Subscript[Θ, k])])(Ket[(Subscript[Θ, l])])(Bra[(Subscript[Θ, l])])
=(∑_(k,l))(e^(-i (Subscript[Θ, k])))(e^(i (Subscript[Θ, l])))(Ket[(Subscript[Θ, k])])(Bra[(Subscript[Θ, k])])(Subscript[δ, k l])
=(∑_k)(e^(-i (Subscript[Θ, k])))(e^(i (Subscript[Θ, k])))(Ket[(Subscript[Θ, k])])(Bra[(Subscript[Θ, k])])
=(∑_k)(Ket[(Subscript[Θ, k])])(Bra[(Subscript[Θ, k])])
=𝟙.

(OverHat[U])(θ)=(e^(i θ ((OverHat[σ])^y)))≏(({{cos θ, sin θ}, {-sin θ, cos θ}})).

(OverHat[U])(θ)(Ket[0])≏(({{cos θ, sin θ}, {-sin θ, cos θ}}))(({{1}, {0}}))=(({{cos θ}, {-sin θ}})).

(OverHat[U])(Δ θ)=(OverHat[U])(0)+(OverHat[U])'(0)Δ θ+…=𝟙+(OverHat[U])'(0)Δ θ+…,

(OverHat[U])'(0) is also an operator (matrix), usually denoted as (OverHat[U])'(0)=i (OverHat[G]). We call (OverHat[G]) the generator of the rotation / unitary operator, because it generates an infinitesimal rotation

(OverHat[U])(Δ θ)=𝟙+i Δ θ (OverHat[G])+....

(OverHat[U])(Δ θ) is unitary => (OverHat[G]) is Hermitian.

(SuperDagger[U(Δ θ)])U(Δ θ)
=(𝟙-i Δ θ (SuperDagger[(OverHat[G])])+...)(𝟙+i Δ θ (OverHat[G])+...)
=𝟙+i Δ θ((OverHat[G])-(SuperDagger[(OverHat[G])]))+…=𝟙.

Large rotations can be accumulated from small rotations.

(OverHat[U])(N Δ θ)=(((OverHat[U])(Δ θ))^N)=(((𝟙+i Δ θ (OverHat[G])))^N).

As Δ θ is small (but N can be large, s.t. θ=N Δ θ is finite),

ln (OverHat[U])(N Δ θ)=N ln(𝟙+i Δ θ (OverHat[G]))=i N Δ θ (OverHat[G]),

So (OverHat[U])(N Δ θ)=(e^(i N Δ θ (OverHat[G]))), we obtain the exponential form

Time Evolution

Time-Evolution is Unitary

start out in different states => remains in different states (towards both future and past).

start out in the same state => follow identical evolution (towards both future and past).

Distinct states remain distinct:

(BraKet[ϕ(0), ψ(0)])=0=>(BraKet[ϕ(t), ψ(t)])=(Bra[ϕ(0)])(SuperDagger[(OverHat[U])(t)])(OverHat[U])(t)(Ket[ψ(0)])=0.

Identical states remain the identical:

(BraKet[ψ(0), ψ(0)])=1=>(BraKet[ψ(t), ψ(t)])=(Bra[ψ(0)])(SuperDagger[(OverHat[U])(t)])(OverHat[U])(t)(Ket[ψ(0)])=1.

Or, the fact that the normalization condition must be preserved.

(Bra[i])(SuperDagger[(OverHat[U])(t)])(OverHat[U])(t)(Ket[j])=(Subscript[δ, i j])=>(SuperDagger[(OverHat[U])(t)])(OverHat[U])(t)=𝟙.

Hamiltonian

(OverHat[H])=i (OverHat[U])'(0)=i (∂_t)(OverHat[U])(t)(Subscript[|, t=0]).

(OverHat[U])(Δ t)=𝟙-i (OverHat[H]) Δ t+...,

(Ket[ψ(Δ t)])=(OverHat[U])(Δ t)(Ket[ψ(0)])=(Ket[ψ(0)])-i Δ t (OverHat[H])(Ket[ψ(0)]),

i (∂_t)(Ket[ψ(0)])=i (((Ket[ψ(Δ t)])-(Ket[ψ(0)]))/(Δ t))=(OverHat[H])(Ket[ψ(0)]).

i(∂_t)(Ket[ψ(t)])=(OverHat[H])(Ket[ψ(t)]).

The Hamiltonian (OverHat[H])(t)=i (OverHat[U])'(t) can be time-dependent in general.

But in many cases, we consider (OverHat[H]) to be time-independent, by assuming the time-translation symmetry.

ℏ=(h/(2π))=1.0545718(13)×(10^(-34))J s.

i ℏ(∂_t)(Ket[ψ(t)])=(OverHat[H])(Ket[ψ(t)]).

Schrödinger Equation: State Dynamics

(Ket[(Subscript[E, k])(t)])=(e^(-(i/ℏ)(Subscript[E, k]) t))(Ket[(Subscript[E, k])]).

(Ket[(Subscript[E, k])]) form a complete set of orthonormal basis, called energy eigenbasis.

Verify that Eq. () is a solution of Eq. ():

i ℏ(∂_t)(Ket[(Subscript[E, k])(t)])=i ℏ(∂_t)((e^(-(i/ℏ)(Subscript[E, k]) t))(Ket[(Subscript[E, k])]))
=i ℏ(∂_t)((e^(-(i/ℏ)(Subscript[E, k]) t)))(Ket[(Subscript[E, k])])
=(Subscript[E, k])(e^(-(i/ℏ)(Subscript[E, k]) t))(Ket[(Subscript[E, k])])
=(Subscript[E, k])(Ket[(Subscript[E, k])(t)]),

(OverHat[H])(Ket[(Subscript[E, k])(t)])=(e^(-(i/ℏ)(Subscript[E, k]) t))(OverHat[H])(Ket[(Subscript[E, k])])
=(e^(-(i/ℏ)(Subscript[E, k]) t))(Subscript[E, k])(Ket[(Subscript[E, k])])
=(Subscript[E, k])(Ket[(Subscript[E, k])(t)]).

(Ket[ψ(t)])=(∑_i)(e^(-(i/ℏ)(Subscript[E, i]) t))(Ket[(Subscript[E, i])])(BraKet[(Subscript[E, i]), ψ(0)])
=(e^(-(i/ℏ) (OverHat[H]) t))(Ket[ψ(0)]).

(OverHat[U])(t)=𝒯 exp(-(i/ℏ)(∫_0^t)(OverHat[H])(t')dt').

Larmor Precession and Rabi Oscillation

derive it from experiment,

borrow it from some theory we like,

pick one and see what happens.☜

(OverHat[H])=(Subscript[h, 0])𝟙+(Subscript[h, x])((OverHat[σ])^x)+(Subscript[h, y])((OverHat[σ])^y)+(Subscript[h, z])((OverHat[σ])^z)
=(Subscript[h, 0])𝟙+h·(OverHat[σ]),

The time-evolution operator (set ℏ=1 in the following)

(OverHat[U])(t)=(e^(-i (OverHat[H]) t))
=(e^(-i (Subscript[h, 0])t))(cos(|h|t)𝟙-i sin(|h|t)(OverTilde[h])·(OverHat[σ])),

where |h|=(Sqrt[h·h]) and (OverTilde[h])=h/|h|.

Derive Eq. () from Eq. ().

(OverHat[U])(t)=(e^(-i (OverHat[H]) t))
=(e^(-i ((Subscript[h, 0])𝟙+h·(OverHat[σ])) t))
=(e^(-i (Subscript[h, 0])t))exp(-i |h|(OverTilde[h])·(OverHat[σ]) t)
=(e^(-i (Subscript[h, 0])t))(cos(|h|t)𝟙-i sin(|h|t)(OverTilde[h])·(OverHat[σ])).

A state (Ket[ψ(0)]) will evolve with time following

(Ket[ψ(t)])=(OverHat[U])(t)(Ket[ψ(0)])
=(e^(-i (Subscript[h, 0])t))(cos(|h|t)𝟙-i sin(|h|t)(OverTilde[h])·(OverHat[σ]))(Ket[ψ(0)]).

If we measure σ on the state (Ket[ψ(t)]), the expectation value will be given by

(Subscript[⟨σ⟩, t])=(Bra[ψ(t)])(OverHat[σ])(Ket[ψ(t)])
=cos(2|h|t)(Subscript[⟨σ⟩, 0])+sin(2|h|t)(OverTilde[h])×(Subscript[⟨σ⟩, 0])+(1-cos(2|h|t))(OverTilde[h])((OverTilde[h])·(Subscript[⟨σ⟩, 0])).

which also evolves with time.

Derive Eq. () from Eq. ().
Hint: Eq. () can make life much more easier.

m·(Subscript[⟨σ⟩, t])=(Bra[ψ(t)])m·(OverHat[σ])(Ket[ψ(t)])=(Bra[ψ(0)])(cos(|h|t)𝟙+i sin(|h|t)(OverTilde[h])·(OverHat[σ]))m·σ(cos(|h|t)𝟙-i sin(|h|t)(OverTilde[h])·(OverHat[σ]))(Ket[ψ(0)]).

(cos(|h|t)𝟙+i sin(|h|t)(OverTilde[h])·(OverHat[σ]))m·(OverHat[σ])(cos(|h|t)𝟙-i sin(|h|t)(OverTilde[h])·(OverHat[σ]))
=(cos^2)(|h|t)m·(OverHat[σ])+i sin(|h|t)cos(|h|t)((OverTilde[h])·(OverHat[σ]) m·(OverHat[σ])-m·(OverHat[σ])(OverTilde[h])·(OverHat[σ]))+(sin^2)(|h|t)(OverTilde[h])·(OverHat[σ]) m·(OverHat[σ])(OverTilde[h])·(OverHat[σ]).

(OverTilde[h])·(OverHat[σ]) m·(OverHat[σ])=(OverTilde[h])·m 𝟙+i ((OverTilde[h])×m)·(OverHat[σ]),
m·(OverHat[σ])(OverTilde[h])·(OverHat[σ])=(OverHat[h])·m 𝟙-i ((OverTilde[h])×m)·(OverHat[σ]),
(OverTilde[h])·(OverHat[σ]) m·(OverHat[σ])(OverTilde[h])·(OverHat[σ])=(OverTilde[h])·m (OverTilde[h])·(OverHat[σ])+i ((OverTilde[h])×m)·(OverHat[σ])(OverTilde[h])·(OverHat[σ])
=(OverTilde[h])·m (OverTilde[h])·(OverHat[σ])+i(((OverTilde[h])×m)·(OverTilde[h])𝟙+i(((OverTilde[h])×m)×(OverTilde[h]))·(OverHat[σ]))
=(OverTilde[h])·m (OverTilde[h])·(OverHat[σ])-(((OverTilde[h])×m)×(OverTilde[h]))·(OverHat[σ])
=(OverTilde[h])·m (OverTilde[h])·(OverHat[σ])-((OverTilde[h])·(OverTilde[h])m·(OverHat[σ])-(OverTilde[h])·m(OverTilde[h])·(OverHat[σ]))
=2(OverTilde[h])·m (OverTilde[h])·(OverHat[σ])-m·(OverHat[σ]).

(cos^2)(|h|t)m·(OverHat[σ])-2 sin(|h|t)cos(|h|t) ((OverTilde[h])×m)·(OverHat[σ])+(sin^2)(|h|t)(2(OverTilde[h])·m (OverTilde[h])·(OverHat[σ])-m·(OverHat[σ]))
=cos(2|h|t)m·(OverHat[σ])+sin(2|h|t)m· ((OverTilde[h])×(OverHat[σ]))+(1-cos(2|h|t))(OverTilde[h])·m (OverTilde[h])·(OverHat[σ]).

m·(Subscript[⟨σ⟩, t])=cos(2|h|t)m·(Subscript[⟨σ⟩, 0])+sin(2|h|t)m· ((OverTilde[h])×(Subscript[⟨σ⟩, 0]))+(1-cos(2|h|t))(OverTilde[h])·m (OverTilde[h])·(Subscript[⟨σ⟩, 0]).

(Subscript[⟨σ⟩, t])=(sin (Subscript[θ, 0])cos ((Subscript[φ, 0])+2(Subscript[h, z])t), sin (Subscript[θ, 0]) sin((Subscript[φ, 0])+2(Subscript[h, z])t),cos (Subscript[θ, 0])),

The solution describes the spin ⟨σ⟩ precessing around the axis of the Zeeman field h.

Block[{θ=π/4},Graphics3D[{EdgeForm[None],{Red,Sphere[{0,0,0},0.4],Tube[#{-Sin[θ],0,Cos[θ]}&/@{-1,0.6},0.1],Cone[#{-Sin[θ],0,Cos[θ]}&/@{0.6,1.5},0.2],Text["\!\(⟨σ⟩\)",1.5{-Sin[θ],0,Cos[θ]},{1,-0.5}]},
{Blue,Tube[{0,0,#}&/@{-1.5,1.5},0.05],Cone[{0,0,#}&/@{1.5,2},0.1],Text[Style["\!\( h\)",Bold],{0,0,2},{0,-0.5}]},
{Arrowheads[{0.08,#}&/@{0.25,0.5,0.75}],Dashed,Arrow[Table[1.5{-Sin[θ]Cos[ϕ],-Sin[θ]Sin[ϕ],Cos[θ]},{ϕ,0,2π,π/32}]]}},Lighting->"Neutral",Boxed->False,ImageSize->80]]

The precession frequency ω=2|h| is called the Larmor frequency. It can be used to probe the local Zeeman field strength, which has applications in nuclear magnetic resonance (NMR) and nitrogen-vacancy (NV) center.

Energy of a spin in the Zeeman field is ⟨H⟩=-h·⟨σ⟩ (up to some constant energy shift (Subscript[h, 0])).

(OverHat[H])=Ω ((OverHat[σ])^x)+Δ ((OverHat[σ])^z)≏(({{Δ, Ω}, {Ω, -Δ}})),

(Subscript[p(1|0), t])=((1-(Subscript[⟨(σ^z)⟩, t]))/2)=(((sin^2)(ω t/2))/(1+(((Δ/Ω))^2))),

Row@{Plot[Evaluate@Table[Sin[Sqrt[1+Δ^2] Ωt/2]^2/(1+Δ^2),{Δ,{0,1,2}}],{Ωt,0,4π},FrameLabel->{"\!\(Ω t\)","\!\(p(1|0)\_t\)"},FrameTicks->{{Automatic,Automatic},{π Range[0,4],None}},GridLines->{π Range[0,4],{0,1}},BaselinePosition->Scaled[0.64],ImageSize->180],
Grid[{Graphics[{#1,Line[{{0,0},{1,0}}]},AspectRatio->0.1,ImageSize->20],Style[StringTemplate["\!\(Δ/Ω=`1`\)"][#2],FontFamily->"CMU"]}&@@@{{Blue,0},{Red,1},{Green,2}},Spacings->{Automatic, 0.1}]}

Rabi π-Pulse: flipping (Ket[0]) to (Ket[1]) (and vice versa) by a π-pulse (turn on the driving field Ω for time t=π/Ω and turn off) at resonance Δ=0. This implements a NOT gate (or X gate) on a single qubit.

Heisenberg Equation: Operator Dynamics

Schrödinger picture: state evolves in time, operator remains fixed,

⟨O(t)⟩=(Bra[ψ(t)])(OverHat[O])(Ket[ψ(t)]).

Heisenberg picture: operator evolves in time, state remains fixed,

⟨O(t)⟩=(Bra[ψ])(OverHat[O])(t)(Ket[ψ]).

(Ket[ψ(t)])=(OverHat[U])(t)(Ket[ψ])⇔(OverHat[O])(t)=(SuperDagger[(OverHat[U])(t)])(OverHat[O]) (OverHat[U])(t),

⟨O(t)⟩=(Bra[ψ])(SuperDagger[(OverHat[U])(t)])(OverHat[O]) (OverHat[U])(t)(Ket[ψ]).

Derive Eq. () from Eq. ().

(OverHat[O])(Δ t)=(SuperDagger[(OverHat[U])(Δ t)])(OverHat[O]) (OverHat[U])(Δ t)
=(e^(i (OverHat[H]) Δ t))(OverHat[O]) (e^(-i (OverHat[H]) Δ t))
=(𝟙+i (OverHat[H]) Δ t+…)(OverHat[O]) (𝟙-i (OverHat[H]) Δ t+…)
=(OverHat[O])+i ((OverHat[H]) (OverHat[O])-(OverHat[O]) (OverHat[H])) Δ t+…
=(OverHat[O])-i [(OverHat[O]),(OverHat[H])] Δ t+…

i (∂_t)(OverHat[O])=i(((OverHat[O])(Δ t)-(OverHat[O]))/(Δ t))=[(OverHat[O]),(OverHat[H])].

i ℏ(∂_t)⟨O(t)⟩=⟨[(OverHat[O])(t),(OverHat[H])]⟩.