Ron Cohen
22 ביוני 2022
.
Hi There, today we are about to integrate the Stabilizers subject that we learned in the pocket guide, with the Repetition Code that we learned in the last article. This small example will help us to understand better the important analysis of surface code using the stabilizer's point of view.
We will also learn today about the more interesting types of errors - Coherent Errors - and how we deal with them using Stabilizer.
Spoiler Alert - Let's Start from the End
Just to remind how the code looks like:
To make it simple, let's start from the end. For the repetition code that we analyzed in the last article, we say that its stabilizer group is the group of 3 operators: Z1Z2, Z2Z3, and Z3Z1.
What is special about those 3 guys? ZaZb measurement is an operation that collapses (like any quantum measurement) the state that it measures to 1 of 2 possible cases that are the eigenstate of ZaZb. And what are the eigenstates of such an operator?
Case A - quantum terms that have an even number of 1s in their states - |00> and |11>. Those will have a positive eigenvalue since each Z will take even times of minus sign out of the term.
Case B - quantum terms that have an odd number of 1s in their states - |01> and |10>. Those will have a negative eigenvalue since each Z will take odd times of minus sign out of the term.
Wow! this is exactly what the repetition code is doing! Notice how the CNOT gate will flip twice the ancilla, in terms that have even parity, and vice versa. And how the measurement of ancilla makes sure that only one of the cases will survive! (Check the repetition Code tutorial again to convince yourself).
So now we understand what is the meaning when we say Z1Z2, Z2Z3, and Z3Z1 are the stabilizers of the repetition code.
Coheren Errors
I lied to you, sorry, I just wanted to make your life easier, but from now on will start to talk about real errors. You might think that the only error that can happen to a qubit is some Pauli X / Y / Z in some probability p. Actually, quantum states are very fragile and can have errors in 100% probability, most of the time those errors will be a small unitary rotation on the Bloch Sphere.
This type of error, we call Coherent Errors. Most of the time we will describe them as an operator that is a sum of 4 operators, that create a superposition of 4 things that happened to the state: I, X, Y, Z!
And why is that possible? Let's look at the math of an example of Rx rotation. Consider a general unitary X rotation error operation that happened to the state:
Notice the Rx rotation is splitting the original state (that didn't have any error) to a superposition of 2 cases - nothing happened to it (with big amplitude) and X happened to it (with small amplitude):
Collapse the State
What will happen when we will try to make an error correction on such an error? We know how to solve each of the I / X cases separately, but we still don't know what will happen if the state is in a superposition of I and X at the same time!
And since I like spoilers, spoiler alert! - we will collapse to one of the 2 cases of I/X, in a probability that depends on the rotation of the angle! + We will know if X happened and we will know to correct it! Let's see it in the math:
So if we examine the final state just before measurement, we know that each 1 of the stabilizers of the code will allow only 1 of its 2 eigenstates, so the only terms that will survive are terms that have matching eigenvalues of the stabilizers:
This process can be generalized to any general unitary rotation around the Bloch Sphere, which can be described as a linear combination of I, X, Y, and Z:
This is a great time to return to the last chapter of the hatching duckling pocket guide in the last chapter and to convince yourself about this other type of stabilizer and how it deals with Coherent Errors.
Please vote:
💡 If you learned anything new
🤔If it was all a piece of cake for you, but you still want to learn more about QEC
👏If you are professional ducks, that liked the explanation
👍If you just want to share your love :)
🙋 Please feel free to ask anything! 🙋
Stay tuned...