JP6445487B2 - OR operation apparatus and OR operation method - Google Patents
OR operation apparatus and OR operation method Download PDFInfo
- Publication number
- JP6445487B2 JP6445487B2 JP2016109091A JP2016109091A JP6445487B2 JP 6445487 B2 JP6445487 B2 JP 6445487B2 JP 2016109091 A JP2016109091 A JP 2016109091A JP 2016109091 A JP2016109091 A JP 2016109091A JP 6445487 B2 JP6445487 B2 JP 6445487B2
- Authority
- JP
- Japan
- Prior art keywords
- bit
- quantum
- state
- auxiliary
- uninitialized
- 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.)
- Active
Links
Images
Landscapes
- Optical Modulation, Optical Deflection, Nonlinear Optics, Optical Demodulation, Optical Logic Elements (AREA)
Description
本発明は、量子計算技術に関し、特に論理和関数を計算する技術に関する。 The present invention relates to a quantum calculation technique, and more particularly to a technique for calculating a logical sum function.
入力桁数をnとするとき、初期化補助量子ビットを持たず、1個の未初期化補助量子ビットを持ち、O(n)個の計算ステップで論理和関数x1∨…∨xnを計算する量子回路の構成方法が知られている(例えば、非特許文献1等参照)。図17はn=7としたときの例であり、状態(量子状態)|x1〉,…,|xn〉の入力量子ビットおよび状態|y〉の出力量子ビットの他に、任意の状態|a1〉の未初期化補助量子ビットが用いられる。 When the number of input digits is n, there is no initialization auxiliary qubit, one uninitialized auxiliary qubit, and the OR function x 1 ∨... ∨x n is calculated in O (n) calculation steps. A method of configuring a quantum circuit to be calculated is known (see, for example, Non-Patent Document 1). FIG. 17 shows an example when n = 7, and in addition to the input qubits of states (quantum states) | x 1 >,..., | X n > and output qubits of state | y>, any state | A 1 > uninitialized auxiliary qubits are used.
計算ステップの個数が多いほど量子回路の計算時間が長くなる。また、計算ステップの個数が多いほど物理的実現性が低下する。従って、物理的実現性の高さと短い計算時間を同時に実現するためには、計算ステップの個数を小さくするほうがよい。従来方法ではO(n)個の計算ステップで論理和関数を行っており、物理的実現性と計算時間の長さに問題がある。 The larger the number of calculation steps, the longer the calculation time of the quantum circuit. In addition, the physical feasibility decreases as the number of calculation steps increases. Therefore, in order to simultaneously realize high physical feasibility and short calculation time, it is better to reduce the number of calculation steps. In the conventional method, a logical sum function is performed in O (n) calculation steps, and there is a problem in physical feasibility and the length of calculation time.
本発明の課題は、従来よりも少ない計算ステップで論理和関数を計算することである。 An object of the present invention is to calculate a logical sum function with fewer calculation steps than before.
x1,…,xnの論理和を計算するために、初期状態が|x1〉,…,|xn〉であるn個の入力量子ビットX1,…,Xn、初期状態が|y〉である1個の出力量子ビットY、初期化補助量子ビット、および未初期化補助量子ビットを用い、
で表される状態|φk〉を生成し、当該状態|φ1〉…|φm〉からφ1,…,φmの論理和を表す状態を生成する。ただし、nが2以上の整数であり、wが1≦w≦nを満たす整数であり、xw∈{0,1}であり、|x|=x1+…+xnであり、ceil(・)が(・)の天井関数であり、m=ceil(log2(n+1))であり、kが1≦k≦mを満たす整数である。
x 1, ..., in order to calculate the logical sum of x n, the initial state is | x 1>, ..., | x n>
Generates phi k>, the state | | state expressed in φ 1> ... | from φ m> φ 1, ..., and generates a status indicating a logical sum of phi m. However, n is an integer of 2 or more, w is an integer satisfying 1 ≦ w ≦ n, x w ε {0, 1}, | x | = x 1 +... + X n , ceil ( ·) Is the ceiling function of (·), m = ceil (log 2 (n + 1)), and k is an integer satisfying 1 ≦ k ≦ m.
初期化補助量子ビットおよび未初期化補助量子ビットを用い、x1,…,xnの論理和の計算をφ1,…,φmの論理和の計算に帰着させることで、従来よりも少ない計算ステップで論理和関数を計算できる。 With initialization auxiliary qubit and uninitialized auxiliary qubit, x 1, ..., calculate phi 1 of the logical sum of x n, ..., it is to result in the calculation of the logical sum of phi m, less than conventional The logical sum function can be calculated in the calculation step.
以下、本発明の実施形態を説明する。
[定義]
まず実施形態で使用する用語を定義する。
論理和関数とは、長さ1以上の全ての有限ビット列からなる集合を定義域とし、{0,1}を値域とする関数であり、入力ビット列xがn個のビットx1,…,xnからなる列のとき、
を出力する関数を意味する。ただし、nが1以上の整数であり、1≦w≦nを満たす整数wに対し、xwは0または1(xw∈{0,1})であり、|x|=x1+…+xnである。例えばnは2以上の整数であり、特に本形態ではnが3以上の整数のときに効果が高い。以下では、論理積関数も扱うが、この関数は入力ビット列xがn個のビットx1,…,xnからなる列のとき、
を出力する。
Embodiments of the present invention will be described below.
[Definition]
First, terms used in the embodiment are defined.
The logical sum function is a function having a set of all finite bit sequences of
Means a function that outputs However, n is an integer of 1 or more, and for an integer w satisfying 1 ≦ w ≦ n, x w is 0 or 1 (x w ε {0, 1}), and | x | = x 1 +. + Xn . For example, n is an integer of 2 or more, and in this embodiment, the effect is particularly high when n is an integer of 3 or more. In the following, a logical product function is also handled, but this function is used when the input bit string x is a string composed of n bits x 1 ,..., X n .
Is output.
は2を法とする加算(排他的論理和)を表し、記載表記の制約上、本形態ではこれを(+)と表記することもある。任意のα∈{0,1}に対し、α(+)1(αにNOT演算を適用した値)を
と記述する。このとき
という関係が成り立つことは容易に確認できる。
Represents an addition modulo 2 (exclusive OR), and in the present embodiment, this may be expressed as (+) due to the limitation of description. For any α∈ {0,1}, α (+) 1 (value obtained by applying NOT operation to α)
Is described. At this time
It can be easily confirmed that this relationship holds.
入力桁数をnとするとき、論理和関数を計算する量子回路とは,n個の入力量子ビットと1個の出力量子ビットを持ち、任意のx1,…,xn,y∈{0,1}に対し、入力量子ビットの初期状態を|x1〉…|xn〉、出力量子ビットの初期状態を|y〉とすると、その量子回路を構成する基本演算を全て適用することにより、入力量子ビットの状態は変化せず、出力量子ビットの状態がy(+)x1∨…∨xn(2を法とした、yにx1∨・・・∨xnを加算した値の剰余)となるような量子回路のことである。論理積関数を計算する量子回路も同様に定義される。すなわち、論理積関数を計算する量子回路とは,n個の入力量子ビットと1個の出力量子ビットを持ち、任意のx1,…,xn,y∈{0,1}に対し、入力量子ビットの初期状態を|x1〉…|xn〉、出力量子ビットの初期状態を|y〉とすると、その量子回路を構成する基本演算を全て適用することにより、入力量子ビットの状態は変化せず、出力量子ビットの状態が|y(+)x1∧…∧xn〉となるような量子回路のことである。なお、「状態」とは「量子状態」と同義であり、「初期状態」とは「初期量子状態」と同義である。 When the number of input digits is n, the quantum circuit for calculating the logical sum function has n input qubits and one output qubit, and any x 1 ,..., X n , y∈ {0 , 1}, if the initial state of the input qubit is | x 1 >... | X n > and the initial state of the output qubit is | y>, by applying all basic operations constituting the quantum circuit, , the state of the input qubit is not changed, the state of the output qubit has a y (+) x 1 ∨ ... ∨x n (2 modulo, obtained by adding x 1 ∨ ··· ∨x n to y value Of the quantum circuit. A quantum circuit that calculates a logical product function is similarly defined. That is, the quantum circuit for calculating a logical product function, having n input qubit and one output qubits, any x 1, ..., x n, with respect y∈ {0,1}, the input When the initial state of the qubit is | x 1 >... | X n > and the initial state of the output qubit is | y>, the state of the input qubit is obtained by applying all the basic operations that constitute the quantum circuit. It is a quantum circuit that does not change and the state of the output qubit is | y (+) x 1 ∧... ∧x n >. “State” is synonymous with “quantum state”, and “initial state” is synonymous with “initial quantum state”.
量子回路は入力量子ビットと出力量子ビット以外に、補助量子ビットを持つことができ、補助量子ビットは、初期化補助量子ビットと未初期化補助量子ビットに分類される。初期化補助量子ビットとは、初期状態が|0〉と定められたものであり、未初期化補助量子ビットとは、初期状態が|0〉と|1〉のどちらでも許されるものである。論理和関数を計算する量子回路が、u個の初期化補助量子ビットとq個の未初期化補助量子ビットを持つとき(ただし、uおよびqは正整数)、初期化量子ビット全体の初期状態は|0〉…|0〉であるが、未初期化補助量子ビット全体の初期状態は、任意のa1,…,aq∈{0,1}に対し、|a1〉…|aq〉であるとし、その量子回路を構成する全ての基本演算を適用した後で、これらの状態は変化しないものとする。すなわち、計算の途中で補助量子ビットはどのような状態になっても良いが、計算終了後には初期状態に戻らなければならないということを要請する。 The quantum circuit can have auxiliary qubits in addition to the input qubits and the output qubits, and the auxiliary qubits are classified into initialized auxiliary qubits and uninitialized auxiliary qubits. The initializing auxiliary qubit is defined as an initial state of | 0>, and the uninitialized auxiliary qubit is permitted when the initial state is either | 0> or | 1>. When the quantum circuit that calculates the logical sum function has u initialization auxiliary qubits and q uninitialized auxiliary qubits (where u and q are positive integers), the initial state of the entire initialization qubit Is | 0> ... | 0>, but the initial state of the entire uninitialized auxiliary qubit is | a 1 > ... | a q for any a 1 ,..., A q ε {0, 1}. It is assumed that these states do not change after all basic operations constituting the quantum circuit are applied. That is, the auxiliary qubit may be in any state during the calculation, but it is requested that the auxiliary qubit must return to the initial state after the calculation is completed.
量子回路において、1個の計算ステップとは、その量子回路の中で並列に実行可能な基本演算のグループのことである。ただし、異なる量子ビット上の基本演算(NOT演算およびアダマール演算などの1量子ビット演算、並びにCNOT演算などの2量子ビット演算)は並列に実行可能であるとする。従って、λ個の計算ステップで論理和関数を計算する量子回路において、その量子回路に含まれる基本演算はλ個のグループに分類され、各グループにおいて、その中の全ての演算は並列に実行可能である。 In a quantum circuit, one calculation step is a group of basic operations that can be executed in parallel in the quantum circuit. However, basic operations on different qubits (one qubit operation such as NOT operation and Hadamard operation and two qubit operation such as CNOT operation) can be executed in parallel. Therefore, in a quantum circuit that calculates a logical sum function in λ calculation steps, the basic operations included in the quantum circuit are classified into λ groups, and in each group, all the operations can be executed in parallel. It is.
図6Aに示すように、NOT演算Xは、任意の状態|χ〉にある1個の量子ビットに対する演算であり、この量子ビットの状態を|χ(+)1〉にする(ただし、χ∈{0,1},χ(+)1=χ+1 mod 2)。 As shown in FIG. 6A, the NOT operation X is an operation for one qubit in an arbitrary state | χ>, and the state of this qubit is set to | χ (+) 1> (where χ∈ {0, 1}, χ (+) 1 = χ + 1 mod 2).
図6Bに示すように、CNOT演算は、任意の状態|χ〉にある1個の制御ビットと任意の状態|γ〉にある1個の標的ビットとに対する演算である。CNOT演算後の当該制御ビットの状態は|χ〉であり、当該標的ビットの状態は|χ(+)γ〉である(ただし、χ,γ∈{0,1},χ(+)γ=χ+γ mod 2)。 As shown in FIG. 6B, the CNOT operation is an operation on one control bit in an arbitrary state | χ> and one target bit in an arbitrary state | γ>. The state of the control bit after the CNOT operation is | χ>, and the state of the target bit is | χ (+) γ> (where χ, γ∈ {0,1}, χ (+) γ = χ + γ mod 2).
図6Cに示すように、アダマール(Hadamard)演算(変換)は、任意の状態|χ〉にある1個の量子ビットに対する演算であり、この量子ビットの状態を
にする(ただし、χ∈{0,1})。
As shown in FIG. 6C, the Hadamard operation (transformation) is an operation on one qubit in an arbitrary state | χ>, and the state of this qubit is changed.
(Where χ∈ {0,1}).
図6Dに示すように、z-Toffoli演算は、任意の状態|χ1〉,…,|χz−1〉にあるz−1個の制御ビット(ただし、zは3以上の整数)、および任意の状態|γ〉にある1個の標的ビットに対する演算である。z-Toffoli演算後の当該z−1個の制御ビットの状態はそれぞれ|χ1〉,…,|χz−1〉であり、当該標的ビットの状態は|γ(+)χ1…χz−1〉である(ただし、χ1,…,χz−1,γ∈{0,1}である。χ1…χz−1はχ1,…,χz−1の積であり、χ1,…,χz−1の論理積を表す)。z-Toffoli演算は、入力桁数がz−1の論理積関数χ1∧…∧χz−1を計算する量子回路であることに注意する。z-Toffoli演算は3-Toffoli演算からなる量子回路によって計算できる。例えば、5-Toffoli演算は図7に例示する3-Toffoli演算からなる量子回路によって計算できる。任意の状態|χ1〉,…,|χ4〉にある4個の制御ビット、任意の状態|γ〉にある1個の標的ビット、および任意の状態|a1〉,|a2〉にある2個の未初期化補助量子ビットに対し、この量子回路を適用することで、5-Toffoli演算を行うことができる。この演算後の当該4個の制御ビットの状態はそれぞれ|χ1〉,…,|χ4〉であり、当該標的ビットの状態は|γ(+)χ1…χ4〉であり、当該2個の未初期化補助量子ビットの状態はそれぞれ|a1〉,|a2〉である。図8に例示するように、3-Toffoli演算は、CNOT演算、制御V演算および制御V演算の逆演算からなる量子回路によって計算できる。任意の状態|χ1〉,|χ2〉にある2個の制御ビット、任意の状態|γ〉にある1個の標的ビットに対し、この量子回路を適用することで、3-Toffoli演算を行うことができる。この演算後の当該2個の制御ビットの状態はそれぞれ|χ1〉,|χ2〉であり、当該標的ビットの状態は|γ(+)χ1χ2〉である。
As shown in FIG. 6D, the z-Toffoli operation is performed with z-1 control bits (where z is an integer of 3 or more) in an arbitrary state | χ 1 >,..., | Χ z-1 >, and This is an operation for one target bit in an arbitrary state | γ>. z-Toffoli operation after the z-1 pieces of control bits in the state each of | χ 1>, ..., | a χ z-1>, the state of the target bit | γ (+) χ 1 ... χ z -1 is a> (where, χ 1, ..., χ z -1, .
図9Aに示すように、制御V演算は、任意の状態|χ〉にある1個の制御ビットと任意の状態|γ〉にある1個の標的ビットとに対する演算である(ただし、χ,γ∈{0,1})。制御V演算後の当該制御ビットの状態は|χ〉であり、当該標的ビットの状態は以下である。ただし、iは虚数単位を表す。
図9Bに示すように、制御Vの逆演算は、任意の状態|χ〉にある1個の制御ビットと任意の状態|γ〉にある1個の標的ビットとに対する演算である(ただし、χ,γ∈{0,1})。制御V演算後の当該制御ビットの状態は|χ〉であり、当該標的ビットの状態は以下である。
図10に示すように、p-fanout演算は、任意の状態|γ〉にある1個の制御ビット、および任意の状態|χ1〉,…,|χp−1〉にあるp−1個(ただし、pは2以上の整数)の標的ビットに対する演算である。p-fanout演算後の当該制御ビットの状態は|γ〉であり、当該p−1個の標的ビットの状態はそれぞれ|χ1(+)γ〉,…,|χp−1(+)γ〉である(ただし、γ,χ1,…,χp−1∈{0,1})。 As shown in FIG. 10, the p-fanout operation includes one control bit in an arbitrary state | γ> and p−1 bits in any state | χ 1 >,..., | Χ p-1 >. (Where p is an integer equal to or greater than 2). The state of the control bit after the p-fanout operation is | γ>, and the states of the p−1 target bits are | χ 1 (+) γ>,..., | χ p-1 (+) γ, respectively. (Where γ, χ 1 ,..., Χ p−1 ε {0, 1}).
参考文献1(C. Moore, “Quantum circuits: fanout, parity, and counting,” arXiv:quant-ph/9903046, 1999.)で述べられている量子回路から、補助量子ビットを持たず、O(logp)個の計算ステップでp-fanout演算を実行する量子回路は容易に構成できる。一例として、p=2κ+1のとき(ただし、κは1以上の整数)のp-fanout演算を実行する量子回路を述べる(なお、κ=0のとき、p-fanout演算はCNOT演算であるから、1個のCNOT演算だけからなる量子回路で実行できる)。次のような量子ビットを用意する。
・1個の制御ビットΓ
・p−1個の標的ビットΧ1,…,Χp−1
Γの初期状態は|γ〉であり、Χ1,…,Χp−1の初期状態はそれぞれ、|χ1〉,…,|χp−1〉である。ただし、γ,χ1,…,χp−1∈{0,1}である。この初期状態|γ〉|χ1〉,…,|χp−1〉を|γ〉|χ1(+)γ〉,…,|χp−1(+)γ〉に変換するp-fanout演算を行う量子回路を示す。この量子回路はCNOT演算だけから構成される。この量子回路による処理は以下のようになる。
From the quantum circuit described in Reference 1 (C. Moore, “Quantum circuits: fanout, parity, and counting,” arXiv: quant-ph / 9903046, 1999.), it has no auxiliary qubit and O (logp ) A quantum circuit that performs p-fanout operations in a single calculation step can be easily configured. As an example, a quantum circuit that performs a p-fanout operation when p = 2 κ +1 (where κ is an integer equal to or greater than 1) will be described (note that when κ = 0, the p-fanout operation is a CNOT operation). From a quantum circuit consisting of only one CNOT operation). Prepare the following qubits.
・ One control bit Γ
P-1 target bits 1 1 , ..., Χ p-1
The initial state of Γ is | γ>, and the initial states of Χ 1 , ..., Χ p-1 are | χ 1 >, ..., | χ p-1 >, respectively. However, γ, χ 1 ,..., Χ p−1 ε {0, 1}. This initial state | γ> | χ 1 >,..., | Χ p-1 > is converted to | γ> | χ 1 (+) γ>,..., | Χ p-1 (+) γ>, p-fanout The quantum circuit which performs an operation is shown. This quantum circuit consists only of CNOT operations. Processing by this quantum circuit is as follows.
<ステップI>量子回路は、L=1,2,3,…,κについて1からκまで昇順に、次の処理を実行する。
を制御ビットとし、
を標的ビットとしたCNOT演算を適用する。ただし、jは0≦j≦2κ−L−1を満たす整数であり、これら2κ−L個のCNOT演算は並列に適用される。
<ステップII>次に量子回路はΓ制御ビットとし、Χ1を標的ビットとしたCNOT演算を適用する。
<ステップIII>次に量子回路はステップIの逆演算を適用する。すなわち量子回路は、L=κ,κ−1,κ−2,…,1についてκから1まで降順に、次の処理を実行する。
を制御ビットとし、
を標的ビットとしたCNOT演算を適用する。ただし、jは0≦j≦2κ−L−1を満たす整数であり、これら2κ−L個のCNOT演算は並列に適用される。
<Step I> The quantum circuit executes the following processing in ascending order from 1 to κ for L = 1, 2, 3,.
Is a control bit,
Apply CNOT operation using as the target bit. However, j is an integer satisfying 0 ≦ j ≦ 2 κ−L −1, and these 2 κ−L CNOT operations are applied in parallel.
<Step II> next quantum circuit is a Γ control bits, applies the CNOT operation that target bit chi 1.
<Step III> Next, the quantum circuit applies the inverse operation of Step I. That is, the quantum circuit executes the following processing in descending order from κ to 1 for L = κ, κ-1, κ-2,.
Is a control bit,
Apply CNOT operation using as the target bit. However, j is an integer satisfying 0 ≦ j ≦ 2 κ−L −1, and these 2 κ−L CNOT operations are applied in parallel.
κ=3の場合(9-fanout)の量子回路は図11のようになる。 The quantum circuit when κ = 3 (9-fanout) is as shown in FIG.
pがp=2κ+1で表すことができない場合、p-fanout演算を行う量子回路は次のように構成される。まず、p<p’=2κ+1となる最小のp’に対し、p=p’とした上述のステップI〜IIIを実行する量子回路を構成する。ただし、κは1以上の整数である。この量子回路は量子ビットΓ,Χ1,…,Χp’−1を持つ。次に、Χp,Χp+1,…,Χp’−1のいずれかの量子ビットに適用されている演算をすべて削除する。これが求める量子回路である。例えば,p=8の場合、p’=9(κ=3)となり、図11の回路において,Χ8に適用されている2つのCNOT演算(最初のステップと最後のステップに含まれる)を削除したものが、8-fanout演算を実行する量子回路である。 If p can not be represented by p = 2 kappa +1, quantum circuit that performs p-fanout operation is constructed as follows. First, a quantum circuit that executes the above-described steps I to III with p = p ′ for the minimum p ′ that satisfies p <p ′ = 2κ + 1 is configured. However, κ is an integer of 1 or more. This quantum circuit has qubits Γ, 1 1 ,..., P p′−1 . Next, all the operations applied to any quantum bit of Χp, Χp + 1,..., Pp′ −1 are deleted. This is the desired quantum circuit. For example, delete the case of p = 8, p '= 9 (κ = 3) becomes, in the circuit of FIG. 11, chi The assigned two CNOT operation on 8 (included in the first step and the last step) The result is a quantum circuit that performs an 8-fanout operation.
以上のように、任意のpに対し、p-fanout演算を実行する量子回路は補助量子ビットを持たない。p’に対応するκはκ≦ceil(log2 p)を満たすので、この量子回路の計算ステップの個数はO(log2 p)となる。 As described above, a quantum circuit that performs a p-fanout operation for an arbitrary p does not have auxiliary qubits. Since κ corresponding to p ′ satisfies κ ≦ ceil (log 2 p), the number of calculation steps of this quantum circuit is O (log 2 p).
また図12Aに示すように、(p,q)−位相シフト演算は、任意の状態|χ1〉,…,|χp−1〉にあるp−1個の制御ビット、および任意の状態|χp〉にある1個の標的ビットに対するp量子ビット演算である(ただし、χ1,…,χp−1,χp∈{0,1}、pは2以上の整数であり、qは1以上の整数である)。(p,q)−位相シフト演算後の当該p−1個の制御ビットおよび1個の標的ビットの状態は
である。
Also, as shown in FIG. 12A, the (p, q) -phase shift operation is performed with p−1 control bits in an arbitrary state | χ 1 >,..., | Χ p−1 >, and an arbitrary state | a p qubit operations on one target bit in the chi p> (However, χ 1, ..., χ p -1, χ p ∈ {0,1}, p is an integer of 2 or more, q is It is an integer of 1 or more). (p, q) -The state of the p-1 control bits and one target bit after the phase shift operation is
It is.
非特許文献1で述べられている量子回路から、補助量子ビットを持たず、O(p)個の計算ステップで(p,q)−位相シフト演算を実行する量子回路は、1個の(2,q)−位相シフト演算、2個の(2,q+1)−位相シフト演算の逆演算、および2個の(p-1)-Toffoli演算から構成できることが分かる。例えば、p=9のときの(p,9)−位相シフト演算を実行する量子回路は図13のようになる。この8-Toffoli演算は、図17の量子回路の最初と最後の演算ステップのNOT演算をすべて取り除き、入力量子ビットの状態|x1〉,…,|x7〉を|χ1〉,…,|χ7〉に置換し、出力量子ビットの状態|y〉を|χ9〉に置換し、未初期化補助量子ビットの状態|a1〉を|χ8〉に置換した量子回路によって計算できる。
From the quantum circuit described in
図12Bに示すように、(p,q)−位相シフトの逆演算は、任意の状態|χ1〉,…,|χp−1〉にあるp−1個の制御ビット、および任意の状態|χp〉にある1個の標的ビットに対するp量子ビット演算である(ただし、χ1,…,χp−1,χp∈{0,1}、pは2以上の整数であり、qは1以上の整数である)。(p,q)−位相シフトの逆演算後の当該p−1個の制御ビットおよび1個の標的ビットの状態は
である。
As shown in FIG. 12B, the inverse operation of (p, q) -phase shift is performed by p-1 control bits in an arbitrary state | χ 1 >,..., | Χ p-1 > and an arbitrary state. P qubit operation for one target bit in | χ p > (where χ 1 ,..., Χ p−1 , χ p ε {0, 1}, p is an integer of 2 or more, q Is an integer of 1 or more). The state of the p-1 control bits and one target bit after the inverse operation of (p, q) -phase shift is
It is.
[実施形態]
次に、図面を参照して実施形態の概要を説明する。
<構成>
図1および図2に例示するように、本形態の論理和演算装置1は、演算部1101〜1110を含む量子演算部11、演算部1211〜1214を含む量子演算部12、n個の入力量子ビットX1,…,Xn、1個の出力量子ビットY、m個の初期化補助量子ビットI(1),…,I(m)、nm(m+3)/2個の未初期化補助量子ビットを有する。nは2以上の整数であるが、nが3以上の整数のときに計算ステップの削減効果が顕著である。m=ceil(log2(n+1))であり、ceil(・)は(・)の天井関数を表す。未初期化補助量子ビットからなる集合は、部分集合A(1),…,A(m),B(1),…,B(m)からなる。部分集合A(k)はn個の未初期化補助量子ビットA1(k),…,An(k)からなる(図2A)。ただし、kは1≦k≦mを満たす整数(k=1,…,m)である。部分集合B(k)はk個の部分集合B(k,1),…,B(k,k)からなり、部分集合B(k,r)はn個の未初期化補助量子ビットB1(k,r),…,Bn(k,r)からなる(図2B)。ただし、rは1≦r≦kを満たす整数(r=1,…,k)である。すなわち部分集合B(k)は、kn個の未初期化補助量子ビットB1(k,r),…,Bn(k,r)(ただし、1≦k≦m,1≦r≦k)からなる。
[Embodiment]
Next, the outline of the embodiment will be described with reference to the drawings.
<Configuration>
As illustrated in FIG. 1 and FIG. 2, the logical
論理和演算装置1は周知の量子コンピュータを用いて実現できる。例えば、イオントラップ量子コンピュータを用いる場合、イオンの基底状態と励起状態を利用して量子ビットを実現し、イオンを直線上に並べて各演算を行う。アダマール演算を含む1量子ビットユニタリ演算は個々のイオンに狙いを定めたレーザービームによって実現され、2量子ビット演算であるCNOT演算も同様に実現される。一般の2量子ビット演算は、1量子ビット演算とCNOT演算を組み合わせて実現される。
The OR
<処理>
n個のビットx1,…,xnからなる入力ビット列xに前述の論理和関数(式(1))を適用し、論理和x1∨…∨xnを得る処理の概要を説明する。ただし、xw∈{0,1}であり、wは1≦w≦nを満たす整数である。
<Processing>
An outline of processing for obtaining the logical sum x 1 ∨... ∨x n by applying the above-described logical sum function (formula (1)) to the input bit string x composed of n bits x 1 ,. However, x w ε {0, 1}, and w is an integer that satisfies 1 ≦ w ≦ n.
図14Aに例示するように、まず量子演算部11(第1量子演算部)が、初期状態が|x1〉,…,|xn〉であるn個の入力量子ビットX1,…,Xn、初期状態が|y〉である1個の出力量子ビットY、初期化補助量子ビット、および未初期化補助量子ビットを用い、k=1,…,mについて
で表される状態|φk〉を生成する。ただし、|x|=x1+…+xnである(ステップS1)。
As illustrated in FIG. 14A, first, the quantum operation unit 11 (first quantum operation unit) has n input qubits X 1 ,..., X whose initial states are | x 1 >, ..., | x n >. n , one output qubit Y whose initial state is | y>, an initialization auxiliary qubit, and an uninitialized auxiliary qubit, and k = 1,..., m
A state | φ k > represented by However, | x | = x 1 +... + X n (step S1).
次に、量子演算部12(第2量子演算部)が、状態|φ1〉…|φm〉からφ1,…,φmの論理和を表す状態を生成する。言い換えると、状態|φ1〉…|φm〉に対する量子演算を行ってφ1,…,φmの論理和を表す状態を生成する(ステップS2)。 Next, quantum computing unit 12 (second quantum computation part), the state | φ 1> ... | from φ m> φ 1, ..., to produce a state representing a logical sum of phi m. In other words, a quantum operation is performed on the state | φ 1 >... | Φ m > to generate a state representing the logical sum of φ 1 ,..., Φ m (step S2).
ここで、ステップS1で得られる状態|φ1〉…|φm〉に対応するφ1,…,φmの論理和φ1∨…∨φmを表す状態は、x1,…,xnの論理和x1∨…∨xnを表す状態と等しくなる。例えばn=3のときにはm=2となり、ステップS1では次のような2つの1量子ビット状態が生成される。
これらが次の性質を持つことは容易に確かめられる(例えば、参考文献2:P. Hoyer and R. Spalek, “Quantum fan-out is powerful,” Theory of Computing, Vol. 1, pp. 81-103, 2005.)。
・x1∨x2∨x3=1(x1,x2,x3の中の少なくとも1つは1)の場合、上の2つの状態(式(2)(3))の中の少なくとも1つは|1〉。
・x1∨x2∨x3=0(x1,x2,x3の全てが0)の場合、上の2つの状態(式(2)(3))は全て|0〉。
従って、x1∨x2∨x3の計算は、状態|φ1〉,|φ2〉の論理和、すなわち論理和φ1∨φ2を表す状態を得る計算に帰着される。そのため、ステップS2で状態|φ1〉…|φm〉からφ1,…,φmの論理和を表す状態を生成することで、x1∨x2∨x3の演算結果を得ることができる。
It can be easily confirmed that these have the following properties (for example, Reference 2: P. Hoyer and R. Spalek, “Quantum fan-out is powerful,” Theory of Computing, Vol. 1, pp. 81-103. , 2005.).
When x 1 ∨x 2 ∨x 3 = 1 (at least one of x 1 , x 2 , x 3 is 1), at least in the above two states (formula (2) (3)) One is | 1>.
When x 1 ∨x 2 ∨x 3 = 0 (all of x 1 , x 2 , and x 3 are 0), the above two states (formulas (2) and (3)) are all | 0>.
Therefore, the calculation of x 1 ∨x 2 ∨x 3 is reduced to a calculation for obtaining a logical sum of the states | φ 1 > and | φ 2 >, that is, a state representing the logical sum φ 1 ∨φ 2 . Therefore, the state in step S2 | φ 1> ... | from φ m> φ 1, ..., to produce a state representing a logical sum of phi m, to obtain the operation result of x 1 ∨x 2 ∨x 3 it can.
本形態では、初期化補助量子ビットおよび未初期化補助量子ビットを用い、x1,…,xnの論理和の計算をφ1,…,φmの論理和の計算に帰着させることで、従来よりも少ない計算ステップで論理和関数を計算できる。 In this embodiment, using the initialization auxiliary qubit and uninitialized auxiliary qubit, x 1, ..., calculate phi 1 of the logical sum of x n, ..., it is to result in the calculation of the logical sum of phi m, The logical sum function can be calculated with fewer calculation steps than before.
<ステップS1の詳細>
ステップ1の詳細を説明する。
次の量子ビットを用いる(図1,図2Aおよび図2B)。
・n個の入力量子ビットX1,…,Xn
・1個の出力量子ビットY
・m個の初期化補助量子ビットI(1),…,I(m)
・nm(m+3)/2個の未初期化補助量子ビット(未初期化補助量子ビットの構成は前述の通り)
<Details of Step S1>
Details of
The next qubit is used (FIGS. 1, 2A and 2B).
N input qubits X 1 ,..., X n
・ One output qubit Y
-M initialization auxiliary qubits I (1), ..., I (m)
・ Nm (m + 3) / 2 uninitialized auxiliary qubits (the structure of the uninitialized auxiliary qubits is as described above)
初期状態は次の通りである。
X1,…,Xnの初期状態はそれぞれ|x1〉,…,|xn〉
Yの初期状態は|y〉
I(1),…,I(m)の初期状態はそれぞれ|0〉,…,|0〉
任意の1≦k≦mに対し、A1(k),…,An(k)の初期状態はそれぞれ|a1(k)〉,…,|an(k)〉
任意の1≦k≦mおよび1≦r≦kに対し、B1(k,r),…,Bn(k,r)の初期状態はそれぞれ|b1(k,r)〉,…,|bn(k,r)〉
The initial state is as follows.
The initial states of X 1 ,..., X n are | x 1 >, ..., | x n >, respectively.
The initial state of Y is | y>
The initial states of I (1),..., I (m) are | 0>,.
For any 1 ≦ k ≦ m, A 1 (k), ..., the initial state of A n (k), respectively | a 1 (k)>, ..., | a n (k)>
For any 1 ≦ k ≦ m and 1 ≦ r ≦ k, the initial states of B 1 (k, r),..., B n (k, r) are | b 1 (k, r)>,. | B n (k, r)>
回路構成の記述を容易にするため、全量子ビットの状態を図示する場合、X1,…,Xnの状態を先頭に記述し、その後は、k=1からmまで順に、各kについてA1(k),…,An(k)の状態,I(k)の状態,B(k,1),…,B(k,k)の状態という順序で記述し、最後にYの状態を記述する。また、任意の1≦r≦kに対するB(k,r)の状態は、B1(k,r)の状態,…,Bn(k,r)の状態の順に記述する。ステップS1では、I(k)(ただし、1≦k≦m)の状態が|φk〉となり、他の量子ビットの状態は変化しない。例えば、n=3の場合、m=2であり、3個の入力量子ビットX1,X2,X3,1個の出力量子ビットY,2個の初期化補助量子ビットI(1),I(2),15個の未初期化補助量子ビットA1(1),A2(1),A3(1),A1(2),A2(2),A3(2),B1(1,1),B2(1,1),B3(1,1),B1(2,1),B2(2,1),B3(2,1),B1(2,2),B2(2,2),B3(2,2)の状態を上で述べた順序で記述すると、次のようになる。
|x1〉|x2〉|x3〉|a1(1)〉|a2(1)〉|a3(1)〉|0〉|b1(1,1)〉|b2(1,1)〉|b3(1,1)〉|a1(2)〉|a2(2)〉|a3(2)〉|0〉|b1(2,1)〉|b2(2,1)〉|b3(2,1)〉|b1(2,2)〉|b2(2,2)〉|b3(2,2)〉|y〉
In order to facilitate the description of the circuit configuration, when the states of all qubits are illustrated, the states of X 1 ,..., X n are described first, and thereafter, for each k in order from k = 1 to m, A 1 (k),..., An (k) state, I (k) state, B (k, 1),..., B (k, k) state. Is described. The state of B (k, r) for any 1 ≦ r ≦ k is described in the order of the state of B 1 (k, r),..., B n (k, r). In step S1, the state of I (k) (where 1 ≦ k ≦ m) becomes | φ k >, and the states of other qubits do not change. For example, when n = 3, m = 2, three input qubits X 1 , X 2 , X 3 , one output qubit Y, two initialization auxiliary qubits I (1), I (2), 15 uninitialized auxiliary qubits A 1 (1), A 2 (1), A 3 (1), A 1 (2), A 2 (2), A 3 (2), B 1 (1,1), B 2 (1,1), B 3 (1,1), B 1 (2,1), B 2 (2,1), B 3 (2,1), B 1 The states of (2, 2), B 2 (2, 2), and B 3 (2, 2) are described in the order described above.
| X 1 > | x 2 > | x 3 > | a 1 (1)> | a 2 (1)> | a 3 (1)> | 0> | b 1 (1,1)> | b 2 (1 , 1)> | b 3 (1,1)> | a 1 (2)> | a 2 (2)> | a 3 (2)> | 0> | b 1 (2,1)> | b 2 ( 2, 1)> | b 3 (2,1)> | b 1 (2,2)> | b 2 (2,2)> | b 3 (2,2)> | y>
ステップS1の処理により、この状態が次の状態になる。
|x1〉|x2〉|x3〉|a1(1)〉|a2(1)〉|a3(1)〉|φ1〉|b1(1,1)〉|b2(1,1)〉|b3(1,1)〉|a1(2)〉|a2(2)〉|a3(2)〉|φ2〉|b1(2,1)〉|b2(2,1)〉|b3(2,1)〉|b1(2,2)〉|b2(2,2)〉|b3(2,2)〉|y〉
This state becomes the next state by the process of step S1.
| X 1 > | x 2 > | x 3 > | a 1 (1)> | a 2 (1)> | a 3 (1)> | φ 1 > | b 1 (1,1)> | b 2 ( 1, 1)> | b 3 (1,1)> | a 1 (2)> | a 2 (2)> | a 3 (2)> | φ 2 > | b 1 (2,1)> | b 2 (2,1)> | b 3 (2,1)> | b 1 (2,2)> | b 2 (2,2)> | b 3 (2,2)> | y>
図14に例示するように、ステップS1はm個のステージS(1),…,S(m)(ステップS11−1〜S11−m)を、S(1),…,S(m)の順に実行する。すなわち、s’を2≦s’≦mを満たす整数とすると、ステージS(s’)はステージS(s’−1)の後に実行される。 As illustrated in FIG. 14, step S1 includes m stages S (1),..., S (m) (steps S11-1 to S11-m), and S (1),. Run in order. That is, if s ′ is an integer satisfying 2 ≦ s ′ ≦ m, the stage S (s ′) is executed after the stage S (s′−1).
≪ステージS(s)の詳細≫
図3,図4,図15を用いてステージS(s)の詳細を説明する。ただし、sは1≦s≦mを満たす整数である。ただし、図3はn=3,m=2,s=1の例であり、図4はn=3,m=2,s=2の例である。
≪Details of Stage S (s) ≫
Details of the stage S (s) will be described with reference to FIGS. However, s is an integer satisfying 1 ≦ s ≦ m. However, FIG. 3 is an example of n = 3, m = 2, and s = 1, and FIG. 4 is an example of n = 3, m = 2, and s = 2.
まず演算部1101(第1演算部)が、s≦k(s)≦mについて、I(k(s))にアダマール演算を適用する(ステップS111−s)。 First, the calculation unit 1101 (first calculation unit) applies Hadamard calculation to I (k (s)) for s ≦ k (s) ≦ m (step S111-s).
次に演算部1102(第2演算部)が、s≦k(s)≦mについて、I(k(s))を制御ビットとし、B1(k(s),s),…,Bn(k(s),s)を標的ビットとした(n+1)-fanout演算を並列に適用する(ステップS112−s)。 Then calculating unit 1102 (second calculation unit) is, for s ≦ k (s) ≦ m , and control bits I (k (s)), B 1 (k (s), s), ..., B n The (n + 1) -fanout operation with (k (s), s) as the target bit is applied in parallel (step S112-s).
s≧2のときには、次に演算部1103(第3演算部)が、s≦k(s)≦mと1≦j≦nについて、Aj(k(s))を制御ビットとし、Bj(k(s),1),…,Bj(k(s),s−1)を標的ビットとしたs-fanout演算を並列に適用する。s=1のときには、演算部1103は何の演算も適用しない(ステップS113−s)。
When s ≧ 2, the arithmetic unit 1103 (third arithmetic unit) then sets A j (k (s)) as a control bit for s ≦ k (s) ≦ m and 1 ≦ j ≦ n, and B j S-fanout operation with (k (s), 1),..., B j (k (s), s−1) as target bits is applied in parallel. When s = 1, the
s=1のときには、次に演算部1104(第4演算部)が、s≦k(s)≦mと1≦j≦nについて、Aj(k(s))を制御ビットとし、Bj(k(s),s)を標的ビットとした(s+1,k(s)-s+1)-位相シフト演算の逆演算を並列に適用する。s≧2のときには、演算部1104は、s≦k(s)≦mと1≦j≦nについて、Aj(k(s))およびBj(k(s),1),…,Bj(k(s),s−1)を制御ビットとし、Bj(k(s),s)を標的ビットとした(s+1,k(s)-s+1)-位相シフト演算の逆演算を並列に適用する(ステップS114−s)。
When s = 1, the operation unit 1104 (fourth operation unit) then sets A j (k (s)) as a control bit for s ≦ k (s) ≦ m and 1 ≦ j ≦ n, and B j An inverse operation of (s + 1, k (s) -s + 1) -phase shift operation with (k (s), s) as a target bit is applied in parallel. When s ≧ 2, the
次に演算部1105(第5演算部)が、1≦j≦nについて、Xjを制御ビットとし、Aj(s),Aj(s+1),…,Aj(m)を標的ビットとした(m-s+2)-fanout演算を並列に適用する(ステップS115−s)。 Next, for 1 ≦ j ≦ n, the operation unit 1105 (fifth operation unit) uses X j as a control bit, and A j (s), A j (s + 1),..., A j (m) as target bits. The (m-s + 2) -fanout operation is applied in parallel (step S115-s).
s=1のときには、次に演算部1106(第6演算部)が、s≦k(s)≦mと1≦j≦nについて、Aj(k(s))を制御ビットとし、Bj(k(s),s)を標的ビットとした(s+1,k(s)-s+1)-位相シフト演算を並列に適用する。s≧2のときには、演算部1106は、s≦k(s)≦mと1≦j≦nについて、Aj(k(s))およびBj(k(s),1),…,Bj(k(s),s−1)を制御ビットとし、Bj(k(s),s)を標的ビットとした(s+1,k(s)-s+1)-位相シフト演算を並列に適用する(ステップS116−s)。
When s = 1, the operation unit 1106 (sixth operation unit) then sets A j (k (s)) as a control bit for s ≦ k (s) ≦ m and 1 ≦ j ≦ n, and B j The (s + 1, k (s) -s + 1) -phase shift operation with (k (s), s) as the target bits is applied in parallel. When s ≧ 2, the
次に演算部1107(第7演算部)が、1≦j≦nについて、Xjを制御ビットとし、Aj(s),Aj(s+1),…,Aj(m)を標的ビットとした(m-s+2)-fanout演算を行う(ステップS117−s:ステップS115−sと同じ)。 Next, for 1 ≦ j ≦ n, the operation unit 1107 (seventh operation unit) uses X j as a control bit, and A j (s), A j (s + 1),..., A j (m) as target bits. The (m-s + 2) -fanout calculation is performed (step S117-s: same as step S115-s).
s≧2のときには、次に演算部1108(第8演算部)が、s≦k(s)≦mと1≦j≦nについて、Aj(k(s))を制御ビットとし、Bj(k(s),1),…,Bj(k(s),s−1)を標的ビットとしたs-fanout演算を並列に適用する。s=1のときには、演算部1108は何の演算も適用しない(ステップS118−s:ステップS113−sと同じ)。
When s ≧ 2, the operation unit 1108 (eighth operation unit) then sets A j (k (s)) as a control bit for s ≦ k (s) ≦ m and 1 ≦ j ≦ n, and B j S-fanout operation with (k (s), 1),..., B j (k (s), s−1) as target bits is applied in parallel. When s = 1, the
次に演算部1109(第9演算部)が、s≦k(s)≦mについて、I(k(s))を制御ビットとし、B1(k(s),s),…,Bn(k(s),s)を標的ビットとした(n+1)-fanout演算を並列に適用する(ステップS119−s:ステップS112−sと同じ)。 Then calculating unit 1109 (ninth arithmetic unit) is, for s ≦ k (s) ≦ m , and control bits I (k (s)), B 1 (k (s), s), ..., B n The (n + 1) -fanout operation with (k (s), s) as the target bit is applied in parallel (step S119-s: same as step S112-s).
次に演算部1101(第1演算部)が、s≦k(s)≦mについて、I(k(s))にアダマール演算を適用する(ステップS120−s:ステップS111−sと同じ)。 Next, the calculation unit 1101 (first calculation unit) applies Hadamard calculation to I (k (s)) for s ≦ k (s) ≦ m (step S120-s: same as step S111-s).
以上により、m個の初期化補助量子ビットI(1),…,I(m)の状態がそれぞれ|φ1〉,…,|φm〉となる(この理由については後述する)。 As described above, the states of the m initialization auxiliary qubits I (1),..., I (m) become | φ 1 >, ..., | φ m > (the reason will be described later).
<ステップS2の詳細>
図5,図16を用いてステップ2の詳細を説明する。ただし、図5はn=3,m=2の例である。
<Details of Step S2>
Details of
上述したステップS1の後、まず、演算部1211(第11演算部)は、1≦k≦mについて、I(k)にNOT演算Xを並列に適用する(ステップS21)。 After step S1 described above, first, the calculation unit 1211 (the eleventh calculation unit) applies the NOT calculation X to I (k) in parallel for 1 ≦ k ≦ m (step S21).
次に、演算部1212(第12演算部)は、I(1),…,I(m)を制御ビットとし、Yを標的ビットとした(m+1)-Toffoli演算を並列に適用する。(m+1)-Toffoli演算は、論理和関数x1∨…∨xn(ただし、n=m)を計算する量子回路から最初と最後の計算ステップのNOT演算を取り除いた量子回路によって計算できる(例えば、非特許文献1参照)。なお、このような量子回路は1個の未初期化補助量子ビットを使うが、(m+1)-Toffoli演算の制御ビットおよび標的ビット以外の任意の量子ビット(例えば、入力量子ビットX1)をこの未初期化補助量子ビットに対応させればよい(ステップS22)。 Next, the arithmetic unit 1212 (the twelfth arithmetic unit) applies (m + 1) -Toffoli arithmetic in parallel with I (1),..., I (m) as control bits and Y as a target bit. The (m + 1) -Toffoli operation can be calculated by a quantum circuit obtained by removing the NOT operation of the first and last calculation steps from the quantum circuit that calculates the logical sum function x 1 ∨... ∨x n (where n = m). (For example, refer nonpatent literature 1). Such a quantum circuit uses one uninitialized auxiliary qubit, but any qubit other than the control bit and target bit of the (m + 1) -Toffoli operation (for example, input qubit X 1 ) Should correspond to this uninitialized auxiliary qubit (step S22).
次に、演算部1213(第13演算部)は、YにNOT演算Xを適用し、これと並列にステップS21と同じ演算、すなわち1≦k≦mについてI(k)へのNOT演算Xを適用する(ステップS23)。 Next, the calculation unit 1213 (the thirteenth calculation unit) applies the NOT calculation X to Y, and in parallel with this, performs the same calculation as step S21, that is, the NOT calculation X to I (k) for 1 ≦ k ≦ m. Apply (step S23).
次に、演算部1214(第14演算部)は、ステージS(1),…,S(m)の逆演算RS(m),…,RS(1)を適用する。ただし、逆演算RS(s)はステージS(s)の逆演算であり、2≦s’≦mを満たす整数s’について逆演算RS(s’−1)は逆演算RS(s’)の後に実行される。すなわち、ステージS(m)の逆演算RS(m)を実行する量子回路から始めて、ステージS(1)の逆演算RS(1)を実行する量子回路まで順に適用する。各ステージS(s)の逆演算RS(s)を実行する量子回路は、各ステージS(s)の量子回路において、各ゲートをその逆演算と置換し、適用する順番を逆転させたものである。HとCNOTの逆演算はそれぞれそれ自身である。また、ある演算に対し、その逆演算の逆演算は、元の演算であることに注意する(ステップS24)。 Next, the calculation unit 1214 (fourteenth calculation unit) applies the reverse calculation RS (m),..., RS (1) of the stages S (1),. However, the inverse operation RS (s) is an inverse operation of the stage S (s), and the inverse operation RS (s′−1) of the inverse operation RS (s ′) is an integer s ′ that satisfies 2 ≦ s ′ ≦ m. Will be executed later. That is, the quantum circuit starting from the quantum circuit that executes the inverse operation RS (m) of the stage S (m) is applied in order to the quantum circuit that executes the inverse operation RS (1) of the stage S (1). The quantum circuit that executes the inverse operation RS (s) of each stage S (s) is obtained by replacing each gate with its inverse operation in the quantum circuit of each stage S (s) and reversing the order of application. is there. Each inverse operation of H and CNOT is itself. Also, note that the inverse operation of the inverse operation for a certain operation is the original operation (step S24).
ステップS22までの演算とステップ23の中のYに適用するNOT演算Xにより、|φ1〉,…,|φm〉に対する論理和が計算され、Yが論理和x1∨…∨xnを表す状態|y(+)x1∨…∨xn〉となる。また、ステップS23の中でステップS21と同じ演算を適用しているのはI(k)の状態を|φk〉に戻すためであり、Y以外の量子ビットの状態はステップS1の出力状態に戻る。従って、ステップ24により、Y以外の量子ビットの状態は初期状態に戻る。ステップS1はYに演算を適用しないことに注意する。 The NOT operation X to be applied to Y in operation and step 23 to step S22, | φ 1>, ... , | φ m> logical sum is calculated with respect to, Y is the logical sum x 1 ∨ ... ∨x n The state to be expressed is | y (+) x 1 ∨... 表 す x n >. In step S23, the same operation as in step S21 is applied to return the state of I (k) to | φ k >, and the states of qubits other than Y are changed to the output state of step S1. Return. Accordingly, in step 24, the state of the qubits other than Y is returned to the initial state. Note that step S1 applies no operation to Y.
<ステップS1で正しく|φ1〉,…,|φm〉が生成される理由>
ステップS1で正しく|φ1〉,…,|φm〉が生成される理由を説明する。簡単のため、n=3(従って、m=2)の場合について述べる。
<Reason why | φ 1 >,..., | Φ m > is correctly generated in Step S1>
The reason why | φ 1 >,..., | Φ m > is correctly generated in step S1 will be described. For simplicity, the case of n = 3 (and hence m = 2) will be described.
≪|φ1〉について≫
図3に例示したように、|φ1〉はステージS(1)(ステップS11−1)で用意が完了する。簡単のため、I(1)とB1(1,1),B2(1,1),B3(1,1)だけの状態変化を記述する。これらの初期状態は|0〉|b1(1,1)〉|b2(1,1)〉|b3(1,1)〉であり、ステップS114−s終了後、状態は次のようになる。
ただし、α=−a1(1)(1−2b1(1,1))−a2(1)(1−2b2(1,1))−a3(1)(1−2b3(1,1))である。さらにステップS116−s終了後、状態は次のようになる。
ただし、β=x1−2(a1(1)(+)b1(1,1))x1+x2−2(a2(1)(+)b2(1,1))x2+x3−2(a3(1)(+)b3(1,1))x3である。さらに、ステージS(1)(ステップS11−1)終了後、状態は次のようになる。
ここで、βの中の2の倍数の項が
の値に影響しないことに注意する。実際、
であり、βの中の2の倍数である他の項も同様に計算され、
となる。従って、式(4)の最終状態は次と等しい。
これは所望の量子状態
である(式(2))。
About ≪ | φ 1 ≫
As illustrated in FIG. 3, the preparation of | φ 1 > is completed at stage S (1) (step S11-1). For simplicity, only the state changes of I (1) and B 1 (1,1), B 2 (1,1), B 3 (1,1) are described. These initial states are | 0> | b 1 (1,1)> | b 2 (1,1)> | b 3 (1,1)>. After step S114-s, the state is as follows. become.
However, α = −a 1 (1) (1-2b 1 (1,1))-a 2 (1) (1-2b 2 (1,1))-a 3 (1) (1-2b 3 ( 1, 1)). Further, after step S116-s ends, the state becomes as follows.
However, β = x 1 -2 (a 1 (1) (+) b 1 (1,1)) x 1 + x 2 -2 (a 2 (1) (+) b 2 (1,1)) x 2 + X 3 -2 (a 3 (1) (+) b 3 (1,1)) x 3 . Further, after stage S (1) (step S11-1), the state is as follows.
Where the term of multiples of 2 in β is
Note that it does not affect the value of. In fact,
And the other terms that are multiples of 2 in β are computed similarly,
It becomes. Therefore, the final state of equation (4) is equal to:
This is the desired quantum state
(Equation (2)).
≪|φ2〉について≫
図3および図4に例示したように、|φ2〉はステージS(1)(ステップS11−1)とS(2)(ステップS11−2)で用意が完了する。ステージS(1)(ステップS11−1)による状態変化は|φ2〉の場合と同様であり、ステージS(1)後のI(2)の状態は次のようになる。
ただし、η=x1−2(a1(2)(+)b1(2,1))x1+x2−2(a2(2)(+)b2(2,1))x2+x3−2(a3(2)(+)b3(2,1))x3である。|φ1〉の場合と異なり、ηの中の2の倍数の項が
の値に影響しないとは言えないことに注意する。これは、eの指数部分の値の分母が2ではなく、22であるからである。ステージS(2)(ステップS11−2)による状態変化は、ステージS(1)(ステップS11−1)と同様であり、I(2)の状態は次のようになる。
ただし、δ=x1−22(a1(2)(+)b1(2,1))(a1(2)(+)b1(2,2))x1+x2−22(a2(2)(+)b2(2,1))(a2(2)(+)b2(2,2))x2+x3−22(a3(2)(+)b3(2,1))(a3(2)(+)b3(2,2))x3である。δの中の22の倍数の項が
の値に影響しないことは、|φ1〉を用意する場合に、βの中の2の倍数の項が
の値に影響しなかったことと同様である。従って、この状態は所望の状態
と等しい。
About ≪ | φ 2 ≫
As illustrated in FIGS. 3 and 4, | φ 2 > is completely prepared in stages S (1) (step S11-1) and S (2) (step S11-2). The state change by stage S (1) (step S11-1) is the same as in the case of | φ 2 >, and the state of I (2) after stage S (1) is as follows.
However, η = x 1 -2 (a 1 (2) (+) b 1 (2,1)) x 1 + x 2 -2 (a 2 (2) (+) b 2 (2,1)) x 2 + X 3 −2 (a 3 (2) (+) b 3 (2,1)) x 3 . Unlike the case of | φ 1 >, the term of multiples of 2 in η is
Note that this does not affect the value of. This is not the
However, δ = x 1 −2 2 (a 1 (2) (+) b 1 (2,1)) (a 1 (2) (+) b 1 (2,2)) x 1 + x 2 −2 2 (A 2 (2) (+) b 2 (2,1)) (a 2 (2) (+) b 2 (2,2)) x 2 + x 3 −2 2 (a 3 (2) (+) b 3 (2,1)) (a 3 (2) (+) b 3 (2,2)) is x 3. The term of multiple of 2 in δ is
Does not affect the value of, when | φ 1 > is prepared, the term of multiples of 2 in β
This is the same as not affecting the value of. Therefore, this state is the desired state
Is equal to
<補助量子ビットと計算ステップの個数>
前述のように、本形態の論理和関数を計算する量子回路は、m=ceil(log2(n+1))=O(logn)個の初期化補助量子ビットを持ち、nm(m+3)/2=O(n (log2n)2)個の未初期化補助量子ビットを持つ。
<Number of auxiliary qubits and calculation steps>
As described above, the quantum circuit for calculating the logical sum function of this embodiment has m = ceil (log 2 (n + 1)) = O (logn) initialization auxiliary qubits, and nm (m + 3) / 2 = It has O (n (log 2 n) 2 ) uninitialized auxiliary qubits.
この量子回路の計算ステップの個数を考える。任意の1≦s≦mに対し、ステージS(s)の計算ステップの個数は以下のようになる。
・ステップS111−s:1
・ステップS112−s:O(log2(n+1))
・ステップS113−s:O(log2 s)
・ステップS114−s:O(s+1)
・ステップS115−s:O(log2(m−s+2))
・ステップS116−s〜S120−s:ステップS111−s〜S115−sと同じ
s≦m=O(log2n)であるから、ステージS(s)のステップの個数はO(log2 n)となり、ステップS1のステップの個数はO(mlog2 n)=O((log2 n)2)となる。
Consider the number of calculation steps of this quantum circuit. For an arbitrary 1 ≦ s ≦ m, the number of calculation steps of the stage S (s) is as follows.
Step S111-s: 1
Step S112-s: O (log 2 (n + 1))
Step S113-s: O (log 2 s)
Step S114-s: O (s + 1)
Step S115-s: O (log 2 (ms + 2))
Steps S116-s to S120-s: Same as Steps S111-s to S115-s Since s ≦ m = O (log 2 n), the number of steps in the stage S (s) is O (log 2 n). Thus, the number of steps in step S1 is O (mlog 2 n) = O ((log 2 n) 2 ).
ステップS2については次のようになる。
・ステップS21:1
・ステップ22:O(m+1)
・ステップ23:1
・ステップ24:ステップS1と同じ
従って、ステップS2の計算ステップの個数はO((log2 n)2)となり、本形態の量子回路全体のステップの個数はO((log2n)2)となる。
Step S2 is as follows.
Step S21: 1
Step 22: O (m + 1)
Step 23: 1
Step 24: Same as Step S1 Accordingly, the number of calculation steps in Step S2 is O ((log 2 n) 2 ), and the number of steps in the whole quantum circuit of this embodiment is O ((log 2 n) 2 ). Become.
<本形態の特徴>
多数の初期化補助量子ビットを実現するのは物理的に困難であるが、多数の未初期化補助量子ビットを実現するのは、初期化補助量子ビットと比較して容易である。また、量子回路の計算ステップの個数が多いほど計算時間が長くなる。従って、物理的実現性の高さと短い計算時間を同時に実現するためには、未初期化補助量子ビットを多く使ったとしても、初期化補助量子ビットの個数と計算ステップの個数を同時に小さくするほうがよい。未初期化補助量子ビットを多く使ったとしても、初期化補助量子ビットの個数と計算ステップの個数が同時に対数多項式(O((log2 n)c),cは0以上の定数)で表現される程小さい量子回路の構成方法は知られていなかった。
<Features of this embodiment>
It is physically difficult to realize a large number of initialization auxiliary qubits, but it is easier to realize a large number of uninitialized auxiliary qubits compared to initialization auxiliary qubits. Also, the calculation time becomes longer as the number of calculation steps of the quantum circuit is larger. Therefore, in order to achieve high physical feasibility and short calculation time at the same time, it is better to reduce the number of initialization auxiliary qubits and the number of calculation steps at the same time, even if many uninitialized auxiliary qubits are used. Good. Even if many uninitialized auxiliary qubits are used, the number of initialized auxiliary qubits and the number of calculation steps are simultaneously expressed by a logarithmic polynomial (O ((log 2 n) c ), where c is a constant greater than or equal to 0). A method for constructing such a small quantum circuit has not been known.
本形態の量子回路では、O(n (log2n)2)個の未初期化補助量子ビットおよびO(log2n)個の初期化補助量子ビットを利用し、O((log2n)2)個の計算ステップで論理和関数を計算する。これにより、物理的実現性の高さと短い計算時間を同時に実現できる。 In the quantum circuit of this embodiment, O (n (log 2 n) 2 ) uninitialized auxiliary qubits and O (log 2 n) initialized auxiliary qubits are used, and O ((log 2 n) 2 ) Calculate the logical sum function in one calculation step. Thereby, high physical feasibility and short calculation time can be realized simultaneously.
[その他の変形例等]
なお、本発明は上述の実施形態に限定されるものではない。上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。
[Other variations]
In addition, this invention is not limited to the above-mentioned embodiment. The various processes described above are not only executed in time series according to the description, but may also be executed in parallel or individually as required by the processing capability of the apparatus that executes the processes. Needless to say, other modifications are possible without departing from the spirit of the present invention.
1 論理和演算装置
11 量子演算部
12 量子演算部
DESCRIPTION OF
Claims (8)
初期状態が|x1〉,…,|xn〉であるn個の入力量子ビットX1,…,Xn、初期状態が|y〉である1個の出力量子ビットY、初期化補助量子ビット、および未初期化補助量子ビットを用い、
で表される状態|φk〉を生成する第1量子演算部と、
前記状態|φ1〉…|φm〉からφ1,…,φmの論理和を表す状態を生成する第2量子演算部と、
を有する論理和演算装置。 n is an integer of 2 or more, w is an integer satisfying 1 ≦ w ≦ n, x w ε {0, 1}, | x | = x 1 +... + x n , ceil (·) Is the ceiling function of (·), m = ceil (log 2 (n + 1)), k is an integer satisfying 1 ≦ k ≦ m,
N input qubits X 1 ,..., X n whose initial state is | x 1 >,..., | X n >, one output qubit Y whose initial state is | y>, and initialization auxiliary quanta. Bit, and uninitialized auxiliary qubit,
A first quantum operation unit that generates a state represented by | φ k >;
The state | φ 1> ... | from φ m> φ 1, ..., a second quantum computing section for generating a state representing a logical sum of phi m,
A logical sum operation device.
nが3以上の整数である、論理和演算装置。 The logical sum operation device according to claim 1,
An OR operation device, wherein n is an integer of 3 or more.
I(1),…,I(m)がm個の前記初期化補助量子ビットであり、nm(m+3)/2個の前記未初期化補助量子ビットからなる集合が部分集合A(1),…,A(m),B(1),…,B(m)からなり、前記部分集合A(k)がn個の前記未初期化補助量子ビットA1(k),…,An(k)からなり、前記部分集合B(k)がk個の部分集合B(k,1),…,B(k,k)からなり、rは1≦r≦kを満たす整数であり、前記部分集合B(k,r)がn個の前記未初期化補助量子ビットB1(k,r),…,Bn(k,r)からなり、
前記第1量子演算部は、第1から第10演算部を含み、m個のステージS(1),…,S(m)を実行し、sが1≦s≦mを満たす整数であり、s’が2≦s’≦mを満たす整数であり、前記ステージS(s’)は前記ステージS(s’−1)の後に実行され、
前記初期化補助量子ビットI(1),…,I(m)の初期状態が|0〉,…,|0〉であり、前記未初期化補助量子ビットA1(k),…,An(k)の初期状態が|a1(k)〉,…,|an(k)〉であり、前記未初期化補助量子ビットB1(k,r),…,Bn(k,r)の初期状態が|b1(k,r)〉,…,|bn(k,r)〉であり、
前記ステージS(s)では、
前記第1演算部が、s≦k(s)≦mについて、I(k(s))にアダマール演算を適用し、
前記第2演算部が、s≦k(s)≦mについて、I(k(s))を制御ビットとし、B1(k(s),s),…,Bn(k(s),s)を標的ビットとした(n+1)-fanout演算を行い、
前記第3演算部が、s≧2のときに、s≦k(s)≦mと1≦j≦nについて、Aj(k(s))を制御ビットとし、Bj(k(s),1),…,Bj(k(s),s−1)を標的ビットとしたs-fanout演算を行い、
前記第4演算部が、
s=1のときに、s≦k(s)≦mと1≦j≦nについて、Aj(k(s))を制御ビットとし、Bj(k(s),s)を標的ビットとした(s+1,k(s)-s+1)-位相シフト演算の逆演算を行い、
s≧2のときに、s≦k(s)≦mと1≦j≦nについて、Aj(k(s))およびBj(k(s),1),…,Bj(k(s),s−1)を制御ビットとし、Bj(k(s),s)を標的ビットとした(s+1,k(s)-s+1)-位相シフト演算の逆演算を行い、
前記第5演算部が、1≦j≦nについて、Xjを制御ビットとし、Aj(s),Aj(s+1),…,Aj(m)を標的ビットとした(m-s+2)-fanout演算を行い、
前記第6演算部が、
s=1のときに、s≦k(s)≦mと1≦j≦nについて、Aj(k(s))を制御ビットとし、Bj(k(s),s)を標的ビットとした(s+1,k(s)-s+1)-位相シフト演算を行い、
s≧2のときに、s≦k(s)≦mと1≦j≦nについて、Aj(k(s))およびBj(k(s),1),…,Bj(k(s),s−1)を制御ビットとし、Bj(k(s),s)を標的ビットとした(s+1,k(s)-s+1)-位相シフト演算を行い、
前記第7演算部が、1≦j≦nについて、Xjを制御ビットとし、Aj(s),Aj(s+1),…,Aj(m)を標的ビットとした(m-s+2)-fanout演算を行い、
前記第8演算部が、s≧2のときに、s≦k(s)≦mと1≦j≦nについて、Aj(k(s))を制御ビットとし、Bj(k(s),1),…,Bj(k(s),s−1)を標的ビットとしたs-fanout演算を行い、
前記第9演算部が、s≦k(s)≦mについて、I(k(s))を制御ビットとし、B1(k(s),s),…,Bn(k(s),s)を標的ビットとした(n+1)-fanout演算を行い、
前記第10演算部が、s≦k(s)≦mについて、I(k(s))にアダマール演算を適用する、論理和演算装置。 The logical sum operation device according to claim 1 or 2,
I (1),..., I (m) are m initialization auxiliary qubits, and a set of nm (m + 3) / 2 uninitialized auxiliary qubits is a subset A (1), , A (m), B (1),..., B (m), and the subset A (k) includes n uninitialized auxiliary qubits A 1 (k) ,. k), and the subset B (k) is composed of k subsets B (k, 1),..., B (k, k), and r is an integer satisfying 1 ≦ r ≦ k, A subset B (k, r) consists of n said uninitialized auxiliary qubits B 1 (k, r),..., B n (k, r);
The first quantum arithmetic unit includes first to tenth arithmetic units, executes m stages S (1),..., S (m), and s is an integer satisfying 1 ≦ s ≦ m, s ′ is an integer satisfying 2 ≦ s ′ ≦ m, and the stage S (s ′) is executed after the stage S (s′−1),
The initial states of the initialization auxiliary qubits I (1),..., I (m) are | 0>,..., | 0>, and the uninitialized auxiliary qubits A 1 (k) ,. The initial state of (k) is | a 1 (k)>,..., | An (k)>, and the uninitialized auxiliary quantum bits B 1 (k, r),..., B n (k, r ) Is the initial state of | b 1 (k, r)>,..., | B n (k, r)>,
In the stage S (s),
The first calculation unit applies Hadamard calculation to I (k (s)) for s ≦ k (s) ≦ m;
The second calculation unit for s ≦ k (s) ≦ m , and control bits I (k (s)), B 1 (k (s), s), ..., B n (k (s), Perform (n + 1) -fanout operation with s) as the target bit,
When the third arithmetic unit is s ≧ 2, for s ≦ k (s) ≦ m and 1 ≦ j ≦ n, A j (k (s)) is a control bit, and B j (k (s) , 1),..., B j (k (s), s−1) is used as a target bit to perform an s-fanout operation,
The fourth arithmetic unit is
When s = 1, for s ≦ k (s) ≦ m and 1 ≦ j ≦ n, A j (k (s)) is a control bit and B j (k (s), s) is a target bit. (S + 1, k (s) -s + 1)-reverse the phase shift operation,
When s ≧ 2, for s ≦ k (s) ≦ m and 1 ≦ j ≦ n, A j (k (s)) and B j (k (s), 1),..., B j (k ( s), s-1) are control bits, and B j (k (s), s) is a target bit. ,
In the fifth arithmetic unit, for 1 ≦ j ≦ n, X j is a control bit and A j (s), A j (s + 1),..., A j (m) is a target bit (m−s + 2) Perform -fanout operation,
The sixth arithmetic unit is
When s = 1, for s ≦ k (s) ≦ m and 1 ≦ j ≦ n, A j (k (s)) is a control bit and B j (k (s), s) is a target bit. (S + 1, k (s) -s + 1) -phase shift operation,
When s ≧ 2, for s ≦ k (s) ≦ m and 1 ≦ j ≦ n, A j (k (s)) and B j (k (s), 1),..., B j (k ( (s + 1, k (s) -s + 1) -phase shift operation with s), s-1) as control bits and B j (k (s), s) as target bits,
In the case where 1 ≦ j ≦ n, the seventh arithmetic unit uses X j as a control bit and A j (s), A j (s + 1),..., A j (m) as target bits (m−s + 2) Perform -fanout operation,
When the eighth arithmetic unit is s ≧ 2, for s ≦ k (s) ≦ m and 1 ≦ j ≦ n, A j (k (s)) is a control bit, and B j (k (s) , 1),..., B j (k (s), s−1) is used as a target bit to perform an s-fanout operation,
Said ninth computing unit for s ≦ k (s) ≦ m , and control bits I (k (s)), B 1 (k (s), s), ..., B n (k (s), Perform (n + 1) -fanout operation with s) as the target bit,
The tenth operation unit applies a Hadamard operation to I (k (s)) for s ≦ k (s) ≦ m.
前記第2量子演算部は、第11から14演算部を含み、
前記第11演算部は、1≦k≦mについて、I(k)にNOT演算を適用し、
前記第12演算部は、I(1),…,I(m)を制御ビットとし、Yを標的ビットとした(m+1)-Toffoli演算を適用し、
前記第13演算部は、1≦k≦mについてのI(k)およびYにNOT演算を適用し、
前記第14演算部は、逆演算RS(m),…,RS(1)を行い、
前記逆演算RS(s)は前記ステージS(s)の逆演算であり、前記逆演算RS(s’−1)は前記逆演算RS(s’)の後に実行される、論理和演算装置。 The logical sum operation device according to claim 3,
The second quantum operation unit includes eleventh to fourteen operation units,
The eleventh operation unit applies a NOT operation to I (k) for 1 ≦ k ≦ m,
The twelfth calculation unit applies (m + 1) -Toffoli calculation with I (1),..., I (m) as control bits and Y as a target bit,
The thirteenth operation unit applies a NOT operation to I (k) and Y for 1 ≦ k ≦ m,
The fourteenth operation unit performs inverse operations RS (m), ..., RS (1),
The inverse operation RS (s) is an inverse operation of the stage S (s), and the inverse operation RS (s′−1) is executed after the inverse operation RS (s ′).
第1量子演算部が、初期状態が|x1〉,…,|xn〉であるn個の入力量子ビットX1,…,Xn、初期状態が|y〉である1個の出力量子ビットY、初期化補助量子ビット、および未初期化補助量子ビットを用い、
で表される状態|φk〉を生成する第1量子演算ステップと、
第2量子演算部が、前記状態|φ1〉…|φm〉からφ1,…,φmの論理和を表す状態を生成する第2量子演算ステップと、
を有する論理和演算方法。 n is an integer of 2 or more, w is an integer satisfying 1 ≦ w ≦ n, x w ε {0, 1}, | x | = x 1 +... + x n , ceil (·) Is the ceiling function of (·), m = ceil (log 2 (n + 1)), k is an integer satisfying 1 ≦ k ≦ m,
The first quantum operation unit has n input qubits X 1 ,..., X n whose initial state is | x 1 >,..., | X n >, and one output quantum whose initial state is | y>. Using bit Y, initialized auxiliary qubit, and uninitialized auxiliary qubit,
A first quantum operation step for generating a state | φ k > represented by:
Second quantum computation unit, the state | φ 1> ... | from φ m> φ 1, ..., a second quantum computation step of generating a state representing a logical sum of phi m,
A logical sum operation method.
nが3以上の整数である、論理和演算方法。 The logical sum operation method according to claim 5,
A logical OR operation method, wherein n is an integer of 3 or more.
I(1),…,I(m)がm個の前記初期化補助量子ビットであり、nm(m+3)/2個の前記未初期化補助量子ビットからなる集合が部分集合A(1),…,A(m),B(1),…,B(m)からなり、前記部分集合A(k)がn個の前記未初期化補助量子ビットA1(k),…,An(k)からなり、前記部分集合B(k)がk個の部分集合B(k,1),…,B(k,k)からなり、r=1,…,kであり、前記部分集合B(k,r)がn個の前記未初期化補助量子ビットB1(k,r),…,Bn(k,r)からなり、
前記第1量子演算部は、第1から第10演算部を含み、m個のステージS(1),…,S(m)を実行し、sが1≦s≦mを満たす整数であり、s’が2≦s’≦mを満たす整数であり、前記ステージS(s’)は前記ステージS(s’−1)の後に実行され、
前記初期化補助量子ビットI(1),…,I(m)の初期状態が|0〉,…,|0〉であり、前記未初期化補助量子ビットA1(k),…,An(k)の初期状態が|a1(k)〉,…,|an(k)〉であり、前記未初期化補助量子ビットB1(k,r),…,Bn(k,r)の初期状態が|b1(k,r)〉,…,|bn(k,r)〉であり、
前記ステージS(s)では、
前記第1演算部が、s≦k(s)≦mについて、I(k(s))にアダマール演算を適用し、
前記第2演算部が、s≦k(s)≦mについて、I(k(s))を制御ビットとし、B1(k(s),s),…,Bn(k(s),s)を標的ビットとした(n+1)-fanout演算を行い、
前記第3演算部が、s≧2のときに、s≦k(s)≦mと1≦j≦nについて、Aj(k(s))を制御ビットとし、Bj(k(s),1),…,Bj(k(s),s−1)を標的ビットとしたs-fanout演算を行い、
前記第4演算部が、
s=1のときに、s≦k(s)≦mと1≦j≦nについて、Aj(k(s))を制御ビットとし、Bj(k(s),s)を標的ビットとした(s+1,k(s)-s+1)-位相シフト演算の逆演算を行い、
s≧2のときに、s≦k(s)≦mと1≦j≦nについて、Aj(k(s))およびBj(k(s),1),…,Bj(k(s),s−1)を制御ビットとし、Bj(k(s),s)を標的ビットとした(s+1,k(s)-s+1)-位相シフト演算の逆演算を行い、
前記第5演算部が、1≦j≦nについて、Xjを制御ビットとし、Aj(s),Aj(s+1),…,Aj(m)を標的ビットとした(m-s+2)-fanout演算を行い、
前記第6演算部が、
s=1のときに、s≦k(s)≦mと1≦j≦nについて、Aj(k(s))を制御ビットとし、Bj(k(s),s)を標的ビットとした(s+1,k(s)-s+1)-位相シフト演算を行い、
s≧2のときに、s≦k(s)≦mと1≦j≦nについて、Aj(k(s))およびBj(k(s),1),…,Bj(k(s),s−1)を制御ビットとし、Bj(k(s),s)を標的ビットとした(s+1,k(s)-s+1)-位相シフト演算を行い、
前記第7演算部が、1≦j≦nについて、Xjを制御ビットとし、Aj(s),Aj(s+1),…,Aj(m)を標的ビットとした(m-s+2)-fanout演算を行い、
前記第8演算部が、s≧2のときに、s≦k(s)≦mと1≦j≦nについて、Aj(k(s))を制御ビットとし、Bj(k(s),1),…,Bj(k(s),s−1)を標的ビットとしたs-fanout演算を行い、
前記第9演算部が、s≦k(s)≦mについて、I(k(s))を制御ビットとし、B1(k(s),s),…,Bn(k(s),s)を標的ビットとした(n+1)-fanout演算を行い、
前記第10演算部が、s≦k(s)≦mについて、I(k(s))にアダマール演算を適用する、論理和演算方法。 A logical sum operation method according to claim 5 or 6,
I (1),..., I (m) are m initialization auxiliary qubits, and a set of nm (m + 3) / 2 uninitialized auxiliary qubits is a subset A (1), , A (m), B (1),..., B (m), and the subset A (k) includes n uninitialized auxiliary qubits A 1 (k) ,. k), and the subset B (k) is composed of k subsets B (k, 1),..., B (k, k), and r = 1,. (K, r) consists of n said uninitialized auxiliary qubits B 1 (k, r),..., B n (k, r),
The first quantum arithmetic unit includes first to tenth arithmetic units, executes m stages S (1),..., S (m), and s is an integer satisfying 1 ≦ s ≦ m, s ′ is an integer satisfying 2 ≦ s ′ ≦ m, and the stage S (s ′) is executed after the stage S (s′−1),
The initial states of the initialization auxiliary qubits I (1),..., I (m) are | 0>,..., | 0>, and the uninitialized auxiliary qubits A 1 (k) ,. The initial state of (k) is | a 1 (k)>,..., | An (k)>, and the uninitialized auxiliary quantum bits B 1 (k, r),..., B n (k, r ) Is the initial state of | b 1 (k, r)>,..., | B n (k, r)>,
In the stage S (s),
The first calculation unit applies Hadamard calculation to I (k (s)) for s ≦ k (s) ≦ m;
The second calculation unit for s ≦ k (s) ≦ m , and control bits I (k (s)), B 1 (k (s), s), ..., B n (k (s), Perform (n + 1) -fanout operation with s) as the target bit,
When the third arithmetic unit is s ≧ 2, for s ≦ k (s) ≦ m and 1 ≦ j ≦ n, A j (k (s)) is a control bit, and B j (k (s) , 1),..., B j (k (s), s−1) is used as a target bit to perform an s-fanout operation,
The fourth arithmetic unit is
When s = 1, for s ≦ k (s) ≦ m and 1 ≦ j ≦ n, A j (k (s)) is a control bit and B j (k (s), s) is a target bit. (S + 1, k (s) -s + 1)-reverse the phase shift operation,
When s ≧ 2, for s ≦ k (s) ≦ m and 1 ≦ j ≦ n, A j (k (s)) and B j (k (s), 1),..., B j (k ( s), s-1) are control bits, and B j (k (s), s) is a target bit. ,
In the fifth arithmetic unit, for 1 ≦ j ≦ n, X j is a control bit and A j (s), A j (s + 1),..., A j (m) is a target bit (m−s + 2) Perform -fanout operation,
The sixth arithmetic unit is
When s = 1, for s ≦ k (s) ≦ m and 1 ≦ j ≦ n, A j (k (s)) is a control bit and B j (k (s), s) is a target bit. (S + 1, k (s) -s + 1) -phase shift operation,
When s ≧ 2, for s ≦ k (s) ≦ m and 1 ≦ j ≦ n, A j (k (s)) and B j (k (s), 1),..., B j (k ( (s + 1, k (s) -s + 1) -phase shift operation with s), s-1) as control bits and B j (k (s), s) as target bits,
In the case where 1 ≦ j ≦ n, the seventh arithmetic unit uses X j as a control bit and A j (s), A j (s + 1),..., A j (m) as target bits (m−s + 2) Perform -fanout operation,
When the eighth arithmetic unit is s ≧ 2, for s ≦ k (s) ≦ m and 1 ≦ j ≦ n, A j (k (s)) is a control bit, and B j (k (s) , 1),..., B j (k (s), s−1) is used as a target bit to perform an s-fanout operation,
Said ninth computing unit for s ≦ k (s) ≦ m , and control bits I (k (s)), B 1 (k (s), s), ..., B n (k (s), Perform (n + 1) -fanout operation with s) as the target bit,
The tenth operation unit applies a Hadamard operation to I (k (s)) for s ≦ k (s) ≦ m.
前記第2量子演算部は、第11から14演算部を含み、
前記第11演算部は、1≦k≦mについて、I(k)にNOT演算を適用し、
前記第12演算部は、I(1),…,I(m)を制御ビットとし、Yを標的ビットとした(m+1)-Toffoli演算を適用し、
前記第13演算部は、1≦k≦mについてのI(k)およびYにNOT演算を適用し、
前記第14演算部は、逆演算RS(m),…,RS(1)を行い、
前記逆演算RS(s)は前記ステージS(s)の逆演算であり、前記逆演算RS(s’−1)は前記逆演算RS(s’)の後に実行される、論理和演算方法。 The logical sum operation method according to claim 7,
The second quantum operation unit includes eleventh to fourteen operation units,
The eleventh operation unit applies a NOT operation to I (k) for 1 ≦ k ≦ m,
The twelfth calculation unit applies (m + 1) -Toffoli calculation with I (1),..., I (m) as control bits and Y as a target bit,
The thirteenth operation unit applies a NOT operation to I (k) and Y for 1 ≦ k ≦ m,
The fourteenth operation unit performs inverse operations RS (m), ..., RS (1),
The inverse operation RS (s) is an inverse operation of the stage S (s), and the inverse operation RS (s′−1) is executed after the inverse operation RS (s ′).
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016109091A JP6445487B2 (en) | 2016-05-31 | 2016-05-31 | OR operation apparatus and OR operation method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016109091A JP6445487B2 (en) | 2016-05-31 | 2016-05-31 | OR operation apparatus and OR operation method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017215771A JP2017215771A (en) | 2017-12-07 |
JP6445487B2 true JP6445487B2 (en) | 2018-12-26 |
Family
ID=60576991
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016109091A Active JP6445487B2 (en) | 2016-05-31 | 2016-05-31 | OR operation apparatus and OR operation method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6445487B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10657212B2 (en) * | 2018-09-18 | 2020-05-19 | International Business Machines Corporation | Application- or algorithm-specific quantum circuit design |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6081882A (en) * | 1998-04-09 | 2000-06-27 | Silicon Graphics, Inc. | Quantum acceleration of conventional non-quantum computers |
JP4847914B2 (en) * | 2007-04-16 | 2011-12-28 | 日本電信電話株式会社 | Quantum addition operation method and quantum addition operation device |
JP5722187B2 (en) * | 2011-10-13 | 2015-05-20 | 日本電信電話株式会社 | Quantum calculation method, quantum calculation device, and quantum circuit |
-
2016
- 2016-05-31 JP JP2016109091A patent/JP6445487B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2017215771A (en) | 2017-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Fawzi et al. | Constant overhead quantum fault tolerance with quantum expander codes | |
Takahashi et al. | Quantum addition circuits and unbounded fan-out | |
CN111373421B (en) | Quantum circuit with reduced T gate count | |
Paetznick et al. | Repeat-until-success: Non-deterministic decomposition of single-qubit unitaries | |
Carette et al. | SZX-calculus: Scalable graphical quantum reasoning | |
CN112789629A (en) | Mixed quantum classical computer for solving linear system | |
Khan et al. | Terary GFSOP minimization using kronecker decision diagrams and their synthesis with quantum cascades | |
WO2018033823A1 (en) | Efficient reduction of resources for the simulation of fermionic hamiltonians on quantum hardware | |
Khan et al. | Multi-output Galois field sum of products synthesis with new quantum cascades | |
JP4847914B2 (en) | Quantum addition operation method and quantum addition operation device | |
Li et al. | A class of efficient quantum incrementer gates for quantum circuit synthesis | |
Püschel et al. | Fast quantum Fourier transforms for a class of non-abelian groups | |
JP2022068327A (en) | Node grouping method, apparatus therefor, and electronic device therefor | |
Turner et al. | Derandomizing quantum circuits with measurement-based unitary designs | |
Perriello et al. | A complete quantum circuit to solve the information set decoding problem | |
Bravyi et al. | Constant-cost implementations of Clifford operations and multiply-controlled gates using global interactions | |
Zhu et al. | Cross-platform comparison of arbitrary quantum computations | |
JP6445487B2 (en) | OR operation apparatus and OR operation method | |
Xiao et al. | Distributed Quantum-classical Hybrid Shor's Algorithm | |
JP2021193570A (en) | Method and apparatus for performing phase operation | |
Shimizu et al. | Simple loss-tolerant protocol for GHZ-state distribution in a quantum network | |
Jayashree et al. | Design of dedicated reversible quantum circuitry for square computation | |
JP6182123B2 (en) | Quantum calculation method | |
Kaye et al. | Quantum networks for concentrating entanglement | |
Bravyi et al. | Efficient ancilla-free reversible and quantum circuits for the Hidden Weighted Bit function |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180531 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20181105 |
|
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: 20181127 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20181129 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6445487 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |