2

In the following paper: https://arxiv.org/pdf/2409.18175

They give a $[[4,2,2]]$ code with generator matrix $$G:=\begin{bmatrix} X & X & X & X \\ Z & Z & Z & Z \end{bmatrix}$$

We are told that the check matrix of the embedded code is:

$$G_{V} := \begin{bmatrix} G_{X} & G_{X}M^{T}& G_{Z} & 0 \\ 0 & 0 & M & I \end{bmatrix}= \begin{bmatrix} 1 & 1 & 1 & 1 & & 0 & 0 & 0 & 0 & 0 & 0 & | & 0 & 0 & 0 & 0 & & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & & 0 & 0 & 0 & 0 & 0 & 0 & | & 1 & 1 & 1 & 1 & & 0 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & & 0 & 0 & 0 & 0 & 0 & 0 & | & 1 & 1 & 0 & 0 & & 1 & 0 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & & 0 & 0 & 0 & 0 & 0 & 0 & | & 1 & 0 & 1 & 0 & & 0 & 1 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & & 0 & 0 & 0 & 0 & 0 & 0 & | & 1 & 0 & 0 & 1 & & 0 & 0 & 1 & 0 & 0 & 0 \\ 0 & 0 & 0 & 0 & & 0 & 0 & 0 & 0 & 0 & 0 & | & 0 & 1 & 1 & 0 & & 0 & 0 & 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 0 & & 0 & 0 & 0 & 0 & 0 & 0 & | & 0 & 1 & 0 & 1 & & 0 & 0 & 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 0 & & 0 & 0 & 0 & 0 & 0 & 0 & | & 0 & 0 & 1 & 1 & & 0 & 0 & 0 & 0 & 0 & 1 \\ \end{bmatrix}$$

We are also told that $$V:=\begin{bmatrix} I \\ M \end{bmatrix}$$ and that the embedding operator $\epsilon_{V}$ on $n+m$ qubits is defined as follows. Let $v_{j}$ be row of $V$ and $j > n$. Let $i$ be in the support of $v_{j}$. Define: $$U_{j}:=\Pi CNOT_{ij}$$ $$\epsilon_{V}:=\Pi U_{j}$$

Their algorithm for finding logical operators gives the following example for an operator acting on $2$ qubits:

Let $n:=2, V:=\begin{bmatrix} 1 & 0 \\ 0 & 1 \\ 1 & 1 \end{bmatrix}$ so that $v_{2}=11$. In this case, $\epsilon_{V} = U_{2} = CNOT_{02}CNOT_{12}$. Here we calculate the action og $U_{2}$ on a computational basis vector of form $| x_{0},x_{1},0 \rangle$. We have: $$U_{2}|x_{0}x_{1},0 \rangle = CNOT_{02}CNOT_{12}|x_{0},x_{1},0 \rangle$$ $$=CNOT_{02}|x_{0},x_{1},x_{1} \rangle$$ $$=|x_{0},x_{1},x_{0} \oplus x_{1}$$


I understand how they achieved the result in the example with $n=2$, but I don't understand how this works for the case of $n=4$.

I think that $V$ should be: $$V = \begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \\ 1 & 1 & 0 & 0 \\ 1 & 0 & 1 & 0 \\ 1 & 0 & 0 & 1 \\ 0 & 1 & 1 & 0 \\ 0 & 1 & 0 & 1 \\ 0 & 0 & 1 & 1 \end{bmatrix}.$$

So then would $U_{4} =CNOT_{1,4}CNOT_{5,4}CNOT_{6,4}$, or have I got the right idea here? Am I on the right track?

am567
  • 771
  • 2
  • 8

1 Answers1

1

The embedding method basically works by embedding the original $n$ qubits to a code with $$n+\binom{n}{2}$$ qubits, where the extra $\binom{n}{2}$ qubits are initialised in the $|0\rangle$ state. Then use: $CNOT(0,2)CNOT(1,2)SWAP(0,2)CNOT(1,2)CNOT(0,2) = CNOT(1,0)(+R(2)).$

Since we don't actually have the extra qubit, from the original code's perspective this operates as a CNOT. It's basically a trick to express CNOTs as permutations, but it does have its limitations.

Your V looks right, but the $U_4$ doesn't. It should be embedding the original $4$ qubit space, into a $4+\binom{4}{2}=10$ qubit space. Each new qubit is initialised in the $|0\rangle$ state and is C-notted by a distinct pair of qubits from the original $4$, so the embedding operator will be $$U_4 = CNOT(0,4)CNOT(1,4)CNOT(0,5)CNOT(2,5)...CNOT(2,9)CNOT(3,9)$$.

The explanation and the formula is given in Appendix D1.

The following notebook might be helpful: repo.

user35159
  • 151
  • 4