In Chapter 5, we already built up a good collection of practical tools for working efficiently with Clifford diagrams and circuits using rewriting. However, this is quite different from the toolkit one more typically encounters in the literature. An alternative way to work with Clifford maps is to focus not on the maps themselves, but rather families of Pauli operators that stabilise them. This approach is sometimes referred to as stabiliser theory or the stabiliser formalism. In this section, we will see that this formalism gives a fully equivalent way to represent and efficiently simulate Clifford maps. In order to do this, we will develop a theory of Pauli projections, which are maps that project onto the or eigenspace of an -qubit Pauli operator. Interestingly, these always chop a space precisely in half: the -dimensional space of qubits can be regarded as the direct sum of two -dimensional subspaces in the range of a Pauli projection and its orthocomplement. As we’ll see, subsequent commuting Pauli projections will further chop the space in half, until we get all the way down to a dimensional space. This leads us to what we will call the Fundamental Theorem of Stabiliser Theory in Section 6.2.1, which states that independent, commuting Pauli operators on qubits uniquely fix a -dimensional subspace of . In particular, when , this gives us a 1D space so that it uniquely fixes a state up to a scalar factor. We will see that these states, often called stabiliser states in the literature, are precisely the Clifford states we saw in Chapter 5. We will also see that all of the interesting things we might want to compute about a stabiliser state, such as its evolution through a Clifford circuit or measurement probabilities, can be computed in terms of its associated Pauli operators. This gives us a powerful second perspective on Clifford maps, which we will apply to quantum error correction and fault-tolerant quantum computation in Chapter 11. In Chapter 7, we will see that Pauli projections induce a related type of map, called Pauli exponentials. These are closely related to phase gadgets and give us a new way to talk about universal quantum computations as well as allowing us to synthesise circuits that simulate physical processes on a quantum computer.
We met the Pauli matrices back in Chapter 2. Here they are again:
These are self-adjoint matrices, so they each have a basis of eigenstates. These are respectively:
When viewed on the Bloch sphere these six states lie in the corners corresponding to the three principal axes:
| (6.1) |
Each of these states is uniquely defined (up to global phase) as being the eigenvector of one of the Pauli matrices. In particular, and are the eigenvectors of , respectively, while , and are the eigenvectors of . So while we don’t care about the global phase of the vectors, for this definition of being the eigenstate, we do care about the global phase of the Pauli operators, since the eigenvector of is while the eigenvector of is .
Definition 6.1.1. We say a linear map is a stabiliser of the state when , i.e. when is a eigenvector of .
An important fact about stabilisers is that the product of stabilisers is also a stabiliser. Suppose and . Then, . For that reason, we’ll soon be interested not in just single operators stabilising a state, but whole groups of them. Each of the Pauli matrices is its own inverse: , and if we multiply two different Pauli matrices, we get the third one, up to a factor of :
| (6.2) |
One way to remember this is to think of the Pauli matrices arranged in a cycle:
If we multiply two Paulis going forward in the cycle, we get the third one with a factor of , and if we multiply backwards, we get it with a factor of . Note that from the multiplications of (6.2) we also see that if we have two different Paulis and that then . We say then that these Paulis anti-commute. Accounting for scalar multiples of , we get a 16-element group, called the single-qubit Pauli group:
We can then ask which subgroups of this group stabilise some state . The trivial subgroup stabilises everything, so that’s not very interesting. Also, , so any group containing doesn’t stabilise anything except the zero state, which is also not very interesting. This rules out the whole group , and any group containing , because . That leaves just 6 subgroups, corresponding exactly to the 6 points on the Bloch sphere of (6.1):
Note we write to mean the subgroup generated by the given operators, so for example .
In this section, we will generalise this idea of groups stabilising a state from one qubit to qubits, by looking at subgroups of the following group.
We will refer to the elements of the -qubit Pauli group as Pauli strings, and introduce special notation for them:
Concretely, fixing a Pauli string consists of choosing a global phase from the set and for each , a Pauli from the set . Since each of these choices yields a distinct element of , it follows that .
Exercise 6.2. Fix an arbitrary pair of Pauli strings , where:
Prove the following properties:
is unitary.
if is even, otherwise .
if is even, otherwise .
and either commute () or anti-commute ().
For the majority of this chapter and the next one, we will mostly be interested in self-adjoint Pauli strings, i.e. those whose global phase is . As the name suggests, this implies that . Since Pauli strings are unitaries, being self-adjoint implies that they are also self-inverse, i.e. .
As we first pointed out way back in Example 3.2.2, whenever there are or gates on the input of a Clifford circuit, we can always ‘push them through’ to the outputs using ZX rules. We now know enough about Clifford unitaries to prove this straightforwardly. We saw in Proposition 5.3.14 that any Clifford unitary can be written as a circuit built out of CNOT, Hadamard, and gates. Hence, we only need to check that we can push arbitrary single Pauli gates through each of these three. That is, for any single or on any input, we can push it through to and gates on the outputs. For the Hadamard gate, pushes through and becomes and pushes through to become :
For the gate, commutes straight through, whereas turns into :
Note that we picked up the global phase of when we used the -commutation rule . Finally, for the CNOT gate, there are 4 cases to consider, corresponding to a or gate on either of the two inputs:
Since we can push any or gate through any Clifford gate, we can push any gate through as well. Putting these rules together, we can see that, for any Pauli string and Clifford unitary , we can push through gate-by-gate, getting a (probably different) Pauli string on the outputs.
Proposition 6.1.3. For any Clifford unitary and Pauli string , there exists a Pauli string such that:
or equivalently:
The second equation above, written symbolically as , says that conjugating a Pauli string by a Clifford unitary yields another Pauli string. We will see in Section 6.4 that the converse of Proposition 6.1.3 also holds: any unitary that sends Pauli strings to Pauli strings under conjugation is Clifford. A variation on this result, which will prove to be very useful in this chapter, is that we can use Clifford unitaries to simplify a multi-qubit Pauli string to one that is non-trivial on just one qubit (say ).
Proposition 6.1.4. Let be a non-trivial self-inverse Pauli string. Then there exists a Clifford unitary such that for any choice of .
Proof. The first step will be to find a Clifford unitary that conjugates to a Pauli string where for all . Set if or , set if , and set if . Then gives with the desired property. We will now find a CNOT circuit such that . The desired unitary is then , potentially composed with an additional in order to get rid of the unwanted minus sign in . We will build step by step as follows. By assumption is non-trivial, and hence so is , which means at least one is non-trivial. If , then we add a CNOT from to to (meaning the control is on and the target is on ). This ensures that there is a on qubit . Now it remains to ‘clean up’ the ’s on the other qubits. To do this, for every where and we apply a CNOT from to . □
Example 6.1.5. Suppose we have and that we want to find a that maps it to . First conjugating with the right single-qubit Cliffords gives us just ’s and identities and removes the phase:
| (6.3) |
Then first doing a CNOT from the third qubit to get a there, and then adding CNOTs to it to get rid of the ’s on the other qubits we get the following:
Since any Clifford isometry can be written as a Clifford unitary with some ancilla qubits, the ‘Pauli pushing’ property holds for isometries as well.
Proposition 6.1.6. For any Clifford isometry and any Pauli string , there exists a Pauli string such that:
Proof. By Exercise 5.14, for any Clifford isometry , there exists a Clifford unitary such that:
Since is a Pauli string on qubits, we can use Proposition 6.1.3 to push it through :
We already noted that, if unitaries and both stabilise the same state , then their product also stabilises that state, as . Hence, the set of stabilisers of a given state forms a group. In the other direction, if two states and are stabilised by a map , then:
This means the set of states stabilised by a group of linear operators always forms a subspace of .
Definition 6.1.7. For a group , we define the stabiliser subspace of as:
If , we call a stabiliser group.
Note that in our definition of stabiliser group, we have explicitly ruled out those groups which only stabilise the zero state . This is very convenient because it immediately puts several constraints on which subgroups form stabiliser groups. Most importantly, stabiliser groups are always commutative (a.k.a. Abelian), meaning all of their elements commute.
Proposition 6.1.8. If a subgroup is a stabiliser subgroup, then:
,
for all , and
is commutative.
Proof. If , then all satisfy , so that . If, for some , we have , then by Exercise 6.2, . But then , so again . Finally, since every element in is self-adjoint (or equivalently for unitaries, self-adjoint), must be commutative: . □
Remark 6.1.9. From this proof we in fact see that for any subgroup , as long as , that then is commutative and it only contains self-adjoint Pauli strings.
Thus we have shown that, in order to stabilise a non-zero subspace, a subgroup of the Pauli group must satisfy several conditions. But are those conditions also sufficient? That is, does any subgroup of the Pauli group satisfying the conditions in Proposition 6.1.8, or by Remark 6.1.9 just the property that , form a stabiliser group? As it turns out, the answer is yes, and we can even figure out the dimension of the subspace stabilised by such a group. The key point to figuring this out has to do with number of independent generators of .
Definition 6.1.10. We say a collection of Paulis is independent when none of the Paulis can be written as a product of some of the others (even up to global phase), or equivalently, when the Paulis can’t be multiplied together to give for any , when we only allow each Pauli to appear once in the product.
Exercise 6.3. Let be a group satisfying the properties of Proposition 6.1.8.
Show that there exists a set of independent Paulis that generates .
Show that any can be written uniquely as some product of these Paulis (taking the convention that the “empty product” is equal to ).
Show that such a product gives exactly, and not up to phase.
Hence, we can describe a stabiliser group by a set of independent Paulis that generate it. While -qubit stabiliser groups may in general be very large, we will see that we can work with them efficiently by representing them as sets of generators.
In Section 2.2.4, we defined measurements as sets of projectors that sum up to the identity:
We also noted in that section that a self-adjoint operator always defines such a set of projections, on to each of the subspaces associated with each distinct eigenvalue of . Any self-adjoint Pauli string is, in particular, a self-adjoint operator, so we can find such a set of projectors. In fact, these projectors always take a particularly simple form.
Definition 6.2.1. For a self-adjoint Pauli string, we define the associated Pauli projectors as follows:
Proof. We can show that and by concrete calculation, using the fact that and . For (6.4), first assume for . Then:
Conversely, if , then . Multiplying both sides by 2 gives:
Subtracting a from both sides gives . Multiplying both sides by then gives . □
In the next exercise, you will prove some facts about Pauli projectors that will come in handy later.
Exercise 6.4. For self-adjoint Pauli strings, show that Pauli projectors satisfy the following properties:
and .
for any unitary .
.
.
and .
In this section, we will derive a useful graphical representation for the projectors and . This representation will help us prove the Fundamental Theorem of Stabiliser Theory in the next section, as well as leading naturally to Pauli exponentials, which we’ll introduce in Chapter 7. Rather than directly building the Pauli projectors , we will construct a “controlled” version of the projector, namely a ZX-diagram with the property that, when we plug in the computational basis effect to the first output, we’ll be left with the projector . This will give us a handy way to build up projectors for arbitrary Pauli strings from the basic Pauli projectors for , , and . We’ll start with . The Pauli projectors are simply the projections onto the two eigenstates, i.e. the computational basis elements:
So, we want to find a “box” that satisfies this property:
Thanks to the copy law, a single Z-spider will do the job:
More generally, we want to construct a new kind of generator, called a Pauli box that produces the projector when we plug in a computational basis effect . We can get the other two basic Pauli boxes, corresponding to projectors and , by applying unitaries to send the eigenstates to and eigenstates, respectively. To do that, let’s ZX-ify the Bloch sphere picture from (6.1).
| (6.5) |
Note that, while there is one obvious choice for the and eigenstates, using spiders of the opposite colours, we actually have two choices for : either using phases or (negative) phases. For our purposes, it will be more convenient to use the phases, so:
Recall that because the is defined to be the adjoint of , we need to flip the phase to represent the . By conjugating the Z-spider with or , we obtain Pauli boxes for and . That is, for , we have:
| (6.6) |
For building up generic Pauli strings , we should also have a trivial Pauli box corresponding to . We can obtain this simply as . In summary, the four basic Pauli boxes are given as:
Curiously, we can also use Pauli boxes to ‘switch on’ the Pauli unitary by plugging in basis elements of the other colour.
There is a good reason for this, which we’ll discuss in more detail when we introduce Pauli exponentials in Chapter 7. For now, we’ll see that this gives us everything we need to construct the projectors for longer Pauli strings.
Definition 6.2.3. For a self-inverse Pauli string with , the associated Pauli box is defined as follows:
Using this definition, we can prove the generalisation of the equation in Exercise 6.5 to any self-adjoint Pauli string .
Proposition 6.2.4. Pauli projectors can be defined by plugging (normalised) Z-basis effects into Pauli boxes as follows:
Proof. This follows from decomposing the spider as a number of spiders (i.e. X basis elements):
| (6.7) |
Applying (6.7), we have:
Then, by Exercise (6.6), the diagram above equals . □
By unrolling the definition of the Pauli box, we can see that, for any Pauli string with , we have:
| (6.8) |
The general case can be obtained by additionally representing any by simply not connecting to the -th qubit, as we will see in the following example.
Example 6.2.5. The single-qubit and two-qubit Pauli projectors correspond to some simple ZX-diagrams. In particular, for a single qubit it always disconnects:
| (6.9) |
While for (abbreviated ) becomes a 2-to-2 X spider:
| (6.10) |
Note that for a Pauli string , if some , then the projector does not interact with the qubit :
| (6.11) |
We conclude this section by noting that Pauli boxes are an example of a more general object, which we call a measure box, that can be used to represent a generic 2-outcome measurement.
Exercise 6.8. Let be a measure box.
Show that the following is a projector for :
Show that .
Show that each of the 4 Pauli boxes:
are measure boxes.
Let be a second measure box. Show that and can be combined as follows to form a new measure box satisfying (6.12):
and hence that Pauli boxes for an arbitrary self-adjoint Pauli string are measure boxes.
Since we’ll use it later, we’ll write down the conclusion of the above exercise explicitly in the following proposition.
Proposition 6.2.7. For any self-adjoint Pauli , the associated Pauli box satisfies the following equations:
| (6.13) |
Exercise 6.9. Show diagrammatically that Proposition 6.2.7 implies that Pauli projectors on to different measurement outcomes are orthogonal:
Any self-adjoint Pauli string (except the trivial one ) chops a space into two orthogonal parts: the eigenspace, a.k.a. the stabiliser subspace, and the eigenspace, a.k.a. the “anti-stabiliser” subspace. It turns out that these spaces have equal dimension, so we can see a single Pauli string as chopping -qubit space in half. Hence, the image of the projector (or ) is dimensional. We can see this explicitly by splitting the projector , i.e. finding an isometry such that:
Proposition 6.2.8. Let be a non-trivial self-inverse Pauli string . Then there exists a Clifford unitary such that splits .
Proof. By Proposition 6.1.4, there exists a Clifford unitary such that . Then, by Exercise 6.4, we have . As is then a normalised state followed by a unitary, it is an isometry. We can show directly that it splits :
As this proposition shows that a potential minus sign on the Pauli can be incorporate into the splitting isometry, we will just ignore these minus signs in this section and without loss of generality assume that every Pauli string has a constant of . If we split as , then . Hence, for any state on qubits we have , so that is stabilised by for any choice of . Conversely, when then so that taking shows that any stabilised state is of this form. We then see that where we have written for the stabiliser group generated by . We hence have shown the following.
Now we claim that this ‘splitting’ of the -dimensional Hilbert space into -dimensional parts continues on if we have an additional independent commuting Pauli. In particular, if we have two independent commuting self-inverse Paulis and , then we claim that . This follows from the next lemma.
Lemma 6.2.10. Let be commuting self-inverse Pauli strings. Then there exists a Clifford unitary and Pauli string such that:
Proof. The from Proposition 6.2.8 is such that , and hence:
| (6.14) |
where . Now, as and commute, the Pauli strings that result from conjugating by the same unitary will also commute. Hence, commutes with . This can only be the case when or . In both cases we then have:
| (6.15) |
Note that we still write to denote where the th Pauli is removed to get a string of length . We then calculate:
If is independent from , then the we get here in this lemma is non-trivial, so that we can then also split using Proposition 6.2.8. We then end up with wires in the middle, showing that indeed . We can now iterate this procedure, so that if we have independent commuting Pauli strings, that the states they mutually stabilise has dimension . In fact, this result is so crucial to this chapter, that we will give it a grand name: the Fundamental Theorem of Stabiliser Theory.
Theorem 6.2.11. Let be independent commuting self-adjoint Pauli strings on qubits. Then there exists a Clifford unitary such that:
| (6.16) |
Consequently, letting denote the group generated by the , we see that .
Proof. We prove this by induction on . The case of is just Proposition 6.2.8. So suppose we know Eq. (6.16) holds when we have independent generators. Then let be a Clifford unitary such that . We can then use an argument similar to that of Lemma 6.2.10 to write:
Here . In order to use the induction hypothesis on we need to show that they are still commuting and independent when we are ignoring the last qubit. First note that because we conjugated them all with the same unitary that are all still commuting and independent (not ignoring the -th qubit). As a result each of the has either an or in the th position. This means that they all commute on the -th position, and hence the must also be commuting when we ignore this last qubit. Additionally, no product of can result in due to the them being independent of , so that no product of the can result in when we ignore the last qubit. Hence, now ignoring the th qubit, the are independent and commuting, so that we can use the induction hypothesis. We then simply combine the resulting unitary with , and we are done. □
There is a bunch of important results that follow from this theorem. First, it allows us to bound how many independent commuting Pauli strings there can be.
Proof. Suppose is at least . Then applying the proof of Theorem 6.2.11 to the first generators, we end up in the following situation once we have repeated the procedure times:
We see that we end up with single-qubit Pauli projectors and that must be commuting, but also independent. But such single-qubit Paulis don’t exist, so we have reached a contradiction. □
This corollary allows us to answer the question we raised before: any subgroup of the Paulis satisfying the properties of Proposition 6.1.8 does in fact stabilise at least some non-zero state.
Corollary 6.2.13. Let be a subgroup satisfying the properties of Proposition 6.1.8. That is, it is commutative, consists only of self-adjoint Pauli strings, and does not contain . Then stabilises at least one non-zero state, and hence is a stabiliser group.
Proof. By Exercise 6.3, is generated by independent Paulis . Since is commutative, all these must also commute. Hence, the previous corollary applies and we must have . Then Theorem 6.2.11 tells us that , so that there is at least a -dimensional space of states that are stabilised by . □
In fact, recall from Remark 6.1.9 that as long as , the other properties of Proposition 6.1.8 are also satisfied, so any subgroup of that does not contain stabilises some non-zero state! We then also get the following corollary.
Corollary 6.2.14. Any set of commuting independent self-adjoint Pauli strings generates a stabiliser group.
Proof. By definition of independence there is no non-trivial product of independent Pauli strings that produces , so that is not in the group. Hence, the previous corollary applies so that we see that it is a stabiliser group. □
Some other major corollaries we will study in detail in the next section.
Exercise* 6.10. Generalise Equation (6.16) to account for other Pauli measurement outcomes. That is, show that:
for any .
When Paulis commute, their projections cut down the space of states they jointly stabilise. However, when they do not commute, then the second projection can be seen as applying a unitary to the space.
Exercise 6.11. Let and be two self-adjoint Pauli strings that anti-commute.
Show that is unitary and self-adjoint and that .
Show that is Clifford by proving that is Pauli for any Pauli string . Hint: Make a case distinction on whether (anti-)commutes with and or .
Show that .
Show that if is an eigenstate of , that then the measurement has both outcomes occur with probability . Hint: Recall that the probability is given by . Now use the fact that for both and .
In this section we will look at states that are uniquely determined by the Pauli strings that stabilise them. That such states exist follows from Theorem 6.2.11, as we will show next. We will then look at the unitaries that map Pauli strings into Pauli strings. These unitaries form the Clifford group, and as the name suggests these are related to the Clifford unitaries we studied in Chapter 5 (in fact, they are the same thing).
Theorem 6.2.11 shows that if the number of generators of is , that its stabiliser subspace has dimension . This means that if the number of generators is exactly , that its isometry goes from wires to wires. But then is just an -qubit state! So let’s write . Then the projector onto the stabiliser subspace of is . In other words: the only normalised state (up to global phase) that is stabilised by is .
Corollary 6.3.1. Let be a stabiliser group with generators. Then it stabilises a unique non-zero state (up to scalar).
From Theorem 6.2.11 it also turns out that no stabiliser group can have more than generators. Before we prove this it will be helpful to define a new class of stabiliser group.
Definition 6.3.2. We say a stabiliser group is maximal when it is not strictly included in another stabiliser group. Equivalently, for any self-inverse that commutes with all of there must be a such that .
Proof. Suppose is a stabiliser group with generators. We will show that it is not maximal, which will prove our claim. Note that the right-hand side of Eq. (6.16) says that we can write the projection to as , and hence that we can take for to be a set of generators for . Now, let be any non-trivial Pauli string on qubits. Then commutes with all the , and is also independent of this set. Hence is also independent from all the , and also still commutes with them. Hence, the stabiliser group generated by strictly includes , so that is not maximal. □
Corollary 6.3.4. The following are equivalent for a stabiliser group on qubits.
A maximal stabiliser group stabilises a unique state. Such states turn out to be very special, so we will give them a special name.
Definition 6.3.5. We say a non-zero state is a stabiliser state if there is a maximal stabiliser group that stabilises it.
It might seem hard to determine when a state is stabilised by a maximal stabiliser group. Luckily, Corollary 6.3.4 offers an easier way to figure out when a state is stabiliser.
Proposition 6.3.6. Let be a non-zero -qubit state. Then is a stabiliser state if and only if it is stabilised by independent Pauli strings.
Proof. Suppose is a stabiliser state, so that it is stabilised by a maximal stabiliser group . Then Corollary 6.3.4 shows that has generators. These generators are independent Pauli strings that stabilise . Conversely, suppose is stabilised by independent Pauli strings. Then these Pauli strings generate a stabiliser group, that again by Corollary 6.3.4 must be a maximal group, so that is indeed a stabiliser state. □
Example 6.3.7. Let be the maximally entangled Bell state. This state is stabilised by and . Indeed
and . As is a two-qubit state that is stabilised by two independent Pauli strings, it is hence a stabiliser state.
Example 6.3.8. Any graph state is a stabiliser state: recall that in a graph state we have a one-to-one correspondence between qubits and the vertices of . We claim that the Pauli string is a stabiliser of , where denotes the neighbourhood of the vertex , which is the set of vertices of that are connected to . As a Pauli string this stabiliser has an on the qubit corresponding to and a on every qubit that is connected to . We can easily check this is a stabiliser of by writing the graph state as a ZX-diagram, and pushing the into the graph state using and :
Exercise 6.12. Suppose is a stabiliser state, which is stabilised by maximal stabiliser groups and . Prove that .
Recall from Chapter 5 that we defined a Clifford state to be any state of the form for some Clifford unitary , and that these correspond to Clifford ZX-diagrams with no inputs. Observe that the isometries of Theorem 6.2.11 that split the projector onto a stabiliser subspace are Clifford diagrams. In particular, for a maximal stabiliser group, the isometry is a state, and hence is a Clifford state. We then have the following.
Proposition 6.3.9. Any stabiliser state is a Clifford state (up to potentially some non-zero scalar). That is, up to a scalar, we can represent any stabiliser state by a Clifford ZX-diagram.
The converse is also true: any Clifford state is a stabiliser state. Recall from Theorem 5.3.8 that we can rewrite any Clifford state to a graph state with local Cliffords. Example 6.3.8 shows that all graph states are stabiliser states, so to prove that any Clifford state is a stabiliser state it remains to show that (local) Cliffords send stabiliser states to stabiliser states. This turns out to follow from the property of Clifford unitaries we proved in Section 6.1.1, namely that conjugating a Pauli string by a Clifford results in another Pauli string.
Proposition 6.3.10. Let be a stabiliser state and let be a Clifford unitary. Then is also a stabiliser state.
Proof. Let be an -qubit stabiliser state and let be a maximal set of independent stabilisers of . Then we claim that the are independent stabilisers of so that is indeed a stabiliser state. First note that the are all Pauli strings because of Proposition 6.1.3. Second, they are indeed stabilisers of as . Finally, note that they are independent since if we had then , which contradicts the independence of the . □
So stabiliser states and Clifford states are exactly the same thing!
Proposition 6.3.11. Any Clifford state is a stabiliser state, and vice versa any stabiliser state is proportional to a Clifford state.
The property we used to prove Proposition 6.3.10 above was that conjugations of Pauli strings by Cliffords produces Pauli strings. This is in fact quite a useful property that we have used many times throughout this chapter and the previous, so it is worthwhile to try and understand this a bit better. In particular, can we find more unitaries than just the Cliffords that have this property? For our next definition we need to know a little more group theory. Consider a group with a subgroup . An element normalises when for every . For instance, every normalises , and if is abelian, then every element of normalises . We write for the set of elements of that normalises .
We can now define the Clifford group.
Definition 6.3.12. We say an -qubit unitary is Pauli normalising when it normalises . That is, when for every we have . We write for the group of Pauli normalising unitaries.
The group of Pauli-normalising unitaries is usually just called the Clifford group. However, as we already defined the term ‘Clifford unitaries’, we will not use the term Clifford group for now. Rest assured though that there is in fact a reason for the conflict in the naming scheme, as it turns out that Clifford unitaries and Pauli-normalising unitaries are the exact same thing. One direction of this equivalence we already have:
Example 6.3.13. Proposition 6.1.3 shows that every Clifford unitary is Pauli normalising.
The remainder of this section will work towards proving the converse.
Exercise 6.14. Show that the conjugation of a self-adjoint Pauli string by a Pauli-normalising unitary is also self-adjoint.
The phase gate is Clifford and hence Pauli normalising. What other phase gates are Pauli normalising? Consider the phase gate . Conjugating by this gate of course preserves as they commute, so it remains to check the case for :
The only way for this to be equal to a Pauli is for the phase to be equal to or . Hence, we get (the identity), (the Pauli), (the gate), or (the adjoint of ). There are no other phase gates that are Clifford! By symmetry (i.e. colour-changing the spiders) the same situation of course also holds for phase gates: only gates with a multiple of are Pauli normalising. This seems to point towards ZX-diagrams only being Pauli normalising if all the phases involved are multiples of , and this is in fact exactly right.
Definition 6.3.14. Let be an -qubit unitary. We denote by the -qubit Choi state that we get by applying to one side of nested cups (i.e. Bell states):
Proof. Let be the Pauli string such that and similarly let be such that . Then we claim that and are stabilisers for . Here denotes the componentwise transpose of the Paulis in , such that , , and . That these are stabilisers is best demonstrated diagrammatically:
Here, the is taken to appear on the th qubit. The same computation works for . We then have stabilisers for a -qubit state. It is easily seen that these are all independent as they all have a unique non- component on the bottom qubits. Hence, by Proposition 6.3.6, is a stabiliser state. □
Proof. Let be Pauli normalising. Then is a stabiliser state, so that by Proposition 6.3.9 we can represent by a Clifford ZX-diagram. Then by bending the top wires in back to be inputs, we can also represent as a Clifford ZX-diagram. Proposition 5.3.14 then shows that must be equivalent to a circuit of CNOT, Hadamard and gates. □
We have now seen a lot of different perspectives, definitions and equivalences between them, so let’s summarise what we have learned.
Theorem 6.3.17. Let be a unitary. The following are equivalent:
is Pauli normalising.
The Choi state of is a stabiliser state.
can be presented as a Clifford diagram.
is equivalent to a circuit consisting of Hadamard, and CNOT gates.
Proof. a) to b) is Lemma 6.3.15, b) to c) follows from Proposition 6.3.9, c) to d) is Proposition 5.3.14 and d) to a) is Proposition 6.1.3. □
Because of these equivalences we don’t have to make a distinction between Pauli-normalising unitaries, Clifford unitaries (those built from CNOT, Hadamard and ), and Clifford unitary diagrams (those whose diagram only contains phases), and just refer to any of these as a Clifford unitary. We can write down a similar set of equivalences for stabiliser states.
Theorem 6.3.18. Let be a state. The following are equivalent:
is a stabiliser state.
can be presented (up to non-zero scalar) as a Clifford diagram (that has no inputs).
is equal (up to non-zero scalar) to a circuit of Hadamard, and CNOT gates applied to the state.
can be written as a graph state with local Cliffords.
Proof. a) to b) is Proposition 6.3.9, b) to c) is Proposition 5.3.10, c) to d) is Theorem 5.3.8 and d) to a) follows from Example 6.3.8 and Proposition 6.3.10. □
We’ve seen that an -qubit unitary is Clifford if and only if it maps every -qubit Pauli string to a Pauli string under conjugation. There are exponentially many Pauli strings as increases, but luckily we only have to check a few of them to verify the unitary is Clifford. In particular, it suffices to check that the and are mapped to Pauli strings under conjugation. This gives us conditions to check for an -qubit unitary. We can present the resulting information in the form of a table that we call a stabiliser tableau. This is what we will look at in Section 6.4.2. Another way to present this information is as a special type of matrix that is called a symplectic matrix. This is what we will look at in Section 6.4.4. Before we do so however, let’s look a bit closer at the information encoded by knowing the result of these Pauli conjugations.
We will show that a Clifford unitary is completely determined by its action on Pauli strings.
Proposition 6.4.1. Let and be Cliffords such that for all Pauli strings . Then for some global phase .
Proof. By Lemma 6.3.15, and are stabiliser states. Fix and let be such that . Then we can check that is a stabiliser of in the same way as in Lemma 6.3.15. Since we also have , and hence is also a stabiliser of . As was arbitrary, and have the same stabilisers and hence are equal up to a global phase . Bending the wires back then shows that . □
We have been using two similar properties interchangeably: that a Pauli is mapped to a Pauli under conjugation, and that we can push a Pauli through a Clifford to get another Pauli. However, the equivalence between these relies on the map being unitary. It turns out that we can recover unitarity just by looking at whether we can push the and through the map.
Lemma 6.4.2. Let be a non-zero linear map such that and for all and , and some Pauli strings and . Then is proportional to an isometry. In particular, if , then is proportional to a unitary.
Proof. Taking adjoints in the equation we get . We then calculate: . Analogously, for all . We can then check that the -qubit state has the stabilisers and for all so that it is a stabiliser state. Furthermore, these stabilisers match those of , where is the -qubit identity ( is just overlapping cups, connecting qubit to ). Hence for some . However, as is a positive map, we must have so that is indeed an isometry. Now if then we have an isometry from the space to itself, and these maps are necessarily unitary. □
This lemma will prove useful later in this section.
To check whether an -qubit unitary is Clifford there are conditions we need to check, corresponding to the conjugation of each of the and Pauli strings by the unitary for . We can write this information succinctly in a table known as a stabiliser tableau. To demonstrate this principle let’s construct the stabiliser tableau for the CNOT gate. As it is a -qubit gate there are conditions we need to check, corresponding to the conjugation of , , and by the CNOT. As demonstrated in Section 6.1.1, conjugating leads to the Pauli string and similarly is mapped to , to and to . Each of these values corresponds to a column in the stabiliser tableau, which we can now write down:
| (6.17) |
The bottom two rows indicate the Pauli that each of the is sent to on each of the qubits and . The row labelled denotes whether the Pauli is sent to the Pauli listed, or minus that. For instance, conjugating by gives , and hence would have a minus sign in the respective column. This phase can indeed only be a or : the and are self-adjoint, and hence so are and . These minus signs are important as they allow us to distinguish the Paulis just from their tableaux:
| (6.18) |
We can use a stabiliser tableau to understand how the unitary acts on other Pauli strings than just those present in the tableau. For instance, suppose we wish to know how the Pauli string is changed when we conjugate it by a CNOT. We realise that is just the product and hence, writing , we get:
But this latter expression is just the product of the three columns of the stabiliser tableau of the CNOT corresponding to , and (multiplied by a global factor of ). So we look at those columns in (6.17) and multiply them together:
Hence, is mapped to . If some of the ’s in these columns where , then the standard rules for multiplying phase applies, e.g. “negative times negative is positive”. For instance, if we take the stabiliser tableau of in (6.18), and wish to find the action of , we multiply the columns together as follows:
We then see that when is conjugated by we get , as we would expect. The information presented in a stabiliser tableau is enough to fully characterise a Clifford.
Proposition 6.4.3. Let and be two -qubit Clifford unitaries. Then and are equal up to global phase iff they have equal stabiliser tableaux.
Proof. Of course, if for some global phase , then they have equal stabiliser tableaux, so let’s prove the converse. We have and for all . These and generate all -qubit Pauli strings and hence we have for all . The result then follows from Proposition 6.4.1. □
Suppose we have a stabiliser tableau for a unitary and another one for a unitary . Can we then easily construct the tableau for the composition of the unitaries ? Suppose we wish to know the column in the stabiliser tableau of corresponding to a . This is the Pauli string . Here the inner expression corresponds to the column of in the tableau of . This will be some Pauli string , and so we need to know the values and multiply these together. But the expressions can be easily read from the tableau of . This means that in order to know the Pauli on the th qubit of the column in the tableau of , we need to look at the column of in , and at the row corresponding to the th qubit of the tableau of . This feels quite like matrix multiplication. In the next sections we will see that this is in fact, exactly like matrix multiplication.
We can represent elements of the Pauli group as certain bit strings. For instance, we will write:
| (6.19) |
Generally, an element of the -qubit Pauli group will be represented as a vector of bits, followed by an integer that is taken modulo 4:
| (6.20) |
Here, the bits in the length- bit strings are given by the Paulis via the relation where are the th bits of and and is a complex number in the set . As a shorthand, we write and for and . This mapping between Pauli operations and bit strings is just a convention, and there are probably other ones that work just as well. The useful feature of this representation is that multiplication of Pauli group elements corresponds to addition of bit strings modulo-2, followed by some book-keeping to get the correct scalar: if we have Pauli strings and represented as bit strings and , then:
| (6.21) |
We will use the notation to represent combining bit-representations of Pauli operators in this way. That is:
A little “gotcha” to watch out for here is that addition of the bit strings is performed modulo-2, but the dot products that appear in the exponent of use normal addition of integers (or addition modulo 4, since ). Instead of talking about ‘bit strings’ and ‘addition modulo-2’ it will be helpful to use a more mathematical way of talking about this, just like we had done in Chapter 4. We take the bits to be elements of field with two elements . Recall from Definition 4.1.1 that the addition operation in this field is defined by , and the multiplication is the standard multiplication of the numbers and . As this is a field, we can view the bit strings as being part of a vector space over . In particular, ignoring the global phases for now, we can represent -qubit Pauli strings as elements of the vector space . We can use these bit-representations to read off whether two Paulis commute or not. For Paulis and we have
The reason for this formula is that we are counting the number of places where there is a on a qubit in that matches to an on a qubit in (and vice versa for ’s on and ’s on ). Each of these matches results in an anti-commutation, but as long as there are an even amount, the Pauli strings commute. It turns out that the expression fits into the language of a well-studied subject in mathematics: symplectic forms.
Definition 6.4.4. Let be a field (such as ), and let be an even-dimensional vector space over this field. Then the symplectic inner product on is defined as
where are arbitrary vectors and denotes the standard dot-product of elements of : .
In words: we take the dot product of the top half of the first vector with the bottom half of the second vector and subtract from this the dot product of the bottom half of the first vector with the top half of the second vector. Another way we could have written this symplectic product is to realise that it is essentially the standard dot product, except that we have interchanged the top and bottom half of the second vector and introduced a negation. The matrix that does this operation is the following:
| (6.22) |
Here, and are respectively the zero matrix and the identity matrix. We can then write the symplectic inner product as . Note that if then (because modulo ). So combining what we’ve seen so far we see that we can represent length Pauli strings as elements of the symplectic vector space (ignoring global phase), and that Pauli strings commute precisely when their symplectic inner product is zero. Additionally, the multiplication of Paulis corresponds (when we ignore phases) to addition of the vectors in this symplectic vector space. Let’s capture this in the following proposition.
Proposition 6.4.5. Let be the -qubit Pauli group. Then there is a group homomorphism given by mapping a Pauli to its bit string representation. The kernel of this representation is given by the global phases: iff . Furthermore, we have iff and commute, where is the symplectic inner product on .
We have now seen that we can just treat Pauli strings as vectors in a symplectic vector space, and that, up to a phase, multiplying Pauli strings corresponds to adding their bit strings. If we have a Clifford unitary , then this maps a Pauli string to another Pauli string , so we should be able to write this as a map on the symplectic vector space as well, right? Let’s write for the group homomorphism on the Pauli group given by conjugating by . That is, (this is indeed a group homomorphism as ). Note that is in fact an isomorphism, as it has an inverse . Let be the map from Proposition 6.4.5 that maps a Pauli string to its corresponding bit string in the symplectic vector space. Ignoring the phases in , this map is an isomorphism of (abelian) groups. We can then make a ‘choice of inverse’ by setting
Note that this map produces self-adjoint Pauli strings, but that the map is not a group homomorphism (you can check that ). We see then that , but in the other direction we only have . Now let’s write for the map . What properties does this map have? Even though is not a group homomorphism, it is the case that is a group homomorphism of , i.e. a linear map: . This is because is a group homomorphism ‘up to phase’, and both and don’t care about this phase, so that it doesn’t change the outcome. Additionally, has an inverse so that it is in fact a linear isomorphism. But it is not just any isomorphism. If the Pauli strings and commute, then and also commute, and similarly, if they didn’t commute, then preserves this property as well. We saw in the previous section that commuting Paulis are mapped by to vectors whose symplectic inner product is zero. So putting these two facts together, we see that must be mapping vectors in such a way to preserve the symplectic inner product. There is a special name for such maps.
Definition 6.4.6. Let be a field, and let be a symplectic vector space. We call a linear map symplectic when it preserves the symplectic inner product: . Symplectic maps are automatically invertible, and hence form a group that we will call .
For Hilbert spaces we care a great deal about unitaries, which are maps that preserve the inner product. Similarly, for symplectic vector spaces, we care about the maps that preserve the symplectic inner product. As preserves commuting Paulis, must be a symplectic map. Writing for the -qubit Clifford group, then gives a group homomorphism . This map is not injective, and that’s because captures the Pauli group only up to phase. A Clifford is in the kernel of this homomorphism, i.e. , when maps every Pauli to itself up to a phase. This phase can only be for each Pauli, as a Clifford maps self-adjoint Paulis to self-adjoint Paulis under conjugation. The Pauli strings themselves are examples of Cliffords that are sent to the kernel. When is a self-adjoint Pauli string, we see that indeed , so that . The converse turns out to also be true.
Proposition 6.4.7. Let be a Clifford such that for every Pauli string we have . Then is itself a Pauli string (up to global phase).
Proof. Write for the conjugation map. We will construct a Pauli string that acts the same on all Paulis by conjugation as , and hence by Proposition 6.4.1, must be equal to up to global phase. First we determine . Write , for . Then if , we set . If and , we set . If and we set , and finally if we set . It is then easy to check that for any Pauli . We similarly set , so that and agree on all Pauli strings . As these generate all Pauli strings, we must then have and we are done. □
With this proposition we see that iff for some global phase and Pauli string . So just like how the symplectic representation of the Pauli strings ignores the global phase, the symplectic representation of the Cliffords ignores Paulis. Okay, so when thinking about the symplectic space, and ignoring Paulis, the Cliffords become symplectic maps. What about the converse? If we are given a symplectic map on , can we find a Clifford that is mapped to it? In other words: is surjective? To answer this questions it will be useful to define a ‘standard basis’ of . Write and for the bit strings corresponding to the Pauli strings and . These and of course span the space and are linearly independent so that they are indeed a basis. Note furthermore that the symplectic inner products of these are , while , which encodes the fact that the all mutually commute (and the same for the ), while and anti-commute when .
Proof. Define and , the images of the standard basis after applying . As is symplectic and hence invertible, the vectors and must then also be independent. Furthermore, as preserves the symplectic inner product we still have and . Let be a self-adjoint Pauli string for which and similarly let be such that (these Pauli strings are unique up to phases of ). Then the Paulis are commuting, since , and similarly all the are commuting. The only pairs that don’t commute are and when . We can ‘fix’ this lack of commutation by considering longer Pauli strings. Consider the following Pauli strings acting on qubits:
These Pauli strings all commute. Let’s check the only non-trivial commutation: and . When , we have that and commute, and and commute, so that the full strings obviously commute as well. When , then and anti-commute, but so do and , so that the complete strings still commute. We then have built independent, commuting, self-inverse Pauli strings acting on qubits. These then uniquely define a -qubit stabiliser state , which is unique up to scalar. Bending back the top wires to be inputs, we then get a linear map going from qubits to qubits. We want to show it is unitary. As is a stabiliser of , we then see that :
Similarly, . Lemma 6.4.2 then shows that is (proportional to a) unitary, and as it comes from a stabiliser diagram it is Clifford. Furthermore , so that . We defined to be such that , and hence . Completely analogously we have , so that and agree on a basis of , so that indeed . □
So far we have ignored the phases in the symplectic representation. What happens when we try to add them back in? We get stabiliser tableaux! Let’s look again at the stabiliser tableau for the CNOT gate:
Now for each of the elements in the table we make the substitutions, corresponding to how we were encoding the Paulis as bitstrings:
We then get the following matrix of values:
Now let’s group the and rows together:
| (6.23) |
If we squint a bit we can see that this is in fact a symplectic matrix, but with some additional information to record the phases. If we remove those phases and the label for the columns and rows we in fact get the symplectic matrix representation for the CNOT:
Then if we want to know for instance what happens when we conjugate by CNOTs, we first write as the vector , and then we just multiply them:
This symplectic representation doesn’t contain the phase information though. We can fix this by just keeping the top row of the tableau 6.23 containing the phases, and also adding another top row to the Paulis to represent their global phase. If we do this, we however also have to modify how we multiply together tableaux and vectors, as the phase gets updated in quite a complicated way. This is not really relevant for us, so we leave it as an exercise.
Exercise* 6.15. Find out how to incorporate phases as an additional row on the symplectic matrix, so that matrix-vector multiplication works out the way it should.
Let’s summarise what we have learned. We have seen that we can write a Pauli string as a bit string, where the first half of the bits tells you where the ’s are, and the second half tells you where the ’s are (and so the overlap tells you where the ’s are). We can then consider the Pauli group as a vector space of bit strings . Paulis either commute or anti-commute. This information is captured in by whether the associated vectors have a symplectic inner product of zero (for commuting) or one (for anti-commuting). As Cliffords map Paulis to Paulis under conjugation, and are completely determined by this action, we can represent Cliffords as matrices on the symplectic vector space . Conjugating by a Clifford preserves commutation, so that it preserves the symplectic inner product on this space. This means that the Cliffords correspond to symplectic maps. Conversely, any symplectic map on comes from a Clifford unitary. These constructions with the symplectic phases ignore the phases of the Paulis, and hence capture the Cliffords only up to local Paulis. We can fix this by adding some additional phase information to our symplectic space. This representation is then equivalent to the stabiliser tableau of the Clifford.
In Chapter 5 we introduced Clifford unitaries in a somewhat ad-hoc way as those unitaries built from CNOT, Hadamard and gates. In this chapter we have seen that we can define them in a mathematically nicer way as precisely those unitaries that send Pauli strings to Pauli strings under conjugation. It turns out we can extend this idea to a whole hierarchy of gates. First, let’s denote the set of Pauli gates by .
The first level of the hierarchy consists of the Paulis by definition, and the second contains unitaries that map Pauli strings to unitaries in , i.e. the Paulis. Hence, consists precisely of the Cliffords. The third level then contains unitaries that map Pauli strings to Clifford unitaries. An example of a third-level unitary is the gate :
Similarly, the gate is in the 4th level, and more generally is in the th level. The Clifford hierarchy is useful for thinking about gate teleportation protocols. As the name implies, gate teleportation generalises the idea behind quantum teleportation of Section 3.3.2. In quantum teleportation we move information from one qubit to another without changing the state. In gate teleportation we instead try to apply some specific unitary to the state, without directly applying to that qubit:
| (6.24) |
In this protocol we entangle our state with a specific maximally entangled state with the goal of executing . However, we see that instead we end up with . In order to actually end up with , we hence need to apply a correction of . For a general this doesn’t help us, since this requires us to execute on the qubit after all. However, if , then , so that instead of applying a unitary, we can execute a unitary. In Eq. (6.24) is a single-qubit unitary, but the same idea works for an -qubit unitary, in which case we essentially do the same operations on each of the qubits in parallel, with the correction depending on a Pauli string of possible measurement outcomes. These gate teleportation protocols are especially useful when it is hard to correctly implement . We can then first try to build the correct “offline”, until we get the result we require, and then apply it to the state we want by gate teleportation. If the correction operation is then easy, we can just apply that and we are done. For instance, we will see in Chapter 11 that in many fault-tolerant architectures it is difficult to execute a gate, while it is easy to implement Clifford gates. As a gate is in the third level of the Clifford hierarchy, we can implement it with gate teleportation, and its correction will be a Clifford. If instead we want to implement a 4th-level unitary, like , its correction will be third-level, which we then also implement with gate teleportation, so that the final correction is a Clifford. Note that we in fact have already encountered a version of gate teleportation in the form of state injection in Section 3.3.1:
This can be rewritten into a more standard gate teleportation protocol:
Note though that while gate teleportation requires a two-qubit state, magic state injection requires just a single-qubit state, and hence is more efficient. In general, we can do the more efficient ‘magic state’ protocol for a unitary when semi-Clifford, which means that where and are Clifford and is diagonal. While there is a nice connection between the Clifford hierarchy and how hard it is to implement a unitary through gate teleportation, in pretty much any other regard the Clifford hierarchy is not very nice at all. In particular, for , is not even closed under composition. It is hence not possible to describe the elements of just by enumerating some small number of generators. In fact, a full characterisation of for arbitrary number of qubits and is not known.
Exercise 6.17. Show that is not anywhere in the Clifford hierarchy. Hint: Show that is within a Clifford of itself, so that being in implies is as well.
When we restrict to the diagonal unitaries in the structure is a lot clearer. In particular, let denote the diagonal unitaries in the th level. Then is in fact closed under composition and forms a group, and is generated by unitaries of the form:
up to permutations of the qubits. These diagrams implement the unitary and are the focal point of a lot of discussion in the next chapter.
The -qubit Pauli strings form a group .
We can represent the projection onto the -eigenspace of a Pauli using a Pauli box. This allows us to treat all Paulis on the same footing diagrammatically.
We call a subgroup a stabiliser group if it stabilises at least one non-zero state. This is the case exactly when . Stabiliser groups are necessarily commutative.
The Fundamental Theorem of Stabiliser Theory: If an -qubit stabiliser group has generators, then its stabiliser subspace has dimension .
Maximal stabiliser groups have precisely generators, and stabilise a unique state up to scalar factor. We call states stabilised by a maximal stabiliser group a stabiliser state.
Stabiliser states correspond precisely to the Clifford states of Chapter 5.
The Clifford unitaries of Chapter 5 send elements of to under conjugation. Any unitary with this property is in fact Clifford.
We can fully describe a Clifford unitary by a stabiliser tableau, which lists its action on the and Pauli strings under conjugation.
Additionally, we can describe Pauli strings, up to global phase, as elements of a symplectic vector space.
We can then describe Clifford unitaries, up to multiplication with Paulis, by a symplectic matrix: a matrix preserving the symplectic inner product.
Cliffords as normalising the Pauli group The stabiliser formalism was introduced by [111] and further developed, with the help of some amusing examples, in [113]. In the former paper, it was treated mainly as a tool for defining quantum error correcting codes, whereas in the latter as a more general-purpose set of tools for dealing with quantum operations. In Chapter 5 we introduced Clifford unitaries as those built out of Hadamard, and CNOT gates, and now in this chapter we see that they can also be understood to be those unitaries that send Paulis to Paulis under conjugation. Originally, the latter representation came first. That stabiliser unitaries (those that map Paulis to Paulis) can be implemented just using Hadamard, S and CNOT gates was noted in the context of error correcting codes in [27], and a proof was given using symplectic matrices in [44]. A more concrete proof by induction was presented in [112]. The modern form of using a stabiliser tableau to simulate a computation or to produce a normal form for the circuit was presented in [1]. Note that in different papers on this subject the rows and columns of a tableau might be interchanged.
The Clifford hierarchy The notion of a Clifford hierarchy is from [115] where they also introduce the technique of gate teleportation with these gates. A characterisation of diagonal gates in the Clifford hierarchy is given in [67]. That you can do gate teleportation with a smaller ancilla state is the unitary is semi-Clifford is from [238], though the term ‘semi-Clifford’ was only introduced in [119].