0% found this document useful (0 votes)
11 views42 pages

The Controlled-NOT Gate

Algebra of the CNOT gate

Uploaded by

Salawu Adamu
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views42 pages

The Controlled-NOT Gate

Algebra of the CNOT gate

Uploaded by

Salawu Adamu
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 42

Quantum circuits of CNOT gates

Marc Bataille

To cite this version:


Marc Bataille. Quantum circuits of CNOT gates. 2020. �hal-02948598v2�

HAL Id: hal-02948598


https://hal-normandie-univ.archives-ouvertes.fr/hal-02948598v2
Preprint submitted on 29 Sep 2020

HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est


archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents
entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non,
lished or not. The documents may come from émanant des établissements d’enseignement et de
teaching and research institutions in France or recherche français ou étrangers, des laboratoires
abroad, or from public or private research centers. publics ou privés.
Quantum circuits of CNOT gates
Marc Bataille
[email protected]


LITIS laboratory, Université Rouen-Normandie

Abstract
We study in details the algebraic structure underlying quantum circuits
generated by CNOT gates. Our results allow us to propose polynomial heuristics
to reduce the number of gates used in a given CNOT gates circuit and we also
give algorithms to optimize this type of circuits in some particular cases.
Finally we show how to create some usefull entangled states using a CNOT
gates circuit acting on a fully factorized state.


685 Avenue de l’Université, 76800 Saint-Étienne-du-Rouvray. France.

1
1 Introduction
The controlled Pauli-X gate, also called the CNOT gate, is a very common and usefull
gate in quantum circuits. This gate involves two qubits i and j in a n-qubit system.
One of the two qubits (say qubit i) is the target qubit whereas the other qubit plays
the role of control. When the control qubit j is in the state |1i then a Pauli-X gate
(i.e. a NOT gate) is applied to the target qubit i which gets flipped. When qubit j
is in the state |0i nothing happens to qubit i.
Actually, CNOT gates are of crucial importance in the fields of quantum computa-
tion and quantum information. Indeed, it appears that single qubit unitary gates
together with CNOT gates constitute an universal set for quantum computation :
any arbitrary unitary operation on a n-qubit system can be implemented using only
CNOT gates and single qubit unitary gates (see [29, Section 4.5.2] for a complete
proof of this important result). As a consequence, many multiple-qubit gates are
implemented in current experimental quantum machines using CNOT gates plus other
single-qubit gates. In Figure 3 we give a few classical examples of such an implemen-
tation : a SWAP gate can be simulated using 3 CNOT gates, a controlled Pauli-Z gate
can be implemented by means of 2 Hadamard single-qubit gates and one CNOT gate.
These implementations are used for instance in the IBM superconducting transmon
device (www.ibm.com/quantum-computing/).
From this universality result it is possible to show that any unitary operation can
be approximated to arbitrary accuracy using CNOT gates together with Hadamard,
Phase, and π/8 gates (see Figure 2 for a definition of these gates and [29, Section
4.5.3] for a proof of this result). This discrete set of gates is often called the standard
set of universal gates. Using a discrete set of gates brings a great advantage in terms
of reliability because it is possible to apply these gates in an error-resistant way
through the use of quantum error-correcting codes (again refer to [29, Chapter 10]
for further information). Currently, important error rates in CNOT gates implemented
on experimental quantum computers are one of the main causes of their unreliability
(see [24, 35] and Table 1). So the ability to correct errors on quantum circuits is a
key point for successfully building a functional and reliable quantum computer. A
complementary approach to the Quantum Error-Correction is to improve reliability
by minimizing the number of gates and particularly the number of two-qubit gates
used in a given circuit. Our work takes place in this context : we show that a precise
understanding of the algebraic structures underlying circuits of CNOT gates makes it
possible to reduce and, in some special cases, to minimize the number of gates in
these circuits.
In this paper we also study the emergence of entanglement in CNOT gates circuits
and we show that these circuits are a convenient tool for creating many types of en-
tangled states. These particular states of a quantum system were first mentionned
by Einstein, Podolsky and Rosen in their famous EPR article of 1935 [9] and in
Quantum Information Theory (QIT) they can be considered as a fundamental phys-
ical resource (see e.g. [22]). Entangled states turn out to be essential in many areas
of QIT such as quantum error correcting codes [13], quantum key distribution [10]
or quantum secret sharing [6]. Spectacular applications such as super-dense coding

1
[3] or quantum teleportation [32, 11, 30] are based on the use of classical entangled
states. This significant role played by entanglement represents for us a good reason
to understand how CNOT gates circuits can be used to create entangled states.
The paper is structured as follows. Section 2 is mainly a background section where
we recall some classical notions in order to guide non-specialist readers. In Section 3
we investigate the algebraic structure of the group generated by CNOT gates. Section
4 will be dedicated to the optimization problem of CNOT gates circuits in the general
case while in Section 5 we deal with optimization in particular subgroups of the
group generated by CNOT gates. Finally in Section 6 we study how to use CNOT gates
circuits to create certain usefull entangled states.
CNOTij 0 1 2 3 4
0 1.035 × 10−2
1 1.035 × 10−2 9.658 × 10−3
2 9.658 × 10−3 9.054 × 10−3
−3
3 9.054 × 10 8.838 × 10−3
4 8.838 × 10−3
Hi 2.656 × 10−4 3.675 × 10−4 2.581 × 10−4 3.572 × 10−4 2.831 × 10−4

Table 1: Error rates for CNOT gates acting on qubits i and j and for Hadamard gates acting on qubit
i, where i, j ∈ {0, 1, 2, 3, 4}. The data comes from ibmq rome 5-qubit quantum computer after a
calibration on May 12, 2020 and is publicly avalaible at www.ibm.com/quantum-computing/.

2 Quantum circuits, CNOT and SWAP gates


We recall here some definitions and basic facts about quantum circuits and CNOT
gates. We also introduce some notations used in this paper and we add some devel-
opments about SWAP gates circuits. For a comprehensive introduction to quantum
circuits the reader may refer to [29, Chapter 4] or, for a shorter but self-contained
introduction), to our last article [2].
In QIT, a qubit is a quantum state that represents the basic information storage
unit. This state is described by a ket vector in the Dirac notation |ψi = a0 |0i+a1 |1i
where a0 and a1 are complex numbers such that |a0 |2 + |a1 |2 = 1. The value of |ai |2
represents the probability that measurement produces the value i. The states |0i
and |1i form a basis of the Hilbert space H ' C2 where a one qubit quantum system
evolves.
Operations on qubits must preserve the norm and are therefore described by unitary
operators. In quantum computation, these operations are represented by quantum
gates and a quantum circuit is a conventional representation of the sequence of
quantum gates applied to the qubit register over time. In Figure 1 we recall the
definition of the Pauli gates : notice that the states |0i and |1i are eigenvectors of the
Pauli-Z operator respectively associated to the eigenvalues 1 and -1, i.e. Z |0i = |0i
and Z |1i = − |1i. Hence the computational standard basis (|0i , |1i) is also called
the Z-basis.

2
 
0 1
Pauli-X X
1 0
 
0 −i
Pauli-Y Y
i 0
 
1 0
Pauli-Z Z
0 −1
Figure 1: The Pauli gates

A quantum system of two qubits A and B (also called a two-qubit register) lives in
a 4-dimensional Hilbert space HA ⊗ HB and the computational basis of this space
is : (|00i = |0iA ⊗ |0iB , |01i = |0iA ⊗ |1iB , |10i = |1iA ⊗ |0iB , |11i = |1iA ⊗ |1iB ).
If U is any unitary operator acting on one qubit, a controlled-U operator acts on
the Hilbert space HA ⊗ HB as follows. One of the two qubits (say qubit A) is the
control qubit whereas the other qubit is the target qubit. If the control qubit A is
in the state |1i then U is applied on the target qubit B and if qubit A is in the
state |0i nothing is done on qubit B. If U is the Pauli-X operator then CNOT is
nothing more than the controlled-X operator (also denoted by c − X) with control on
qubit A and target on qubit B. So the action of CNOT on the two-qubit register is
described by : CNOT |00i = |00i , CNOT |01i = |01i , CNOT |10i = |11i , CNOT |11i = |10i
(the corresponding matrix is given in Figure 2). Notice that the action of the CNOT
gate on the system can be sum up by the following simple formula :
∀x, y ∈ {0, 1}, CNOT |xyi = |x, x ⊕ yi (1)
where ⊕ denotes the XOR operator between two bits which is also the addition in F2 .
To emphasize that qubit A is the control and B is the target, CNOT is also denoted
CNOTAB . So interchanging the roles played by A and B yields another operator
denoted by CNOTBA .
∀x, y ∈ {0, 1}, CNOTBA |xyi = |x ⊕ y, yi (2)

 
1 0 0 0
A
 
0 1 0 0 1 0
CNOT : CNOTAB = 0
 Phase : S S=
B 0 0 1 0 i
0 0 1 0
   
1 1 1 1 0
Hadamard : H H = √2 π/8 : T T= iπ
1 −1 0 e4
Figure 2: The standard set of universal gates : names, circuit symbols and matrices.

Another useful and common two-qubit quantum gate is the SWAP operator whose
action on a basis state vector |xyi is given by : SWAP |xyi = |yxi. The interesting
point is that a SWAP gate can be simulated using 3 CNOT gates :
SWAP = CNOTAB CNOTBA CNOTAB = CNOTBA CNOTAB CNOTBA (3)

3
A
SWAP : ∼ ∼ (5)
B

A H H
CNOTBA : ∼ (6)
B H H

A H H
c−Z: ∼ ∼ (7)
B H H

Figure 3: Some classical equivalences of circuits involving CNOT gates.

This identity can be proved easily using equations (1) and (2).
The depth of a quantum circuit is the number of gates composing this circuit and
we say that two circuits are equivalent if their action on the basis state vectors is
the same in theory, i.e. the two circuits represents the same unitary operator. So
Identity (3) is a proof of equivalence (5) in Figure 3. This equivalence can be used
to implement a SWAP gate from 3 CNOT gates on an actual quantum machine. Two
equivalent circuits generaly do not have the same depth. We use the word equivalent
instead of the word equal to emphasize the fact that, due to the errors rate on gates
in all current implementations (see Figure 1), two equivalent circuits acting on two
qubits registers in the same input state will probably not produce in practice the
same output state. This experimental fact is an important technical problem and a
good motivation to work on quantum circuits optimization.
Equivalence (6) in Figure 3 is usefull in practice because the CNOTBA gate may not be
native in some implementations, so we need to simulate it : this can be done using
the native gate CNOTAB plus 4 Hadamard gates. Finally another classical equivalence
of quantum circuits involves the CNOT gate with the controlled Pauli-Z gate (also
denoted by c − Z) and the Hadamard gate (equivalence (7) in Figure 3). We already
mentionned it in the introduction to emphasize the ubiquity of the CNOT gates in
quantum circuits as well as the importance of the universality theorem. Using the
definitions of the Pauli-Z gate (Figure 1) and of a controlled-U gate, it is easy to
check that the action of the c − Z gate on a basis state vector is defined by

∀x, y ∈ {0, 1}, c − Z |xyi = (−1)xy |xyi (4)

and that it is invariant by switching the control and the target qubits. Equivalence
(7) can be proved using the definition of the Hadamard gate (Figure 1) and Relation
(4).
On a system of n qubits, we label each qubit from 0 to n − 1 thus following the
usual convention. For coherence we also number the lines and columns of a matrix
of dimension n from 0 to n − 1 and we consider that a permutation of the symmetric

4
group Sn is a bijection of {0, . . . , n − 1}. The n-qubit system evolves over time in
the Hilbert space H0 ⊗ H1 ⊗ · · · ⊗ Hn−1 where Hi is the Hilbert space of qubit i.
n
Hence the Hilbert space of an n-qubit system is isomorphic to C2 . In this space,
a state vector of the standard computational basis is denoted by |b0 b1 · · · bn−1 i with
bi ∈ {0, 1}. A CNOT gate with target on qubit i and control on qubit j will be denoted
Xij . The reader will pay attention to the fact that our convention is the opposite of
the one generaly used in the literature (and in the beginning of this section) where
CNOTij denotes a CNOT gate with control on qubit i and target on qubit j. The reason
for this convention is explained in the proof of Theorem 4, Section 3. So, if i < j,
the action of Xij and Xji on a basis state vector is given by :

Xij |b0 · · · bi · · · bj · · · bn−1 i = |b0 · · · bi ⊕ bj · · · bj · · · bn−1 i , (8)


Xji |b0 · · · bi · · · bj · · · bn−1 i = |b0 · · · bi · · · bj ⊕ bi · · · bn−1 i . (9)

Notice that the Xi,j gates are (represented by) matrices of size 2n × 2n in the or-
thogonal group O2n (R) and that they are permutation matrices.

 
1 0 0 0 0 0 0 0
0 0 0 0 0 1 0 0
 
0 0 1 0 0 0 0 0
q0  
0 0 0 0 0 0 0 1
X02 : q1 
0

0 0 0 1 0 0 0
q2
 
0 1 0 0 0 0 0 0
 
0 0 0 0 0 0 1 0
0 0 0 1 0 0 0 0
Figure 4: The gate X02 in a 3-qubit circuit and its matrix in the standard basis.

To represent a permutation of Sn , we use the 2-line notation as well as the cycle


notation and the n × n permutation matrix whose entry (i, j) is 1 if i = σ(j) and
0 otherwise. As an example, if σ ∈ S6 is the permutation defined by σ(0) =
4, σ(1)
 = 5, σ(2) = 0, σ(3)  = 3, σ(4) = 2, σ(5) = 1 then the 2-line notation is
0 1 2 3 4 5
σ = , a cycle notation can be σ = (204)(15) = (51)(420) or
4 5 0 3 2 1
σ = (204)(15)(3)
 if we want
 to write the one-cycle and the permutation matrix is
0 0 1 0 0 0
0 0 0 0 0 1
 
0 0 0 0 1 0
Mσ =  0 0 0 1 0 0. The cycle type of a permutation σ ∈ Sn is the tuple

 
1 0 0 0 0 0
0 1 0 0 0 0
λ = (n1 , n2 , . . . , np ) of positive integers such that n1 > n2 > . . . > np , n = pi=1 ni
P
and σ is the commutative product of cycles of length ni (including the cycles of
length 1). This kind of tuple is called a decreasing partition of n. For instance
σ = (204)(15)(3) = (204)(15) has cycle type λ = (3, 2, 1). Notice that the cycle
type of the identity is λ = (1, . . . , 1). Two permutations have the same cycle type

5
0
iff they are in the same conjugacy class. For instance σ = (350)(24)
 has the same
0 1 2 3 4 5
cycle type as σ and σ 0 = γσγ −1 where γ = .
5 2 3 1 0 4
A SWAP gate between qubit i and qubit j is denoted by S(ij) where (ij) is the cyclic
notation for the transposition that exchange i and j. Since the symmetric group
Sn is generated by the transpositions, it is straightforward to prove that the group
generated by the S(ij) is isomorphic to the symmetric group : each SWAP gate S(ij) in
a n-qubit circuit corresponds to the transposition (ij) in Sn . Notice that the cyclic
notation of a transposition (i.e. (ij) = (ji)) implies S(ij) = S(ji) which is coherent
with the symmetry of a SWAP gate. More generaly any circuit of SWAP gates maps
to a permutation σ (examples in Figure 5 and Figure 13). If we denote by Sσ the
unitary operator corresponding to that circuit one has :

Sσ |b0 b1 · · · bn−1 i = |bσ−1 (0) bσ−1 (1) · · · bσ−1 (n−1) i (10)

q0
q1
σ = (024)(13) Sσ = S(02) S(24) S(13) q2
q3
q4

Figure 5: A 5-qubit quantum circuit of SWAP gates and the corresponding permutation

3 The group generated by the CNOT gates


We denote by cXn (n > 2) the group generated by the n(n − 1) gates (i.e. matrices)
Xij .

cXn := hXij | 0 6 i, j < n, i 6= ji (11)

q0
q1
X12 X10 X31 X03 :
q2
q3

Figure 6: A circuit of cX4 and the corresponding operator.

6
Proposition 1. The following identities are satisfied by the generators of cXn .

Involution : Xij2 = I (12)


Braid relation : Xij Xji Xij = Xji Xij Xji = S(ij) (13)
Commutation : (Xij Xk` )2 = I where i 6= `, j 6= k (14)
Non-commutation : (Xij Xjk )2 = (Xjk Xij )2 = Xik (15)

Proof. One checks each identity A = B by showing that the actions of gates A and
B on a basis state vector |b0 · · · bn−1 i are the same. Using identities 8 and 9, the
results follow from direct computation let to the readers.

q0
q1
∼ ∼
q2
q3
X03 = X02 X23 X02 X23 = X23 X02 X23 X02

Figure 7: Example of Identity (15) in a cX4 circuit.

Using the identities from Proposition 1, one gets easily the conjugacy relations in
cXn :

Xij Xjk Xij = Xjk Xik and Xij Xki Xij = Xki Xkj . (16)

Let us denote by Sn the group generated by the Sij ,

Sn := S(ij) | 0 6 i, j < n (17)

As explained at the end of Section 2, Sn is isomorphic to the symmetric group Sn


and Identity (13) implies that Sn is a subgroup of cXn . The action of Sn on cXn by
conjugation is given by the following proposition :

Proposition 2. For any permutation σ in Sn and any i 6= j, one has :

Sσ Xij Sσ−1 = Xσ(i)σ(j) . (18)

Proof. Since the transpositions generate the symmetric group, it suffices to prove
the result when σ is a transposition, i.e. Sσ = Xk` X`k Xk` for some ` 6= k. Hence,
the result comes straightforwardly from equalities (12), (13), (14) and (16).
We denote by SLn (K) the special linear group on a field K and by Tij (n) the matrix
In + nEij where n ∈ K \ {0}, i 6= j and Eij is the matrix with 0 on all entries
but the entry (i, j) which is equal to 1. Let (ek )06k<n be the canonical basis of the
vector space K n and (e∗k )06k<n its dual basis. Then the matrix Tij (n) represents
in the canonical basis the automorphism tij (n) : u → u + ne∗j (u)ei of K n which is

7
q0
q1
∼ ∼
q2
q3
X03 = S(02) X23 S(02) = S(23) X02 S(23)

Figure 8: Example of Identity (18) in a cX4 circuit.

a transvection fixing the hyperplane hek | k 6= ji and directed by the line hei i. So
Tij (n) is a transvection matrix and this is a well known fact in linear algebra that
the transvection matrices generate SLn (K). A simple way to find a decomposition
in transvection matrices of any matrix M in SLn (K) is to use the Gauss-Jordan
algorithm with M as input. This algorithm is generaly used to compute an inverse
of a matrix but it also yields a decomposition of M as a product of transvections
(see Figure 11 in Section 4 for an example).
If K = F2 then n = 1 and the set {Tij (n)|n ∈ K} is reduced to the n(n − 1)
transvection matrices Tij := In + Eij . Moreover, since any invertible matrix of
GLn (F2 ) has determinant 1, one has :
GLn (F2 ) = hTij | 0 6 i, j < n, i 6= ji . (19)
We recall that the Gauss-Jordan algorithm is based on the following observation :
Proposition 3. Multiplying to the left (resp. the right) any F2 -matrix M by a
transvection matrix Tij is equivalent to add the jth line (resp. ith column) to the ith
line (resp. j column) in M .
In particular, one has
   
b0 b0
 ..   .. 
 .   . 
 bi   bi ⊕ bj 
   
 .   . 
 ..  =  ..  .
Tij  (20)
  
 b   b 
 j   j 
 .   . 
 ..   .. 
bn−1 bn−1
The notation |b0 b1 · · · bn−1 i used in QIT is a shorthand for the tensor product |b0 i ⊗
|b1 i ⊗ · · · ⊗ |bn−1 i and it is convenient to identify the binary label b0 b1 · · · bn−1 with
the column vector u = [b0 , b1 , · · · , bn−1 ]T of Fn2 since the ⊕ (XOR) operation between
two bits corresponds to the addition in F2 . So the computational basis of the Hilbert
space H0 ⊗ H1 ⊗ · · · ⊗ Hn−1 is from now on denoted by (|ui)u∈Fn and using Relation
2
(20) we can rewrite Relation (8) in a much cleaner way as
Xij |ui = |Tij ui . (21)
The above considerations lead quiet naturally to the following theorem :

8
Theorem 4. The group cXn generated by the CNOT gates acting on n qubits is
isomorphic to GLn (F2 ). The morphism Φ sending each Xij to Tij is an explicit
isomorphism.

Proof. The surjectivity of Φ is due to the fact that GLn (F2 ) is generated by the
transvections Tij . Furthermore, due to Relation (21), a preimage N by Φ of a
matrix M in GLn (F2 ) must satisfy the relation N |ui = |M ui for any basis vector
|ui and there is only one matrix N satisfying this relation. So Φ is also injective
and the result is proved.
Notice that the image by Φ of a SWAP matrix S(ij) is a transposition matrix P(ij) :=
Tij Tji Tij = Tji Tij Tji in GLn (F2 ) and more generaly Φ(Sσ ) is the permutation matrix
Pσ for any permutation σ in Sn . From now on we will denote by M σ = Pσ M Pσ−1
the conjugate of a matrix M in GLn (F2 ) by a permutation matrix Pσ . Using the
isomorphism Φ, Relation (18) leads to

Tijσ = Pσ Tij Pσ−1 = Tσ(i)σ(j) . (22)

The order GLn (F2 ) is classicaly obtained by computing the number of different basis
of Fn2 and Theorem 4 implies

Corollary 5.
n
n(n−1) Y
|cXn | = 2 2 (2i − 1). (23)
i=1

In his ”Lectures on Chevalley Group” [31, Chapter 6], Steinberg gives a presentation
of the special linear group on a finite field K in dimension n > 3. The notation (a, b)
stands here for the commutator of two elements a and b of a group (i.e. a−1 b−1 ab)
which is usualy denoted by [a, b].

Theorem 6. (Steinberg)
If n > 3 and K is a finite field, the symbols xij (t), (1 6 i, j 6 n, i 6= j, t ∈ K)
subject to the relations :

(A) xij (t)xij (u) = xij (t + u)

(B) (xij (t), xjk (u)) = xik (tu) if i, j, k are distinct, (xij (t), xk` (u)) = 1
if j 6= k, i 6= `

define the group SLn (K).

It is straightforward to adapt this presentation to the case K = F2 and we get so a


presentation for the group cXn for any n > 3.

9
Corollary 7. If n > 3, a presentation of the group cXn is < S | R > where S is
the set of the n(n − 1) symbols xij (0 6 i, j 6 n − 1, i 6= j) and R is the set of the
relations :

x2ij = 1, (24)
2
(xij xjk ) = xik , (25)
(xij xk` )2 = 1 if i 6= `, j 6= k. (26)

We remark that all the identities given by Proposition 1 appear in this presentation
but Identity (13). Of course the braid relation (13) can be deduced from the presen-
tation relations but the calculation is tricky. First of all, using the above relations
we obtain the conjugacy relation xij xjk xij = xjk xik = xik xjk (as we did to obtain
Relation (16)). Then we use many times this conjugacy relation to obtain the re-
lation xij xji xij xji xij = xji and finally we get the braid relation xij xji xij = xji xij xji
using Relation (24). The calculation is detailled in Figure 9.

xji xij xji = xji (xik xkj )2 xji xij xji xij xji xij = xij (xik xjk xki xkj )2 xij
= (xji xik xkj xji )2 = (xij xik xjk xki xkj xij )2
= (xji xik xji xji xkj xji )2 = (xik xij xjk xki xij xkj )2
= (xik xjk xki xkj )2 = (xik xik xjk xki xkj xkj )2
= (xjk xki )2
= xji
Figure 9: Getting the braid relation xij xji xij = xji xij xji from Corollary 7.

A classical result in Group Theory is that the projective special linear group PSLn (K)
is simple when n > 3 (see e.g. [34, Chapter 3] for a proof). This group is defined as
SLn (K)/Z where Z is the subgroup of all scalar matrices with determinant 1, which
appears to be the center of SLn (K) . If K = F2 the identity matrix is is the only
scalar matrix that has determinant 1 and the center of SLn (F2 ) is reduced to the
trivial group. Hence SLn (F2 ) = PSLn (F2 ) and the group cXn is simple when n > 3.
If n = 2, cX2 has order 6 and is isomorphic to S3 , one possible isomorphism being
X01 ' (01), X10 ' (12), X01 X10 ' (012), X10 X01 ' (021) and X01 X10 X01 ' (02). So
cX2 is not a simple group since the alternating group is always a normal subgroup
of Sn .
Identity (15) involves 3 distinct integers i, j, k and can be generalized by induction
to an arbitrary number of distinct integers in the following way :
Proposition 8. Let i1 , i2 , . . . , ip be distinct integers (p > 3) of {0, 1, . . . , n − 1},
then :
2
Xi1 ,ip = Xi1 ,i2 Xi2 ,i3 . . . Xip−2 ,ip−1 Xip−1 ,ip Xip−2 ,ip−1 . . . Xi2 ,i3 (27)

Proposition 8 provides a simple way to adapt any CNOT gate to the topological
constraints of a given quantum computer. These constraints can be represented by

10
a directed graph whose vertices are labelled by the qubits. There is an arrow from
qubit i to qubit j when these two qubits can interact to perform an Xij operation
on the system. In a device with the complete graph topology, the full connectivity
is achieved (see e.g. [24, 35]) and any Xij operation can be performed directly
(i.e. without involving other two-qubit operations on other qubits than i and j).
In contrast, the constraints in the LNN (Linear Nearest Neighbour) topology are
strong as direct interaction is allowed only on consecutive qubits, i.e. only Xi,i+1 or
Xi+1,i [36]. Of course there are also many intermediate graph configurations as in
the IBM superconducting transmon device (www.ibm.com/quantum-computing/).
To implement a Xij gate when there is no arrow between i and j, the usual method
is to use SWAP gates together with allowed CNOT gates as we did in Figure 8. But,
if SWAP gates are implemented on the device using 3 CNOT gates (circuit equivalence
(5)), this implementation can be done in a more reliable fashion by using less gates :
just find a shortest path (i1 = i, . . . , ip = j) between i and j in the undirected graph,
then apply formula (27). Notice that it can be important to take into account the
error rate associated to each arrow (i, j) in the shortest path computation since it
may vary from one gate to another (see Figure 1). Case of (ik , ik+1 ) is not an arrow,
use the classical equivalence 6 in Figure 3 to invert target and control. Of course
this adds two single-qubit gates to the circuit but the impact on reliability is small
since on current experimental quantum devices the fidelity of single qubit gates as
the Hadamard gate is much higher than any two-qubit gate fidelity (e.g. Figure 1
again). In the example below, we implement a CNOT gate considering the topology
of the 15-qubit ibmq 16 melbourne device :

0 1 2 3 4 5 6

14 13 12 11 10 9 8 7

Choosen path to implement X4,7 : (4, 10, 9, 8, 7)


X4,7 = (X4,10 X10,9 X9,8 X8,7 X9,8 X10,9 )2

We end this section by remarking that GLp (F2 ) can be regarded as a subgroup
of GLn (F2 ) if p < n. Indeed,
 let ϕ be the injective morphism from GLp (F2 ) into
M 0
GLn (F2 ) defined by ϕ(M ) = , one has GLp (F2 ) ' ϕ(GLp (F2 )), so we will
0 In−p
consider that GLp (F2 ) ⊂ GLn (F2 ) and no distinction will be made between matrices
M and ϕ(M ).

4 Optimization of CNOT gates circuits


A CNOT circuit is optimal if there is not another equivalent CNOT circuit with less
gates. In the same way a decomposition of a matrix M ∈ GLn (F2 ) in product of
transvections Ti,j is optimal if M cannot be written with less transvections. If the
depth of a circuit C 0 is less than the depth of an equivalent circuit C we say that C 0

11
is a reduction of C (or that C has been reduced to C 0 ) and if C 0 is optimal we say
that C 0 is an optimization of C (or that C has been optimized to C 0 ).
For a better readability we denote from now on the transvection matrix Tij by [ij]
and the permutation matrix Pσ by σ. As a consequence, (ij) denotes the transposi-
tion which exchanges i and j as well as the transposition matrix P(ij) . Notice that
(ij) = (ji) but [ij] = [ji]T ([ij] is the transpose matrix of [ji]). With these notations
the braid relation (13) becomes (ij) = (ji) = [ij][ji][ij] = [ji][ij][ji] and Identity
(22) becomes σ[ij]σ −1 = [ij]σ = [σ(i)σ(j)]. In particular, (ij)[ij](ij) = [ij](ij) = [ji].

From Section 3, any CNOT circuit can be optimized using the following rewriting
rules.

Proposition 9. Let 0 6 i, j, k, l 6 n − 1 be distinct integers :

[ij]2 = 1 (28)
[ij][jk][ik] = [ik][ij][jk] = [jk][ij] ; [ij][ki][kj] = [kj][ij][ki] = [ki][ij] (29)
[ij][jk][ij] = [jk][ik] = [ik][jk] ; [ij][ki][ij] = [ki][kj] = [kj][ki] (30)
[ij][kl] = [kl][ij] ; [ij][ik] = [ik][ij] ; [ij][kj] = [kj][ij] (31)
−1
σ[ij] = [ij]σ σ = [σ(i)σ(j)]σ ; [ij]σ = σ[ij]σ = σ[σ −1 (i)σ −1 (j)] (32)

In practice one tries to find an ad hoc sequence of the above rules to reduce or to opti-
mize a given circuit (see Figure 10 for an example) but the computation can be tricky
even with a few qubits. So it is difficult to build a general reduction/optimization
algorithm from Proposition 9.
To optimize a CNOT circuit of a few qubits we use a C ANSI program that builds
the Cayley Graph of the group GLn (F2 ) by Breadth-first search and then find in the
graph the group element corresponding to that circuit. This program optimizes in a
few seconds any CNOT circuit up to 5 qubits and the source code can be downloaded at
https://github.com/marcbataille/cnot-circuits. In the rest of this article we
refer to it as ”the computer optimization program”. However, due to the exponential
growth of the group order (for instance Card(cX6 ) = 20 158 709 760), the computer
method fails from 6 qubits with a basic PC. In this context we remark that the
Gauss Jordan algorithm mentionned in Section 3 can be used as a heuristic method
to reduce a given CNOT gates circuit (see Figure 11 for a detailled example). It works
as follows.

• Each Xij gate of a given circuit C corresponds to a transvection matrix [ij].


Multiplying these transvection matrices yields a matrix M in GLn (F2 ) that
we call the matrix of the circuit in dimension n.

• The Gauss-Jordan algorithm applied to the matrix M gives a decomposition


of M under the form M = KU where U is an upper triangular matrix and K is
a matrix that is a lower triangular matrix if and only if the element of F2 that
appears on the diagonal at each step of the algorithm is 1, so we can choose
it as pivot. In this case the matrix M as a LU (Lower Upper ) decomposition

12
q0
Circuit C to reduce : q1
q2

M = [10](02)[01][12][20][01]
(32)
= (02)[12][01][12][20][01]
(30)
= (02)[01][02][20][01]
(32)
= [21](02)[02][20][01]
= [21][02][20][02][02][20][01]
(28)
= [21][02][01]
(29)
= [02][21]
q0
Optimized circuit C 0 ∼ C : q1
q2
Figure 10: Optimizing a CNOT circuit using an adhoc sequence of reduction rules.

and this decomposition is unique. If at a given step the bit on the diagonal
is 0 then we have to choose another pivot and the matrix K is not triangular
anymore. Morevoer the decomposition M = KU is not unique as the matrix
K depends on the choice of the pivot at each step, so the algorithm is not
deterministic in this case.

• A decomposition of K in product of transvections is directly obtained while


executing the algorithm and a simple and direct Q decomposition of an upper
triangular matrix U = (uij ) in GLn (F2 ) is U = 1j=n−1 0i=j−1 [ij]uij . We call
Q
this decomposition the canonical decomposition of U and Q symmetrically the
n−2 Qn−1
canonical decomposition of a lower triangular matrix is L = j=0 i=j+1 [ij]lij .

• Replacing each transvection [ij] in the decomposition of M by the correspond-


ing CNOT gate Xij , we obtain a circuit C 0 equivalent to C. If the depth of C 0
is less than the depth of C then we have successfully reduced the circuit C. If
not, the heuristic failed.

We note that the circuit C 0 obtained by this process is generally not optimal even
for small values of n. However the Gauss-Jordan algorithm has the great advantage
of providing an upper bound on the optimal number of CNOT gates in a circuit.

Proposition 10. Any n-qubit circuit of CNOT gates is equivalent to a circuit com-
posed of less than n2 gates.

13
Proof. We apply the Gauss-Jordan elimination algorithm to get a decomposition
of M ∈ GLn (F2 ) in transvections. The first part of the algorithm consists in mul-
tiplying M to the left by a sequence of transvections in order to obtain an upper
triangular matrix U . For k = 0, 1, . . . , n − 1, we consider the column k and the
entry of the matrix on the diagonal. If this entry is 1 we choose it as a pivot but
if it is 0 we first need to put a 1 on the diagonal. This can be done by swaping
row k with a row ` whose entry (`, k) is 1. However, this will cost 3 transvections
and it is more economical to add row ` to row k, i.e. multiplying to the left by
[k, `]. The number of left multiplications by transvections necessary to have a pivot
equal to 1 on the diagonal at each step is bounded by n − 1 and the number of
left multiplications necessary to eliminate the 1’s below the pivot is bounded by
n − 1 + · · · + 1 = n(n−1)
2
. Hence the number of transvections that appears in the
first part of the algorithm is bounded by n(n+1) 2
− 1. In the second part of the
algorithm we just write the canonical decomposition of U which contains at most
n − 1 + n − 2 + · · · 1 = n(n−1)
2
transvections. Finally we see that the number of
transvections in the resulting decomposition of M is at most n2 − 1.

q0
q1
INPUT : C =
q2
q3
M = [02][30][21][23][32][20][23][30][20][03][12][01]
     
0 1 1 1 1 0 0 0 1 0 0 0
0 1 1 0 0 1 1 0 0 1 1 0
M =1 0 1 0 ; [03]M = 1 0 1 0 ; [31][20][30][03]M = 0
    
0 1 0
1 1 1 1 1 1 1 1 0 0 0 1
K = [03][30][20][31] ; U = [12] ; M = KU = [03][30][20][31][12]
q0
q1
OUTPUT : C 0 =
q2
q3
Figure 11: The Gauss-Jordan algorithm applied to a CNOT gates circuit.

The canonical decomposition of an upper or lower triangular matrix is generally not


optimal, so we propose in what follows another algorithm to decompose a triangular
matrix in transvections. Applying this algorithm to the matrix U when the decom-
position of M is KU or to both matrices L and U when the decomposition of M
is LU can often improve the decomposition given by the Gauss-Jordan heuristic,
especially when the triangular matrix has a high density of 1’s (See Figure 12 for an
example). We describe below this algorithm for an upper triangular matrix (UTD
algorithm) but it can be easily adapted to the case of a lower triangular matrix
(LTD algorithm). We denote by |Li | is the number of 1’s in line i of a matrix.

14
Algorithm 11. Upper Triangular Decomposition (UTD algorithm)
INPUT : An upper triangular matrix U in GLn (F2 ).
OUTPUT : A sequence S = (t0 , t1 , . . . , tp−1 ) of transvections such that U = p−1
Q
j=0 tj .
1 S = (); j = 0;
2 while U 6= I :
3 for i = 0 to n − 2 :
4 if |Li | > 1 :
5 Let Ei = {k | i < k 6 n − 1 and |Li ⊕ Lk | < |Li |};
6 if Ei 6= ∅ :
7 Choose the smallest k ∈ Ei such that |Li ⊕ Lk | is minimal;
8 U = [ik]U ;
9 tj = [ik] ; j = j + 1;
10 return S;

The algorithm ends because for each loop (for i = 0 to n − 2) the number of
1’s in the matrix decreases of at least one. Indeed, there is always at least one
couple (i, k) choosen during this loop, namely : i = max{j | |Lj | > 1} and k =
max{j | Uij 6= 0}. Furthermore, we notice that the number of transvections in the
decomposition S is always less than or equal to the number of transvections in the
canonical decomposition of the matrix U since each transvection in the canonical
decomposition of U contributes to a decrease of exactly one in the initial number of
1’s in the matrix U whereas each transvection in S contributes to a decrease of at
least one in this initial number of 1’s.
Again, the decomposition obtained by applying the Gauss-Jordan algorithm followed
by the UTD or LTD algorithm is generally not optimal. In fact we conjecture the
following result.

Conjecture 12. Any n-qubit circuit of CNOT gates is equivalent to a circuit composed
of at most 3(n − 1) gates. The upper bound of 3(n − 1) gates is reached only in the
special case of SWAP gates circuits Sσ where σ is a cycle of length n in Sn .

We checked this conjecture up to 5 qubits thanks to a C ANSI program (see the


results summarized in Table 2). The source code of the program can be downloaded
at https://github.com/marcbataille/cnot-circuits.

5 Optimization in subgroups of cXn


In this section we describe the structure of some particular subgroups of cXn '
GLn (F2 ) and we propose algorithms to optimize CNOT gates circuits of these sub-
groups. Starting from an input circuit C, we first compute the matrix M of the
circuit in dimension n. In some specific cases the matrix M has a particular shape
so we can propose an optimal decomposition in transvections for M and output an
optimization C 0 of the circuit C. We describe 3 subgroups corresponding to 3 types
of matrices with the objective of building step by step a kind of atlas of CNOT gates
circuits with specific optimization algorithms.

15
optimal length n=2 n=3 n=4 n=5
l=0 1 1 1 1
l=1 2 6 12 20
l=2 2 24 96 260
l=3 1 51 542 2 570
l=4 60 2 058 19 680
l=5 24 5 316 117 860
l=6 2 7 530 540 470
l=7 4 058 1 769 710
l=8 541 3 571 175
l=9 6 3 225 310
l = 10 736 540
l = 11 15 740
l = 12 24
Order of cXn 6 168 20 160 9 999 360

Table 2: Number of elements of cXn having an optimal decomposition of length l. The numbers
in bold correspond to the (n − 1)! cyclic permutations of length n.

5.1 Permutation matrices


The first case considered is when the matrix M ∈ GLn (F2 ) of the circuit is a permu-
tation matrix Pσ . In this case the circuit is equivalent to a SWAP gates circuit and
we work in Sn , the subgroup of cXn generated by the S(ij) gates which is isomorphic
to Sn (see example in Figure 13).

Proposition 13. Any permutation matrix Pσ can be decomposed as a product of


3(n − p) transvections where p is the number of cycles of the permutation σ.

Proof. Let λ = (n1 , . . . , np ) be the cycle type of σ. Any cycle of length ni can be
decomposed in the product of ni − 1 transpositions and each transposition can be
decomposed in a product of 3 transvections,
Pp so the total number of transvections
used in the decomposition of Pσ is 3 i=1 (ni − 1) = 3(n − p).
The following conjecture has been checked up to 5 qubits using the computer opti-
mization program.

Conjecture 14. The decomposition in transvections of a permutation matrix Pσ


given by Proposition 13 is optimal.

5.2 Block diagonal matrices


In the second case, we consider that the matrix M of the circuit in dimension n is a
block diagonal matrix or the conjugate of a diagonal block matrix by Pap permutation
matrix. Let (n1 , . . . , np ) be a tuple of p positive integers such that i=1 ni = n and

16
q0
q1
INPUT : C = q2 (13 CNOT)
q3
q4
M = [21][32][23][41][20][40][01][31][21][42][43][12][34]
    
1 1 1 0 0 1 0 0 0 0 1 1 1 0 0
0 1 1 0 0 0 1 0 0 0 0 1 1 0 0
    
M = 1 0 1 1 1  = 1 1 1 0 0 0 0 1
   1 1
1 0 1 0 0 1 1 1 1 0 0 0 0 1 1
1 0 1 1 0 1 1 1 0 1 0 0 0 0 1
| {z }| {z }
L U

Canonical decomposition of L : L = [20][30][40][21][31][41][32][42]


Canonical decomposition of U : U = [24][34][23][02][12][01]
LTD algorithm −→ L = [42][32][21][20]
UTD algorithm −→ U = [01][23][34][12]
Hence : M = [42][32][21][20][01][23][34][12]
q0
q1
OUTPUT : C 0 = q2 (8 CNOT)
q3
q4
Figure 12: The UTD/LTD algorithms applied to a LU circuit of CNOT gates

 
A1 0 . . . 0
. . 
 0 A2 . . .. 

consider the matrix MS =  . .  where S = (A1 , . . . , Ap ) is a tuple of
 .. .. ... 0 
0 . . . 0 Ap
matrices Ai in GLni (F2 ). Here MS is a block diagonal matrix and we shall see right
after the case of the conjugate of a block diagonal matrix by a permutation matrix.
Clearly {MS | S ∈ GLn1 (F2 ) × · · · × GLnp (F2 )} is a group isomorphic to the direct
group product GLn1 (F2 ) × · · · × GLnp (F2 ) since
   
A1 0 . . . 0 In1 0 ... 0
. .  .. .. .. 
 0 In2 . . ..  0 . . . 
 
MS =  . . .  × ··· ×  . .  where Iα is the identity
 .. .. .. 0   .. . . In 0
p−1
0 . . . 0 Inp 0 ... 0 Ap
matrix in dimension α. This equality can be written as MS = pi=1 Mi where
Q

17
q0 q0
q1 q1
C1 C2 ∼ C1 C2
q2 q2
q3 q3

 
0 1 0 0
0 0 1 0
M = Pσ = 
0
 ; σ = (3210) = (23)(12)(01)
0 0 1
1 0 0 0
Figure 13: A cyclic permutation of the qubits between two circuits C1 and C2

 
INi−1 0 0
0  and Ni = ik=1 nk . We recall that the conjugation M σ =
P
Mi =  0 Ai
0 0 In−Ni
−1
Pσ M Pσ of a square matrix M by a permutation matrix Pσ has the following effect
on M : if we denote by Li (resp. L0i ) and Ci (resp. Ci0 ) the lines and columns
of matrix M (resp. M σ ) then L0i = Lσ−1 (i) and Ci0 = Cσ−1 (i) , hence if M = (mij )
and M 0 = (m0ij ) then m0ij = mσ−1 (i)σ−1 (j) . So, if we consider now a tuple of p
permutations (σ1 , . . . , σp ) verifying the conditions σi (n1 +n2 +· · ·+ni−1 ) = 0, σi (n1 +
n2 + · · · + ni−1 + 1) = 1, . . . , σi (n1 + n2 + · · · + ni−1 + ni −1) = ni − 1 then
−1 −1 Ai 0
MS = pi=1 (Miσi )σi = pi=1 (Mi0 )σi where Mi0 =
Q Q
' Ai . Moreover,
0 In−ni
for Relation (22), the number of transvections in an optimal decomposition of any
matrix M in GLn (F2 ) is the same as the number of transvections in an optimal
decomposition of M σ for any permutation σ. As a consequence, the product of the
conjugates by σi−1 of any optimal decomposition of the matrix Ai yields an optimal
decomposition of the matrix MS (see Figure 14 for an example).
The generalization of the previous situation to the case of a matrix M = MSσ where
MS is a block diagonal matrix and σ a permutation matrix is straightforward. In-
deed, if we have an optimal decomposition of MS in transvections, then we deduce
an optimal decomposition for MSσ by conjugating by σ each transvection in the de-
composition of MS . This is due to the fact that the number of transvections in an
optimal decomposition of any matrix M in GLn (F2 ) is the same as the number of
transvections in an optimal decomposition of M σ (see Relation (22)). In fact the
problem we adress here is rather the following : how can we efficiently recognize that
the matrix M is of type M = MSσ ? To do that we interpret the matrix M of the
circuit in dimension n as the adjacency matrix of the directed graph G(M ) whose set
of vertices is V = {0, 1, . . . , n − 1} and whose set of edges is E = {(i, j) | mij = 1}.
We call G(M ) the graph of the circuit. The graph (G(M ))σ defined by the set of
vertices σ(V ) = V and by the set of edges Enσ = {(σ(i), σ(j)) | mij = 1} is isomor- 
phic to G(M ). Besides, Enσ = {(i, j) | mσ−1 (i)σ−1 (j) = 1} and M σ = mσ−1 (i)σ−1 (j) ,
so (G(M ))σ = G(M σ ). The graph G(MS ) is a disconnected graph whose p con-
nected components are V1 = {0, . . . , n1 − 1}, V2 = {n1 , . . . , n1 + n2 − 1}, . . . , Vp =

18
 
1 0 1 1 0 0 0
1 0 1 0 0 0 0  

0 1 1 1 0 0 0
 1 0 1 1
  1 0 1 0
1 1 1 1 0 0 0 where A1 = 0 1 1 1 and
Let M(A1 ,A2 ) =    
0 0 0 0 0 0 1

0 0 0 0 1 1 1
 1 1 1 1

 0 0 0 0 0 1 1
0 0 1  
0 1 2 3 4 5 6
A2 = 1 1 1 . Let σ1 = I7 and σ2 =
  , then :
3 4 5 6 0 1 2
0 1 1
  σ−1
1 0 1 1 0 0 0 0 0 1 0 0 0 0 2
1 0 1 0 0 0 0 1 1 1 0 0 0 0
  
0 1 1 1 0 0 0 0 1 1 0 0 0 0
−1 −1
= M10 σ1 M20 σ2 .
  
1 1 1 1 0 0 0 0 0 0 1 0 0 0
M(A1 ,A2 ) =   
0 0 0 0 1 0 0 0 0 0 0 1 0 0
  
0 0 0 0 0 1 0 0 0 0 0 0 1 0
0 0 0 0 0 0 1 0 0 0 0 0 0 1
Using the computer optimization program, one finds
A1 = [13][01][30][21][13][02][01] , A2 = [01][12][10][21][01].
Hence an optimal decomposition for M is
−1
M(A1 ,A2 ) = [13][01][30][21][13][02][01]([01][12][10][21][01])σ2
= [13][01][30][21][13][02][01][45][56][54][65][45].
Figure 14: Decomposition of a matrix using cartesian product of subgroups.

{n1 + · · · + np−1 , . . . , n1 + · · · + np−1 + np − 1} , so the graph G(MSσ ) = (G(MS ))σ is


also a disconnected graph whose p connected components are σ(V1 ), . . . , σ(Vp ).
By applying a Breadth-first search or a Deepth-first search to the graph G(M ) of a
given circuit, one can get the connected components of G(M ) in linear time (see [21]
for a detailled description of the algorithm). Suppose that we find more than one
connected component, say C1 , . . . Cp and let ni be the cardinal of Ci for 1 6 i 6 p.
Let σ be any permutation verifying σ(C1 ) = {0, . . . , n1 − 1}, σ(C2 ) = {n1 , . . . , n1 +
n2 − 1}, . . . , σ(Cp ) = {n1 + · · · + np−1 , . . . , n1 + · · · + np−1 + np − 1}. Then the matrix
M σ is a block diagonal matrix MS and we obtain an optimal decomposition of M σ
−1
as explained before. Finally, we deduce an optimal decomposition of M = (M σ )σ
by conjugating by σ −1 this decomposition (see Figure 15 for an example). Since
we can find an optimal decomposition of any matrix of GLn (F2 ) for n 6 5 (using
the computer optimization program), then we can optimize any CNOT circuit whose
graph has connected components of size up to 5.

5.3 Bit reverse of permutation matrices


The third and last case we consider in this section is the case of a matrix M of type
σ where σ denotes a permutation matrix in even dimension in which all the bits are

19
q0
q1
q2
INPUT : C = q3 (14 CNOT)
q4
q5
q6
 
1 0 0 1 0 1 1
0 1 1 0 1 0 0 C1 = {0, 3, 5, 6}, C2 = {1, 2, 4}
   
0 0 0 0 1 0 0 0 1 2 3 4 5 6
  σ=
M = 0 0 0 0 0 1 1
 3 5 4 1 6 0 2
0 1 0 0 1 0 0  
  −1 0 1 2 3 4 5 6
1 0 0 0 0 1 1 σ =
5 3 6 0 2 1 4
1 0 0 1 0 0 1
 
1 0 1 1 0 0 0
1 0 1 0 0 0 0
 
0 1 1 1 0 0 0
 
Mσ = 1 1 1 1 0 0 0 = M(A1 ,A2 )

0 0 0 0 0 0 1
 
0 0 0 0 1 1 1
0 0 0 0 0 1 1
From example 14, M(A1 ,A2 ) = [13][01][30][21][13][02][01][45][56][54][65][45].
The corresponding circuit is :
q0
q1
q2
q3
q4
q5
q6
σ −1
M = M(A 1 ,A2 )
= [30][53][05][63][30][56][53][21][14][12][41][21]
q0
q1
q2
OUTPUT : C 0 = q3 (12 CNOT)
q4
q5
q6
Figure 15: Circuit optimization using a cartesian product of subgroups.

20
   
1 1
1 0 0 1 1 1
1 1
0 1 1 0 1 1
reversed. For instance (02)(13) = 
0
 and I4 = .
1
1 1 1 1 0 1
1 0
1 1 1 1 1 0
  
0 0 1 0 0 1 1 1
0 0 0 1
 1 0 1 1

We check that σ = σI. For instance (02)(13) = 
1 0
.
0 0 1 1 0 1
0 1 0 0 1 1 1 0
Lemma 15. Let n > 2 be an even integer.
2
In ∈ GLn (F2 ) and In = In . (33)
∀σ ∈ Sn , σIn σ −1 = In . (34)
∀σ, γ ∈ Sn , σ γ = σγ. (35)

Proof. Let denote by 1n the matrix of dimension n whose elements are all equal to
2
1. One has In = (In ⊕ 1n )2 = In2 ⊕ 12n = In ⊕ 12n . If n is even then 12n = 0, hence
2
In = In . Besides σIn σ −1 = σ(In ⊕ 1n )σ −1 = σIn σ −1 ⊕ σ1n σ −1 = In ⊕ 1n = In .
2
Finally σ γ = σIn γIn = σγγ −1 In γIn = σγIn = σγ.
From Lemma 15 we directly deduce the structure of the group < σ, σ > :

Proposition 16. The group generated by the permutation matrices and the matrix
In is isomorphic to the cartesian product Sn × (F2 , ⊕).

The following lemma gives a simple decomposition for the product of [ij][ki][jk] by
a transposition matrix (ij), (ki) or (jk). We use it in the proof of Proposition 19.

Lemma 17. Let 0 6 i, j, k 6 n − 1 be distinct integers :

R1 : [ij][ki][jk](jk) = [ki][ij][jk] (36)


L1 : (ij)[ij][ki][jk] = [ij][jk][ki] (37)
R2 : [ij][ki][jk](ki) = [jk][ij][ki][jk] (38)
L2 : (ki)[ij][ki][jk] = [ij][ki][jk][ij] (39)
R3 : [ij][ki][jk](ij) = [ji][ik][kj] (40)
L3 : (jk)[ij][ki][jk] = [ji][ik][kj] (41)

Proof. We prove only (41), the other proofs being similar :

(jk)[ij][ki][jk] = [ij](jk) [ki](jk) (jk)[jk]


= [ik][ji](jk)[jk] (using (22))
= [ik][ji][jk][kj]
= [ji][ik][kj] (using (29))

21
One obtains similar rules for matrices of type [ij][jk][ki] by taking the inverse of
each member of the identities of Lemma 17. For convenience we denote the product
[ij][ki][jk] by [ijk]. With this notation one has [ij][jk][ki] = [kij]−1 .
Proposition 18. Let n > 2 be even and let n = 2q.
q−2
Q
Let Bq = [2i + 1 2i + 2 2i + 3] if q > 1 and B1 = I2 . Then
i=0

I2q = Bq−1 (01)Bq . (42)

Proof. We proove the result by induction on q > 1.


The initial case follows from I2 = (01).
Induction step : suppose that q > 1 and I2q = Bq−1 (01)Bq .
We use the morphism ϕ already mentionned in the final remark of Section 3 : ϕ is the 
M 0
injective morphism from GL2q (F2 ) into GL2(q+1) (F2 ) defined by ϕ(M ) =
0 I2
and we make no distinction between  matrices M and ϕ(M  ).
0 1 ... 1 0 0
.. . . .
1 0 . .. .. .. 

 . .
 .. . . . . . 1 ... ... 
 
I2q 0  and ϕ(I2q ) = Bq−1 (01)Bq .
So, one has : ϕ(I2q ) = =

0 I2 1 . . . 1 0 0 ..  . 
 
0 . . . . . . 0 1 0
0 ... ... ... 0 1
Due to the effect on lines and columns of a mutliplication by a transvection matrix
(Proposition 3), we check that :
[2q 2q +1][2q +1 2q −1][2q −1 2q]ϕ(I2q )[2q −1 2q][2q +1 2q −1][2q 2q +1] =
I2q+2 .
Since [2q − 1 2q][2q + 1 2q − 1][2q 2q + 1] = [2q − 1 2q 2q + 1] one has :
I2q+2 = [2q − 1 2q 2q + 1]−1 ϕ(I2q )[2q − 1 2q 2q + 1].
I2q+2 = [2q − 1 2q 2q + 1]−1 Bq−1 (01)Bq [2q − 1 2q 2q + 1].
−1
Hence : I2q+2 = Bq+1 (01)Bq+1 .

Formula (42) gives a decomposition of I2q in 3(q − 1) + 3 + 3(q − 1) = 3(n − 1)


transvections (where n = 2q). We remark that this decompostion is not optimal if
q > 1. Indeed, it can be reduced as follows.
q−2
Q q−2
Q
Firstly Bq = [2i + 1 2i + 2 2i + 3] = [12][31][23] [2i + 1 2i + 2 2i + 3].
i=0 i=1
q−2
Thus Bq = [12][31][23]Bq0 , where Bq0 =
Q
[2i + 1 2i + 2 2i + 3]. Hence
i=1

I2q = Bq−1 (01)Bq = (Bq0 )−1 [23][31][12](01)[12][31][23]Bq0 . (43)

Then, one has :


[23][31][12](01)[12][31][23] = [23][31][12][10][01][10][12][31][23]
31
= [23][31][10][12][01][12][10][31][23]
30
= [23][31][10][01][02][10][31][23]. (8 transvections)

22
So, from Equation (43), we now have a decomposition of I2q in 3(q − 2) + 8 +
3(q − 2) = 3(n − 1) − 1 transvections. We remark that this result is coherent with
Conjecture 12. Indeed, since I2q is not a cycle of length n in GLn (F2 ), it must have
a decomposition in striclty less than 3(n − 1) transvections. We also conjecture that
this decomposition of In in 3(n − 1) − 1 transvections is optimal and we checked this
conjecture for n = 4 using our computer optimization program.
Actually Proposition 18 is a special case of the following proposition.
Proposition 19. Let n > 2 be even and let n = 2q. For any permutation matrix σ
of GLn (F2 ) different from In there exists q − 1 matrices M1 , . . . , Mq−1 of type [xyz]
0
, q − 1 integers εi ∈ {1, −1}, q − 1 matrices M10 , . . . , Mq−1 of type [xyz] and q − 1
0
integers εi ∈ {1, −1} such that :
q−1 q−1
0ε0i
Y Y
In = Miεi σ Mi (44)
i=1 i=1

Proof. Let n > 2 be an even integer. We denote by Pn∗ the set of decreasing parti-
tions λ of n such that λ 6= (1, . . . , 1). Any λ ∈ Pn∗ is the cycle type of a permutation
different from the identity (see Section 2). If λ ∈ Pn∗ , we denote by αλ the per-
mutation of Sn (or equivalently the permutation matrix of GLn (F2 )) defined by :
p−1 p
X X
αλ = (0 . . . n1 − 1) (n1 . . . n1 + n2 − 1) . . . ( ni · · · ni − 1).
| {z }| {z }
i=1 i=1
cycle of length n1 cycle of length n2 | {z }
cycle of length np
Notice that αλ has cycle type λ and is therefore different from the identity.
If n > 4 and λ ∈ Pn∗ , we denote by λ−2 the element of Pn−2 ∗
obtained from λ as
follows. To describe the operation we distinguish the general case (np > 2) and three
specific cases and we write each time the relation between αλ and αλ−2 . Notice that

αλ−2 is a permutation in Sn−2 or a permutation matrix in GLn−2 (F2 ) since λ ∈ Pn−2
but we can consider αλ−2 as a permutation in Sn (by setting αλ−2 (n − 2) = n − 2
and αλ−2 (n − 1) = n − 1) or as a permutation matrix of GLn (F2 ) (using the injective
morphism ϕ from GLn−2 (F2 ) into GLn (F2 )).
In the general case, λ−2 := (n1 , . . . , np −2), so αλ−2 = αλ (n−2 n−1)(n−3 n−2).
If np = np−1 = 1 (first specific case), λ−2 := (n1 , . . . , np−2 ), hence αλ−2 = αλ . If
np = 1 and np−1 > 1 (second specific case), λ−2 := (n1 , . . . , np−2 , np−1 − 1), hence
αλ−2 = αλ (n − 3 n − 2). If np = 2 (third specific case), λ−2 := (n1 , . . . , np−1 ), hence
αλ−2 = αλ (n − 2 n − 1).
Without loss of generality we can prove Proposition 19 in the case of a permutation
σ = αλ where λ ∈ Pn∗ . Indeed, if σ is any permutation (different from the identity)
that has cycle type λ, then σ is in the same conjugacy class as αλ since they have
the same cycle type and we build a permutation γ such that σ = γαλ γ −1 . Since
q−1 q−1
Q 0ε0i γ
Q εi 34
In = Mi αλ Mi and In = In , it follows that
i=1 i=1

q−1 q−1  γ
0ε0i
Y Y
In = (Miεi )γ σ Mi . (45)
i=1 i=1

23
To conclude it is sufficient to notice that ([ijk]ε )γ = [γ(i)γ(j)γ(k)]ε for any permu-
tation γ and for ε ∈ {−1, 1}. So Equation (45) can easily be writen under the form
of Equation (44) and this proves Proposition 19 for the permutation σ.
We prove now Proposition 19 for a permutation αλ , by induction on n > 2 even.
The intial case is clear since there is only one partition of 2 different from (1, 1)
namely λ = (2). In this case αλ = (01) = I2 .

Induction step : let n > 2 be an even integer, let λ in Pn+2 and αλ in Sn+2 . From
−1
Proposition 18, one has In+2 = [n − 1 n n + 1] In [n − 1 n n + 1]. We use the
q−1
Q εi q−1
Q 0ε0i
induction hypothesis on αλ−2 ∈ Sn : In = Mi αλ−2 Mi , hence
i=1 i=1

q−1 q−1
0ε0
Y Y
−1
In+2 = [n − 1 n n + 1] Miεi αλ−2 Mi i [n − 1 n n + 1]. (46)
i=1 i=1

We consider now the different possible relations between αλ−2 and αλ , starting by
the three specific cases and ending by the general case which is more technical.
In the first case αλ−2 = αλ , so Equation (46) becomes
q−1
Q εi q−1
Q 0ε0i
In+2 = [n − 1 n n + 1]−1 Mi αλ Mi [n − 1 n n + 1]
i=1 i=1
and we are done with the induction step.
In the second case αλ−2 = αλ (n − 1 n), so Equation (46) becomes
q−1 q−1
0ε0
Y Y
−1
In+2 = [n − 1 n n + 1] Miεi αλ (n − 1 n) Mi i [n − 1 n n + 1]. (47)
i=1 i=1

q−1
Q 0ε0i
Let M = (n − 1 n) Mi [n − 1 n n + 1]. One has :
i=1
q−1
Q  0ε0i (n−1 n)
M= Mi (n − 1 n)[n − 1 n][n + 1 n − 1][n n + 1]
i=1
q−1 
0ε0 (n−1 n)

37 Q
= Mi i [n − 1 n][n n + 1][n + 1 n − 1]
i=1
q−1
Q  0ε0i (n−1 n)
= Mi [n + 1 n − 1 n]−1 .
i=1
Hence Equation (47) becomes
q−1 q−1  (n−1
Y Y 0ε0i n)
−1
In+2 = [n − 1 n n + 1] Miεi αλ Mi [n + 1 n − 1 n]−1
i=1 i=1

and we are done with the induction step since ([xyz]ε )σ = [σ(x)σ(y)σ(z)]ε where
σ = (n − 1 n).
In the third case αλ−2 = αλ (n n + 1), so Equation (46) becomes
q−1 q−1
0ε0
Y Y
−1
In+2 = [n − 1 n n + 1] Miεi αλ (n n + 1) Mi i [n − 1 n n + 1]. (48)
i=1 i=1

24
q−1
Q 0ε0i
Let M = (n n + 1) Mi [n − 1 n n + 1]. One has :
i=1
q−1
Q  0ε0i (n n+1)
M= Mi (n n + 1)[n − 1 n][n + 1 n − 1][n n + 1]
i=1
q−1 
0ε0 (n n+1)

41 Q
= Mi i [n n − 1][n − 1 n + 1][n + 1 n]
i=1
q−1
Q  0ε0i (n n+1)
= Mi [n + 1 n n − 1]−1 .
i=1
Hence Equation (48) becomes
q−1 q−1  (n
Y Y 0ε0i n+1)
−1
In+2 = [n − 1 n n + 1] Miεi αλ Mi [n + 1 n n − 1]−1
i=1 i=1

and we are done with the induction step since ([xyz]ε )σ = [σ(x)σ(y)σ(z)]ε where
σ = (n n + 1).
In the general case, we start by conjugating each member of Equation (46) by
(n n + 1). Using the invariance of In by conjugation (Identity (34)), we get :

q−1 q−1
0ε0
Y Y
−1
In+2 = (n n+1)[n−1 n n+1] Miεi αλ−2 Mi i [n−1 n n+1](n n+1).
i=1 i=1
(49)
On one hand, we have :
(n n + 1)[n − 1 n n + 1]−1 = (n n + 1)[n n + 1][n + 1 n − 1][[n − 1 n]
37
= [n n + 1][[n − 1 n][n + 1 n − 1]
= [n n + 1 n − 1]
On the other hand we have :
[n − 1 n n + 1](n n + 1) = [n − 1 n][n + 1 n − 1][n n + 1](n n + 1).
36
= [n + 1 n − 1][n − 1 n][n n + 1].
= [n n + 1 n − 1]−1
So Equation (49) becomes :
q−1
Q εi q−1
Q 0ε0i
In+2 = [n n + 1 n − 1] Mi αλ−2 Mi [n n + 1 n − 1]−1
i=1 i=1
In the general case, one has :
αλ−2 = αλ (n n + 1)(n − 1 n) = αλ (n − 1 n)(n + 1 n − 1), hence
q−1 q−1
0ε0
Y Y
In+2 = [n n+1 n−1] Miεi αλ (n−1 n)(n+1 n−1) Mi i [n n+1 n−1]−1 .
i=1 i=1
(50)
q−1
Q 0ε0i
Let M = (n − 1 n)(n + 1 n − 1) Mi [n n + 1 n − 1]−1 . One has :
i=1
q−1
Q  0ε0i (n−1 n)(n+1 n−1)
M= Mi (n − 1 n)(n + 1 n − 1)[n n + 1 n − 1]−1
i=1

25
q−1 (n−1 n)(n+1 n−1)
37 Q 0ε0
= Mi i (n − 1 n)[n + 1 n − 1][n n + 1][n − 1 n]
i=1
q−1 (n−1 n)(n+1 n−1)
41 Q 0ε0i
= Mi [n − 1 n + 1][n + 1 n][n n − 1]
i=1
q−1 (n−1 n)(n+1 n−1)
Q 0ε0i
= Mi [n n − 1 n + 1]−1 .
i=1
Hence Equation (50) becomes :
q−1 q−1  (n−1
Y Y 0ε0i n)(n+1 n−1)
In+2 = [n n + 1 n − 1] Miεi αλ Mi [n n − 1 n + 1]−1
i=1 i=1

and we are done with the induction step since ([xyz]ε )σ = [σ(x)σ(y)σ(z)]ε where
σ = (n − 1 n)(n + 1 n − 1).

Actually the main interest of Proposition 19 is to give a way to compute easily a


decomposition of σ in transvections, as described in the following proposition.

Proposition 20. Let n > 2 be an even integer. For any permutation matrix σ of
GLn (F2 ) different from In there exists n − 2 matrices M1 , . . . , Mn−2 of type [xyz]
and n − 2 integers εi ∈ {1, −1} such that :
n−2
Y
σ= Miεi (51)
i=1

Proof. Let σ be a permutation matrix of GLn (F2 ) different from In . Applying


Q εi −1 q−1
q−1 Q 0ε0i
Proposition 19 to σ −1 one has In = Mi σ Mi . Hence σ = σIn =
i=1 i=1
q−1 q−1
σ 0ε0
(Miεi )
Q Q
Mi i .
i=1 i=1

Since the proof of Proposition 19 is constructive, the method used in the proof of
Proposition 20 gives an algorithm to decompose any matrix σ different from In in
3(n − 2) transvections (see Figure 16 for an example). We conjecture that this
decomposition is optimal and we checked it for n = 4.

26
 
1 1 1 1 1 0
1 1 0 1 1 1
 
1 1 1 1 0 1
Let n = 6 and σ = (503)(142) =   .
 0 1 1 1 1 1 

1 0 1 1 1 1
1 1 1 0 1 1
σ = (305)(241). Let λ6 = (3, 3) be the cycle type of σ −1 , then αλ6 = (012)(345).
−1

Let λ4 = (3, 1), then αλ4 = (012)(3) = αλ6 (34)(53).


Let λ2 = (2), then αλ2 = (01) = αλ4 (12).
I2 = αλ2
I4 = [123]−1 I2 [123] = [123]−1 αλ2 [123] = [123]−1 αλ4 (12)[123]
I4 = [123]−1 αλ4 (12)[12][31][23] = [123]−1 αλ4 [12][23][31] = [123]−1 αλ4 [312]−1
I6 = [345]−1 I4 [345] = [345]−1 [123]−1 αλ4 [312]−1 [345]
I6 = [45][53][34][123]−1 αλ6 (34)(53)[312]−1 [34][53][45]
I6 = (45)[45][53][34][123]−1 αλ6 (34)(53)[312]−1 [34][53][45](45)
I6 = [45][34][53][123]−1 αλ6 (34)(53)[312]−1 [53][34][45]
(34)(53)
I6 = [453][123]−1 αλ6 ([312]−1 ) (34)(53)[53][34][45]
−1 −1
I6 = [453][123] αλ6 [512] (34)[53][45][34]
I6 = [453][123]−1 αλ6 [512]−1 [35][54][43]
I6 = [453][123]−1 αλ6 [512]−1
 [435]
−1

−1 γ 0 1 2 3 4 5
σ = αλ6 where γ = , hence :
3 0 5 2 4 1
I6 = (I6 )γ = ([453][123]−1 )γ σ −1 ([512]−1 [435]−1 )γ = [412][052]−1 σ −1 [105]−1 [421]−1
σ = σI6 = ([412][052]−1 )σ [105]−1 [421]−1 = [241][301]−1 [105]−1 [421]−1
σ = [24][12][41][01][13][30][05][51][10][21][14][42]
Figure 16: Decomposition in transvections of a matrix of type σ.

27
6 Entanglement in CNOT gates circuits
The notion of entanglement is usually defined through the group of Stochastic Local
Operations assisted by Classical Communication denoted by SLOCC which is assim-
ilated to the cartesian group product SL2 (C)×n [27, 8]. Mathematically two states
|ψi and |ϕi are SLOCC-equivalent if there exist n operators A1 , . . . , An in SL2 (C)
such that A1 ⊗ · · · ⊗ An |ψi = λ |ϕi for some complex number λ. In other words,
|ψi and |ϕi are SLOCC-equivalent if they are in the same orbit of GL2 (C)×n acting
on the Hilbert space C2 ⊗ · · · ⊗ C2 . The SLOCC-equivalence of two states |ϕi and |ψi
has a physical interpretation as explained in [8] : |ϕi and |ψi can be interconverted
into each other with non zero probability by n parties being able to coordinate
their action by classical communication, each party acting separately on one of the
qubits. The SLOCC-equivalence of two states |ϕi and |ψi implies that both states
can achiveve the same tasks (for instance in a communication protocol) but with a
probability of a success that may differ. In this sense the SLOCC-equivalence can be
considered as a qualitative way of separating non equivalent quantum states.
Some states have a particular interest like the Greenberger-Horne-Zeilinger state
[15]
 
×n ×n
1 1
|GHZn i = √ |0 · · · 0i + |1 · · · 1i = √ |0i⊗n + |1i⊗n
z }| { z }| { 
(n > 3) (52)
2 2

and the W-state [8]


1
|Wn i = √ (|10 · · · 0i + |010 · · · 0i + · · · + |0 · · · 01i) (n > 3). (53)
n
These two states represent two non-equivalent kind of entanglements : they belong
to distinct SLOCC orbits and thus cannot be interconverted into each other by local
operations (even probalistically). These states are particularly usefull because they
are required as a physical ressource to realize many specific tasks. For instance, in
an anonymous network where the processors share the W-state, the leader election
problem can be solved by a simple protocol whereas the GHZ-state is the only shared
state that allows solution of distributed consensus [7]. The GHZ-state is also used in
many protocols in quantum cryptography, e.g. in secret sharing [17].
We denote by Hi the Hadamard gate (see Figure2) applied
 on qubit i. Forinstance
1 0 1 1
in a 3-qubit system, H1 = I ⊗ H ⊗ I where I = and H = √12 . In the
0 1 1 −1
following we study the emergence of entanglement when a CNOT gates circuit acts
on a fully factorized state.

6.1 Creating a GHZ-state


The construction of the GHZ-state for n qubit is straightforward :

|GHZn i = Xn−1 n−2 . . . X21 X10 H0 |0i⊗n . (54)

28
A simple computation proves Equation (54). Indeed one has
H0 |0 . . . 0i = √12 (|0 . . . 0i + |10 . . . 0i) and Xn−1 n−2 . . . X21 X10 |10 . . . 0i = |1 . . . 1i.
If n = 4, Equation (54) corresponds to the circuit in Figure 17.

|0i H
|0i
|GHZ4i
|0i
|0i

Figure 17: Using a circuit of cX4 to obtain |GHZ4 i.

6.2 The group cX3 and entanglement of a 3-qubit system


We prove that the group cX3 is powerful enough to generate any entanglement type
from a completely factorized state. We use the method pioneered by Klyachko in
[23] wherein he promoted the use of Algebraic Theory of Invariant. The states
of a SLOCC-orbit
P are characterized by their values on covariant polynomials. Let
|ψi = αijk |ijki be a 3-qubit state. The simplest covariant associated to |ψi
i,j,k∈{0,1}
is the trilinear form :
X
A= αijk xi yj zk . (55)
i,j,k∈{0,1}

From A one computes three quadratic forms :


∂2A ∂2A
∂y0 ∂z0 ∂y0 ∂z1
Bx (x0 , x1 ) = ∂2A ∂2A , (56)
∂y1 ∂z0 ∂y1 ∂z1

∂2A ∂2A
∂x0 ∂z0 ∂x0 ∂z1
By (y0 , y1 ) = ∂2A ∂2A , (57)
∂x1 ∂z0 ∂x1 ∂z1

∂2A ∂2A
∂x0 ∂y0 ∂x0 ∂y1
Bz (z0 , z1 ) = ∂2A ∂2A . (58)
∂x1 ∂y0 ∂x1 ∂y1

The catalectican is a trilinear form obtained by computing any of the three Jacobians
of A with one of the quadratic forms, which turns out to be the same,
∂A ∂A
∂x0 ∂x1
C(x0 , x1 , y0 , y1 , z0 , z1 ) = ∂Bx ∂Bx . (59)
∂x0 ∂x1

29
The three quadratic forms Bx , By and Bz have the same discriminant ∆ which is
the last covariant polynomial we need to characterize the SLOCC-orbits :

∆(|ψi) = (α000 α111 − α001 α110 − α010 α101 + α011 α100 )2


(60)
−4 (α000 α011 − α001 α010 ) (α100 α111 − α101 α110 ) .

The polynomial ∆ is the generator of the algebra of invariant polynomials under


the action of SLOCC (i.e ∆(|ψi) = ∆(M |ψi) for any M ∈ SL2 (C)×3 ). It is also the
Cayley hyperdeterminant of the trilinear binary form A [4].
Let V := [Bx , By , Bz , C, ∆] be a vector of covariants. We associate the binary
vector V [|ψi] := [[Bx (|ψi], [By (|ψi)], [Bz (|ψi)], [C(|ψi)], [∆(|ψi)]] to any state |ψi,
where [P (|ψi)] = 0 if P (|ψi) = 0 and [P (|ψi)] = 1 if P (|ψi) 6= 0. The value of
V [|ψi] is sufficient to distinguish between the different orbits (see [18]). Results are
summarized in Table 3.

Orbit Symbols Representatives |ψi V [|ψi]


OV I |GHZ3 i [1, 1, 1, 1, 1]
OV |W3 i [1, 1, 1, 1, 0]
1
OIV √
2
(|000i + |110i) [0, 0, 1, 0, 0]
1
OIII √
2
(|000i + |101i) [0, 1, 0, 0, 0]
1
OII √
2
(|000i + |011i) [1, 0, 0, 0, 0]
OI |000i [0, 0, 0, 0, 0]

Table 3: The SLOCC orbits in a 3-qubit system.

For Equation (54) one has |GHZ3 i = X21 X10 H0 |000i (orbit OV ) and it is easy to check
that √12 (|000i + |011i) = X21 H1 |000i (orbit OII ), √12 (|000i + |101i) = X20 H0 |000i
(orbit OIII ), and √12 (|000i + |110i) = X10 H0 |000i (orbit OIV ).
In order to obtain a SLOCC-equivalent to |W3 i we see from Table 3 that one has
to construct a state ψ such that ∆(|ψi) = 0 and C(x0 , x1 , y0 , y1 , z0 , z1 ) 6= 0. This
can be done using only gates of the standard set of universal gates (Figure 2) as
explained in Proposition 21 (see Figure 18 for an example of circuit). Note that the
construction involves CNOT gates circuits that have matrices of type [ijk] (described
in Subsection 5.3).

Proposition 21. Let X[ijk] = Xij Xki Xjk where i, j, k are distinct integers in {0, 1, 2}
and k 6= 2. The state

X[ijk] (T ⊗ T ⊗ S)H⊗3 |000i (61)

is SLOCC-equivalent to |W3 i.

Proof. Let q = e 4 and let |ψ(k0 ,k1 ,...,k7 ) i = √18 q k0 |000i + q k1 |001i + · · · + q k7 |111i


where ki is an integer. A simple calculation shows that (T ⊗ T ⊗ S)H⊗3 |000i =


|ψ(0,2,1,3,1,3,2,4) i. Then we compute the values of polynomials ∆ (Formula (60)) and

30
C (Formula (59)) on the state |ψ 0 i = X[ijk] |ψ(0,2,1,3,1,3,2,4) i for i, j, k ∈ {0, 1, 2}. When
k 6= 2 we find that ∆ = 0 and C 6= 0 (see results in the table below).
[ijk] X[xyz] |ψ(0,2,1,3,1,3,2,4) i C(x0 , x1 , y0 , y1 , z0 , z1 )
1
[021] |ψ(0,2,3,3,4,2,1,1) i 8 ((1 + i)x0 y0 z0 + (1 + i)x0 y0 z1 + (1 − i)x1 y0 z0 + (1 − i)x1 y0 z1 )
1
[120] |ψ(0,2,1,3,1,3,2,4) i 8 ((1 + i)x0 y0 z0 + (1 + i)x0 y0 z1 + (1 − i)x0 y1 z0 + (1 − i)x0 y1 z1 )
1
[201] |ψ(0,4,2,2,3,1,3,1) i 8 ((1 + i)x0 y0 z0 + (1 − i)x0 y0 z1 + (1 + i)x0 y1 z0 + (1 − i)x0 y1 z1 )
1
[210] |ψ(0,4,3,1,2,2,3,1) i 8 ((1 + i)x0 y0 z0 + (1 − i)x0 y0 z1 + (1 + i)x1 y0 z0 + (1 − i)x1 y0 z1 )

Computing ∆ and C for the state X[ijk] (T ⊗ T ⊗ S)H⊗3 |000i when k = 2, one finds
∆ 6= 0 and C 6= 0, thus the resulting state is SLOCC-equivalent to |GHZ3 i.
As the dimension of the Hilbert space H⊗3 is small, namely 23 , one can compute three
2-dimensional matrices A, B, C of determinant 1 and a complex number k such that
A ⊗ B ⊗ C |ψ(0,2,3,3,4,2,1,1) i = k |W3 i. This can be done
 by solving
 an eight
 algebraic
√ 
3i 1 1 −i 2 2
equations system. We check that the values A = 1 , B = 24 1 ,
2
− 12 i 0 2
i
  √
i i 1 iπ
C= 1 1 and k = 2 4 √32 e 4 are solutions.
2
i −2i

|0i H T
|0i H T ∼ |W3i
|0i H S

Output state is :
|ψ(0,2,3,3,4,2,1,1) i = X[021] |ψ(0,2,1,3,1,3,2,4) i = X02 X10 X21 (T ⊗ T ⊗ S)H⊗3 |000i.
Figure 18: A circuit of cX3 producing a SLOCC-equivalent to |W3 i.

6.3 The group cX4 and entanglement of a 4-qubit system


The situation of 4-qubits systems is more complex than for 3-qubits systems. The
corresponding Hilbert space H⊗4 has infinitely many orbits under the action of
SLOCC = SL2 (C)×4 . These orbits have been classified by Verstraete et al. [33] into
9 families (6 families are described with parameters). Among these 9 families only
one is generic : any state in the more general situation belongs to the family

a+d
Gabcd = 2
(|0000i + |1111i) + a−d
2
(|0011i + |1100i)
b+c b−c (62)
+ 2 (|0101i + |1010i) + 2 (|0110i + |1001i) ,

for independent parameters a, b, c, and d [33, 19].


More precisely, a generic state of 4 qubits is SLOCC-equivalent, up to permutations
of the qubits, to 192 Verstraete states of the Gabcd family [20].
To determine the Verstraete family to which a given state belongs, one can use
an algorithm described in a previous paper [20]. As is the case of 3 qubits, this

31
algorithm is based on the evaluation of some covariants polynomials (see Appendix
A). We do not recall the algorithm since it is not usefull to understand the present
paper.
P
Let |ψi = αijk` |ijk`i be a 4-qubit state. The algebra of SLOCC-invariant
i,j,k,`∈{0,1}
polynomials is freely generated by the four following polynomials [25]:

• The smallest degree invariant


X
B := (−1)i1 +i2 +i3 α0i1 i2 i3 α1(1−i1 )(1−i2 )(1−i3 ) , (63)
06i1 ,i2 ,i3 61

• Two polynomials of degree 4

α0000 α0010 α0001 α0011


α1000 α1010 α1001 α1011
L := (64)
α0100 α0110 α0101 α0111
α1100 α1110 α1101 α1111

and
α0000 α0001 α0100 α0101
α1000 α1001 α1100 α1101
M := . (65)
α0010 α0011 α0110 α0111
α1010 α1011 α1110 α1111

• and a polynomial of degree 6 defined by Dxy = − det(Bxy ) where Bxy is the


3 × 3 matrix satisfying
 2 
y0  2 
 2 2
 ∂
x0 , x0 x1 , x1 Bxy  y0 y1  = det A (66)
∂zi ∂tj
y12
P
with A = αijk` xi yj zk t` being the quadrilinear binary form associated
i,j,k,`∈{0,1}
to the state |ψi.

Using the generators B, L, M and Dxy , one can build ∆, an invariant polynomial of
degree 24 that plays an important role in the quantitative and qualitative study of
entanglement [28, 26]. As described in [19] and [25], ∆ is the discriminant of any of
the quartics
1
Q1 = x4 − 2Bx3 y + (B 2 + 2L + 4M )x2 y 2 + 4(Dxy − B(M + L))xy 3 + L2 y 4 , (67)
2

Q2 = x4 − 2Bx3 y + (B 2 − 4L − 2M )x2 y 2 + (4Dxy − 2M B)xy 3 + M 2 y 4 , (68)

32
and
Q3 = x4 − 2Bx3y + (B 2 + 2L − 2M )x2 y 2 − (2(L + M )B − 4Dxy )xy 3 + N 2 y 4 . (69)
We recall that, for a quartic Q = αx4 −4βx3 y+6γx2 y 2 −4δxy 3 +ωy 4 , the discriminant
can be computed as
∆ = I23 − 27I32 (70)
where I2 = αω − 4βδ + 3γ 2 and I3 = αγω − αδ 2 − ωβ 2 − γ 3 + 2βγδ.
It appears that ∆ is the Cayley hyperdeterminant (in the sense of Gelfand et al.
[12]) of A [25]. In [26], Miyake showed that the more generic entanglement holds
only for the states |ψi such that ∆(|ψi) 6= 0. Moreover any generically entangled
state is equivalent to a state of the Verstraete Gabcd family [25, Appendix A]. So one
can consider ∆ as a qualitative measure of entanglement : an entangled state (i.e.
not factorized state) is generically entangled if ∆ 6= 0.
In the case of 3 qubits, ∆(|GHZ3 i) 6= 0 (see Table 3). Using (60) one checks easily
that ∆(|GHZ3 i) = 14 . So the state |GHZ3 i is generically entangled. In the 4 qubits case
one computes ∆(|GHZ4 i) = 0 using (70). Hence, suprisingly, |GHZ4 i is not generically
entangled and this result can be generalized : in [2] Appendix C we proved that, for
any k > 3, ∆(|GHZk i) = 0.
In this context we ask ourselves if it is possible to find a 4-qubit CNOT gates circuit
that takes as input a completely factorized state and output a generically entangled
state. The following statement answers the question.
Theorem 22. The state |BLi := X01 X20 X03 X10 (T ⊗ S ⊗ S ⊗ S)H⊗4 |0000i is gener-
ically entangled. It is produced by the circuit :
|0i H T
|0i H S
|0i H S
|0i H S
1
Proof. Using formula (70) one computes ∆(|BLi) = − ' −5, 96 × 10−8 .
224
According to Miyake [28], the value of |∆| can be considered as a measure of entan-
glement. So a state with the most amount of generic entanglement can be defined
as a state that maximize |∆|. In the 4-qubits case the maximal value of |∆| is
1
28 39
' 1, 98 × 10−7 [5] and the mean is around 1.32 × 10−9 (value based on 10000
random states [1]). So the amount of generic entanglement in the state |BLi is not
maximal, although much higher than the mean.
A few states are known to maximize |∆| : |Li [16, 14, 5], |HDi [1] and |M2222 i
(Jaffali, phd thesis). Figure 19 gives the definition of these states. It seems inter-
esting to know if it is possible, starting from a fully factorized state, to reach one of
these 3 states by a 4-qubit CNOT gates circuit. To answer this question we proceed
as follows. We start from a fully factorized state
|F (u)i := (a0 |0i + a1 |1i) ⊗ (b0 |0i + b1 |1i) ⊗ (c0 |0i + c1 |1i) ⊗ (d0 |0i + d1 |1i) (71)

33
where u := [a0 , a1 , b0 , b1 , c0 , c1 , d0 , d1 ] is a vector of complex numbers. Then, for each
circuit C in cX4 , we compute C |F (u)i and we check that the equation C |F (u)i =
|ψi where |ψi ∈ {|Li , |HDi , |M2222 i} has no solution. This can be done in a
few seconds using Maple 2020 (X86 64 LINUX). The corresponding script can be
downloaded at https://github.com/marcbataille/cnot-circuits. Hence the
answer to our question is negative.
Note that the question whether a state different from |Li, |HDi, or |M2222 i that
has maximal generic entanglement can be produced under the same constraints (i.e.
factorized state plus 4-qubit CNOT gates circuit) remains open, however.

1
|Li = √ (|u0 i + ω |u1 i + ω 2 |u2 i (72)
3

with: |u0 i = 21 (|0000i + |0011i + |1100i + |1111i)


|u1 i = 21 (|0000i − |0011i − |1100i + |1111i)
|u2 i = 12 (|0101i + |0110i + |1001i + |1010i)
2iπ
ω=e 3
1 √
|HDi = √ (|0001i + |0010i + |0100i + |1000i + 2 |1111i). (73)
6


1 6 1
|M2222 i = √ |v1 i + |v1 i + √ |v3 i (74)
6 4 2

with: |v1 i = √16 (|0000i + |0101i − |0110i − |1001i + |1010i + |1111i)


|v2 i = √12 (|0011i + |1100i)
|v3 i = √12 (− |0001i+|0010i−|0100i+|0111i+|1000i−|1011i+|1101i−|1110i)
Figure 19: 4-qubits states for which |∆| is maximal.

We examine now whether it is possible to obtain a SLOCC-equivalent to |W4 i =


1
2
(|0001i+|0010i+|0100i+|1000i) when a CNOT gates circuit acts on a fully factorized
state. The SLOCC-orbit of |W4 i belongs to the null cone, which is the algebraic
variety defined by the vanishing of all invariants (i.e. B(|ψi) = L(|ψi) = M (|ψi) =
Dxy (|ψi) = 0). The null cone contains 31 SLOCC-orbits and the orbit of |W4 i is
charaterized, inside the null cone, by the evaluation of a vector of 8 polynomial
covariants A, PB , PC1 , PC2 , PD1 , PD2 , PF , PL whose definitions have been relegated to
Appendix A (see [19, Section III] for more details). More precisely, one has the
following criterion :

Proposition 23. Let V1 := [B, L, M, Dxy ] and V2 := [A, PB , PC1 , PC2 , PD1 , PD2 , PF , PL ]
then |ψi is in the SLOCC-orbit of |W4 i if and only if V 1[|ψi] = [0, 0, 0, 0] and V 2[|ψi] =
[1, 1, 1, 1, 0, 0, 0, 0].

The use of this criterion makes it possible to answer our initial question :

34
Theorem 24. The SLOCC-orbit of |W4 i cannot be reached when cX4 acts on a fully
factorized state |F (u)i.

Proof. We prove that, for any circuit C ∈ cX4 , the state |ψ(u)i = C |F (u)i cannot
be in the SLOCC-orbit of |W4 i. The algorithm is the following. For each C in cX4 we
solve the system B(|ψ(u)i) = L(|ψ(u)i) = M (|ψ(u)i) = Dxy (|ψ(u)i) = 0. The solu-
tions are parametrized vectors |ψ1 (u)i , . . . , |ψn (u)i. Then for each solution |ψi (u)i
we solve the system PD1 (|ψi (u)i) = PD2 (|ψi (u)i = PF (|ψi (u)i) = PL (|ψi (u)i = 0
and for each solution |ψij (u)i we compute PC2 : we check that the polynomial
PC2 (|ψij (u)i) is null for any u, C, i, j. We deduce from Proposition 23 that |ψ(u)i is
not SLOCC-equivalent to |W4 i. The Maple script that implements this algorithm can
be downloaded at https://github.com/marcbataille/cnot-circuits and needs
a few hours to be executed.

7 Conclusion and perspectives


The omnipresence and great significance of CNOT gates in quantum computation
was our main motivation to better understand the quantum circuits build with these
gates. First we described the link between CNOT gates circuits of n qubits and a clas-
sical group, namely GLn (F2 ) = SLn (F2 ). From there we deduced some simplification
rules and applied our results to optimization and reduction problems. In Section 4
we proposed some polynomial heuristics to reduce circuits in the general case and in
Section 5 we described a few algorithms to optimize circuits in some special cases.
Finally we studied some issues about entanglement and proposed simple construc-
tions to produce some usefull entangled states. Optimization and entanglement are
indeed two central topics in QIT since they are related to some important issues on
the way to a reliable and functional quantum machine : optimization of circuits for
scalable quantum computing and production of entanglement as a physical resource
in quantum communication protocols.
As far as we know, a complete study of CNOT gates circuits does not exist yet in
the litterature and we hope the results and conjectures contained in this paper will
contribute to fill a part of this gap. We believe that the subject is rich and deserves
certainly further investigations. In what follows we try to sketch some directions
that future works on this subject could take.
Regarding to the optimization problem of CNOT gates circuits, it seems to us that
the diversity of situations and methods described in Section 5 tends to show that a
polynomial optimization algorithm for the general case, if it ever exists, will be hard
to find out. In our opinion, a more realistic and feasible approach should be a mix of
heuristics for the general case (as the Gauss-Jordan algorithm or the UTD algorithm
described in Section 4) combined with a rich atlas of various methods to optimize
or to reduce circuits in special cases (as the atlas we started to built in Section
5). Concerning heuristics in the general case, it is clear that the bound of n2 gates
resulting from the Gauss-Jordan algorithm (Proposition 10) has to be improved by
the use of another algorithm, since it is still far from the (probably) optimal linear
bound of 3(n−1) gates given by Conjecture 12. Certainly, a constructive proof of this

35
conjecture would be a big step towards a better understanding of the optimization
problem. We will continue to investigate technics of reduction in future works.
The study of the emergence of entanglement in CNOT gates circuits done in Section
6 highlights the interest and utility of this tool especially in the case of 3 or 4 qubits
systems. When the number of qubits is greater than 4, it would be interesting
to know whether it is possible to create generic entanglement as in the 4 qubits
case (Theorem 22). Unfortunately, from 5 qubits the hyperdeterminant is too huge
to be computed in a suitable form. However its nullity can be tested thanks to
its interpretation
X in terms of solution of a system of equations [12, p. 445] : if
A= αijkln xi yj zk tl sn is the ground form associated to the five qubits state
06i,j,k,l,n61
X
|ϕi = αijkln |ijklni, the condition ∆(|ϕi) = 0 means that the system
06i,j,k,l,n61

d d d d d d
Sϕ := {A = A= A= A= A = ··· = A= A = 0} (75)
dx0 dx1 dy0 dy1 ds0 ds1
has a solution x̂0 , x̂1 , ŷ0 , ŷ1 , . . . , ŝ0 , ŝ1 in the variables x0 , x1 , y0 , y1 , . . . , s0 , s1 such that
(x̂0 , x̂1 ), (ŷ0 , ŷ1 ), . . . , (ŝ0 , ŝ1 ) 6= (0, 0). Such a solution is called non trivial. Hence a
possible approach to show that a state |ψi is generically entangled when n > 4 is to
prove that the corresponding system has no solution apart from the trivial solutions.

References
[1] Daniel Alsina. Phd thesis: Multipartite entanglement and quantum algorithms,
2017.

[2] Marc Bataille and Jean-Gabriel Luque. Quantum circuits of cZ and SWAP
gates: optimization and entanglement. Journal of Physics A: Mathematical
and Theoretical, 52(32):325302, jul 2019.

[3] Charles H. Bennett and Stephen J. Wiesner. Communication via one- and two-
particle operators on einstein-podolsky-rosen states. Phys. Rev. Lett., 69:2881–
2884, Nov 1992.

[4] Arthur Cayley. Mémoire sur les hyperdéterminants. Journal für die reine und
angewandte Mathematik, 30:1–37, 1846.

[5] Lin Chen and Dragomir . okovi. Proof of the Gour-Wallach conjecture. Physical
Review A, 88(4), oct 2013.

[6] Richard Cleve, Daniel Gottesman, and Hoi-Kwong Lo. How to share a quantum
secret. Physical Review Letters, 83(3):648651, Jul 1999.

[7] Ellie D’Hondt and Prakash Panangaden. The computational power of the W
and GHZ states, 2004.

36
[8] Wolfgang Dür, Guifre Vidal, and Cirac J. Ignacio. Three qubits can be entan-
gled in two inequivalent ways. Physical Review A, 62:062314, 2000.
[9] A. Einstein, B. Podolsky, and N. Rosen. Can quantum-mechanical description
of physical reality be considered complete ? Physical Review, Vol. 47, 1935.
[10] Ekert. Quantum cryptography based on Bell’s theorem. Physical review letters,
67 6:661–663, 1991.
[11] Akira Furusawa, Jens Lykke Sorensen, Samuel L. Braunstein, Christopher A
Fuchs, H. Jeff Kimble, and Eugene S. Polzik. Unconditional Quantum Telepor-
tation. Science, 282:706, October 1998.
[12] Israel M Gelfand, Mikhail M. Kapranov, and Zelevisnky Andrei V. Discrimi-
nants, Resultants and Multidimensional Determinant. Birkhäuser, 1992.
[13] Gilad Gour and Nolan R. Wallach. Entanglement of subspaces and error-
correcting codes. Physical Review A, 76(4), Oct 2007.
[14] Gilad Gour and Nolan R. Wallach. On symmetric SL-invariant polynomials in
four qubits, 2012.
[15] Daniel M. Greenberger, Michael A. Horne, and Anton Zeilinger. Bell’s theorem
without inequalities. American Journal of Physics, 58 (12):1131, 1990.
[16] A. Higuchi and A. Sudbery. How entangled can two couples get? Physics
Letters A, 273(4):213 – 217, 2000.
[17] Mark Hillery, Vladimr Buek, and Andr Berthiaume. Quantum secret sharing.
Physical Review A, 59(3):18291834, Mar 1999.
[18] Frédéric Holweck, Jean-Gabriel Luque, and Thibon Jean-Yves. Geometric de-
scriptions of entangled states by auxiliary varieties. Journal of Mathematical
Physics, 53 (10):102203, 2012.
[19] Frédéric Holweck, Jean-Gabriel Luque, and Thibon Jean-Yves. Entanglement
of four qubit systems: A geometric atlas with polynomial compass I (the finite
world). Journal of Mathematical Physics, 55 (1):012202, 2014.
[20] Frédéric Holweck, Jean-Gabriel Luque, and Thibon Jean-Yves. Entanglement
of four-qubit systems: a geometric atlas with polynomial compass II (the tame
world). Journal of Mathematical Physics, 58 (2):022201, 2017.
[21] John Hopcroft and Robert Tarjan. Algorithm 447: Efficient algorithms for
graph manipulation. Commun. ACM, 16(6):372378, June 1973.
[22] Ryszard Horodecki, Pawel Horodecki, Michal Horodecki, and Karol Horodecki.
Quantum entanglement. Rev. Mod. Phys., 81:865–942, Jun 2009.
[23] Alexander Klyachko. Coherent states, entanglement, and geometric invariant
theory. arXiv:quant-ph/0206012v1.

37
[24] Norbert M. Linke, Dmitri Maslov, Martin Roetteler, Shantanu Debnath, Car-
oline Figgatt, Kevin A. Landsman, Kenneth Wright, and Monroe Christopher.
Experimental comparison of two quantum computing architectures. Proceed-
ings of the National Academy of Sciences of the United States of America, 114
(13):3305–3310, March 2017.

[25] Jean-Gabriel Luque and Jean-Yves Thibon. The polynomial invariants of four
qubits. Phys. Rev. A, 67:042303, 2003.

[26] Akimasa Miyake. Classification of multipartite entangled states by multidimen-


sional determinant. Phys. Rev. A, 67:012108, 2003.

[27] Akimasa Miyake. Multipartite entanglement under stochastic local operations


and classical communication, 2004.

[28] Akimasa Miyake and Miki Wadati. Multipartite entanglement and hyperdeter-
minants. Quantum Information and Computation, 2:540–555, 2002.

[29] Michael A. Nielsen and Isaac L. Chuang. Quantum Computation and Quan-
tum Information: 10th Anniversary Edition. Cambridge University Press, New
York, NY, USA, 10th edition, 2011.

[30] Stefano Pirandola, Jens Eisert, Christian Weedbrook, Akira Furusawa, and
Samuel L. Braunstein. Advances in quantum teleportation. Nature Photonics,
9:641–652, October 2015.

[31] Robert Steinberg. Lectures on Chevalley Groups. University Lecture Series 66.
American Mathematical Society, 2016.

[32] Lev Vaidman. Teleportation of quantum states. Physical Review A, 49:1473–


1476, February 1994.

[33] Frank Verstraete, Jeronen Dehaene, Bart De Moor, and Henri Verschelde. Four
qubits can be entangled in nine different ways. Phys. Rev. A, 65:052112, 2002.

[34] Robert Wilson. The Finite Simple Groups. Springer London Ltd, 2009.

[35] K. Wright, K. M. Beck, S. Debnath, J. M. Amini, Y. Nam, N. Grzesiak, J.-S.


Chen, N. C. Pisenti, M. Chmielewski, C. Collins, and et al. Benchmarking an
11-qubit quantum computer. Nature Communications, 10(1), Nov 2019.

[36] D. M. Zajac, T. M. Hazard, X. Mi, E. Nielsen, and J. R. Petta. Scalable gate


architecture for a one-dimensional array of semiconductor spin qubits. Phys.
Rev. Applied, 6:054013, Nov 2016.

38
A Some covariant polynomials associated to 4 qubit
systems
In this section, we shall explain how to compute the polynomials which are used
to determine the SLOCC-orbit of |W4 i inside the null cone (Section 6.3). We shall
first recall the definition of the transvection of two multi-binary forms on the binary
(1) (1) (p) (p)
variables x(1) = (x0 , x1 ), . . . , x(p) = (x0 , x1 )
i
(f, g)i1 ,...,ip = tr Ωix1(1) . . . Ωxp(p) f (x0(1) , . . . , x0(p) )g(x00(1) , . . . , x00(p) ), (76)
where Ω is the Cayley operator
∂ ∂
∂x00 ∂x00
Ωx = ∂ ∂
0

∂x01 ∂x00
1

and tr sends each variables x0 , x00 on x (erases 0 and 00 ). In [18], we give a list of
generators of the algebra of covariant polynomials for 4 qubits systems which are
obtained by transvection from the ground form
X
A= αi,j,k,l xi yj zk t` .
i,j,k,`

Here we give formulas for some of the polynomials which are used in the paper.

Symbol Transvectant
1 Symbol Transvectant
B2200 (A, A)0011 1
2
1 C1111 (A, B2200 )1100 + (A, B0022 )0011
B2020 (A, A)0101 1
2
1 C3111 ((A, B2200 )0100 + (A, B2020 )0010 + (A, B2002 )0001 )
B2002 (A, A)0110 3
1
2
1 C1311 ((A, B2200 )1000 + (A, B0220 )0010 + (A, B0202 )0001 )
B0220 (A, A)1001 3
1
2
1 C1131 ((A, B2020 )1000 + (A, B0220 )0100 + (A, B0022 )0001 )
B0202 (A, A)1010 3
1
2
1 C1113 ((A, B2002 )1000 + (A, B0202 )0100 + (A, B0022 )0010 )
B0022 2
(A, A)1100 3

Symbol Transvectant
1
D2200 (A, C1111 )0011
1
D2020 (A, C1111 )0101 Symbol Transvectant
1
D2002 (A, C1111 )0110 F4200 1
(A, E3111 )0011
D0220 (A, C1111 )1001
1
F4020 (A, E3111 )0101
1
1
D0202 (A, C1111 )1010 F4002 1
(A, E3111 )0110
D0022 (A, C1111 )1100 F0420 1
(A, E1311 )1001
D4000 (A, C3111 )0111 F0402 (A, E1311 )1010
1

D0400 (A, C1311 )1011 F0042 1


(A, E1131 )1100
D0040 (A, C1131 )1101 F2400 (A, E1311 )0011
1

D0004 (A, C1113 )1110 F2040 1


(A, E1131 )0101
1
F2004 (A, E1113 )0110
Symbol Transvectant F0240 (A, E1131 )1001
1
1
1
E3111 (A, D2200 ) 0100
+ (A, D2020 )0010 + (A, D2002 )0001 F0204 (A, E1113 )1010
1
E1311 (A, D2200 )1000 + (A, D0220 )0010 + (A, D0202 )0001 F0024 (A, E1113 )1100
1
1
E1131 (A, D2020 )1000 + (A, D0220 )0100 + (A, D0022 )0001
1
E1113 (A, D2002 )1000 + (A, D0202 )0100 + (A, D0022 )0010

39
Symbol Transvectant
0001
G5111 (A, F4002 ) + (A, F4020 )0010 + (A, F4200 )0100
G1511 (A, F0402 )0001 + (A, F0420 )0010 + (A, F2400 )1000
G1151 (A, F0042 )0001 + (A, F0240 )0100 + (A, F2040 )1000
G1115 (A, F0204 )0100 + (A, F0024 )0010 + (A, F2004 )1000
Symbol Transvectant
H4200 (A, G5111 )1011
H4020 (A, G5111 )1101
H4002 (A, G5111 )1110
H0420 (A, G1511 )1101 Symbol Transvectant
H0402 (A, G1511 )1110 1
I5111 (A, H4020 ) 0010
+ (A, H4200 )0100 + (A, H4002 )0001
H0042 (A, G1151 )1110 1
I1511 (A, H0420 )0010 + (A, H2400 )1000 + (A, H4002 )0001
H2400 (A, G11511 )0111 1
I1151 (A, H0240 )0100 + (A, H2040 )1000 + (A, H0042 )0001
H2040 (A, G1151 )0111 1
I1115 (A, H0204 )0100 + (A, H2004 )1000 + (A, H0024 )0010
H2004 (A, G11115 )0111
H0240 (A, G1151 )1011
H0204 (A, G1115 )1011
H0024 (A, G11115 )1101

Symbol Transvectant
1
J4200 (A, I5111 )1011 Symbol Transvectant
J4020 (A, I5111 )1101
1
K5111 = (A, J4200 )0100 − (A, J4020 )0010 + (A, J4002 )0001
1
J4002 (A, I5111 )1110 K1511 = (A, J2400 )1000 − (A, J0420 )0010 + (A, J0402 )0001
J0420 (A, I1511 )1101
1
K1151 = (A, J2040 )1000 − (A, J0240 )0100 + (A, J0042 )0001
1
J0402 (A, I1511 )1110 K1115 = (A, J2004 )1000 − (A, J0204 )0110 + (A, J0024 )0010
1
J0042 (A, I1151 )1110 Symbol Transvectant
J2400 (A, I1511 )0111
1
L6000 = (A, K5111 )0111
1
J2040 (A, I1151 )0111 L0600 = (A, K1511 )1011
1
J2004 (A, I1115 )0111 L0060 = (A, K1151 )1101
J0240 (A, I1151 )1011
1
L0006 = (A, K1115 )1110
1
J0204 (A, I1115 )1011
J0024 (A, I1115 )1101
1

We use the following polynomials in order to characterize the |W4 i SLOCC-orbit:

PB := B2200 + B2020 + B2002 + B0220 + B0202 + B0022 ,

PC1 := C3111 + C1311 + C1131 + C1113 ,


PC2 := C3111 C1311 C1131 C1113 ,
PD1 := D4000 + D0400 + D0040 + D0004 ,
PD2 := D2200 + D2020 + D2002 + D0220 + D0202 + D0022 ,
1 1 1 1
PF := F2220 + F2202 + F2022 + F0222 ,
PL := L6000 + L0600 + L0060 + L0006 .

40

You might also like