JP2009271624A - Quantum circuit, quantum arithmetic unit, and quantum arithmetic method - Google Patents

Quantum circuit, quantum arithmetic unit, and quantum arithmetic method Download PDF

Info

Publication number
JP2009271624A
JP2009271624A JP2008119589A JP2008119589A JP2009271624A JP 2009271624 A JP2009271624 A JP 2009271624A JP 2008119589 A JP2008119589 A JP 2008119589A JP 2008119589 A JP2008119589 A JP 2008119589A JP 2009271624 A JP2009271624 A JP 2009271624A
Authority
JP
Japan
Prior art keywords
qubit
qubits
apply
quantum
applying
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2008119589A
Other languages
Japanese (ja)
Other versions
JP5129646B2 (en
Inventor
Yasuhiro Takahashi
康博 高橋
Takeshi Kato
豪 加藤
Yasuhito Kono
泰人 河野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2008119589A priority Critical patent/JP5129646B2/en
Publication of JP2009271624A publication Critical patent/JP2009271624A/en
Application granted granted Critical
Publication of JP5129646B2 publication Critical patent/JP5129646B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a technology for calculating a sum a+b of binary numbers a, b with a linear size and linear depth by using only a neighborhood quantum bit arithmetic operation without using any auxiliary quantum bit. <P>SOLUTION: Each digit of a binary number b is associated with the initial state of quantum bits Q<SB>2i+1</SB>(i=0, through n-1) in the order of small one, and each digit of a binary number a is associated with the initial state of quantum bits Q<SB>2i+2</SB>(i=0 through n-1) in the order of small one. A quantum arithmetic operation performs a quantum operation to the quantum bits Q1 through Q<SB>2n+1</SB>. Each digit of the sum a+b is associated with the state after operation of the quantum bits Q<SB>2i+1</SB>(i=0 through n) in the order of small one. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

この発明は、量子回路を用いて量子演算を行う技術に関する。   The present invention relates to a technique for performing a quantum operation using a quantum circuit.

近年、従来の情報理論では解決が難しかった問題を、微細な世界に適用される物理法則である量子力学の原理を応用して解決する技術が注目を集めている。例えば、量子コンピュータは、量子力学の世界特有の現象である重ね合わせ状態を利用し、複数の演算を並列的に実行することができる(量子並列性)。そして、この量子並列性及び観測による状態の縮退により、量子コンピュータは、因数分解などの問題に対し、現在のコンピュータよりはるかに高速に計算が可能であることが示唆されている。   2. Description of the Related Art In recent years, attention has been focused on a technique for solving a problem that is difficult to solve by conventional information theory by applying the principle of quantum mechanics, which is a physical law applied to a fine world. For example, a quantum computer can execute a plurality of operations in parallel using a superposition state that is a phenomenon unique to the world of quantum mechanics (quantum parallelism). And it is suggested that the quantum computer can calculate much faster than the current computer with respect to problems such as factorization by the quantum parallelism and the degeneracy of the state by observation.

例えば、非特許文献1では、量子コンピュータにおいて、2つの二進数a=an−1…a及びb=bn−1…bと、0または1のzとが入力として与えられたとき、a+b=s…sを計算し、z(+)sとsn−1…sとaとを出力とする量子回路が開示されている。ただし、nは自然数であり、a∈{0,1}(i=0,…,n−1)、b∈{0,1}(i=0,…,n−1)であり、α,β∈{0,1}として、α(+)βはαとβとのmod2での加算(排他的論理和)を示す。 For example, in Non-Patent Document 1, when two binary numbers a = a n−1 ... A 0 and b = b n−1 ... B 0 and z of 0 or 1 are given as inputs in a quantum computer. , A + b = s n ... S 0 and a quantum circuit that outputs z (+) s n , s n−1, s 0 and a is disclosed. Where n is a natural number, a i ∈ {0,1} (i = 0,..., N−1), b i ∈ {0,1} (i = 0,..., N−1), As α, βε {0,1}, α (+) β represents addition (exclusive OR) of α and β in mod2.

図15は、この非特許文献1に開示された量子回路を示した図である。   FIG. 15 is a diagram showing the quantum circuit disclosed in Non-Patent Document 1. In FIG.

この図に示すように、図15の量子回路は、MAJ(Majorrity)ゲートと、UMA(UnMajorrity and Add)ゲートと、CNOTゲートとによって構成される。ここで、量子回路とは、CNOTゲート等の量子基本ゲートの組合せを意味する。   As shown in this figure, the quantum circuit of FIG. 15 includes a MAJ (Majorrity) gate, a UMA (UnMajorrity and Add) gate, and a CNOT gate. Here, the quantum circuit means a combination of quantum basic gates such as CNOT gates.

MAJゲートは、3個の量子ビットがそれぞれ示すx,y,zのマジョリティxy(+)yz(+)zxを計算する量子回路であり、図10のように定義される。この図に示すように、MAJゲートは、それぞれ図6、図7で定義されるCNOTゲートとToffoliゲートによって構成される。   The MAJ gate is a quantum circuit that calculates x, y, and z majorities xy (+) yz (+) zx indicated by three qubits, respectively, and is defined as shown in FIG. As shown in this figure, the MAJ gate is composed of a CNOT gate and a Toffoli gate defined in FIGS. 6 and 7, respectively.

UMAゲートは、図11のように定義される。この図に示すように、UMAゲートも、CNOTゲートとToffoliゲートによって構成される。なお、図面における   The UMA gate is defined as shown in FIG. As shown in this figure, the UMA gate is also composed of a CNOT gate and a Toffoli gate. In the drawing

Figure 2009271624

は、前述した(+)と同じ排他的論理和を示す。
Figure 2009271624

Indicates the same exclusive OR as (+) described above.

この非特許文献1の量子回路では、2つの二進数a=an−1…a及びb=bn−1…bを示す2n個の量子ビット|a>,…,|an−1>,|b>,…,|bn−1>と、0または1のzを示す1個の量子ビット|z>と、補助量子ビットである1個の量子ビット|0>を入力として用いる。なお、図15は、a,bがそれぞれ5量子ビット(n=5)によって表される場合の例であるが、これをn量子ビットビット同士の加算回路に拡張することは容易である。 In the quantum circuit of Non-Patent Document 1, 2n qubits representing two binary numbers a = a n-1 ... A 0 and b = b n−1 ... B 0 | a 0 > ,. −1 >, | b 0 >,..., | B n−1 >, one qubit | z> indicating z of 0 or 1, and one qubit | 0> which is an auxiliary qubit. Used as input. FIG. 15 shows an example in which a and b are each represented by 5 qubits (n = 5), but it is easy to extend this to an adder circuit of n qubit bits.

また、この量子回路の場合、演算処理を実行するために必要な基本ゲート(この例ではCNOTゲートとToffoliゲート)の3数は、a,bの桁数に比例して増加する。さらに、演算処理を実行するために必要な計算ステップ数も、a,bの桁数に比例して増加する。ここで、入力桁数に比例した基本演算数のことを「線形サイズ」といい、入力桁数に比例した計算ステップ数のことを「線形深さ」という。すなわち、非特許文献1の量子回路は、線形サイズ・線形深さで演算を行う量子回路である。
S. A. Cuccaro, T. G. Draper, S. A. Kutin, and D. P. Moulton, “A new quantum ripple-carry addition circuit”,[online], [平成20年5月1日検索],インターネット<http://arxiv.org/abs/quant-ph/0410184v1>,2004
In the case of this quantum circuit, the number of three basic gates (CNOT gate and Toffoli gate in this example) necessary for executing the arithmetic processing increases in proportion to the number of digits of a and b. Furthermore, the number of calculation steps necessary for executing the arithmetic processing also increases in proportion to the number of digits a and b. Here, the number of basic operations proportional to the number of input digits is called “linear size”, and the number of calculation steps proportional to the number of input digits is called “linear depth”. That is, the quantum circuit of Non-Patent Document 1 is a quantum circuit that performs an operation with a linear size and a linear depth.
SA Cuccaro, TG Draper, SA Kutin, and DP Moulton, “A new quantum ripple-carry addition circuit”, [online], [searched May 1, 2008], Internet <http://arxiv.org/abs / quant-ph / 0410184v1>, 2004

多数の量子ビットを実現し、協調的に操作するのは物理的に困難なため、補助量子ビットを用いない方が望ましい。また、量子ビットの制御を容易にするために、近傍量子ビットに対する量子操作のみで量子回路を構成することが望ましい。ここで、近傍量子ビットとは、連続して並ぶ、二進数a,bの桁数nに依存しない定数c個の量子ビットのことである。   Since it is physically difficult to realize a large number of qubits and operate them cooperatively, it is desirable not to use auxiliary qubits. In addition, in order to facilitate control of the qubit, it is desirable to configure the quantum circuit only by quantum operations on neighboring qubits. Here, the neighborhood qubit is a constant c qubits that are consecutively arranged and do not depend on the number of digits n of the binary numbers a and b.

しかし、非特許文献1に記載された量子回路は、補助量子ビットが必要であり、近傍量子ビットではない量子ビットに対する量子操作を含むという問題があった。   However, the quantum circuit described in Non-Patent Document 1 requires an auxiliary qubit and has a problem that it includes a quantum operation for a qubit that is not a neighboring qubit.

この発明は、上記問題に鑑み、補助量子ビットを用いないで、近傍量子ビットに対する量子操作のみで、2つの二進数a,bの和a+bを計算する量子回路、量子演算装置及び量子演算方法を提供することを目的とする。   In view of the above problems, the present invention provides a quantum circuit, a quantum operation device, and a quantum operation method that calculate the sum a + b of two binary numbers a and b by using only a quantum operation on neighboring qubits without using auxiliary qubits. The purpose is to provide.

この発明の1つの観点によれば、2n+1個の量子ビットQ,…,Q2n+1に対して操作を行うことにより、2つの二進数a,bの和a+bを計算するために、
上記二進数bの各桁は小さい方から量子ビットQ2i+1(i=0,…,n−1)の初期状態にそれぞれ対応し、上記二進数aの各桁は小さい方から量子ビットQ2i+2(i=0,…,n−1)の初期状態にそれぞれ対応し、和a+bの各桁は小さい方から量子ビットQ2i+1(i=0,…,n)の操作後の状態にそれぞれ対応し、
量子ビットQ2n−k+1を目標ビット、量子ビットQ2n−kを制御ビットとしてCNOTを適用し、量子ビットQ2n−k+1を制御ビット、量子ビットQ2n−kを目標ビットとしてCNOTを適用する操作をk=0からk=2n−3までkを1ずつ増加させて順次繰り返し、
量子ビットQ,Qを制御ビット、量子ビットQを目標ビットとしてToffoliを適用し、
量子ビットQ2k+3,Q2k+4,Q2k+5にMAJ2を適用し、量子ビットQ2k+2,Q2k+3にSWAPを適用し、量子ビットQ2k+3,Q2k+4にSWAPを適用し、量子ビットQ2k+2,Q2k+3を制御ビット、量子ビットQ2k+4を目標ビットとしてToffoliを適用する操作をk=0からk=n−3までkを1ずつ増加させて順次繰り返し、
量子ビットQ2n−1,Q2n,Q2n+1にMAJ2を適用し、
量子ビットQ2n−2,Q2n−1にSWAPを適用し、量子ビットQ2n−1を制御ビット、量子ビットQ2nを目標ビットとしてCNOTを適用し、量子ビットQ2n−2,Q2n−1にSWAPを適用し、
量子ビットQ2n−2k−4,Q2n−2k−3,Q2n−2k−2にUMA2を適用する操作をk=0からk=n−4までkを1ずつ増加させて順次繰り返し、
量子ビットQ,Qを制御ビット、量子ビットQを目標ビットとしてToffoliを適用し、
量子ビットQにNOTを適用し、量子ビットQ,QにSWAPを適用し、量子ビットQ,QにSWAPを適用し、量子ビットQ,QにSWAPを適用し、量子ビットQ,Qを制御ビット、量子ビットQを目標ビットとしてToffoliを適用し、
量子ビットQ2k+4,Q2k+5,Q2k+6,Q2k+7にSWAP2を適用し、量子ビットQ2k+6,Q2k+7を制御ビット、量子ビットQ2k+8目標ビットとしてToffoliを適用する操作をk=0からk=n−4までkを1ずつ増加させて順次繰り返し、
量子ビットQ2n−2k−4,Q2n−2k−3,Q2n−2k−2,Q2n−2k−1にSWAP2を適用する操作をk=0からk=n−3までkを1ずつ増加させて順次繰り返し、
量子ビットQにNOTを適用し、量子ビットQ,Qを制御ビット、量子ビットQを対象ビットとしてToffoliを適用し、量子ビットQ,QにSWAPを適用し、量子ビットQ,QにSWAPを適用し、
量子ビットQ2k+1を目標ビット、量子ビットQ2k+2を制御ビットとしてCNOTを適用する操作をk=0からk=n−1までkを1ずつ増加させて順次繰り返す、
操作と実質的に等しい操作を行う。
According to one aspect of the invention, to calculate the sum a + b of two binary numbers a and b by operating on 2n + 1 qubits Q 1 ,..., Q 2n + 1 ,
Each digit of the binary number b corresponds to the initial state of the qubit Q 2i + 1 (i = 0,..., N−1) from the smaller one, and each digit of the binary number a corresponds to the qubit Q 2i + 2 ( i = 0,..., n−1) respectively, and each digit of the sum a + b corresponds to the state after the operation of the quantum bit Q 2i + 1 (i = 0 ,.
Applying CNOT with qubit Q 2n-k + 1 as target bit, qubit Q 2n-k as control bit, and applying CNOT with qubit Q 2n-k + 1 as control bit and qubit Q 2n-k as target bit Are sequentially repeated by increasing k by 1 from k = 0 to k = 2n−3,
Apply Toffoli with qubits Q 1 and Q 2 as control bits and qubit Q 3 as a target bit,
Apply MAJ2 to qubits Q 2k + 3 , Q 2k + 4 , Q 2k + 5 , apply SWAP to qubits Q 2k + 2 , Q 2k + 3 , apply SWAP to qubits Q 2k + 3 , Q 2k + 4 , and apply qubits Q 2k + 2 , Q 2k + 3 The operation of applying Toffoli using the control bit and qubit Q 2k + 4 as the target bit is sequentially repeated by increasing k by 1 from k = 0 to k = n−3,
Apply MAJ2 to the qubits Q 2n−1 , Q 2n , Q 2n + 1 ,
Applying SWAP to the qubits Q 2n-2 and Q 2n−1 , applying CNOT with the qubit Q 2n−1 as the control bit and the qubit Q 2n as the target bit, the qubits Q 2n−2 and Q 2n− Apply SWAP to 1
The operation of applying UMA2 to qubits Q 2n-2k-4 , Q 2n-2k-3 , Q 2n-2k-2 is sequentially repeated by increasing k by 1 from k = 0 to k = n-4,
Apply Toffoli with qubits Q 2 and Q 3 as control bits and qubit Q 4 as target bits,
Apply the NOT to qubit Q 1, to apply the SWAP the qubit Q 2, Q 3, to apply the SWAP the qubit Q 4, Q 5, applying the SWAP the qubit Q 3, Q 4, quantum Apply Toffoli with bits Q 5 and Q 6 as control bits and qubit Q 7 as a target bit,
SW = 0 is applied to the qubits Q 2k + 4 , Q 2k + 5 , Q 2k + 6 , Q 2k + 7, and the operation of applying Toffoli with the qubits Q 2k + 6 , Q 2k + 7 as the control bits and the qubits Q 2k + 8 as the target bits is k = 0 to k = n -4 by increasing k by 1 up to -4
The operation of applying SWAP2 to the qubits Q 2n-2k-4 , Q 2n-2k-3 , Q 2n-2k-2 , Q 2n-2k-1 is performed by 1 from k = 0 to k = n-3. Increase and repeat sequentially,
Apply the NOT to qubit Q 2, control bits qubit Q 2, Q 3, applying the Toffoli targeting bits qubit Q 4, to apply the SWAP the qubit Q 1, Q 2, qubit Q apply the SWAP to 2, Q 3,
The operation of applying CNOT using the qubit Q 2k + 1 as the target bit and the qubit Q 2k + 2 as the control bit is sequentially repeated by increasing k by 1 from k = 0 to k = n−1.
Perform an operation that is substantially equivalent to the operation.

補助量子ビットを用いないで、近傍量子ビットに対する操作のみで、2つの二進数a,bの和a+bを計算することができる。   Without using the auxiliary qubit, the sum a + b of the two binary numbers a and b can be calculated only by the operation on the neighboring qubit.

以下、この発明の量子回路、量子演算装置及び量子演算方法の一実施形態について説明する。同一の部分には、同じ符号を付けて重複説明を略する。   Hereinafter, an embodiment of a quantum circuit, a quantum operation device, and a quantum operation method of the present invention will be described. The same parts are denoted by the same reference numerals, and redundant description is omitted.

この実施形態による量子回路、量子演算装置及び量子演算方法は、2つのn(nは自然数)桁の二進数a=an−1…aと、b=bn−1…bと0又は1であるzが入力として与えられたとき、和a+b=s…sを計算し、z(+)sとsn−1…sとa=an−1…aとを出力する。i=0,…,n−1として、a∈{0,1},b∈{0,1},s∈{0,1}である。(+)は、mod2での加算である。 The quantum circuit, the quantum operation device, and the quantum operation method according to this embodiment have two n (n is a natural number) binary numbers a = a n−1 ... A 0 and b = b n−1 ... B 0 and 0. or when 1 is a z is given as input, the sum a + b = s n ... s 0 is calculated, and z (+) s n and s n-1 ... s 0 and a = a n-1 ... a 0 Is output. As i = 0,..., n−1, a i ∈ {0,1}, b i ∈ {0,1}, s i ∈ {0,1}. (+) Is addition in mod2.

この実施形態による量子回路、量子回路及び量子演算方法は、和a+bを計算するために、2n+1個の量子ビットQ,…,Q2n+1(図20参照)に対して量子操作を行う。非特許文献1の量子回路とは異なり、補助量子ビットを用いない。ここで、量子ビットに対して量子操作を行うことを、量子ビットに対して操作を行うと略記することがある。 In the quantum circuit, the quantum circuit, and the quantum operation method according to this embodiment, a quantum operation is performed on 2n + 1 quantum bits Q 1 ,..., Q 2n + 1 (see FIG. 20) in order to calculate the sum a + b. Unlike the quantum circuit of Non-Patent Document 1, no auxiliary qubit is used. Here, performing a quantum operation on a qubit may be abbreviated as performing an operation on the qubit.

二進数bの各桁は小さい方から量子ビットQ2i+1(i=0,…,n−1)の初期状態にそれぞれ対応しており、二進数aの各桁は小さい方から量子ビットQ2i+2(i=0,…,n−1)の初期状態にそれぞれ対応する。すなわち、i=0,…,n−1として、bの桁は量子ビットQ2i+1の初期状態に対応し、aの桁は量子ビットQ2i+2の初期状態に対応する。 Each digit of the binary number b corresponds to the initial state of the qubit Q 2i + 1 (i = 0,..., N−1) from the smallest one, and each digit of the binary number a has the qubit Q 2i + 2 ( This corresponds to the initial state of i = 0,..., n−1). That is, assuming that i = 0,..., N−1, the digit of b i corresponds to the initial state of the qubit Q 2i + 1 , and the digit of a i corresponds to the initial state of the qubit Q 2i + 2 .

2つのn桁の二進数a,bの和a+bは、繰り上がりにより、n+1桁になる可能性がある。量子ビットQ2n+1は、和a+bのn+1番目の桁である最上位桁を保存するために用いられる。 The sum a + b of the two n-digit binary numbers a and b may be n + 1 digits due to carry. The qubit Q 2n + 1 is used to store the most significant digit which is the (n + 1) th digit of the sum a + b.

この実施形態による量子回路、量子演算装置及び量子演算方法は、近傍量子ビットに対して操作を行う。ここで、近傍量子ビットとは、連続して並ぶ、二進数a,bの桁数nに依存しない定数c個の量子ビットのことである。この実施形態ではc=3である。量子回路及び量子演算方法を、近傍量子ビットに対する操作のみで構成することにより、物理的に実現し易くなり、量子ビットに対する操作の精度が増す。   The quantum circuit, quantum operation device, and quantum operation method according to this embodiment operate on neighboring qubits. Here, the neighborhood qubit is a constant c qubits that are consecutively arranged and do not depend on the number of digits n of the binary numbers a and b. In this embodiment, c = 3. By configuring the quantum circuit and the quantum operation method only with operations on neighboring qubits, it is easy to physically implement them, and the accuracy of operations on qubits increases.

この実施形態による量子回路、量子演算装置及び量子演算方法は、線形サイズ・線形深さである。線形サイズとは、基本演算数が二進数a,bの桁数nに比例していることを意味する。線形深さとは、計算ステップ数が二進数a,bの桁数nに比例していることを意味する。   The quantum circuit, quantum operation device, and quantum operation method according to this embodiment have a linear size and a linear depth. The linear size means that the basic operation number is proportional to the number of digits n of the binary numbers a and b. The linear depth means that the number of calculation steps is proportional to the number of digits n of the binary numbers a and b.

この実施形態による量子回路、量子演算装置及び量子演算方法は、図6から図9にそれぞれ示すCNOT、Toffoli、NOT及びSWAPを基本演算とする。   The quantum circuit, quantum operation device, and quantum operation method according to this embodiment are based on CNOT, Toffoli, NOT, and SWAP shown in FIGS. 6 to 9, respectively.

以下、i=0,…,n−1として、量子ビットQ2i+1の初期状態が|b>であり、量子ビットQ2i+2の初期状態が|a>であり、量子ビットQ2n+1の初期状態が|z>である場合を例に挙げて説明をする。 Hereinafter, assuming that i = 0,..., N−1, the initial state of the qubit Q 2i + 1 is | b i >, the initial state of the qubit Q 2i + 2 is | a i >, and the initial state of the qubit Q 2n + 1 A case where | z> will be described as an example.

この実施形態による量子回路及び量子演算方法は、図16から図19に示す5つのステップから成り、これらのステップの処理が量子演算装置により実現される。量子演算装置の機能ブロック図を図20に例示する。図1から図5に、n=5、すなわち二進数a,bが5桁の場合の量子回路を例示する。   The quantum circuit and the quantum operation method according to this embodiment include five steps shown in FIGS. 16 to 19, and the processing of these steps is realized by the quantum operation device. A functional block diagram of the quantum arithmetic device is illustrated in FIG. FIG. 1 to FIG. 5 illustrate quantum circuits when n = 5, that is, binary numbers a and b are 5 digits.

<ステップS1(図16参照)>
CNOT操作部11(図20参照)が、量子ビットQ2n−k+1を目標ビット、量子ビットQ2n−kを制御ビットとしてCNOTを適用し、量子ビットQ2n−k+1を制御ビット、量子ビットQ2n−kを目標ビットとしてCNOTを適用する操作をk=0からk=2n−3までkを1ずつ増加させて順次繰り返す(ステップS1)。
<Step S1 (see FIG. 16)>
The CNOT operating unit 11 (see FIG. 20) applies CNOT using the qubit Q 2n-k + 1 as the target bit and the qubit Q 2n-k as the control bit, and controls the qubit Q 2n-k + 1 as the control bit and qubit Q 2n. The operation of applying CNOT with -k as a target bit is sequentially repeated by increasing k by 1 from k = 0 to k = 2n-3 (step S1).

ステップS1は、具体的にはステップS1a〜ステップs1eからなる。制御部9は、記憶部10に格納された変数kをk=0とする(ステップS1a)。CNOT操作部11が、量子ビットQ2n−k+1を目標ビット、量子ビットQ2n−kを制御ビットとして、これらの量子ビットQ2n−k+1,Q2n−kにCNOTを適用する(ステップS1b)。続いて、CNOT操作部11が、量子ビットQ2n−k+1を制御ビット、量子ビットQ2n−kを目標ビットとして、これらの量子ビットQ2n−k+1,Q2n−kにCNOTを適用する(ステップS1c)。制御部9は、k=2n−3であるか判断する(ステップS1d)。k=2n−3でなければ、制御部9はkを1だけインクリメント(ステップS1e)して、ステップS1bに進む。k=2n−3であれば、ステップS2に進む。 Specifically, step S1 includes steps S1a to s1e. The control unit 9 sets the variable k stored in the storage unit 10 to k = 0 (step S1a). The CNOT operating unit 11 applies CNOT to these quantum bits Q 2n-k + 1 and Q 2n-k using the quantum bit Q 2n-k + 1 as the target bit and the quantum bit Q 2n-k as the control bit (step S1b). Subsequently, the CNOT operating unit 11 applies CNOT to these qubits Q 2n-k + 1 and Q 2n-k using the qubit Q 2n-k + 1 as a control bit and the qubit Q 2n-k as a target bit (step) S1c). The controller 9 determines whether k = 2n−3 (step S1d). If k = 2n−3 is not satisfied, the control unit 9 increments k by 1 (step S1e) and proceeds to step S1b. If k = 2n-3, the process proceeds to step S2.

ステップS1の操作により、zの値が、二進数aの2番目以降の桁a…a及び二進数bの2番目以降の桁b…bそれぞれ分配される。 By the operation of step S1, the value of z is the second and subsequent digits b n ... b 1 each dispensing the second and subsequent digit a n ... a 1 and binary b a binary a.

<ステップS2(図16参照)>
ステップS2は、ステップS2a〜ステップS2cからなる。
<Step S2 (see FIG. 16)>
Step S2 includes steps S2a to S2c.

まず、Toffoli操作部13が、量子ビットQ,Qを制御ビット、量子ビットQを目標ビットとしてToffoliを適用する(ステップS2a)。 First, the Toffoli operation unit 13 applies Toffoli using the qubits Q 1 and Q 2 as control bits and the qubit Q 3 as a target bit (step S2a).

続いて、量子ビットQ2k+3,Q2k+4,Q2k+5に対してMAJ2を適用し、量子ビットQ2k+2,Q2k+3にSWAPを適用し、量子ビットQ2k+3,Q2k+4に対してSWAPを適用し、量子ビットQ2k+2,Q2k+3を制御ビット、量子ビットQ2k+4を目標ビットとしてToffoliを適用する操作をk=0からk=n−3までkを1ずつ増加させて順次繰り返す(ステップS2b)。 Subsequently, MAJ2 is applied to the qubits Q 2k + 3 , Q 2k + 4 , Q 2k + 5 , SWAP is applied to the qubits Q 2k + 2 , Q 2k + 3, and SWAP is applied to the qubits Q 2k + 3 , Q 2k + 4 . The operation of applying Toffoli using bits Q 2k + 2 and Q 2k + 3 as control bits and quantum bit Q 2k + 4 as a target bit is sequentially repeated by increasing k by 1 from k = 0 to k = n−3 (step S2b).

ここで、MAJ2は、3つの入力値の内で最も多い値を出力する量子回路であり、図12で定義される。例えば、入力値の2つ以上が|0>であれば|0>を出力し、入力値の2つ以上が|1>であれば|1>を出力する。   Here, MAJ2 is a quantum circuit that outputs the largest value among the three input values, and is defined in FIG. For example, if two or more input values are | 0>, | 0> is output, and if two or more input values are | 1>, | 1> is output.

ステップS2bは、具体的にはステップS2b1〜ステップS2b5からなる。制御部9が、記憶部10に格納された変数kをk=0とする(ステップS2b1)。MAJ2操作部14が、量子ビットQ2k+3,Q2k+4,Q2k+5に対してMAJ2を適用する(ステップS2b2)。SWAP操作部12が、量子ビットQ2k+2,Q2k+3にSWAPを適用する(ステップS2b3)。続いて、SWAP操作部12が、量子ビットQ2k+3,Q2k+4に対してSWAPを適用する(ステップS2b4)。Toffoli操作部13が、量子ビットQ2k+2,Q2k+3を制御ビット、量子ビットQ2k+4を目標ビットとして、これらの量子ビットQ2k+2,Q2k+3,Q2k+4にToffoliを適用する(ステップS2b5)。制御部9は、k=n−3であるか判断する(ステップS2b6)。k=n−3でなければ、制御部9はkを1だけインクリメント(ステップS2b7)して、ステップS2b2に進む。k=n−3であれば、ステップS2cに進む。 Step S2b specifically includes steps S2b1 to S2b5. The control unit 9 sets the variable k stored in the storage unit 10 to k = 0 (step S2b1). The MAJ2 operation unit 14 applies MAJ2 to the qubits Q 2k + 3 , Q 2k + 4 , and Q 2k + 5 (step S2b2). The SWAP operation unit 12 applies SWAP to the qubits Q 2k + 2 and Q 2k + 3 (step S2b3). Subsequently, the SWAP operation unit 12 applies SWAP to the qubits Q 2k + 3 and Q 2k + 4 (step S2b4). The Toffoli operating unit 13 uses the qubits Q 2k + 2 , Q 2k + 3 as control bits and the qubit Q 2k + 4 as a target bit, and applies Toffoli to these qubits Q 2k + 2 , Q 2k + 3 , Q 2k + 4 (step S2b5). The controller 9 determines whether k = n−3 (step S2b6). If k = n−3 is not true, the controller 9 increments k by 1 (step S2b7), and proceeds to step S2b2. If k = n−3, the process proceeds to step S2c.

ステップS2の最後に、MAJ2操作部14が、量子ビットQ2n−1,Q2n,Q2n+1に対してMAJ2を適用する(ステップS2c)
ステップS2の操作により、各桁の繰り上がり|c>(i=1,…,n)が計算され、|a(+)c>という形で表現される。ここで、|c>=|0>であり、|ci+1>=|a(+)b(+)c>である。
At the end of step S2, the MAJ2 operation unit 14 applies MAJ2 to the qubits Q 2n−1 , Q 2n , Q 2n + 1 (step S2c).
By the operation of step S2, the carry | c i > (i = 1,..., N) of each digit is calculated and expressed in the form | a i (+) c i >. Here, | c 0 > = | 0> and | c i + 1 > = | a i b i (+) b i c i (+) c i a i >.

なお、図2の右下に出てくる|z(+)s>の|s>は、|c>と等しい。|a>=|b>=0であるためである。 Incidentally, appearing in the lower right of FIG. 2 | z (+) s 5 > of | s 5> is, | equal to c 5>. This is because | a 5 > = | b 5 > = 0.

<ステップS3(図17参照)>
ステップS3は、ステップS3a〜ステップS3eからなる。
<Step S3 (see FIG. 17)>
Step S3 includes steps S3a to S3e.

まず、SWAP操作部12が、量子ビットQ2n−2,Q2n−1に対してSWAPを適用する(ステップS3a)。CNOT操作部11が、量子ビットQ2n−1を制御ビット、量子ビットQ2nを目標ビットとして、これらの量子ビットQ2n−1,Q2nにCNOTを適用する(ステップS3b)。SWAP操作部12が、量子ビットQ2n−2,Q2n−1に対してSWAPを適用する(ステップS3c)。 First, the SWAP operation unit 12 applies SWAP to the qubits Q 2n−2 and Q 2n−1 (step S3a). The CNOT operating unit 11 applies the CNOT to these quantum bits Q 2n-1 and Q 2n using the quantum bit Q 2n-1 as a control bit and the quantum bit Q 2n as a target bit (step S3b). The SWAP operation unit 12 applies SWAP to the qubits Q 2n−2 and Q 2n−1 (step S3c).

続いて、UMA2操作部15が、量子ビットQ2n−2k−4,Q2n−2k−3,Q2n−2k−2に対してUMA2を適用する操作をk=0からk=n−4までkを1ずつ増加させて順次繰り返す(ステップS3d)。UMA2は、図13で定義される量子ゲートである。 Subsequently, the UMA2 operation unit 15 performs an operation of applying UMA2 to the qubits Q 2n-2k-4 , Q 2n-2k-3 , Q 2n-2k-2 from k = 0 to k = n-4. k is incremented by 1 and repeated in sequence (step S3d). UMA2 is a quantum gate defined in FIG.

ステップS3dは、具体的にはステップS3d1〜ステップs3d4からなる。制御部9が、記憶部10に格納された変数kをk=0とする(ステップS3d1)。UMA2操作部15が、量子ビットQ2n−2k−4,Q2n−2k−3,Q2n−2k−2に対してUMA2を適用する(ステップS3d2)。制御部9は、k=n−4であるか判断する(ステップS3d3)。k=n−4でなければ、制御部9はkを1だけインクリメント(ステップS3d4)して、ステップS3d2に進む。k=n−4であれば、ステップS3eに進む。 Step S3d specifically includes steps S3d1 to s3d4. The control unit 9 sets the variable k stored in the storage unit 10 to k = 0 (step S3d1). The UMA2 operation unit 15 applies UMA2 to the qubits Q2n -2k-4 , Q2n -2k-3 , and Q2n -2k-2 (step S3d2). The controller 9 determines whether k = n−4 (step S3d3). If k = n−4 is not satisfied, the control unit 9 increments k by 1 (step S3d4) and proceeds to step S3d2. If k = n-4, the process proceeds to step S3e.

ステップS3の最後に、Toffoli操作部13が、量子ビットQ,Qを制御ビット、量子ビットQを目標ビットとして、これらの量子ビットQ,Q,QにToffoliを適用する(ステップS3e)。 At the end of step S3, the Toffoli operation unit 13 uses the qubits Q 2 , Q 3 as control bits and the qubit Q 4 as a target bit, and applies Toffoli to these qubits Q 2 , Q 3 , Q 4 ( Step S3e).

ステップS3の操作により、i=2,…,nとして、|a(+)c>は、|a(+)c(+)b>という、cがiに依存しない形で表現される。 As a result of the operation in step S3, assuming that i = 2,..., N, | a i (+) c i > is | a i (+) c 1 (+) b 0 >, where c i does not depend on i. It is expressed by

<ステップS4(図18参照)>
ステップS4は、ステップS4a〜ステップS4eからなる。
<Step S4 (see FIG. 18)>
Step S4 includes steps S4a to S4e.

NOT操作部16が、量子ビットQにNOTを適用する(ステップS4a)。SWAP操作部12が、量子ビットQ,QにSWAPを適用する(ステップS4b)。SWAP操作部12が、量子ビットQ,QにSWAPを適用する(ステップS4c)。SWAP操作部12が、量子ビットQ,QにSWAPを適用する。Toffoli操作部14が、量子ビットQ,Qを制御ビット、量子ビットQを目標ビットとして、これらの量子ビットQ,Q,QにToffoliを適用する(ステップS4d)。 NOT operation unit 16 applies a NOT to qubit Q 1 (step S4a). The SWAP operation unit 12 applies SWAP to the qubits Q 2 and Q 3 (step S4b). The SWAP operation unit 12 applies SWAP to the qubits Q 4 and Q 5 (step S4c). The SWAP operation unit 12 applies SWAP to the qubits Q 3 and Q 4 . The Toffoli operating unit 14 uses the qubits Q 5 , Q 6 as control bits and the qubit Q 7 as a target bit, and applies Toffoli to these qubits Q 5 , Q 6 , Q 7 (step S4d).

続いて、量子ビットQ2k+4,Q2k+5,Q2k+6,Q2k+7にSWAP2を適用し、量子ビットQ2k+6,Q2k+7,Q2k+8にToffoliを適用する操作をk=0からk=n−4までkを1ずつ増加させて順次繰り返す(ステップS4e)。 Subsequently, the operation of applying SWAP2 to the qubits Q 2k + 4 , Q 2k + 5 , Q 2k + 6 , Q 2k + 7 and applying Toffoli to the qubits Q 2k + 6 , Q 2k + 7 , Q 2k + 8 from k = 0 to k = n−4 Is incremented by 1 and repeated sequentially (step S4e).

SWAP2は、図14により定義される量子回路である。   SWAP2 is a quantum circuit defined by FIG.

ステップS4eは、具体的にはステップS4e1〜ステップS4e5からなる。制御部9は、記憶部10に格納された変数kをk=0とする(ステップS4e1)。SWAP2操作部17が、量子ビットQ2k+4,Q2k+5,Q2k+6,Q2k+7にSWAP2を適用する(ステップS4e2)。Toffoli操作部14が、量子ビットQ2k+6,Q2k+7を制御ビット、量子ビットQ2k+8を目標ビットとして、これらの量子ビットQ2k+6,Q2k+7,Q2k+8にToffoliを適用する(ステップS4e3)。制御部9は、k=n−4であるか判断する(ステップS4e4)。k=n−4でなければ、制御部9はkを1だけインクリメント(ステップS4e5)して、ステップS4e2に進む。k=n−4であれば、ステップ5に進む。 Specifically, step S4e includes steps S4e1 to S4e5. The control unit 9 sets the variable k stored in the storage unit 10 to k = 0 (step S4e1). The SWAP2 operation unit 17 applies SWAP2 to the qubits Q 2k + 4 , Q 2k + 5 , Q 2k + 6 , and Q 2k + 7 (step S4e2). The Toffoli operation unit 14 uses the qubits Q 2k + 6 , Q 2k + 7 as control bits, and the qubit Q 2k + 8 as a target bit, and applies Toffoli to these qubits Q 2k + 6 , Q 2k + 7 , Q 2k + 8 (step S4e3). The control unit 9 determines whether k = n−4 (step S4e4). If k = n−4 is not satisfied, the control unit 9 increments k by 1 (step S4e5) and proceeds to step S4e2. If k = n−4, go to step 5.

ステップs4の操作により、i=2,…,nとして、|a(+)c(+)b>から、|a>が求められる。 As a result of the operation in step s4, | a i > is obtained from | a i (+) c 1 (+) b 0 > with i = 2,.

<ステップS5(図19参照)>
ステップS5は、ステップS5a〜ステップS5fからなる。
<Step S5 (see FIG. 19)>
Step S5 includes steps S5a to S5f.

SWAP2操作部17は、量子ビットQ2n−2k−4,Q2n−2k−3,Q2n−2k−2,Q2n−2k−1に対してSWAP2を適用する操作をk=0からk=n−3までkを1ずつ増加させて順次繰り返す(ステップS5a)。SWAP2は、図14で定義される量子ゲートである。 The SWAP2 operation unit 17 performs an operation of applying SWAP2 to the qubits Q 2n-2k-4 , Q 2n-2k-3 , Q 2n-2k-2 , Q 2n-2k-1 from k = 0 to k = The k is incremented by 1 up to n-3 and repeated sequentially (step S5a). SWAP2 is a quantum gate defined in FIG.

ステップS5aは具体的には、ステップS5a1〜ステップS5a4からなる。制御部9が、記憶部10に格納された変数kをk=0とする(ステップS5a1)。SWAP2操作部17は、量子ビットQ2n−2k−4,Q2n−2k−3,Q2n−2k−2,Q2n−2k−1に対してSWAP2を適用する(ステップS5a2)。制御部9は、k=n−3であるか判断する(ステップS5a3)。k=n−3でなければ、制御部9はkを1だけインクリメント(ステップS5a4)して、ステップS5a2に進む。k=n−3であれば、ステップS5bに進む。 Specifically, step S5a includes steps S5a1 to S5a4. The control unit 9 sets the variable k stored in the storage unit 10 to k = 0 (step S5a1). The SWAP2 operation unit 17 applies SWAP2 to the qubits Q2n -2k-4 , Q2n -2k-3 , Q2n -2k-2 , and Q2n -2k-1 (step S5a2). The controller 9 determines whether k = n−3 (step S5a3). If k = n−3 is not true, the controller 9 increments k by 1 (step S5a4), and proceeds to step S5a2. If k = n−3, the process proceeds to step S5b.

NOT操作部16が、量子ビットQにNOTを適用する(ステップS5b)。Toffoli操作部13が、量子ビットQ,Q,QにToffoliを適用する(ステップS5c)。SWAP操作部12が、量子ビットQ,Qに対してSWAPを適用する(ステップS5d)。続いて、SWAP操作部12が、量子ビットQ,Qに対してSWAPを適用する(ステップS5e)。 NOT operation unit 16 applies a NOT to qubit Q 2 (step S5b). The Toffoli operation unit 13 applies Toffoli to the qubits Q 2 , Q 3 , and Q 4 (Step S5c). The SWAP operation unit 12 applies SWAP to the qubits Q 1 and Q 2 (step S5d). Subsequently, the SWAP operation unit 12 applies SWAP to the qubits Q 2 and Q 3 (step S5e).

CNOT操作部11が、量子ビットQ2k+1を目標ビット、量子ビットQ2k+2を制御ビットとしてCNOTを適用する操作をk=0からk=n−1までkを1ずつ増加させて順次繰り返す(ステップS5f)。 The CNOT operation unit 11 sequentially repeats the operation of applying CNOT using the qubit Q 2k + 1 as the target bit and the qubit Q 2k + 2 as the control bit, increasing k by 1 from k = 0 to k = n−1 (step S5f). ).

ステップS5fは具体的には、ステップS5f1〜ステップS5f4からなる。制御部9が、記憶部10に格納された変数kをk=0とする(ステップS5f1)。CNOT操作部11が、量子ビットQ2k+1を目標ビット、量子ビットQ2k+2を制御ビットとして、これらの量子ビットQ2k+1,Q2k+2にCNOTを適用する(ステップS5f2)。制御部9は、k=n−1であるか判断する(ステップS5f3)。k=n−1でなければ、制御部9はkを1だけインクリメント(ステップS5f4)して、ステップS5f2に進む。k=n−1であれば、処理を終える。 Specifically, step S5f includes steps S5f1 to S5f4. The control unit 9 sets the variable k stored in the storage unit 10 to k = 0 (step S5f1). The CNOT operating unit 11 applies CNOT to these quantum bits Q 2k + 1 and Q 2k + 2 using the quantum bit Q 2k + 1 as a target bit and the quantum bit Q 2k + 2 as a control bit (step S5f2). The controller 9 determines whether k = n−1 (step S5f3). If k = n−1 is not satisfied, the controller 9 increments k by 1 (step S5f4), and proceeds to step S5f2. If k = n−1, the process ends.

ステップS5の処理により、和a+b=s…sの各桁は小さい方から、量子ビットQ2i+1(i=0,…,n)の操作後の状態にそれぞれ対応することになる。具体的には図5にn=5の場合を例示するように、sn−1…sの各桁については量子ビットQ2i+1=|s>となり(i=0,…,n−1)、sの桁については量子ビットQ2n+1=|z(+)S>となる。
なお、量子ビットQ2i+2(i=0,…,n−1)の操作後の状態は、それぞれ二進数bの各桁の小さい方から対応する。
By the processing in step S5, each digit of the sum a + b = s n ... S 0 corresponds to the state after the operation of the qubit Q 2i + 1 (i = 0,..., N) from the smaller one. Specifically, as exemplified in the case of n = 5 in FIG. 5, for each digit of s n-1 ... S 0 , qubits Q 2i + 1 = | s i > (i = 0,..., N−1) ) And s n digits are quantum bits Q 2n + 1 = | z (+) S n >.
Note that the state after the operation of the qubit Q 2i + 2 (i = 0,..., N−1) corresponds to the smaller of the digits of the binary number b.

このように、補助量子ビットを用いないで、2つの二進数a,bの和a+bを計算することができる。補助量子ビットを用いないことにより、従来よりも少ない量子ビットで加算を行うことができ、量子ビットの制御が容易になる。   Thus, the sum a + b of two binary numbers a and b can be calculated without using auxiliary qubits. By not using auxiliary qubits, addition can be performed with fewer qubits than in the past, and control of qubits is facilitated.

〔量子演算装置〕
次に、本発明の量子回路に則って量子ビットへの操作を行う量子演算装置1について説明する。本発明の量子演算装置1は、図20に例示するように、制御部9、記憶部10、CNOT操作部11、SWAP操作部12、Toffoli操作部13、MAJ2操作部14、UMA2操作部15、NOT操作部16、SWAP2操作部17及び量子ビットQ,…,Q2n+1を含む。
[Quantum arithmetic unit]
Next, the quantum arithmetic device 1 that performs operations on qubits according to the quantum circuit of the present invention will be described. As illustrated in FIG. 20, the quantum computation device 1 of the present invention includes a control unit 9, a storage unit 10, a CNOT operation unit 11, a SWAP operation unit 12, a Toffoli operation unit 13, a MAJ2 operation unit 14, a UMA2 operation unit 15, A NOT operation unit 16, a SWAP2 operation unit 17, and qubits Q 1 ,..., Q 2n + 1 are included.

量子演算装置1は、量子コンピュータ単体で実現できる。制御部9及び記憶部10部分は後述するように古典コンピュータにより実現してもよい。量子コンピュータの実現する物理系としては、例えば、イオントラップを用いる方法(J. I. Cirac and P. Zoller, Quantum computations with cold trapped ions, Physical Review Letter 74;4091, 1995)、量子ビットとして光子の偏光や光路を用いる方法(Y. Nakamura, M. Kitagawa, K. Igeta, In 3-rd Proc. Asia-Pacific Phys. Comf., World Scientific, Singapore, 1988)、液体中の各スピンを用いる方法(Gershenfield, Chuang, Bulk spin resonance quantum computation, Science, 275;350, 1997)、シリコン結晶中の核スピンを用いる方法(B. E. Kane, A silicon-based nuclear spin quantum computer, Nature 393, 133, 1998)、量子ドット中の電子スピンを用いる方法(D. Loss and D. P. DiVincenzo, Quantum computation with quantum dots, Physical Review A 57, 120-126, 1998)、超伝導素子を用いる方法(Y. Nakamura, Yu. A. Pashkin and J. S. Tsai, Coherent control of macroscopic quantum states in a single-cooper pair box, Nature 393, 786-788, 1999)等を例示できる。また、それぞれの物理系に対する量子 コンピュータの実現方法については、「http://www.ipa.go.jp/security/fy11/report/contents/crypto/crypto/report/QuantumComputers/contents/doc/qc_survey.pdf」や「M. A. Nielsen and I. L. Chuang, Quantum Computation and Quantum Information, Cambridge University Press, Chapter 7 Physical Realization」に詳しい。   The quantum arithmetic device 1 can be realized by a single quantum computer. The control unit 9 and the storage unit 10 may be realized by a classical computer as will be described later. As physical systems realized by quantum computers, for example, methods using ion traps (JI Cirac and P. Zoller, Quantum computations with cold trapped ions, Physical Review Letter 74; 4091, 1995), photon polarization and optical path as qubits, etc. (Y. Nakamura, M. Kitagawa, K. Igeta, In 3-rd Proc. Asia-Pacific Phys. Comf., World Scientific, Singapore, 1988), a method using each spin in a liquid (Gershenfield, Chuang , Bulk spin resonance quantum computation, Science, 275; 350, 1997), a method using nuclear spins in silicon crystals (BE Kane, A silicon-based nuclear spin quantum computer, Nature 393, 133, 1998), in quantum dots Method using electron spin (D. Loss and DP DiVincenzo, Quantum computation with quantum dots, Physical Review A 57, 120-126, 1998), method using superconducting element (Y. Nakamura, Yu. A. Pashkin and JS Tsai , Coherent control of macroscopic quantum states in a single- cooper pair box, Nature 393, 786-788, 1999). For details on how to implement quantum computers for each physical system, see `` http://www.ipa.go.jp/security/fy11/report/contents/crypto/crypto/report/QuantumComputers/contents/doc/qc_survey. pdf "and" MA Nielsen and IL Chuang, Quantum Computation and Quantum Information, Cambridge University Press, Chapter 7 Physical Realization ".

<量子ビット>
イオントラップ量子コンピュータでは、例えば、イオンの基底状態と励起状態を利用して量子ビットを実現する。また、核スピンを量子ビットとして用いる場合には、例えば、「T. D. Ladd, et al., "All-Silicon quantum computer," Phys. Rev. Lett., vol. 89, no. 1, 017901-1‐017901-4, July 1, 2002.」に記載されているようにSi(111)基板等に各量子ビットを生成する。なお、量子ビットの初期量子状態は、例えば、他の演算の量子回路による操作によって得られたものを用いてもよいし、各量子ビットが生成された基板をmK(ミリケルビン)オーダー以下に冷却してスピンの向きを揃えた後、所定の電磁波パルスを印加して生成してもよい。また、量子ビットとして光子の偏光を用いる場合には、例えば、パラメトリックダウンコンバージョン(PDC:parametric down conversion)(例えば、「P. G. Kwiat, K. Mattle, H. Weinfurter, A. Zeilinger, A. V. Sergienko, and Y. Shih, “New high-intensity source of polarization-entangled photon pairs,” Phys. Rev. Lett. ,75:4337-4341, 1995.」「P. G. Kwiat, E. Waks, A. G. White, I. Appelbaum, and P. H. Eberhard, “Ultrabright source of polarization-entangled photons,” Phys. Rev. A, 60:R773-R776, 1999.」等参照。)によって生成された複数個の単一光子を用いる。この場合、各量子ビットの初期量子状態は、例えば、他の演算の量子回路による操作によって得られたものを用いる。また、パラメトリックダウンコンバージョン等によって生成された単一光子に、ビームスプリッタや偏光回転素子等によって実現されるウォルシューアダマール変換、CNOT、回転等の操作を行い、上述の初期量子状態を生成することとしてもよい。
その他、上記の文献に記載された方法で量子 ビットを用意することとしてもよい。
<Quantum bit>
In an ion trap quantum computer, for example, a quantum bit is realized by utilizing the ground state and excited state of ions. When nuclear spins are used as qubits, for example, “TD Ladd, et al.,“ All-Silicon quantum computer, ”Phys. Rev. Lett., Vol. 89, no. 1, 017901-1‐ [017901-4, July 1, 2002.], each qubit is generated on a Si (111) substrate or the like. The initial quantum state of the qubit may be, for example, one obtained by an operation by a quantum circuit for other operations, or the substrate on which each qubit is generated is cooled to the order of mK (millikelvin) or less. Then, after aligning the spin direction, a predetermined electromagnetic wave pulse may be applied and generated. When the polarization of a photon is used as a qubit, for example, parametric down conversion (PDC) (for example, “PG Kwiat, K. Mattle, H. Weinfurter, A. Zeilinger, AV Sergienko, and Y Shih, “New high-intensity source of polarization-entangled photon pairs,” Phys. Rev. Lett., 75: 4337-4341, 1995. “PG Kwiat, E. Waks, AG White, I. Appelbaum, and PH Eberhard, “Ultrabright source of polarization-entangled photons,” Phys. Rev. A, 60: R773-R776, 1999. ”) is used. In this case, as the initial quantum state of each qubit, for example, the one obtained by an operation by a quantum circuit of another operation is used. In addition, by performing operations such as Walsh Hadamard transform, CNOT, rotation, etc. realized by a beam splitter, a polarization rotation element, etc. on a single photon generated by parametric down conversion, etc., the above initial quantum state is generated. Also good.
In addition, it is good also as preparing a qubit by the method described in said literature.

また、演算前後や演算途中において量子ビットの量子状態を保存する必要がある場合には、例えば、量子ドット内の電子準位、核スピン、あるいは超伝導体内部の電荷(クーパー対)量を量子ビットとして用いてデータを保存する量子メモリ等を用いてもよい(A.Barenco, D.Deutsch, and A.Ekert, Phys. Rev. Lett.74,4083(1995)、松枝秀明 電子情報通信学会誌 A Vol.J81-A No.12(1998)1978、T.H.Oosterkamp et.al., Nature 395,873(1998)、D.Loss and D.P. DiVincenzo, Phys. Rev. A57(1998) 120. T.Oshima, quant-ph/0002004, http://arxiv.org/abs/quant-ph/0002004、B.E.Kane, A silicon-based nuclear spin quantum computer, Nature, 393, 133(1998)、http://www.snf.unsw.edu.au/、Y.Nakamura, Yu. A. Pashkin and J.S.Tsai, Nature 398(1999)768)。   In addition, when it is necessary to preserve the quantum state of the qubit before and after the operation, for example, the amount of electrons in the quantum dot, the nuclear spin, or the charge (Cooper pair) in the superconductor is quantized. Quantum memories that store data using bits may be used (A. Barenco, D. Deutsch, and A. Ekert, Phys. Rev. Lett. 74, 4083 (1995), Hideaki Matsueda, Journal of the Institute of Electronics, Information and Communication Engineers) A Vol.J81-A No.12 (1998) 1978, THOosterkamp et.al., Nature 395,873 (1998), D. Loss and DP DiVincenzo, Phys. Rev. A57 (1998) 120. T. Oshima, quant- ph / 0002004, http://arxiv.org/abs/quant-ph/0002004, BEKane, A silicon-based nuclear spin quantum computer, Nature, 393, 133 (1998), http: //www.snf.unsw edu.au/, Y. Nakamura, Yu. A. Pashkin and JSTsai, Nature 398 (1999) 768).

<CNOT操作部11>
イオントラップ量子コンピュータでは、例えば、イオンを直線上に並べ、各イオンに狙いを定めたレーザービーム照射によってCNOTを実現する。また、量子ビットとして光子の偏光を用いる場合には、例えば、偏光ビームスプリッタ等を用い、「T.B. Pittman, M.J. Fitch, B.C. Jacobs, J.D. Franson: “Experimental Controlled-NOT Logic Gate for Single Photons in the Coincidence Basis,” quant-ph/0303095, http://arxiv.org/abs/quant-ph/0303095」記載のPittman et al. 方式によってCNOT演算を実現する。また、核スピンを量子ビットとして用いる場合には、例えば、所定の電磁波パルスを量子ビットに印加することによってCNOT操作部11を実現できる。
その他、上記の文献に記載された方法でCNOT操作部11を実現してもよい。
<CNOT operation unit 11>
In an ion trap quantum computer, for example, ions are arranged on a straight line, and CNOT is realized by laser beam irradiation aiming at each ion. In addition, when using photon polarization as a qubit, for example, a polarization beam splitter or the like is used, and TB Pittman, MJ Fitch, BC Jacobs, JD Franson: “Experimental Controlled-NOT Logic Gate for Single Photons in the Coincidence Basis , “Quant-ph / 0303095, http://arxiv.org/abs/quant-ph/0303095”, the CNOT operation is realized by the Pittman et al. Method. When nuclear spin is used as a qubit, for example, the CNOT operation unit 11 can be realized by applying a predetermined electromagnetic wave pulse to the qubit.
In addition, you may implement | achieve CNOT operation part 11 by the method described in said literature.

<SWAP操作部12,Toffoli操作部13,MAJ2操作部,UMA2操作部,NOT操作部16,SWAP2操作部17>
キュービットとして光子の偏光を用いる場合には、上述のCNOTの構成や偏光回転素子等を用い、各演算を実現できる。核スピンをキュービットやイオントラップとして用いる場合には、上述の電磁波パルスやレーザービーム照射によって各処理を実現できる。
<SWAP operation unit 12, Toffoli operation unit 13, MAJ2 operation unit, UMA2 operation unit, NOT operation unit 16, SWAP2 operation unit 17>
When the polarization of photons is used as a qubit, each calculation can be realized using the above-described CNOT configuration, polarization rotation element, or the like. When the nuclear spin is used as a qubit or ion trap, each process can be realized by the above-described electromagnetic wave pulse or laser beam irradiation.

<制御部9,記憶部10>
制御部9は、例えば公知のコンピュータに所定のプログラムを実行させて実現してもよいし、上述の量子コンピュータによって実現してもよい。また、記憶部10は、DRAM、SRAM、フラッシュメモリ、NV(Nonvolatile)RAM等の読書き可能な半導体メモリでもよいし、上述の量子メモリでもよい。
<Control unit 9, storage unit 10>
The control unit 9 may be realized, for example, by causing a known computer to execute a predetermined program, or may be realized by the quantum computer described above. The storage unit 10 may be a readable / writable semiconductor memory such as DRAM, SRAM, flash memory, NV (Nonvolatile) RAM, or the above-described quantum memory.

<量子ビット単体操作>
イオントラップ量子コンピュータでは、例えば、イオンを直線上に並べ、各イオンに狙いを定めたレーザービーム照射によって量子ビット単体の操作を実現する。核スピンを量子ビットとして用いる場合には、電磁波パルスやレーザービーム照射によって各処理を実現する。また、量子ビットとして光子の偏光を用いる場合には、例えば、偏光回転素子等によって実現する。
<Single qubit operation>
In the ion trap quantum computer, for example, ions are arranged on a straight line, and the operation of a single qubit is realized by laser beam irradiation aimed at each ion. When nuclear spins are used as qubits, each processing is realized by electromagnetic pulse or laser beam irradiation. Moreover, when using the polarization of a photon as a qubit, it implement | achieves by a polarization rotation element etc., for example.

[変形例等]
量子ビットQ,…,Q2n+1の全部又は一部が、|0>と|1>の重ね合わせになっていても良い。|0>と|1>の重ね合わせになっている量子ビットQ,…,Q2n+1に対してこの発明による量子回路及び量子演算方法を適用することにより、並列処理が可能となる。例えば、n桁の二進数a,bの各桁にそれぞれ対応する量子ビットQ,…,Q2nのそれぞれが|0>と|1>の重ね合わせになっている場合には、22n個ある、すべての二進数a,bの組み合わせについての和a+bを並列的に計算することができる。
[Modifications, etc.]
All or part of the qubits Q 1 ,..., Q 2n + 1 may be an overlap of | 0> and | 1>. By applying the quantum circuit and the quantum operation method according to the present invention to the qubits Q 1 ,..., Q 2n + 1 in which | 0> and | 1> are superposed, parallel processing becomes possible. For example, if each of the qubits Q 1 ,..., Q 2n corresponding to each digit of the n-digit binary numbers a and b is an overlap of | 0> and | 1>, 2 2n A sum a + b for all combinations of binary numbers a and b can be calculated in parallel.

MAJ2操作部14がMAJ2操作を量子ビットに対して行う代わりに、CNOT操作部11が図12で定義されるMAJ2操作と実質的に等しい操作を行ってもよい。同様に、UMA2操作部15がUMA2操作を量子ビットに対して行う代わりに、CNOT操作部11、SWAP操作部12及びToffoli操作部13が図13で定義されるUMA2操作と実質的に等しい操作を行ってもよい。   Instead of the MAJ2 operation unit 14 performing the MAJ2 operation on the qubit, the CNOT operation unit 11 may perform an operation substantially equivalent to the MAJ2 operation defined in FIG. Similarly, instead of the UMA2 operation unit 15 performing the UMA2 operation on the qubit, the CNOT operation unit 11, the SWAP operation unit 12, and the Toffoli operation unit 13 perform operations substantially equivalent to the UMA2 operation defined in FIG. You may go.

ここで、実質的に等しい操作とは、出力が同じ操作という意味である。UMA2を例に挙げて説明すると、UMA2操作部15が図13で定義されるUMA2を1回の量子操作で行う操作と、UMA2を構成する各操作を逐次行う操作(すなわち、1番目,2番目及び3番目の量子ビットにToffoli操作を行い、2番目と3番目の量子ビットにSWAP操作を行い、2番目と3番目の量子ビットにCNOT操作を行い、1番目と2番目の量子ビットにSWAP操作を行う操作)とは、出力が同じであるため実質的に等しい操作である。   Here, substantially the same operation means an operation with the same output. To describe UMA2 as an example, the UMA2 operation unit 15 performs an operation of performing UMA2 defined in FIG. 13 by one quantum operation, and an operation of sequentially performing each operation constituting UMA2 (that is, the first and second operations). And Toffoli operation on the third qubit, SWAP operation on the second and third qubits, CNOT operation on the second and third qubits, and SWAP on the first and second qubits The operation for performing the operation is an operation that is substantially equal because the outputs are the same.

また、図9に定義されたSWAPは、図21に示すように3つのCNOTで構成できることが知られている。換言すれば、図9に定義されたSWAP操作は、図21に示された3つのCNOT操作と実質的に等しい。したがって、図13で定義されるUMA2操作は、そのUMA2の内の2番目のSWAPを、3つのCNOTに置き換えた図23のUMA3操作と実質的に等しい。   Further, it is known that the SWAP defined in FIG. 9 can be composed of three CNOTs as shown in FIG. In other words, the SWAP operation defined in FIG. 9 is substantially equal to the three CNOT operations shown in FIG. Therefore, the UMA2 operation defined in FIG. 13 is substantially equivalent to the UMA3 operation of FIG. 23 in which the second SWAP in the UMA2 is replaced with three CNOTs.

また、図22に示すように、制御ビットと目標ビットを変えずにCNOTを2回行うと、もとの量子状態に戻ることが知られている。すなわち、制御ビットと目標ビットを変えずにCNOTを2回行う操作は、何も行わない操作と実質的に等しい。したがって、図23で定義されるUMA3操作は、そのUMA3の内の4番目のCNOTの操作と5番目のCNOTの操作を行わない図24で定義されるUMA4操作と実質的に等しい。UMA2操作と実質的に等しい操作は、ここで例示したUMA3操作、UMA4操作以外にも存在する。   Also, as shown in FIG. 22, it is known that when the CNOT is performed twice without changing the control bit and the target bit, the original quantum state is restored. That is, the operation of performing CNOT twice without changing the control bit and the target bit is substantially the same as the operation of performing nothing. Therefore, the UMA3 operation defined in FIG. 23 is substantially equal to the UMA4 operation defined in FIG. 24 in which the fourth CNOT operation and the fifth CNOT operation of the UMA3 are not performed. Operations substantially equivalent to the UMA2 operation exist in addition to the UMA3 operation and the UMA4 operation exemplified here.

UMA2操作と実質的に等しい操作が複数存在したように、この発明の量子回路、量子演算装置及び量子演算方法による操作にも実質的に等しい操作が存在する。上述のステップS1からステップS5の操作に代えて、この操作と実質的に等しい操作を行ってもよい。   Just as there are a plurality of operations that are substantially equal to the UMA2 operation, there are operations that are substantially equal to the operations by the quantum circuit, quantum operation device, and quantum operation method of the present invention. Instead of the operations in steps S1 to S5 described above, an operation substantially equivalent to this operation may be performed.

また、上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。   In addition, the various processes described above are not only executed in time series according to the description, but may be executed in parallel or individually according to the processing capability of the apparatus that executes the processes or as necessary.

その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。   Needless to say, other modifications are possible without departing from the spirit of the present invention.

n=5の場合の量子回路のステップS1を例示する図。The figure which illustrates step S1 of the quantum circuit in case of n = 5. n=5の場合の量子回路のステップS2を例示する図。The figure which illustrates step S2 of the quantum circuit in case of n = 5. n=5の場合の量子回路のステップS3を例示する図。The figure which illustrates step S3 of the quantum circuit in case of n = 5. n=5の場合の量子回路のステップS4を例示する図。The figure which illustrates step S4 of the quantum circuit in case of n = 5. n=5の場合の量子回路のステップS5を例示する図。The figure which illustrates step S5 of the quantum circuit in case of n = 5. CNOTを示す図。The figure which shows CNOT. Toffoliを示す図。The figure which shows Toffoli. NOTを示す図。The figure which shows NOT. SWAPを示す図。The figure which shows SWAP. MAJを示す図。The figure which shows MAJ. UMAを示す図。The figure which shows UMA. MAJ2を示す図。The figure which shows MAJ2. UMA2を示す図。The figure which shows UMA2. SWAP2を示す図。The figure which shows SWAP2. 従来技術による2つの二進数の和を演算するための量子回路。A quantum circuit for calculating the sum of two binary numbers according to the prior art. ステップS1及びステップS2の処理を表すフローチャート。The flowchart showing the process of step S1 and step S2. ステップS3の処理を表すフローチャート。The flowchart showing the process of step S3. ステップS4の処理を表すフローチャート。The flowchart showing the process of step S4. ステップS5の処理を表すフローチャート。The flowchart showing the process of step S5. 量子演算装置の機能ブロックを例示する図The figure which illustrates the functional block of a quantum arithmetic unit SWAP’を示す図。The figure which shows SWAP '. CNOTを2回適用する量子回路を示す図。The figure which shows the quantum circuit which applies CNOT twice. UMA3を示す図。The figure which shows UMA3. UMA4を示す図。The figure which shows UMA4.

符号の説明Explanation of symbols

1 量子演算装置
9 制御部
10 記憶部
11 CNOT操作部
12 SWAP操作部
13 Toffoli操作部
14 MAJ2操作部
15 UMA2操作部
16 NOT操作部
17 SWAP2操作部
DESCRIPTION OF SYMBOLS 1 Quantum arithmetic unit 9 Control part 10 Memory | storage part 11 CNOT operation part 12 SWAP operation part 13 Toffoli operation part 14 MAJ2 operation part 15 UMA2 operation part 16 NOT operation part 17 SWAP2 operation part

Claims (3)

2n+1個の量子ビットQ,…,Q2n+1に対して操作を行うことにより、2つの二進数a,bの和a+bを計算する量子回路であって、
上記二進数bの各桁は小さい方から量子ビットQ2i+1(i=0,…,n−1)の初期状態にそれぞれ対応し、上記二進数aの各桁は小さい方から量子ビットQ2i+2(i=0,…,n−1)の初期状態にそれぞれ対応し、和a+bの各桁は小さい方から量子ビットQ2i+1(i=0,…,n)の操作後の状態にそれぞれ対応し、
量子ビットQ2n−k+1を目標ビット、量子ビットQ2n−kを制御ビットとしてCNOTを適用し、量子ビットQ2n−k+1を制御ビット、量子ビットQ2n−kを目標ビットとしてCNOTを適用する操作をk=0からk=2n−3までkを1ずつ増加させて順次繰り返し、
量子ビットQ,Qを制御ビット、量子ビットQを目標ビットとしてToffoliを適用し、
量子ビットQ2k+3,Q2k+4,Q2k+5にMAJ2を適用し、量子ビットQ2k+2,Q2k+3にSWAPを適用し、量子ビットQ2k+3,Q2k+4にSWAPを適用し、量子ビットQ2k+2,Q2k+3を制御ビット、量子ビットQ2k+4を目標ビットとしてToffoliを適用する操作をk=0からk=n−3までkを1ずつ増加させて順次繰り返し、
量子ビットQ2n−1,Q2n,Q2n+1にMAJ2を適用し、
量子ビットQ2n−2,Q2n−1にSWAPを適用し、量子ビットQ2n−1を制御ビット、量子ビットQ2nを目標ビットとしてCNOTを適用し、量子ビットQ2n−2,Q2n−1にSWAPを適用し、
量子ビットQ2n−2k−4,Q2n−2k−3,Q2n−2k−2にUMA2を適用する操作をk=0からk=n−4までkを1ずつ増加させて順次繰り返し、
量子ビットQ,Qを制御ビット、量子ビットQを目標ビットとしてToffoliを適用し、
量子ビットQにNOTを適用し、量子ビットQ,QにSWAPを適用し、量子ビットQ,QにSWAPを適用し、量子ビットQ,QにSWAPを適用し、量子ビットQ,Qを制御ビット、量子ビットQを目標ビットとしてToffoliを適用し、
量子ビットQ2k+4,Q2k+5,Q2k+6,Q2k+7にSWAP2を適用し、量子ビットQ2k+6,Q2k+7を制御ビット、量子ビットQ2k+8目標ビットとしてToffoliを適用する操作をk=0からk=n−4までkを1ずつ増加させて順次繰り返し、
量子ビットQ2n−2k−4,Q2n−2k−3,Q2n−2k−2,Q2n−2k−1にSWAP2を適用する操作をk=0からk=n−3までkを1ずつ増加させて順次繰り返し、
量子ビットQにNOTを適用し、量子ビットQ,Qを制御ビット、量子ビットQを対象ビットとしてToffoliを適用し、量子ビットQ,QにSWAPを適用し、量子ビットQ,QにSWAPを適用し、
量子ビットQ2k+1を目標ビット、量子ビットQ2k+2を制御ビットとしてCNOTを適用する操作をk=0からk=n−1までkを1ずつ増加させて順次繰り返す、
操作と実質的に等しい操作を行う量子回路。
A quantum circuit that calculates the sum a + b of two binary numbers a and b by operating on 2n + 1 qubits Q 1 ,..., Q 2n + 1 ,
Each digit of the binary number b corresponds to the initial state of the qubit Q 2i + 1 (i = 0,..., N−1) from the smaller one, and each digit of the binary number a corresponds to the qubit Q 2i + 2 ( i = 0,..., n−1) respectively, and each digit of the sum a + b corresponds to the state after the operation of the quantum bit Q 2i + 1 (i = 0 ,.
Applying CNOT with qubit Q 2n-k + 1 as target bit, qubit Q 2n-k as control bit, and applying CNOT with qubit Q 2n-k + 1 as control bit and qubit Q 2n-k as target bit Are sequentially repeated by increasing k by 1 from k = 0 to k = 2n−3,
Apply Toffoli with qubits Q 1 and Q 2 as control bits and qubit Q 3 as a target bit,
Apply MAJ2 to qubits Q 2k + 3 , Q 2k + 4 , Q 2k + 5 , apply SWAP to qubits Q 2k + 2 , Q 2k + 3 , apply SWAP to qubits Q 2k + 3 , Q 2k + 4 , and apply qubits Q 2k + 2 , Q 2k + 3 The operation of applying Toffoli using the control bit and qubit Q 2k + 4 as the target bit is sequentially repeated by increasing k by 1 from k = 0 to k = n−3,
Apply MAJ2 to the qubits Q 2n−1 , Q 2n , Q 2n + 1 ,
Applying SWAP to the qubits Q 2n-2 and Q 2n−1 , applying CNOT with the qubit Q 2n−1 as the control bit and the qubit Q 2n as the target bit, the qubits Q 2n−2 and Q 2n− Apply SWAP to 1
The operation of applying UMA2 to qubits Q 2n-2k-4 , Q 2n-2k-3 , Q 2n-2k-2 is sequentially repeated by increasing k by 1 from k = 0 to k = n-4,
Apply Toffoli with qubits Q 2 and Q 3 as control bits and qubit Q 4 as target bits,
Apply the NOT to qubit Q 1, to apply the SWAP the qubit Q 2, Q 3, to apply the SWAP the qubit Q 4, Q 5, applying the SWAP the qubit Q 3, Q 4, quantum Apply Toffoli with bits Q 5 and Q 6 as control bits and qubit Q 7 as a target bit,
SW = 0 is applied to the qubits Q 2k + 4 , Q 2k + 5 , Q 2k + 6 , Q 2k + 7, and the operation of applying Toffoli with the qubits Q 2k + 6 , Q 2k + 7 as the control bits and the qubits Q 2k + 8 as the target bits is k = 0 to k = n -4 by increasing k by 1 up to -4
The operation of applying SWAP2 to the qubits Q 2n-2k-4 , Q 2n-2k-3 , Q 2n-2k-2 , Q 2n-2k-1 is performed by 1 from k = 0 to k = n-3. Increase and repeat sequentially,
Apply the NOT to qubit Q 2, control bits qubit Q 2, Q 3, applying the Toffoli targeting bits qubit Q 4, to apply the SWAP the qubit Q 1, Q 2, qubit Q apply the SWAP to 2, Q 3,
The operation of applying CNOT using the qubit Q 2k + 1 as the target bit and the qubit Q 2k + 2 as the control bit is sequentially repeated by increasing k by 1 from k = 0 to k = n−1.
A quantum circuit that performs operations that are substantially equivalent to operations.
2n+1個の量子ビットQ,…,Q2n+1に対して操作を行うことにより、2つの二進数a,bの和a+bを計算する量子演算装置であって、
上記二進数bの各桁は小さい方から量子ビットQ2i+1(i=0,…,n−1)の初期状態にそれぞれ対応し、上記二進数aの各桁は小さい方から量子ビットQ2i+2(i=0,…,n−1)の初期状態にそれぞれ対応し、和a+bの各桁は小さい方から量子ビットQ2i+1(i=0,…,n)の操作後の状態にそれぞれ対応し、
量子ビットQ2n−k+1を目標ビット、量子ビットQ2n−kを制御ビットとしてCNOTを適用し、量子ビットQ2n−k+1を制御ビット、量子ビットQ2n−kを目標ビットとしてCNOTを適用する操作をk=0からk=2n−3までkを1ずつ増加させて順次繰り返し、
量子ビットQ,Qを制御ビット、量子ビットQを目標ビットとしてToffoliを適用し、
量子ビットQ2k+3,Q2k+4,Q2k+5にMAJ2を適用し、量子ビットQ2k+2,Q2k+3にSWAPを適用し、量子ビットQ2k+3,Q2k+4にSWAPを適用し、量子ビットQ2k+2,Q2k+3を制御ビット、量子ビットQ2k+4を目標ビットとしてToffoliを適用する操作をk=0からk=n−3までkを1ずつ増加させて順次繰り返し、
量子ビットQ2n−1,Q2n,Q2n+1にMAJ2を適用し、
量子ビットQ2n−2,Q2n−1にSWAPを適用し、量子ビットQ2n−1を制御ビット、量子ビットQ2nを目標ビットとしてCNOTを適用し、量子ビットQ2n−2,Q2n−1にSWAPを適用し、
量子ビットQ2n−2k−4,Q2n−2k−3,Q2n−2k−2にUMA2を適用する操作をk=0からk=n−4までkを1ずつ増加させて順次繰り返し、
量子ビットQ,Qを制御ビット、量子ビットQを目標ビットとしてToffoliを適用し、
量子ビットQにNOTを適用し、量子ビットQ,QにSWAPを適用し、量子ビットQ,QにSWAPを適用し、量子ビットQ,QにSWAPを適用し、量子ビットQ,Qを制御ビット、量子ビットQを目標ビットとしてToffoliを適用し、
量子ビットQ2k+4,Q2k+5,Q2k+6,Q2k+7にSWAP2を適用し、量子ビットQ2k+6,Q2k+7を制御ビット、量子ビットQ2k+8目標ビットとしてToffoliを適用する操作をk=0からk=n−4までkを1ずつ増加させて順次繰り返し、
量子ビットQ2n−2k−4,Q2n−2k−3,Q2n−2k−2,Q2n−2k−1にSWAP2を適用する操作をk=0からk=n−3までkを1ずつ増加させて順次繰り返し、
量子ビットQにNOTを適用し、量子ビットQ,Qを制御ビット、量子ビットQを対象ビットとしてToffoliを適用し、量子ビットQ,QにSWAPを適用し、量子ビットQ,QにSWAPを適用し、
量子ビットQ2k+1を目標ビット、量子ビットQ2k+2を制御ビットとしてCNOTを適用する操作をk=0からk=n−1までkを1ずつ増加させて順次繰り返す、
操作と実質的に等しい操作を行う量子演算装置。
A quantum arithmetic device that calculates a sum a + b of two binary numbers a and b by operating on 2n + 1 qubits Q 1 ,..., Q 2n + 1 ,
Each digit of the binary number b corresponds to the initial state of the qubit Q 2i + 1 (i = 0,..., N−1) from the smaller one, and each digit of the binary number a corresponds to the qubit Q 2i + 2 ( i = 0,..., n−1) respectively, and each digit of the sum a + b corresponds to the state after the operation of the quantum bit Q 2i + 1 (i = 0 ,.
Applying CNOT with qubit Q 2n-k + 1 as target bit, qubit Q 2n-k as control bit, and applying CNOT with qubit Q 2n-k + 1 as control bit and qubit Q 2n-k as target bit Are sequentially repeated by increasing k by 1 from k = 0 to k = 2n−3,
Apply Toffoli with qubits Q 1 and Q 2 as control bits and qubit Q 3 as a target bit,
Apply MAJ2 to qubits Q 2k + 3 , Q 2k + 4 , Q 2k + 5 , apply SWAP to qubits Q 2k + 2 , Q 2k + 3 , apply SWAP to qubits Q 2k + 3 , Q 2k + 4 , and apply qubits Q 2k + 2 , Q 2k + 3 The operation of applying Toffoli using the control bit and qubit Q 2k + 4 as the target bit is sequentially repeated by increasing k by 1 from k = 0 to k = n−3,
Apply MAJ2 to the qubits Q 2n−1 , Q 2n , Q 2n + 1 ,
Applying SWAP to the qubits Q 2n-2 and Q 2n−1 , applying CNOT with the qubit Q 2n−1 as the control bit and the qubit Q 2n as the target bit, the qubits Q 2n−2 and Q 2n− Apply SWAP to 1
The operation of applying UMA2 to qubits Q 2n-2k-4 , Q 2n-2k-3 , Q 2n-2k-2 is sequentially repeated by increasing k by 1 from k = 0 to k = n-4,
Apply Toffoli with qubits Q 2 and Q 3 as control bits and qubit Q 4 as target bits,
Apply the NOT to qubit Q 1, to apply the SWAP the qubit Q 2, Q 3, to apply the SWAP the qubit Q 4, Q 5, applying the SWAP the qubit Q 3, Q 4, quantum Apply Toffoli with bits Q 5 and Q 6 as control bits and qubit Q 7 as a target bit,
SW = 0 is applied to the qubits Q 2k + 4 , Q 2k + 5 , Q 2k + 6 , Q 2k + 7, and the operation of applying Toffoli with the qubits Q 2k + 6 , Q 2k + 7 as the control bits and the qubits Q 2k + 8 as the target bits is k = 0 to k = n -4 by increasing k by 1 up to -4
The operation of applying SWAP2 to the qubits Q 2n-2k-4 , Q 2n-2k-3 , Q 2n-2k-2 , Q 2n-2k-1 is performed by 1 from k = 0 to k = n-3. Increase and repeat sequentially,
Apply the NOT to qubit Q 2, control bits qubit Q 2, Q 3, applying the Toffoli targeting bits qubit Q 4, to apply the SWAP the qubit Q 1, Q 2, qubit Q apply the SWAP to 2, Q 3,
The operation of applying CNOT using the qubit Q 2k + 1 as the target bit and the qubit Q 2k + 2 as the control bit is sequentially repeated by increasing k by 1 from k = 0 to k = n−1.
A quantum arithmetic device that performs an operation substantially equivalent to the operation.
2n+1個の量子ビットQ,…,Q2n+1に対して操作を行うことにより、2つの二進数a,bの和a+bを計算する量子演算方法であって、
上記二進数bの各桁は小さい方から量子ビットQ2i+1(i=0,…,n−1)の初期状態にそれぞれ対応し、上記二進数aの各桁は小さい方から量子ビットQ2i+2(i=0,…,n−1)の初期状態にそれぞれ対応し、和a+bの各桁は小さい方から量子ビットQ2i+1(i=0,…,n)の操作後の状態にそれぞれ対応し、
量子ビットQ2n−k+1を目標ビット、量子ビットQ2n−kを制御ビットとしてCNOTを適用し、量子ビットQ2n−k+1を制御ビット、量子ビットQ2n−kを目標ビットとしてCNOTを適用する操作をk=0からk=2n−3までkを1ずつ増加させて順次繰り返し、
量子ビットQ,Qを制御ビット、量子ビットQを目標ビットとしてToffoliを適用し、
量子ビットQ2k+3,Q2k+4,Q2k+5にMAJ2を適用し、量子ビットQ2k+2,Q2k+3にSWAPを適用し、量子ビットQ2k+3,Q2k+4にSWAPを適用し、量子ビットQ2k+2,Q2k+3を制御ビット、量子ビットQ2k+4を目標ビットとしてToffoliを適用する操作をk=0からk=n−3までkを1ずつ増加させて順次繰り返し、
量子ビットQ2n−1,Q2n,Q2n+1にMAJ2を適用し、
量子ビットQ2n−2,Q2n−1にSWAPを適用し、量子ビットQ2n−1を制御ビット、量子ビットQ2nを目標ビットとしてCNOTを適用し、量子ビットQ2n−2,Q2n−1にSWAPを適用し、
量子ビットQ2n−2k−4,Q2n−2k−3,Q2n−2k−2にUMA2を適用する操作をk=0からk=n−4までkを1ずつ増加させて順次繰り返し、
量子ビットQ,Qを制御ビット、量子ビットQを目標ビットとしてToffoliを適用し、
量子ビットQにNOTを適用し、量子ビットQ,QにSWAPを適用し、量子ビットQ,QにSWAPを適用し、量子ビットQ,QにSWAPを適用し、量子ビットQ,Qを制御ビット、量子ビットQを目標ビットとしてToffoliを適用し、
量子ビットQ2k+4,Q2k+5,Q2k+6,Q2k+7にSWAP2を適用し、量子ビットQ2k+6,Q2k+7を制御ビット、量子ビットQ2k+8目標ビットとしてToffoliを適用する操作をk=0からk=n−4までkを1ずつ増加させて順次繰り返し、
量子ビットQ2n−2k−4,Q2n−2k−3,Q2n−2k−2,Q2n−2k−1にSWAP2を適用する操作をk=0からk=n−3までkを1ずつ増加させて順次繰り返し、
量子ビットQにNOTを適用し、量子ビットQ,Qを制御ビット、量子ビットQを対象ビットとしてToffoliを適用し、量子ビットQ,QにSWAPを適用し、量子ビットQ,QにSWAPを適用し、
量子ビットQ2k+1を目標ビット、量子ビットQ2k+2を制御ビットとしてCNOTを適用する操作をk=0からk=n−1までkを1ずつ増加させて順次繰り返す、
操作と実質的に等しい操作を行う量子演算方法。
A quantum operation method for calculating a sum a + b of two binary numbers a and b by operating on 2n + 1 qubits Q 1 ,..., Q 2n + 1 ,
Each digit of the binary number b corresponds to the initial state of the qubit Q 2i + 1 (i = 0,..., N−1) from the smaller one, and each digit of the binary number a corresponds to the qubit Q 2i + 2 ( i = 0,..., n−1) respectively, and each digit of the sum a + b corresponds to the state after the operation of the quantum bit Q 2i + 1 (i = 0 ,.
Applying CNOT with qubit Q 2n-k + 1 as target bit, qubit Q 2n-k as control bit, and applying CNOT with qubit Q 2n-k + 1 as control bit and qubit Q 2n-k as target bit Are sequentially repeated by increasing k by 1 from k = 0 to k = 2n−3,
Apply Toffoli with qubits Q 1 and Q 2 as control bits and qubit Q 3 as a target bit,
Apply MAJ2 to qubits Q 2k + 3 , Q 2k + 4 , Q 2k + 5 , apply SWAP to qubits Q 2k + 2 , Q 2k + 3 , apply SWAP to qubits Q 2k + 3 , Q 2k + 4 , and apply qubits Q 2k + 2 , Q 2k + 3 The operation of applying Toffoli using the control bit and qubit Q 2k + 4 as the target bit is sequentially repeated by increasing k by 1 from k = 0 to k = n−3,
Apply MAJ2 to the qubits Q 2n−1 , Q 2n , Q 2n + 1 ,
Applying SWAP to the qubits Q 2n-2 and Q 2n−1 , applying CNOT with the qubit Q 2n−1 as the control bit and the qubit Q 2n as the target bit, the qubits Q 2n−2 and Q 2n− Apply SWAP to 1
The operation of applying UMA2 to qubits Q 2n-2k-4 , Q 2n-2k-3 , Q 2n-2k-2 is sequentially repeated by increasing k by 1 from k = 0 to k = n-4,
Apply Toffoli with qubits Q 2 and Q 3 as control bits and qubit Q 4 as target bits,
Apply the NOT to qubit Q 1, to apply the SWAP the qubit Q 2, Q 3, to apply the SWAP the qubit Q 4, Q 5, applying the SWAP the qubit Q 3, Q 4, quantum Apply Toffoli with bits Q 5 and Q 6 as control bits and qubit Q 7 as a target bit,
SW = 0 is applied to the qubits Q 2k + 4 , Q 2k + 5 , Q 2k + 6 , Q 2k + 7, and the operation of applying Toffoli with the qubits Q 2k + 6 , Q 2k + 7 as the control bits and the qubits Q 2k + 8 as the target bits is k = 0 to k = n -4 by increasing k by 1 up to -4
The operation of applying SWAP2 to the qubits Q 2n-2k-4 , Q 2n-2k-3 , Q 2n-2k-2 , Q 2n-2k-1 is performed by 1 from k = 0 to k = n-3. Increase and repeat sequentially,
Apply the NOT to qubit Q 2, control bits qubit Q 2, Q 3, applying the Toffoli targeting bits qubit Q 4, to apply the SWAP the qubit Q 1, Q 2, qubit Q apply the SWAP to 2, Q 3,
The operation of applying CNOT using the qubit Q 2k + 1 as the target bit and the qubit Q 2k + 2 as the control bit is sequentially repeated by increasing k by 1 from k = 0 to k = n−1.
A quantum computation method that performs an operation substantially equivalent to the operation.
JP2008119589A 2008-05-01 2008-05-01 Quantum circuit, quantum operation device, and quantum operation method Active JP5129646B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008119589A JP5129646B2 (en) 2008-05-01 2008-05-01 Quantum circuit, quantum operation device, and quantum operation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008119589A JP5129646B2 (en) 2008-05-01 2008-05-01 Quantum circuit, quantum operation device, and quantum operation method

Publications (2)

Publication Number Publication Date
JP2009271624A true JP2009271624A (en) 2009-11-19
JP5129646B2 JP5129646B2 (en) 2013-01-30

Family

ID=41438143

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008119589A Active JP5129646B2 (en) 2008-05-01 2008-05-01 Quantum circuit, quantum operation device, and quantum operation method

Country Status (1)

Country Link
JP (1) JP5129646B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010218513A (en) * 2009-03-19 2010-09-30 Nippon Telegr & Teleph Corp <Ntt> Quantum computing method, quantum computing apparatus and quantum circuit
JP2011150655A (en) * 2010-01-25 2011-08-04 Nippon Telegr & Teleph Corp <Ntt> Apparatus and method for generation graph state
JP2013524628A (en) * 2010-03-29 2013-06-17 ノースロップ グルムマン システムズ コーポレイション Quantum gate operation using a commonly coupled resonator
KR102108892B1 (en) * 2019-07-29 2020-05-11 경희대학교 산학협력단 Method of identifying bell type state

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010218513A (en) * 2009-03-19 2010-09-30 Nippon Telegr & Teleph Corp <Ntt> Quantum computing method, quantum computing apparatus and quantum circuit
JP2011150655A (en) * 2010-01-25 2011-08-04 Nippon Telegr & Teleph Corp <Ntt> Apparatus and method for generation graph state
JP2013524628A (en) * 2010-03-29 2013-06-17 ノースロップ グルムマン システムズ コーポレイション Quantum gate operation using a commonly coupled resonator
KR102108892B1 (en) * 2019-07-29 2020-05-11 경희대학교 산학협력단 Method of identifying bell type state

Also Published As

Publication number Publication date
JP5129646B2 (en) 2013-01-30

Similar Documents

Publication Publication Date Title
Figgatt et al. Parallel entangling operations on a universal ion-trap quantum computer
JP4847914B2 (en) Quantum addition operation method and quantum addition operation device
JP4700413B2 (en) Quantum operation apparatus and quantum operation method using quantum circuit
Li et al. Thermal states as universal resources for quantum computation with always-on interactions
Hirata An efficient conversion of quantum circuits to a linear nearest neighbor architecture
WO2007006144A1 (en) Systems, methods and apparatus for factoring numbers
Bhat et al. Quantum computing: fundamentals, implementations and applications
JP5129646B2 (en) Quantum circuit, quantum operation device, and quantum operation method
Lin et al. Optimized quantum gate library for various physical machine descriptions
CN113711244A (en) Quantum computer architecture based on multi-qubit gate
JP5227942B2 (en) Quantum error estimation device, quantum error estimation method, program thereof, quantum error correction device, quantum error correction method
JP5204698B2 (en) Quantum operation method, quantum operation device, quantum circuit
JP4332167B2 (en) Quantum circuit for performing approximate quantum Fourier transform, approximate quantum Fourier transform calculation method and apparatus
JP6182123B2 (en) Quantum calculation method
JP4366348B2 (en) Quantum calculation method and quantum calculation device
Tutul et al. Shallow Depth Factoring Based on Quantum Feasibility Labeling and Variational Quantum Search
JP5351862B2 (en) Quantum operation method and quantum operation device
Sparavigna Quantum computing logistics
JP4829623B2 (en) Quantum operation method and quantum operation device
Kundu et al. QCA based Majority Voter Design using IBMQ
Davies et al. An n-bit general implementation of Shor's quantum period-finding algorithm
IQM Quantum Engineers redaktion@ digitaleweltmagazin. de Closing the gaps in quantum computing: co-development and co-design
JP5496921B2 (en) Quantum operation method and quantum operation device
EP4375886A1 (en) Digital quantum simulations of fermion-boson systems in two-dimensional quantum computing systems
Wei et al. Effects of dynamical phases in Shor’s factoring algorithm with operational delays

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100726

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20110729

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120710

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120903

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20121023

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121102

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5129646

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151109

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350