From a reversible code to the quantum one : R-matrix

This research has been carried out in collaboration with D.Melnikov, A.Mironov, A.Morozov and An.Morozov. We study the relation between quantum programming and knot theory. The general idea is that knot theory provides a special basis for unitary matrices. We suggest to use R-matrices of knot theory as universal gates in quantum code. We also examine basic operations in reversible programming.


Introduction
The definition of a quantum algorithm [1][2][3] is the following: quantum algorithm is a unitary matrix.This definition usually puzzles at first.We got accustomed to a classical coding, where algorithm is a sequence of operations, or a block diagram.We expect quantum code to be a straight-forward generalization of classical one, but it is formulated quite differently.The formal answer is that we can formulate classical programming in terms of matrices.These are matrices of operators that act on a set of 0 and 1.But it is unnatural.The main reason is that quantum code is reversible, hence it's natural to formulate it in a matrix form.On the other hand, the classical code is irreversible and we do not favor degenerate matrices.In other words, unlike classical, quantum programming has a group structure.
The less formal answer introduces classical reversible programming.It is a simple generalization of the standard classical programming.We add several additional bits to distinguish the same results of computation to make the code reversible.The classical reversible programming operates with the group of permutations (it acts on the initial set of states, all possible combinations of bits) i.e. nondegenerate matrices with one 1 in each column and each row.We describe a couple of examples in Sec 2.
The generalization to quantum programming is natural now: permutation group changes to unitary group.In other words, we allow a continuous change of a phase of a bit, and set of states becomes a vector space.Operationally one usually keeps operation of addition (CNOT) on two bits but changes operators on one bit, instead of Id = 1 0 0 1 and NOT = 0 1 1 0 one gets π 8 = 1 0 0 e iπ/4 and Hadamard = 1 1 1 −1 gates.
On the other hand, it is not the only way to generalize the permutation group to unitary one.This way is preferred if we are going to use quantum computations for similar, addition-based problems.But it is not always the case.One of the natural problems for quantum computer is the computation of knot invariants [4,5].Therefore, it is natural to generalize the permutation group via braid group and solutions of the Yang-Baxter equation [6].An interesting possibility is to use group theory Rmatrices [7].They become unitary at unimodular q when acting on the irreducible representations and this basis essentially simplifies the computations of the knot invariants [8], for example HOMFLY-PT polynomials (as a price, of course, it complicates some other codes).Sec 3 is devoted to the basics of R-matrices and its possible applications to quantum computing.

Reversible programming: examples
Let us start with the simplest operation, binary addition.Basically it is an addition of two numbers modulo 2, but it can be easily generalized to an addition of k-bit number and n-bit number modulo 2 n (or the matrix of the operator looks like: Matrix of this operation has the size 2 n × 2 n+k : 1 This operation is irreversible by the definition: number of the output bits is smaller than of input (matrix is rectangular).But its generalization to reversible programming is straightforward: we keep one of the input numbers (different from the bits we take modulo over) to distinguish results: The 3+1 reversible version of binary addition looks like The matrices of operators are respectively: The reversible binary addition could be easily generalized further to quantum programming: the same operation on two q-bits is called controlled-NOT (famous CNOT gate).The matrix is exactly the same: (5 While it is a mapping from 2 bits to 2 bits, it is still irreversible: In this case, as it often happens, we have to introduce additional bits.One example of the possible realisation is the following add.bitbit 1 bit 2 add.bit output 0 0 0 0 00 0 Here, as it is usually required, the additional bit does not change.The standard addition is realised in the particular case when additional bit is equal to the first bit.The matrix of the operation looks like: Again it is easily represented in terms of cycles, this particular example: Further generalization to many-bit addition is straightforward: it again will be a block-diagonal matrix with powers of longest cycle.The number of additional bits equal to the number of bits in the first (second) input is enough to make it reversible.
The To make it reversible one has to keep the input and add an extra bit: add.bit bit 1 bit 2 add.bit bit 2 output 0 0 Standard multiplication is the particular part, where the additional bit is equal to bit 1. Generalization to many-bit multiplication requires significantly more additional bits and has no simple representation.

Knot theory: R-Matrix
Now we are going to consider possible generalization to quantum algorithms via R-matrices.Let us recall that there are two different R-matrices.The first one is obtained from the universal R-matrix, it satisfies the Yang-Baxter equation [9] Ř12 Ř13 Ř23 = Ř23 Ř13 Ř12 , it is Hermitian for real q and appears as Hamiltonian in the theories of spin chains.For the fundamental representations of the S U(2) group the first R-matrix is [10,11] The second R-matrix is called knot R-matrix, it differs from the first one by the permutation of two columns and is related to the construction of knot invariants via the Reshetikhin-Turaev construction [7]: where {x} ≡ x − x −1 .This R-matrix satisfies the knot type Yang-Baxter equation The knot R-matrix can be made unitary for |q| = 1, as will be explained below.That is why we want to use it for quantum computing.Moreover, R-matrix (9) is a generalization of c-NOT operator and coincides with it for q = 1.Let us now consider several interesting properties of this R-matrix.First of all, R-matrix (9) acts in the product of two fundamental representations of S U (2), which is a reducible representation, but it can be decomposed into the sum of two irreducible representations: [1] [11].Since R-matrix commutes with the co-product (at variance with Ř), it would be constant on the whole irreducible representation.For example, R-matrix (9) looks like diag(q, q, q, −1/q) after decomposition.The first three eigenvalues correspond to the 3-dimensional spin 1 irreducible representation [2], while the fourth one is associated with the scalar (spin 0) irreducible representation [11].Hence, in the space of representations (or, better to say, intertwining operators) the R-matrix can be written as This matrix is unitary for |q| = 1.The generalization to S U(N) group is straightforward, only the dimensions of the irreducible representations change.But the subtlety appears when we consider more fundamental representations in the product.It still can be decomposed in the sum of irreducible representations which are numbered by the Young diagrams.The eigenvalues of R-matrix in each irreducible representation is q i, j∈Q (i− j) (up to a sign), but the block that corresponds to irreducible representation which appears several times in the sum is not obligatory diagonal.For instance, let us consider the product of three fundamental representations There are two R-matrices, acting on first two representations R 1 and second and third representations R 2 .These R-matrices are diagonal in different bases.One can see that if the basis is chosen so that R 1 is diagonal: then R 2 has non-diagonal block corresponding to the representation with multiplicity where [n] ≡ {q n }/{q} are the quantum numbers.In what follows we consider only the the non-trivial 2 × 2 part of the R-matrices related to two irreducible representations [21], i.e.
R 2 here could be obtained from R 1 by the rotation provided by the Racah matrix First, note that, since Racah matrices are unitary at |q| = 1, both R 1 and R 2 are unitary at unimodular q.These formulas are immediately generalized to S U(N) so that the R-matrices do not change.Second, note that one can generate large enough set of unitary operations, considering matrices R i for a product of a sufficient number of representations.This provides one with a set of universal gates: sufficient number of R-matrices, and allows to construct any quantum program [12].The only remaining ingredient is a way to get the matrix element, which depends on a way to close (or project) the braid in the knot theory.The easiest way 2  to consider a plat representation of a knot [5,13].In this case HOMFLY-PT is provided by the matrix element of a product of R-matrices or (if we represent complex R-matrices through Racah matrices) product of R-matrices and Racah matrices.For example, the easiest plat representation, two bridge, is equivalent to a one bit quantum code [12].Any HOMFLY-PT polynomial in this case is a quantum program.Some random two bridge knot is presented on the Fig. 1.
Figure 1.Typical plat representation for the knot (it is a two-bridge case: there are two arcs at the left and at the right).This concrete knot is 9 14 in the Rolfsen table [14].