Skip to Content
CSE5313Exam reviews and finalsCSE5313 Final Project

CSE5313 Final Project

Description

Write a report which presents the paper in detail and criticizes it constructively. Below are some suggestions to guide a proper analysis of the paper:

  • What is the problem setting? What is the motivation behind this problem?
  • Which tools are being used? How are these tools related to the topics we have seen in class/HW?
  • Is the paper technically sound, easy to read, and does the problem make sense?
  • Are there any issues with the paper? If so, suggest ways these could be fixed.
  • What is the state of the art in this topic? Were there any major follow-up works? What are major open problems or new directions?
  • Suggest directions for further study and discuss how should those be addressed.

Please typeset your work using a program such as Word or LaTeX, and submit via Gradescope by Dec. 10th (EOD).

Reports will be judged by the depth and breadth of the analysis. Special attention will be given to clarity and organization, including proper abstract, introduction, sections, and citation of previous works.

There is no page limit, but good reports should contain 4-6 single-column pages. Please refer to the syllabus for our policy regarding the use of GenAI.

Paper selection

Good quantum error-correcting codes exist 

Tip

I will build the self-contained report that is readable for me 7 months ago, assuming no knowledge in quantum computing and quantum information theory.

We will use notation defined in class and [n]={1,,n1,n}[n]=\{1,\cdots,n-1,n\}, (yes, we use 1 indexed in computer science) each in natural number. And Fq\mathbb{F}_q is the finite field with qq elements.

Warning

This notation system is annoying since in mathematics, AA^* is the transpose of AA, but since we are using literatures in physics, we keep the notation of AA^*. In this report, I will try to make the notation consistent as possible and follows the physics convention in this report. So every vector you see will be in ψ\ket{\psi} form. And we will avoid using the v,w\langle v,w\rangle notation for inner product as it used in math, we will use vw\langle v|w\rangle or v,w\langle v,w\rangle to denote the inner product.

A quantum error-correcting code is defined to be a unitary mapping (encoding) of kk qubits (two-state quantum systems) into a subspace of the quantum state space of nn qubuits such that if any tt of the qubits undergo arbitary decoherence, not necessarily independently, the resulting nn qubit state can be used to faithfully reconstruct the original quantum state of the kk encoded qubits.

Asymptotic rate k/n=12H2(2t/n)k/n=1-2H_2(2t/n), where H2H_2 is the binary entropy function

H2=plog2(p)(1p)log2(1p)H_2=-p\log_2(p)-(1-p)\log_2(1-p)

Problem setting and motivation

Linear algebra 102

The main vector space we are interested in is Cn\mathbb{C}^n, therefore, all the linear operator we defined are from Cn\mathbb{C}^n to Cn\mathbb{C}^n.

We denote a vector in vector space as ψ=(z1,,zn)\ket{\psi}=(z_1,\cdots,z_n) (might also be infinite dimensional, and ziCz_i\in\mathbb{C}).

A natural inner product space defined on Cn\mathbb{C}^n is given by the Hermitian inner product:

ψφ=i=1nzizˉi\langle\psi|\varphi\rangle=\sum_{i=1}^n z_i\bar{z}_i

This satisfies the following properties:

  1. ψiλiφ=iλiψφ\bra{\psi}\sum_i \lambda_i\ket{\varphi}=\sum_i \lambda_i \langle\psi|\varphi\rangle (linear on the second argument)
  2. φψ=(ψφ)\langle\varphi|\psi\rangle=(\langle\psi|\varphi\rangle)^*
  3. ψψ0\langle\psi|\psi\rangle\geq 0 with equality if and only if ψ=0\ket{\psi}=0

Here ψ\psi is just a label for the vector and you don’t need to worry about it too much. This is also called the ket, where the counterpart:

  • ψ\langle\psi\rangle is called the bra, used to denote the vector dual to ψ\psi, such element is a linear functional if you really wants to know what that is.
  • ψφ\langle\psi|\varphi\rangle is the inner product between two vectors, and ψAφ\bra{\psi} A\ket{\varphi} is the inner product between AφA\ket{\varphi} and ψ\bra{\psi}, or equivalently AψA^\dagger \bra{\psi} and φ\ket{\varphi}.
  • Given a complex matrix A=Cn×nA=\mathbb{C}^{n\times n},
    • AA^* is the complex conjugate of AA.
      • i.e., A=[1+i2+i3+i4+i5+i6+i7+i8+i9+i]A=\begin{bmatrix}1+i & 2+i & 3+i\\4+i & 5+i & 6+i\\7+i & 8+i & 9+i\end{bmatrix}, A=[1i2i3i4i5i6i7i8i9i]A^*=\begin{bmatrix}1-i & 2-i & 3-i\\4-i & 5-i & 6-i\\7-i & 8-i & 9-i\end{bmatrix}
    • AA^\top is the transpose of AA.
      • i.e., A=[1+i2+i3+i4+i5+i6+i7+i8+i9+i]A=\begin{bmatrix}1+i & 2+i & 3+i\\4+i & 5+i & 6+i\\7+i & 8+i & 9+i\end{bmatrix}, A=[1+i4+i7+i2+i5+i8+i3+i6+i9+i]A^\top=\begin{bmatrix}1+i & 4+i & 7+i\\2+i & 5+i & 8+i\\3+i & 6+i & 9+i\end{bmatrix}
    • A=(A)A^\dagger=(A^*)^\top is the complex conjugate transpose, referred to as the adjoint, or Hermitian conjugate of AA.
      • i.e., A=[1+i2+i3+i4+i5+i6+i7+i8+i9+i]A=\begin{bmatrix}1+i & 2+i & 3+i\\4+i & 5+i & 6+i\\7+i & 8+i & 9+i\end{bmatrix}, A=[1i4i7i2i5i8i3i6i9i]A^\dagger=\begin{bmatrix}1-i & 4-i & 7-i\\2-i & 5-i & 8-i\\3-i & 6-i & 9-i\end{bmatrix}
    • AA is unitary if AA=AA=IA^\dagger A=AA^\dagger=I.
    • AA is hermitian (self-adjoint in mathematics literatures) if A=AA^\dagger=A.

Motivation of Tensor product

Recall from the traditional notation of product space of two vector spaces VV and WW, that is, V×WV\times W, is the set of all ordered pairs (v,w)(\ket{v},\ket{w}) where vV\ket{v}\in V and wW\ket{w}\in W.

The space has dimension dimV+dimW\dim V+\dim W.

We want to define a vector space with notation of multiplication of two vectors from different vector spaces.

That is

(v1+v2)w=(v1w)+(v2w)(\ket{v_1}+\ket{v_2})\otimes \ket{w}=(\ket{v_1}\otimes \ket{w})+(\ket{v_2}\otimes \ket{w}) v(w1+w2)=(vw1)+(vw2)\ket{v}\otimes (\ket{w_1}+\ket{w_2})=(\ket{v}\otimes \ket{w_1})+(\ket{v}\otimes \ket{w_2})

and enables scalar multiplication by

λ(vw)=(λv)w=v(λw)\lambda (\ket{v}\otimes \ket{w})=(\lambda \ket{v})\otimes \ket{w}=\ket{v}\otimes (\lambda \ket{w})

And we wish to build a way associates the basis of VV and WW to the basis of VWV\otimes W. That makes the tensor product a vector space with dimension dimV×dimW\dim V\times \dim W.

Definition of linear functional

Tip

Note the difference between a linear functional and a linear map.

A generalized linear map is a function f:VWf:V\to W satisfying the condition

  1. f(u+v)=f(u)+f(v)f(\ket{u}+\ket{v})=f(\ket{u})+f(\ket{v})
  2. f(λv)=λf(v)f(\lambda \ket{v})=\lambda f(\ket{v})

A linear functional is a linear map from VV to F\mathbb{F}.

Definition of bilinear functional

A bilinear functional is a bilinear function β:V×WF\beta:V\times W\to \mathbb{F} satisfying the condition that vβ(v,w)\ket{v}\to \beta(\ket{v},\ket{w}) is a linear functional for all wW\ket{w}\in W and wβ(v,w)\ket{w}\to \beta(\ket{v},\ket{w}) is a linear functional for all vV\ket{v}\in V.

The vector space of all bilinear functionals is denoted by B(V,W)\mathcal{B}(V,W).

Definition of tensor product

Let V,WV,W be two vector spaces.

Let VV' and WW' be the dual spaces of VV and WW, respectively, that is V={ψ:VF}V'=\{\psi:V\to \mathbb{F}\} and W={ϕ:WF}W'=\{\phi:W\to \mathbb{F}\}, ψ,ϕ\psi, \phi are linear functionals.

The tensor product of vectors vVv\in V and wWw\in W is the bilinear functional defined by (ψ,ϕ)V×W\forall (\psi,\phi)\in V'\times W' given by the notation

(vw)(ψ,ϕ)ψ(v)ϕ(w)(v\otimes w)(\psi,\phi)\coloneqq\psi(v)\phi(w)

The tensor product of two vector spaces VV and WW is the vector space B(V,W)\mathcal{B}(V',W')

Notice that the basis of such vector space is the linear combination of the basis of VV' and WW', that is, if {ei}\{e_i\} is the basis of VV' and {fj}\{f_j\} is the basis of WW', then {eifj}\{e_i\otimes f_j\} is the basis of B(V,W)\mathcal{B}(V',W').

That is, every element of B(V,W)\mathcal{B}(V',W') can be written as a linear combination of the basis.

Since {ei}\{e_i\} and {fj}\{f_j\} are bases of VV' and WW', respectively, then we can always find a set of linear functionals {ϕi}\{\phi_i\} and {ψj}\{\psi_j\} such that ϕi(ej)=δij\phi_i(e_j)=\delta_{ij} and ψj(fi)=δij\psi_j(f_i)=\delta_{ij}.

Here δij={1if i=j0otherwise\delta_{ij}=\begin{cases} 1 & \text{if } i=j \\ 0 & \text{otherwise} \end{cases} is the Kronecker delta.

VW={i=1nj=1maijϕi(v)ψj(w):ϕiV,ψjW}V\otimes W=\left\{\sum_{i=1}^n \sum_{j=1}^m a_{ij} \phi_i(v)\psi_j(w): \phi_i\in V', \psi_j\in W'\right\}

Note that i=1nj=1maijϕi(v)ψj(w)\sum_{i=1}^n \sum_{j=1}^m a_{ij} \phi_i(v)\psi_j(w) is a bilinear functional that maps V×WV'\times W' to F\mathbb{F}.

This enables basis free construction of vector spaces with proper multiplication and scalar multiplication.

This vector space is equipped with the unique inner product vw,uxVW\langle v\otimes w, u\otimes x\rangle_{V\otimes W} defined by

vw,ux=v,uVw,xW\langle v\otimes w, u\otimes x\rangle=\langle v,u\rangle_V\langle w,x\rangle_W

In practice, we ignore the subscript of the vector space and just write vw,ux=v,uw,x\langle v\otimes w, u\otimes x\rangle=\langle v,u\rangle\langle w,x\rangle.

Note

All those definitions and proofs can be found in Linear Algebra Done Right by Sheldon Axler.

Definition of two-state quantum system

The finite dimensional Hilbert space $\mathcscr{H}

Definition of Coherent states from the view of physics

Side node: Why quantum error-correcting code is hard

Decoherence process

No-cloning theorem

Reference from P.532 of the book

Suppose we have a quantum system with two slots AA, and BB, the data slot, starts out in an unknown but pure quantum state ψ\ket{\psi}. This is the state which is to be copied into slot BBm the target slot. We assume that the target slot starts out in some standard pure state s\ket{s}. Thus the initial state of the copying machine is ψs\ket{\psi}\otimes \ket{s}.

Assume there exists some unitary operator UU such that U(ψs)=ψψU(\ket{\psi}\otimes \ket{s})=\ket{\psi}\otimes \ket{\psi}.

Consider two pure states ψ\ket{\psi} and φ\ket{\varphi}, such that U(ψs)=ψψU(\ket{\psi}\otimes \ket{s})=\ket{\psi}\otimes \ket{\psi} and U(φs)=φφU(\ket{\varphi}\otimes \ket{s})=\ket{\varphi}\otimes \ket{\varphi}. The inner product of the two equation yields:

ψφ=(ψφ)2\langle \psi|\varphi\rangle =(\langle \psi|\varphi\rangle)^2

This equation has only two solutions, either ψφ=0\langle \psi|\varphi\rangle=0 or ψφ=1\langle \psi|\varphi\rangle=1.

If ψφ=0\langle \psi|\varphi\rangle=0, then ψ=φ\ket{\psi}=\ket{\varphi}, no cloning for trivial case.

If ψφ=1\langle \psi|\varphi\rangle=1, then ψ\ket{\psi} and φ\ket{\varphi} are orthogonal.

Proposition: Encoding 8 to 9 that correct 1 errors

Recover 1 qubit from a 9 qubit quantum system. (Shor code, 1995)

Shore code

Theoretical upper bound for quantum error-correcting code

From quantum information capacity of a quantum channel

min{1H2(2t/3n),H2(12+(1t/n)t/n)}\min\{1-H_2(2t/3n),H_2(\frac{1}{2}+\sqrt{(1-t/n)t/n})\}

Definition of quantum error-correcting code from binary linear error-correcting code

All the operations will be done in F2={0,1}\mathbb{F}_2=\{0,1\}.

Consider two binary vectors v=[v1,...,vn],vi{0,1}v=[v_1,...,v_n],v_i\in\{0,1\} and w=[w1,...,wn],wi{0,1}w=[w_1,...,w_n],w_i\in\{0,1\} with size nn.

Recall from our lecture that

dd denotes the Hamming weight of a vector.

dH(v,w)=i=1n{0if vi=wi1if viwid_H(v,w)=\sum_{i=1}^{n}\begin{cases} 0 & \text{if } v_i=w_i \\ 1 & \text{if } v_i\neq w_i \end{cases} denotes the Hamming distance between vv and ww.

supp(v)={i[n]:vi0}\operatorname{supp}(v)=\{i\in[n]:v_i\neq 0\} denotes the support of vv.

vSv|_S denotes the projection of vv onto the subspace SS, we usually denote the SS by a set of coordinates, that is S[n]S\subseteq[n].

When projecting a vector vv onto a another vector ww, we usually write vEvsuppwv|_E\coloneqq v|_{\operatorname{supp} w}.

When we have two vector we may use vwv\leqslant w (Note that this is different than \leq sign) to mean supp(v)supp(w)\operatorname{supp}(v)\subseteq \operatorname{supp}(w).

Example

Let v=[1,0,0,1,1,1,1]v=[1,0,0,1,1,1,1] and w=[1,0,0,1,0,0,1]w=[1,0,0,1,0,0,1], then supp(v)={1,4,5,6,7}\operatorname{supp}(v)=\{1,4,5,6,7\}, supp(w)={1,4,7}\operatorname{supp}(w)=\{1,4,7\}. Therefore wvw\leqslant v.

vw=[v1,v4,v7]=[1,1,0]v|_w=[v_1,v_4,v_7]=[1,1,0]

C\mathcal{C} denotes the code, a set of arbitrary binary vectors with length nn.

d(C)={d(v,w)v,wC}d(\mathcal{C})=\{d(v,w)|v,w\in\mathcal{C}\} denotes the minimum distance of the code.

If C\mathcal{C} is linear then the minimum distance is the minimum Hamming weight of a non-zero codeword.

A [n,k,d][n,k,d] linear code is a linear code of nn bits codeword with kk message bits that can correct dd errors.

RdimCnR\coloneqq\frac{\operatorname{dim}\mathcal{C}}{n} is the rate of code C\mathcal{C}.

C{vF2n:vw=0 for all wC}\mathcal{C}^{\perp}\coloneqq\{v\in\mathbb{F}_2^n:v\cdot w=0\text{ for all }w\in\mathcal{C}\} is the dual code of a code C\mathcal{C}. From linear algebra, we know that dimC+dimC=n\dim\mathcal{C}^{\perp}+\dim\mathcal{C}=n.

Example used in the paper

Consider the [7,4,3][7,4,3] Hamming code with generator matrix GG.

Proposition: Encoding kk to nn that correct tt errors

Evaluation of paper

Limitation and suggestions

Further direction and research

Toric code, surface code

This is the topic I really want to dig into.

This method gives a [2nm+n+m+1, 1, min(n,m)] error correcting code with only needs local stabilizer checks and really interests me.

References

Last updated on