510 likes | 515 Views
This C# program tool allows users to create quantum circuits in a specific gate basis and generate the corresponding set of polynomial equations over Z2. The number of solutions of the set determines the matrix elements of the circuit and the output value for any input.
E N D
A Software Package to Construct Polynomial Sets over Z_2 for Determining the Output of Quantum Computations Vladimir Gerdt Vasily Severyanov Laboratory of Information Technologies Joint Institute for Nuclear Research Dubna, Russia
Outline • Main result • Quantum computation and quantum circuits • Feynman’s sum over paths Polynomials • QuPol program “Quantum Polynomials” • Quantum polynomials • Conclusion
Using ideas published in [1]we have written a C# program tool enabling us to assemble an arbitrary quantum circuit in a particular gate basis and to construct the corresponding set of polynomial equations over Z2. The number of solutions of the set defines the matrix elements of the circuit and therefore the output value of the circuit for any input value. Main Result 1. Quantum computing and polynomial equations over the finite field Z2 by C. M. Dawson et al arXiv:quant-ph/0408129 20 Aug 2004
qubit Quantizing classical bit any superposition of basis states In computational basis
Evolving quantum bit unitary transformation
Observing quantum bit with probability with probability
Distinctions of Quantum Computation • quantum bit (qubit) = superposition of basis states • computation = unitary (reversable) evolution • probabilistic results • quantum parallelism, interference, and entanglement • quantum circuit calculates a classical Boolean function using the peculiarities of quantum computation
Quantum computation Unitary transformation computing function Initial state Final state tensor products of qubits
Quantum circuit Quantum circuit is a sequence of elementary unitary transformations called quantum gates Quantum gateacts on a few qubits not changing the others
Quantum gate bases Quantum gate basis is a set of universal quantum gates: any unitary transformation can be presented as a composition of gates of the basis We work with the following universal gate basis
final state initial state Matrix elements of quantum circuit
- path variable From quantum to classical circuit We wish to use famous Feynman’s sum-over-paths method to calculate the matrix element for a quantum circuit built of the Toffoli and Hadamard gates (these two constitute a universal basis). To do that, we replace the quantum circuit under consideration by its classical version where the quantum Toffoli andHadamardgates are replaced by their classical counterparts. Classical Toffoli Classical Hadamard Output may be 0 or 1 for any input
H H H H H H H H Example circuit quantum circuit classical circuit path variables
H H H H Admissible classical paths A classical path is a sequence of classical bit strings obtained after each classical gate has been applied. A choice of the path variables determines an admissible classical path.
H H H H Phase of admissible classical path Toffoli gates do not contribute to phase
Quantum circuit’s matrix element admissiblepaths form a to b number of Hadamard gates number of positive terms number of negative terms this equations count solutions to a system of n+1 polynomials in h variables over the field Z2
Elementary decomposition of a circuit elementary gates Elementary gates enable us to assemble a classical form of a quantum circuit
E - elementary gates Identities Multiplication modulo 2 Addition modulo 2 Hadamard
Assembling circuit, step 0 Let we want to assemble a circuits with 3 rows and 4 columns
Assembling circuit, step 1 We place elementary gates in cells
QuPol - General View elementary gates toolbar menu toolbar window for assembling circuit circuit polynomials
QuPol - Assembling circuit • New circuit • Selecting gates • Placing gates • Constructing polynomials • Saving circuit • Opening circuit
New circuit dialogue click
New circuit The simplest possible circuit: only identities are used
Placing gates, step 1 click – selecting gate click – placing gate
Placing gates, step 2 click click
Placing gates, step 3 click click
Placing gates, step 4 many clicks to select and place gates
Constructing polynomials click
Saving circuit click
Opening circuit click
Symbolic form of polynomials x_1 + a_2*x_2-b_1, x_4 + a_4*x_7 + x_1*x_4*x_7 + a_2*x_2*x_4*x_7-b_2, x_5 + a_4*x_3 + a_4^2*x_2 + x_1*x_4 + a_2*x_2*x_4-b_3, a_4 + x_1*x_4 + a_2*x_2*x_4-b_4, x_7-b_5, x_6 + a_4*x_3 + a_4^2*x_2 + x_1*x_3*x_4 + a_4*x_1*x_2*x_4 + a_2*x_2*x_3*x_4 + a_2*a_4*x_2^2*x_4-b_6, a_1*x_1 + a_3*x_2 + a_5*x_3 + a_2*x_4 + x_2*x_5 + a_6*x_6 + x_3*x_7 + a_4*x_2*x_7;
C# name space“Polynomial_Modulo_2” • class Polynomial- list of monomials • class Monomial- list of letters • class Letter- letter with index and power
Circuit Matrix A system generated by the program is a finite set of polynomials in the ring One has to count the number of roots N0 and N1 in Z2 of the sets Then the matrix is
Computing Matrix Elements To count the number of roots we convert F0and F1 into the triangular form by computing the lexicographical Gröbner basis by means of the Buchberger algorithm or by involutive algorithm (Gerdt’04). We illustrate this by example from Dawson et al
Computing Matrix Elements (cont) Lexicographical Gröbner basis with and for F0and F1 some matrix elements
References • Christopher M. Dawson et al.,Quantum computing and polynomial equations overthe finite field Z2,arXiv:quant-ph/0408129, 2004. • Gerdt V.P.Involutive Algorithms for ComputingGröbnerBases, Proceedings of the NATO Advanced Research Workshop "Computational commutative and non-commutative algebraic geometry" (Chishinau, June 6-11, 2004), IOS Press, to appear. • Microsoft Visual C# .net Standard, Version 2003
Conclusion • The first version of a program tool for assembling arbitrary quantum circuits and for constructing quantum polynomial systems has been designed. • There is the algorithmic Gröbner basis approach to converting the system of quantum polynomials into a triangular form which is useful for computing the number of solutions. • The number of solutions uniquely determines the circuit matrix. • Thus the above software and algorithmic methods provide a tool for simulating quantum circuits.