JP2005332242A - Method, apparatus and program for decomposing unitary matrix, and recording medium - Google Patents

Method, apparatus and program for decomposing unitary matrix, and recording medium Download PDF

Info

Publication number
JP2005332242A
JP2005332242A JP2004150549A JP2004150549A JP2005332242A JP 2005332242 A JP2005332242 A JP 2005332242A JP 2004150549 A JP2004150549 A JP 2004150549A JP 2004150549 A JP2004150549 A JP 2004150549A JP 2005332242 A JP2005332242 A JP 2005332242A
Authority
JP
Japan
Prior art keywords
matrix
decomposition
unitary matrix
exp
special
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
JP2004150549A
Other languages
Japanese (ja)
Other versions
JP4260680B2 (en
Inventor
Hiromi Murakami
裕美 村上
Yasuhito Kono
泰人 河野
Hiroshi Sekikawa
浩 関川
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 JP2004150549A priority Critical patent/JP4260680B2/en
Publication of JP2005332242A publication Critical patent/JP2005332242A/en
Application granted granted Critical
Publication of JP4260680B2 publication Critical patent/JP4260680B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Complex Calculations (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To realize a process for automatically decomposing a unitary matrix into basic gates on a computer, by applying Cartan decomposition recursively to the unitary matrix. <P>SOLUTION: First, Lie algebra expression f [where f is unitary of a set su (2<SP>n</SP>)]of a special unitary matrix F for decomposition [F is an element of a set SU (2<SP>n</SP>)] is extracted. The above Lie algebra expression f is then decomposed into elements k<SB>1</SB>, m<SB>1</SB>[k<SB>1</SB>is an element of a set k, while m<SB>1</SB>is an element of a set m] included in two orthogonal vector spaces k, m, through Cartan decomposition. Next, a special unitary matrix U<SB>m</SB>for diagonalizing U<SB>h</SB>×exp (m<SB>1</SB>)×U<SB>h</SB>to a diagonal matrix D<SB>h</SB>is calculated. Here, U<SB>h</SB>indicates a matrix which simultaneously diagonalizes the entire bases of the Cartan subalgebra h (n), and the diagonal matrix D<SB>h</SB>satisfies [D<SB>h</SB>is an element of a set (U<SB>h</SB>×exp (h<SB>1</SB>)×U<SB>h</SB>)] (h<SB>1</SB>is unitary of a set h (n)). Then, the diagonal matrix D<SB>h</SB>is decomposed into a product of Toffoli gates TG<SB>h</SB>, and each Toffoli gate TG<SB>h</SB>is decomposed into a product of the basic gates BG<SB>h</SB>. Thereafter, using exp (k<SB>1</SB>) and U<SB>m</SB>as new input matrices, the similar process is repeated recursively. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

この発明は、任意のユニタリ行列を基本ゲートに分解するユニタリ行列分解方法、ユニタリ行列分解装置、その機能をコンピュータで実現するためのユニタリ行列分解プログラム及びそれを格納した記録媒体に関する。   The present invention relates to a unitary matrix decomposition method for decomposing an arbitrary unitary matrix into basic gates, a unitary matrix decomposition apparatus, a unitary matrix decomposition program for realizing the function thereof by a computer, and a recording medium storing the unitary matrix decomposition program.

行列を分解する数学的な手法の一つにカルタン(Cartan)分解がある(例えば、非特許文献1参照。)。カルタン分解は、リー(Lie)群(G=SU(2))に属する特殊ユニタリ行列を分解対象とし、そのリー代数表現(g=su(2))を利用して行列分解を行う手法である。ここで、リー群(SU(2))とリー代数表現(su(2))は2×2の行列の集合であり、exp(su(2))=SU(2)の関係にある。また、su(2)は歪エルミート(Hermite)行列全体となる。なお、この特殊ユニタリ行列を量子回路で実現する場合、nはこの量子回路への入力量子ビット数に相当する。また、特殊ユニタリ行列とは、行列式(determinant)の値が1のユニタリ行列を意味する。 One of the mathematical methods for decomposing a matrix is Cartan decomposition (see, for example, Non-Patent Document 1). In Cartan decomposition, a special unitary matrix belonging to the Lie group (G = SU (2 n )) is targeted for decomposition, and matrix decomposition is performed using its Lie algebraic expression (g = su (2 n )). It is. Here, the Lie group (SU (2 n )) and the Lie algebra expression (su (2 n )) are a set of 2 n × 2 n matrices, and exp (su (2 n )) = SU (2 n ) Are in a relationship. Also, su (2 n ) is the entire strained Hermite matrix. When this special unitary matrix is realized by a quantum circuit, n corresponds to the number of input qubits to this quantum circuit. The special unitary matrix means a unitary matrix having a determinant value of 1.

ここで行列aに対するexp(a)は、

Figure 2005332242
で定義されるが、非特許文献1においてN.Khanejaは、パウリ(Pauli)のスピン行列
Figure 2005332242
を用い、リー群(SU(2))に対応するリー代数表現(su(2))を定義している。以下ではまず、このN.Khanejaによるsu(2)の定義について説明する。 Where exp (a) for matrix a is
Figure 2005332242
In NPL 1, N. Khaneja is a Pauli spin matrix.
Figure 2005332242
Is used to define the Lie algebra expression (su (2 n )) corresponding to the Lie group (SU (2 n )). In the following, the definition of su (2 n ) by N. Khaneja will be described first.

<N.Khanejaによるsu(2)の定義>
まず、リー代数表現(su(2))における直交基底{iB}を以下の形でとる(iは虚数単位)。

Figure 2005332242
<Definition of su (2 n ) by N. Khaneja>
First, an orthogonal basis {iB s } in the Lie algebra expression (su (2 n )) is taken in the following form (i is an imaginary unit).
Figure 2005332242

ここで、Ikα

Figure 2005332242
で定義される。なお、このIαは式(6)の右辺の先頭からk番目に位置する。また、αはx,y,zの何れかであり、Iαは上述の式(2)〜(4)の何れかとなる。さらに、Eは2×2の単位行列であり、
Figure 2005332242
はテンソル積を意味する。また、式(5)のqはBの行列式の値が1となるように選択される値である。 Where I is
Figure 2005332242
Defined by Note that I α is located at the k-th position from the beginning of the right side of Equation (6). Further, α is any one of x, y, and z, and I α is any one of the above formulas (2) to (4). Furthermore, E is a 2 × 2 identity matrix,
Figure 2005332242
Means tensor product. Further, q of formula (5) is the value that the value of the determinant of B s is selected to be 1.

すると、リー代数表現(su(2))は

Figure 2005332242
と書ける。なお、span{*}は、{*}で定義される要素を基底とするベクトル空間を意味する。 Then, the Lie algebra expression (su (2 n )) is
Figure 2005332242
Can be written. Note that span {*} means a vector space based on the element defined by {*}.

<N.Khanejaによるカルタン分解>
次に、非特許文献1記載のカルタン分解について説明する。
カルタン分解では、与えられたリー代数表現g=su(2)を、直交する2つのベクトル空間(kとm=k)の直和

Figure 2005332242
に分解する。ここでは、式(5)で定義した直交基底を用い、kとmを以下のように定義する。 <Cartan decomposition by N. Khaneja>
Next, cartan decomposition described in Non-Patent Document 1 will be described.
In Cartan decomposition, a given Lie algebraic expression g = su (2 n ) is a direct sum of two orthogonal vector spaces (k and m = k ).
Figure 2005332242
Disassembled into Here, the orthogonal basis defined by the equation (5) is used, and k and m are defined as follows.

Figure 2005332242
n≧3の場合、このkとmがそれぞれ作る空間は、図9のような格子状の行列となる。なお、図9において色の付いていない部分には0が、色のついている部分には任意の値がそれぞれ入る。
そして、これらのリー代数表現g、k、mにそれぞれ対応するリー群G,K=exp(k)、M=exp(m)では、
G=KM …(10)
が成り立つ。これはリー群G=SU(2)の任意の元が、Kの元とMの元との積に分解できることを意味する。
Figure 2005332242
In the case of n ≧ 3, the spaces created by k and m are lattice-like matrices as shown in FIG. In FIG. 9, 0 is entered in the uncolored portion, and an arbitrary value is entered in the colored portion.
And in Lie groups G, K = exp (k), M = exp (m) respectively corresponding to these Lie algebra expressions g, k, m,
G = KM (10)
Holds. This means that an arbitrary element of the Lie group G = SU (2 n ) can be decomposed into a product of an element of K and an element of M.

次に、(g,k)の組に対するカルタン部分代数h(n)を定義する。このカルタン部分代数h(n)は、上記のベクトル空間mを含む極大可換部分代数である。ここでは、以下のようにカルタン部分代数h(n)を定義する。

Figure 2005332242
ここで、H=exp(h(n))⊂Gとすると、式(10)のM=exp(m)は、さらに
M=KHK …(12)
と変換できる。なお、式(12)におけるKは、式(10)のKと同じである。
従って、この式(12)より、式(10)に示すリー群Gは、
G=KM=K(KHK)=KHK ,(K=SU(2n-1),H=exp(h(n))⊂G) …(13)
と表すことができる。すなわち、リー群Gの任意の元は、それよりも次元の低い、Kの元と、(g,k)の組に対するカルタン部分代数h(n)に対応するリー群の元との積に分解できる。 Next, a cartan partial algebra h (n) for a set of (g, k) is defined. The Cartan partial algebra h (n) is a maximal commutative partial algebra including the vector space m. Here, the cartan partial algebra h (n) is defined as follows.
Figure 2005332242
Here, when H = exp (h (n)) ⊂G, M = exp (m) in the equation (10) is further calculated as M = KHK (12)
And can be converted. Note that K in equation (12) is the same as K in equation (10).
Therefore, from this equation (12), the Lie group G shown in equation (10) is
G = KM = K (KHK) = KHK, (K = SU (2 n-1 ), H = exp (h (n)) ⊂G)… (13)
It can be expressed as. That is, an arbitrary element of the Lie group G is decomposed into a product of a lower dimension K element and a Lie group element corresponding to the Cartan partial algebra h (n) for the set of (g, k). it can.

以上のようなカルタン分解の産業上の利用分野としては、例えば、ユニタリ変換量子回路等のユニタリ行列の分解を例示できる。すなわち、任意のユニタリ行列を現実の量子回路で実現する場合、そのユニタリ行列を基本ゲートに分解しなければならない。そして、もし、このカルタン分解によって分解された各元を新たな入力元とし、このカルタン分解を再帰的に繰り返していくことができるならば、任意のユニタリ行列をシステマチックに基本ゲートに分解することも可能である。
N. Khaneja, S. Glaster,“Cartan Decomposition of SU(2n), constructive controllability of spin systems and universal quantum computing,” quant-ph/0010100,2000.
As an industrial application field of the above-described Cartan decomposition, for example, decomposition of a unitary matrix such as a unitary transformation quantum circuit can be exemplified. That is, when an arbitrary unitary matrix is realized by an actual quantum circuit, the unitary matrix must be decomposed into basic gates. If each element decomposed by the Cartan decomposition is a new input source and this Cartan decomposition can be repeated recursively, any unitary matrix can be systematically decomposed into basic gates. Is also possible.
N. Khaneja, S. Glaster, “Cartan Decomposition of SU (2n), constructive controllability of spin systems and universal quantum computing,” quant-ph / 0010100,2000.

しかし、従来、カルタン分解による分解結果から、KやHの性質を崩すことなく、これらリー群の元を独立に抽出する具体的な方法は知られていなかった。従って、従来は、量子回路等に対応するユニタリ行列にカルタン分解を再帰的に適用し、このユニタリ行列を基本ゲートに分解するといった処理をシステマチックに実現することもできなかった。
本発明はこのような点に鑑みてなされたものであり、ユニタリ行列にカルタン分解を再帰的に適用し、このユニタリ行列を自動的に基本ゲートに分解する処理をコンピュータ上で実現する技術を提供することを目的とする。
However, heretofore, a specific method for independently extracting the elements of these Lie groups without destroying the properties of K and H from the decomposition result by the cartan decomposition has not been known. Therefore, conventionally, it has not been possible to systematically realize a process of recursively applying Cartan decomposition to a unitary matrix corresponding to a quantum circuit or the like and decomposing the unitary matrix into basic gates.
The present invention has been made in view of such a point, and provides a technique for realizing, on a computer, processing for recursively applying Cartan decomposition to a unitary matrix and automatically decomposing the unitary matrix into basic gates. The purpose is to do.

<第1の発明>
上記課題を解決するために、第1の本発明では、まず、分解対象である2×2の特殊ユニタリ行列F∈SU(2)の自然対数であるリー(Lie)代数表現f∈su(2)を、行列表現変換手段が抽出し、抽出されたリー代数表現fを、カルタン分解手段が、カルタン(Cartan)分解によって、直交する2つのベクトル空間k,mに含まれる要素k∈k,m∈mに分解する。
次に、対角行列計算手段が、U・exp(m)・Uを対角行列Dに対角化する特殊ユニタリ行列Uを算出する。なお、Uは、ベクトル空間mに含まれる極大可換部分代数であるカルタン部分代数h(n)の基底のすべてを同時対角化する行列を意味し、対角行列Dは、カルタン部分代数h(n)に対応するリー群exp(h(n))を行列Uによって対角化した行列を意味する(D∈U・exp(h(n))・U)。
<First invention>
In order to solve the above-described problem, in the first aspect of the present invention, first, a Lie algebraic expression fε which is a natural logarithm of a 2 n × 2 n special unitary matrix FεSU (2 n ) to be decomposed. The matrix representation conversion unit extracts su (2 n ), and the extracted Lie algebra representation f is converted into the element k included in the two orthogonal vector spaces k and m by Cartan decomposition. 1 that is an element of the set K, decomposed into m 1 ∈m.
Next, the diagonal matrix calculation means calculates a special unitary matrix U m that diagonalizes U h · exp (m 1 ) · U h into a diagonal matrix D h . U h means a matrix that simultaneously diagonalizes all the bases of the Cartan partial algebra h (n), which is a maximal commutative partial algebra included in the vector space m, and the diagonal matrix D h is a Cartan part. This means a matrix obtained by diagonalizing the Lie group exp (h (n)) corresponding to the algebra h (n) by the matrix U h (D h εU h · exp (h (n)) · U h ).

そして、対角行列分解手段が、対角行列Dをトフォリ(Toffoli)ゲートTGの積に分解し、基本ゲート分解手段が、各トフォリゲートTGを基本ゲートBGの積に分解し、分解要素格納手段が、exp(k)、U、U、U 及びBGを、Fの分解要素(F=exp(k)・(U・U・BG・U ・U))として記憶手段に格納する。なお、本発明の「トフォリゲート」は、行の入れ替え等の簡易な操作によりトフォリゲートとなる行列をも含む概念である。
ここで、カルタン分解手段において、リー代数表現fを、直交するベクトル空間k,mに含まれる要素k∈k,m∈mに分解しているため、

Figure 2005332242
が成り立つ。また、k,mに対応するリー群K=exp(k)及びM=exp(m)は、F=Kの関係を満たす。 Then, the diagonal matrix decomposition means decomposes the diagonal matrix D h into products of toffoli gates TG h , and the basic gate decomposition means decomposes each tori gate TG h into products of basic gates BG h. , The decomposition element storage means converts exp (k 1 ), U h , U m , U m * and BG h into F decomposition elements (F = exp (k 1 ) · (U h · U m · BG h · U m * · U h )). It should be noted that the “tolygate” of the present invention is a concept including a matrix that becomes a torigate by a simple operation such as replacement of rows.
Since the in Cartan decomposing means, the Lie algebra expressions f, orthogonal vector space k, the element k 1 that is an element of the set K contained in m, is decomposed into m 1 ∈m,
Figure 2005332242
Holds. Also, Lie groups corresponding to k 1, m 1 K 1 = exp (k 1) and M 1 = exp (m 1) satisfy the relationship of F = K 1 M 1.

また、前述の式(12)でも示したとおり、このMは、
=K・exp(h)・K …(14)
と分解できる(h∈h(n),K,K∈K=exp(k))。
ここでM=K・exp(h)・Kを行列Uによって対角化すると、
・M・U=(U・K・U)(U・exp(h)・U)(U・K・U) …(15)
となる。そして、Uは、h(n)の基底のすべてを同時対角化する行列を意味するのであるから、hを対角化する行列でもあり、さらには、上述の式(1)の定義より、そのリー群exp(h)をも対角化する行列である。そして、D=U・exp(h(n))・Uとしているのだから、上述の式(15)は、
・M・U=U・K・U・D・U・K・U …(16)
となる。
As shown in the above equation (12), this M 1 is
M 1 = K 2 · exp (h 1 ) · K 3 (14)
(H 1 εh (n), K 2 , K 3 εK = exp (k)).
Here, if M 1 = K 2 · exp (h 1 ) · K 3 is diagonalized by the matrix U h ,
U h · M 1 · U h = (U h · K 2 · U h ) (U h · exp (h 1 ) · U h ) (U h · K 3 · U h ) (15)
It becomes. U h means a matrix that diagonalizes all of the bases of h (n) at the same time. Therefore, U h is also a matrix that diagonalizes h 1 , and further, the definition of the above formula (1) Thus, the Lie group exp (h 1 ) is also a matrix that is diagonalized. Since D h = U h · exp (h (n)) · U h , the above equation (15) is
U h · M 1 · U h = U h · K 2 · U h · D h · U h · K 3 · U h ... (16)
It becomes.

また、対角行列計算手段において、U・exp(m)・Uを対角行列Dに対角化する特殊ユニタリ行列Uを算出しているが、M=exp(m)であるため、
(U・M・U)U=D
・M・U=U・D・U …(17)
が成り立つ。ここで、式(16)と(17)とが成り立つためには、
=U・U・U …(18)
=U・U ・U …(19)
であれば十分である。
In the diagonal matrix calculation means, a special unitary matrix U m that diagonalizes U h · exp (m 1 ) · U h into a diagonal matrix D h is calculated, but M 1 = exp (m 1 )
U m * (U h · M 1 · U h ) U m = D h
U h · M 1 · U h = U m · D h · U m * ... (17)
Holds. Here, in order for equations (16) and (17) to hold,
K 2 = U h · U m · U h (18)
K 3 = U h · U m * · U h (19)
If it is enough.

そして、この式(18)(19)を上述の式(14)に代入すると、
=K・exp(h)・K
=(U・U・U)・exp(h)・(U・U ・U
=U・U・(U・exp(h)・U)・U ・U
=U・U・D・U ・U
となる。
すなわち、この式より、分解対象である特殊ユニタリ行列Fは、
F=K
=K・U・U・D・U ・U …(20)
と分解できることが分かる。
Then, substituting this equation (18) (19) into the above equation (14),
M 1 = K 2 · exp (h 1 ) · K 3
= (U h · U m · U h) · exp (h 1) · (U h · U m * · U h)
= U h · U m · (U h · exp (h 1 ) · U h ) · U m * · U h
= U h · U m · D h · U m * · U h
It becomes.
That is, from this equation, the special unitary matrix F to be decomposed is
F = K 1 M 1
= K 1・ U h・ U m・ D h・ U m *・ U h (20)
It can be seen that it can be decomposed.

この式(20)において、行列Uの量子回路は公知である(後述)。また、対角行列Dは、対角行列分解手段及び基本ゲート分解手段により、基本ゲートBGの積に分解できる。従って、残りのKとUが基本ゲートまで分解できれば、Fを基本ゲートに分解できる。そこで、次は、これらKとUを、それぞれ分解対象である特殊ユニタリ行列として本発明の処理を再帰的に繰り返す。なお、Uは対角行列計算手段が算出したものであるからUを、分解対象である特殊ユニタリ行列として特定することは容易であり、また、Uが特定できるならば、残りのKを式(20)から抽出することも容易である。これにより、Fを基本ゲートレベルまで分解できる。 In this equation (20), the quantum circuit of the matrix U h is known (described later). The diagonal matrix D h can be decomposed into a product of the basic gate BG h by the diagonal matrix decomposition means and the basic gate decomposition means. Therefore, if the remaining K 1 and U m can be decomposed to the basic gate, F can be decomposed into the basic gate. Therefore, next, the process of the present invention is recursively repeated with these K 1 and U m as special unitary matrices to be decomposed. Incidentally, the U m from the U m are those diagonal matrix calculation means has calculated, it is easy to identify as a special unitary matrix is decomposed, also if U m can be identified, the remaining K It is also easy to extract 1 from equation (20). Thereby, F can be decomposed | disassembled to a basic gate level.

<第2の発明>
上記課題を解決するために、第2の本発明では、まず、分解対象である2×2の特殊ユニタリ行列F∈SU(2)の自然対数であるリー(Lie)代数表現f∈su(2)を、行列表現変換手段が抽出し、抽出されたリー代数表現fを、カルタン分解手段が、カルタン(Cartan)分解によって、直交する2つのベクトル空間k,mに含まれる要素k∈k,m∈mに分解する。
次に、mを対角行列Dに対角化する特殊ユニタリ行列Uを、対角行列計算手段が算出し、対角行列分解手段が、exp(D)をトフォリ(Toffoli)ゲートTGの積に分解し、基本ゲート分解手段が、上記各トフォリゲートTGを基本ゲートBGの積に分解し、分解要素格納手段が、上記exp(k)、U、U 及びBGを、Fの分解要素(F=exp(k)・(U・BG・U ))として記憶手段に格納する。
<Second invention>
In order to solve the above problem, in the second aspect of the present invention, first, a Lie algebraic expression fε which is a natural logarithm of a 2 n × 2 n special unitary matrix FεSU (2 n ) to be decomposed. The matrix representation conversion unit extracts su (2 n ), and the extracted Lie algebra representation f is converted into the element k included in the two orthogonal vector spaces k and m by Cartan decomposition. 1 that is an element of the set K, decomposed into m 1 ∈m.
Next, a special unitary matrix U 1 that diagonalizes m 1 into a diagonal matrix D 1 is calculated by a diagonal matrix calculation means, and a diagonal matrix decomposition means converts exp (D 1 ) to a toffoli gate. decomposing the product of TG 1, the basic gate decomposing means, the respective Toffoli gate TG 1 is decomposed into a product of the basic gate BG 1, the resolution element storing means, said exp (k 1), U 1 , U 1 * And BG 1 are stored in the storage means as F decomposition elements (F = exp (k 1 ) · (U 1 · BG 1 · U 1 * )).

ここで、カルタン分解手段において、リー代数表現fを、直交するベクトル空間k,mに分解しているため、k1∈k,m∈mとすると、

Figure 2005332242
が成り立つ。また、k,mに対応するリー群K=exp(k)及びM=exp(m)は、F=Kの関係を満たす。 Here, in the Cartan decomposition unit, the Lie algebra expressions f, orthogonal vector space k, because it decomposed into m, k 1 that is an element of the set K, When m 1 ∈m,
Figure 2005332242
Holds. Also, Lie groups corresponding to k 1, m 1 K 1 = exp (k 1) and M 1 = exp (m 1) satisfy the relationship of F = K 1 M 1.

また、対角行列計算手段において、mを対角行列Dに対角化する特殊ユニタリ行列Uを算出している。そして、上述の式(1)の定義より、この特殊ユニタリ行列Uは、mのリー群M=exp(m)を対角行列exp(D)に対角化する行列である。従って、この特殊ユニタリ行列Uを用いれば、Mは、
=U・exp(D)・U …(21)
と書ける。
従って、分解対象である特殊ユニタリ行列Fは、
F=K
=K・U・exp(D)・U …(22)
と分解できることが分かる。
Further, the diagonal matrix calculation means calculates a special unitary matrix U 1 that diagonalizes m 1 into a diagonal matrix D 1 . Then, from the definition of the aforementioned formula (1), the special unitary matrix U 1 is a matrix that diagonalization to m 1 of Lie groups M 1 = exp (m 1) a diagonal matrix exp (D 1) . Therefore, using this special unitary matrix U 1 , M 1 is
M 1 = U 1 · exp (D 1 ) · U 1 * (21)
Can be written.
Therefore, the special unitary matrix F to be decomposed is
F = K 1 M 1
= K 1・ U 1・ exp (D 1 ) ・ U 1 * (22)
It can be seen that it can be decomposed.

この式(22)において、対角行列Dは、対角行列分解手段及び基本ゲート分解手段により、基本ゲートBGの積に分解できる。従って、残りのKとUが基本ゲートまで分解できれば、Fを基本ゲートに分解できる。そこで、次は、これらKとUを、それぞれ分解対象である特殊ユニタリ行列として本発明の処理を再帰的に繰り返す。なお、Uは対角行列計算手段が算出したものであるからUを、分解対象である特殊ユニタリ行列として特定することは容易であり、また、Uが特定できるならば、残りのKを式(22)から抽出することも容易である。これにより、Fを基本ゲートレベルまで分解できる。 In this equation (22), the diagonal matrix D 1 can be decomposed into the product of the basic gate BG 1 by the diagonal matrix decomposition means and the basic gate decomposition means. Therefore, if the remaining K 1 and U 1 can be decomposed to the basic gate, F can be decomposed into the basic gate. Therefore, next, the process of the present invention is recursively repeated using these K 1 and U 1 as special unitary matrices to be decomposed. Incidentally, the U 1 from U 1 are those diagonal matrix calculation means has calculated, it is easy to identify as a special unitary matrix is decomposed, also if U 1 can be identified, the remaining K It is also easy to extract 1 from equation (22). Thereby, F can be decomposed | disassembled to a basic gate level.

以上のように、本発明では、カルタン分解結果の一部を対角行列に置き換えることとしたため、再帰的にカルタン分解を適用することが可能となる。これにより、任意のユニタリ行列を自動的に基本ゲートに分解する処理をコンピュータ上で実現することが可能となる。   As described above, in the present invention, a part of the result of cartan decomposition is replaced with a diagonal matrix, so that it is possible to apply cartan decomposition recursively. As a result, it is possible to realize processing for automatically decomposing an arbitrary unitary matrix into basic gates on a computer.

以下、本発明の実施の形態を図面を参照して説明する。
〔第1の実施の形態〕
まず、本発明における第1の実施の形態について説明する。
<構成>
まず、本形態におけるユニタリ行列分解装置の構成を説明する。
図1は、本形態におけるユニタリ行列分解装置1の構成を説明するためのブロック図である。
ユニタリ行列分解装置1は、公知のコンピュータに所定のプログラムを実行させることにより構築され、入力部2、主記憶装置3(「記憶手段」に相当)、構造判定部4、行列表現変換部5、カルタン分解部6、対角行列計算部7、M分解部、対角行列分解部9、基本ゲート分解部10、分解要素格納部11及び出力部12を有している。
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[First Embodiment]
First, a first embodiment of the present invention will be described.
<Configuration>
First, the configuration of the unitary matrix decomposition apparatus according to this embodiment will be described.
FIG. 1 is a block diagram for explaining the configuration of a unitary matrix decomposition apparatus 1 according to this embodiment.
The unitary matrix decomposition apparatus 1 is constructed by causing a known computer to execute a predetermined program, and includes an input unit 2, a main storage device 3 (corresponding to “storage means”), a structure determination unit 4, a matrix expression conversion unit 5, It has a Cartan decomposition unit 6, a diagonal matrix calculation unit 7, an M decomposition unit, a diagonal matrix decomposition unit 9, a basic gate decomposition unit 10, a decomposition element storage unit 11, and an output unit 12.

<主記憶装置>
主記憶装置3は、2×2の特殊ユニタリ行列(SU(2))と、当該特殊ユニタリ行列の自然対数であるリー(Lie)代数表現(su(2))と、を対応付けて格納する。そして、分解対象とした行列を、その分解後の積の形に置き換えていく。
<Main memory>
The main storage device 3 corresponds to a 2 n × 2 n special unitary matrix (SU (2 n )) and a Lie algebraic expression (su (2 n )) that is a natural logarithm of the special unitary matrix. Store with attachments. Then, the matrix to be decomposed is replaced with the product form after the decomposition.

<構造判定部>
構造判定部4は、主記憶装置3に格納された特殊ユニタリ行列が基本ゲートであるか否かを判断し、基本ゲートでないと判断した特殊ユニタリ行列を主記憶装置3から抽出し、抽出した特殊ユニタリ行列がSU(4)に含まれるか否かを判定する。
ここで、抽出した特殊ユニタリ行列がSU(4)に含まれると判定された場合、構造判定部4は、その特殊ユニタリ行列を基本ゲート分解部10に渡す。一方、抽出した特殊ユニタリ行列がSU(4)に含まれないと判定された場合、構造判定部4は、その特殊ユニタリ行列を行列表現変換部5に渡す。なお、この行列表現変換部5に渡される特殊ユニタリ行列は、主記憶装置3に格納された特殊ユニタリ行列のうち、基本ゲートを除く、n≧3の特殊ユニタリ行列となる(「分解対象の特殊ユニタリ行列F」に相当)。また、特殊ユニタリ行列がSU(4)に含まれる(特殊ユニタリ行列がn=2である)とは、特殊ユニタリ行列が4×4の行列となっている場合に限られず、各行や列の0以外の要素の数の最大値が4である場合も含まれる。
<Structure determination unit>
The structure determination unit 4 determines whether or not the special unitary matrix stored in the main storage device 3 is a basic gate, extracts the special unitary matrix determined not to be a basic gate from the main storage device 3, and extracts the extracted special unitary matrix. It is determined whether or not the unitary matrix is included in SU (4).
Here, when it is determined that the extracted special unitary matrix is included in the SU (4), the structure determination unit 4 passes the special unitary matrix to the basic gate decomposition unit 10. On the other hand, when it is determined that the extracted special unitary matrix is not included in SU (4), the structure determination unit 4 passes the special unitary matrix to the matrix representation conversion unit 5. The special unitary matrix passed to the matrix representation conversion unit 5 is a special unitary matrix of n ≧ 3 excluding the basic gate among the special unitary matrices stored in the main storage device 3 (“the special unit matrix to be decomposed” Equivalent to unitary matrix F). The special unitary matrix included in SU (4) (the special unitary matrix is n = 2) is not limited to the case where the special unitary matrix is a 4 × 4 matrix, and 0 in each row or column. The case where the maximum value of the number of elements other than is 4 is also included.

<行列表現変換部>
行列表現変換部5は、構造判定部4から受け取った分解対象の特殊ユニタリ行列F∈SU(2)に対応するリー代数表現f∈su(2)が主記憶装置3に格納されているか否かを判断する。
ここで、対応するリー代数表現fが格納されていると判断された場合、行列表現変換部5は、分解対象の特殊ユニタリ行列F∈SU(2)に対応するリー代数表現f∈su(2)を主記憶装置3から抽出する。一方、対応するリー代数表現fが格納されていないと判断された場合、行列表現変換部5は、対角行列計算部7を呼び出し、当該Fを対角行列Dに対角化する行列Uを計算させ、U・log(D)・U の演算結果を、当該Fに対応するリー代数表現fとして、主記憶装置3に格納する。
<Matrix representation conversion unit>
Whether the matrix representation conversion unit 5 stores the Lie algebraic representation fεsu (2 n ) corresponding to the special unitary matrix FεSU (2 n ) to be decomposed received from the structure determination unit 4 in the main storage device 3. Judge whether or not.
Here, when it is determined that the corresponding Lie algebra expression f is stored, the matrix expression conversion unit 5 uses the Lie algebra expression f∈su () corresponding to the special unitary matrix F∈SU (2 n ) to be decomposed. 2 n ) is extracted from the main memory 3. On the other hand, when it is determined that the corresponding Lie algebra representation f is not stored, the matrix representation conversion unit 5 calls the diagonal matrix calculation unit 7 and diagonalizes the F into the diagonal matrix D 2 . 2 is calculated, and the calculation result of U 2 · log (D 2 ) · U 2 * is stored in the main storage device 3 as the Lie algebra expression f corresponding to F.

<対角行列計算部>
対角行列計算部7は、入力された行列を対角化するユニタリ行列を求める。そして、その対角化するユニタリ行列Uと、それによって対角化した対角行列Dとを出力する。具体的には、例えば、以下のアルゴリズムによりこの演算を行う。
[アルゴリズム1:入力行列のサイズが小さい場合]
1.固有方程式 det(A−λI)=0を厳密に解いて固有値λ∈Cを求める。なお、Aはm(=2)次の入力行列を、Iは単位行列を、det(...)は行列式の値をそれぞれ意味する。
<Diagonal matrix calculator>
The diagonal matrix calculation unit 7 obtains a unitary matrix that diagonalizes the input matrix. Then, the unitary matrix U to be diagonalized and the diagonal matrix D diagonalized thereby are output. Specifically, for example, this calculation is performed by the following algorithm.
[Algorithm 1: When input matrix size is small]
1. Eigenvalue det (A−λI) = 0 is solved exactly to obtain eigenvalue λεC. A denotes an m (= 2 n ) -order input matrix, I denotes a unit matrix, and det (...) Denotes a determinant value.

2.求まった各固有値λをAν=λνに代入し、この方程式を解くことにより、各固有値λに対応する固有ベクトルν∈C,ν≠0を求める。
3.求められた固有値λ,λ,…,λ、及びこれらの固有値に対応する固有ベクトルν,ν,…,νから、
U=(ν,ν,…,ν
D=diag(λ,λ,…,λ
を算出する。なお、diag(λ,λ,…,λ)は、λ,λ,…,λを対角成分とする対角行列を意味する。
2. Substituting each obtained eigenvalue λ into Aν = λν and solving this equation, eigenvectors ν∈C m and ν ≠ 0 corresponding to each eigenvalue λ are obtained.
3. The obtained eigenvalues λ 1, λ 2, ..., λ m, and eigenvectors [nu 1 corresponding to these eigenvalues, ν 2, ..., from [nu m,
U = (ν 1 , ν 2 ,..., Ν m )
D = diag (λ 1 , λ 2 ,..., Λ m )
Is calculated. Incidentally, diag (λ 1, λ 2 , ..., λ m) are, λ 1, λ 2, ... , means a diagonal matrix with the lambda m diagonal components.

[アルゴリズム2:入力行列のサイズが大きい場合]
1.入力行列AをHermite行列B(B=Bなる行列)に変換する。
2.BをHermite三重対角行列Jに変換する(相似変換)。
3.Jについて,固有方程式 det(J‐λI)を解く。ここで、Jの固有値はBと等しく、Jは三重対角行列であるため、Bから直接固有方程式を解くよりも簡単に解を求めることができる。
4. 求まったBの固有値からAの固有値λ∈Cを算出する。
5.以降はアルゴリズム1と同様である。
[Algorithm 2: When the input matrix size is large]
1. The input matrix A is converted into a Hermite matrix B (a matrix of B * = B).
2. Convert B to Hermitian tridiagonal matrix J (similar transformation).
3. Solve the eigen equation det (J-λI) for J. Here, since the eigenvalue of J is equal to B and J is a tridiagonal matrix, a solution can be obtained more easily than directly solving the eigenequation from B.
4. The eigenvalue λεC of A is calculated from the obtained eigenvalue of B.
5). The subsequent steps are the same as those of algorithm 1.

なお、アルゴリズム2の「1.」におけるHermite行列への変換には、以下のような手法を利用できる。
(a)入力行列Aがユニタリ行列の場合、B=A+Aとすれば、BはHermite行列となる。この場合、Aの固有値をαとすれば、Bの固有値βは、β=α+α (α は、αの共役複素数)である(「4.」の処理に対応)。
(b)入力行列Aが歪みHermite行列の場合、B=iAとすれば、BはHermite行列となる。この場合、Aの固有値をαとすれば、Bの固有値βは、β=‐iαである(「4.」の処理に対応)。
なお、上記の方法の他にも、適切な相似変換(前処理)を行うことで、QR法やベキ乗法などのよく知られている固有値問題を解くアルゴリズムを利用すれば、固有値を求めることができる。
The following method can be used for conversion to the Hermitian matrix in “1.” of algorithm 2.
(a) When the input matrix A is a unitary matrix, if B = A + A * , B becomes a Hermitian matrix. In this case, if the eigenvalues of A alpha 1 and the eigenvalues beta 1 of B is, β 1 = α 1 + α 1 * (α 1 * is, alpha 1 complex conjugate) is (in the process of "4." Correspondence).
(b) When the input matrix A is a distorted Hermitian matrix, if B = iA, B becomes a Hermitian matrix. In this case, if the eigenvalues of A alpha 1 and the eigenvalues beta 1 of B is β 1 = -iα 1 (corresponding to the processing of "4").
In addition to the above method, an eigenvalue can be obtained by using an algorithm that solves a well-known eigenvalue problem such as QR method or power method by performing appropriate similarity transformation (preprocessing). it can.

<基本ゲート分解部>
基本ゲート分解部10は、トフォリゲートやSU(4)に含まれる行列(主記憶装置3に格納された特殊ユニタリ行列のうち、基本ゲートを除く、n=2の特殊ユニタリ行列)を、SU(2)とCNOTの積(基本ゲートの積)に分解する。
<カルタン分解部>
カルタン分解部6は、受け取ったリー代数表現fを、カルタン(Cartan)分解によって、直交する2つのベクトル空間k,mに含まれる要素k∈k,m∈mの直和に分解する。そして、分解されたmをM分解部8へ渡す。その後、M分解部8から返された分解結果をkとともに、分解要素格納部11へ渡す。
<Basic gate disassembly unit>
The basic gate decomposition unit 10 converts the matrix (n = 2 special unitary matrix excluding the basic gate from the special unitary matrix stored in the main storage device 3) included in the torigate or SU (4) to SU. (2) Decomposes into CNOT product (basic gate product).
<Cartan decomposition part>
Cartan decomposition unit 6 decomposes the received Lie algebra expressions f, by Cartan (Cartan) decomposition, two orthogonal vector space k, the element k 1 that is an element of the set K contained in m, to the direct sum of m 1 ∈m. Then, the decomposed m 1 is passed to the M decomposition unit 8. Thereafter, the decomposition result returned from the M decomposition unit 8 is transferred to the decomposition element storage unit 11 together with k.

<M分解部>
M分解部8は、受け取ったmを対角行列計算部7へ渡し、U・exp(m)・Uを対角行列D(D∈U・exp(h(n))・U)に対角化する特殊ユニタリ行列Uを算出させる。そして、M分解部8は、対角行列計算部7において算出された特殊ユニタリ行列Uと対角行列Dとを受け取り、exp(m)をU・U・D・U ・Uで置き換える。また、M分解部8は、この対角行列Dを対角行列分解部9に渡し、対角行列分解部9から返された分解結果で対角行列Dを置き換え、それらとU、U、U とをカルタン分解部6へ返す。
<M disassembly unit>
The M decomposition unit 8 passes the received m to the diagonal matrix calculation unit 7, and passes U h · exp (m 1 ) · U h to the diagonal matrix D h (D h εU h · exp (h (n)) -A special unitary matrix U m to be diagonalized is calculated in U h ). The M decomposition unit 8 receives the special unitary matrix U m and the diagonal matrix D h calculated by the diagonal matrix calculation unit 7, and expresses exp (m 1 ) as U h · U m · D h · U m. * Replace with Uh. Further, the M decomposition unit 8 passes the diagonal matrix D h to the diagonal matrix decomposition unit 9, and replaces the diagonal matrix D h with the decomposition result returned from the diagonal matrix decomposition unit 9, and replaces them with U h , U m and U m * are returned to the cartan decomposition unit 6.

[行列Uの説明]
前述のように、Uはベクトル空間mに含まれる極大可換部分代数であるカルタン部分代数h(n)の基底のすべてを同時対角化する行列である。すなわち、前述の式(11)で定義されるカルタン部分代数h(n)の基底には、それらすべてを同時対角化するような行列Uが存在する。例えば、g∈su(2)の場合を考えると、(g,k)の組に対するカルタン部分代数h(n)は、

Figure 2005332242
より、
h1=i(α1σ12σ23σ34σ4)∈h(3)
と書ける。この場合、h(3)の基底σ,σ,σ,σのすべてを同時対角化する行列、すなわち、任意のh∈h(3)に対して、
Uh *・h(n)・Uh1・Uh *・σ1・Uh2・Uh *・σ2・Uh3・Uh *・σ3・Uh4・Uh *・σ4・Uh=Dh
が成り立つような行列Uが存在し、その行列Uは以下のようになる。 [Description of Matrix U h ]
As described above, U h is a matrix that simultaneously diagonalizes all the bases of the Cartan partial algebra h (n), which is a maximal commutative partial algebra included in the vector space m. That is, a matrix U h that simultaneously diagonalizes all of them exists in the basis of the cartan partial algebra h (n) defined by the above-described equation (11). For example, considering the case of g∈su (2 3 ), the Cartan partial algebra h (n) for the set of (g, k) is
Figure 2005332242
Than,
h 1 = i (α 1 σ 1 + α 2 σ 2 + α 3 σ 3 + α 4 σ 4 ) ∈h (3)
Can be written. In this case, for a matrix that simultaneously diagonalizes all the bases σ 1 , σ 2 , σ 3 , and σ 4 of h (3), that is, for any h 1 ∈h (3),
U h *・ h (n) ・ U h = α 1・ U h *・ σ 1・ U h + α 2・ U h *・ σ 2・ U h + α 3・ U h *・ σ 3・ U h + α 4・ U h *・ σ 4・ U h = D h
There exists a matrix U h that holds, and the matrix U h is as follows.

Figure 2005332242
ここで、Uh *・σ・Uh(p=1,2,3,4)を計算すると、それぞれ対角行列が求まることから、同時対角化できることがわかる。
Figure 2005332242
Here, when U h * · σ p · U h (p = 1, 2, 3, 4) is calculated, a diagonal matrix is obtained, and it can be seen that simultaneous diagonalization is possible.

このような行列Uは、n≧3のとき、図3のように規則的に構成することができ、かつ、U =U −1=Uが成り立つ。すなわち、n=3のときは、図3の(a)に示すように、2つのCNOTゲート21,22と、その目標ビット経路上にCNOTゲート21,22に挟まれて配置されたアダマール(Hadamard)ゲート31と、これらの目標ビット及び制御ビット以外の第3の量子ビット経路上に配置されるアダマールゲート32‐1とによって行列Uh(3)が構成される(Uh(β)は、n=βの行列Uを意味する。)。また、n=4のときは、図3の(b)に示すように、さらに第4の量子ビット経路上に配置されるアダマールゲート32‐2が追加されることによって行列Uh(4)が構成される。そして、これを一般化すると、図3の(c)に示すように、2つのCNOTゲート21,22と、その目標ビット経路上にCNOTゲート21,22に挟まれて配置されたアダマールゲート31と、アダマールゲート32‐1〜nとによって行列Uh(n)が構成される(行列Uの説明終わり)。 Such a matrix U h can be regularly configured as shown in FIG. 3 when n ≧ 3, and U h * = U h −1 = U h holds. That is, when n = 3, as shown in FIG. 3A, two CNOT gates 21 and 22 and a Hadamard (Hadamard) arranged between the CNOT gates 21 and 22 on the target bit path. ) The gate 31 and the Hadamard gate 32-1 arranged on the third qubit path other than these target bits and control bits form a matrix U h (3) (U h (β) is meaning n = β matrix U h ). Further, when n = 4, as shown in FIG. 3B, the matrix U h (4) is further obtained by adding the Hadamard gate 32-2 arranged on the fourth qubit path. Composed. When this is generalized, as shown in FIG. 3C, two CNOT gates 21 and 22 and Hadamard gates 31 disposed between the CNOT gates 21 and 22 on the target bit path The Hadamard gates 32-1 to n constitute a matrix U h (n) (end of description of the matrix U h ).

<対角行列分解部>
対角行列分解部9は、2×2の対角行列を、2n−1個のn量子ビットのトフォリ(Toffoli)ゲートの積に分解する。なお、ここでの「トフォリゲート」には、簡易な操作によりトフォリゲートの形になる行列も含まれる。
例えば、n=3のときの対角行列
<Diagonal matrix decomposition unit>
The diagonal matrix decomposition unit 9 decomposes a 2 n × 2 n diagonal matrix into a product of 2 n−1 n qubit toffoli gates. In addition, the “toligate” here includes a matrix that becomes a shape of the torigate by a simple operation.
For example, a diagonal matrix when n = 3

Figure 2005332242
の場合、対角行列分解部9は、この対角行列Dを4個の3量子ビットのトフォリゲートの積に分解する。すなわち、D=F
Figure 2005332242
と分解する。
Figure 2005332242
In this case, the diagonal matrix decomposition unit 9 decomposes the diagonal matrix D into a product of four 3-qubit torigates. That is, D = F 1 F 2 F 3 F 4
Figure 2005332242
And disassemble.

ここで、Fは3量子ビットのトフォリゲートそのものである。F,F,Fは、行の入れ替えをすれば、やはり3量子ビットのトフォリゲートで実現できる。例えば、Fの場合は、まず上半分と下半分とを入れ替え(第1量子ビットの0,1を反転させる)、次に下半分のうち、さらに上半分と下半分とを入れ替える(第2量子ビットの0,1を反転させる)ことで3量子ビットのトフォリゲートの形になる。本発明では、F,F,Fのようなものも「トフォリゲート」と呼ぶことにする。
対角行列分解部9は、対角行列をトフォリゲートに分解すると、次に、基本ゲート分解部10を呼び出し、このトフォリゲートを基本ゲートに分解させる。そして、その分解結果をM分解部8に返す。
Here, F 4 is a 3-qubit torigate itself. F 1 , F 2 , and F 3 can be realized by a 3-qubit torigate if the rows are exchanged. For example, in the case of F 1 , first, the upper half and the lower half are exchanged (0 and 1 of the first qubit are inverted), and then the upper half and the lower half of the lower half are further exchanged (second By reversing 0 and 1 of the qubit), it becomes a form of a 3-qubit torigate. In the present invention, such things as F 1 , F 2 , and F 3 are also referred to as “toforigates”.
When the diagonal matrix decomposition unit 9 decomposes the diagonal matrix into torigates, it next calls the basic gate decomposition unit 10 to decompose this torigate into basic gates. Then, the decomposition result is returned to the M decomposition unit 8.

<基本ゲート分解部>
基本ゲート分解部10は、SU(4)に含まれる特殊ユニタリ行列や、トフォリゲートを、行・列の入れ替えや対角化を利用して基本ゲートの積に分解する。なお、n量子ビットのトフォリゲートは、O(n2)の基本ゲートで実現できる(例えば、b「A.Barenco et al., Elementary gates for quantum computation, Phys. Rev. A52, pp.3457-3467,1995.」や「C. Moore and M. Nilsson, parallel quantum computation and quantum codes, SIAM J. Comp, Vol.31, No.3, pp.799-815, 2001.」を参照。)。
<Basic gate disassembly unit>
The basic gate decomposition unit 10 decomposes the special unitary matrix and the torigate included in SU (4) into products of basic gates using row / column replacement and diagonalization. Note that an n-qubit torigate can be realized by a basic gate of O (n 2 ) (for example, b “A. Barenco et al., Elementary gates for quantum computation, Phys. Rev. A52, pp. 3457- 3467, 1995. ”and“ C. Moore and M. Nilsson, parallel quantum computation and quantum codes, SIAM J. Comp, Vol.31, No.3, pp.799-815, 2001 ”).

<分解要素格納部>
分解要素格納部11は、exp(k)、U、U、U 及び基本ゲートBGを、Fの分解要素(F=exp(k)・(U・U・BG・U ・U=exp(m)))として主記憶装置3に格納する(ここで、k∈k、m∈m)。
<処理>
次に、本形態におけるユニタリ行列分解方法について説明する。
図2は、本形態におけるユニタリ行列分解方法を説明するためのフローチャートである。以下、図1及び図2を用い、本形態におけるユニタリ行列の分解分解処理について説明する。
まず、任意のユニタリ行列が入力部2から入力される。入力されたユニタリ行列は、入力部2において特殊ユニタリ行列F∈SU(2)に変換され、行列リストFとして主記憶装置3に格納される。
<Disassembly element storage unit>
The decomposition element storage unit 11 stores exp (k 1 ), U h , U m , U m *, and the basic gate BG h into F decomposition elements (F = exp (k 1 ) · (U h · U m · BG h · U m * · U h = exp (m 1))) as stored in the main memory 3 (where, k 1 ∈k, m 1 ∈m ).
<Processing>
Next, a unitary matrix decomposition method according to this embodiment will be described.
FIG. 2 is a flowchart for explaining a unitary matrix decomposition method according to this embodiment. Hereinafter, the unitary matrix decomposition processing according to the present embodiment will be described with reference to FIGS. 1 and 2.
First, an arbitrary unitary matrix is input from the input unit 2. The input unitary matrix is converted into a special unitary matrix FεSU (2 n ) in the input unit 2 and stored in the main storage device 3 as a matrix list F.

次に、構造判定部4が、主記憶装置3に格納されたすべての特殊ユニタリ行列F(主記憶装置3の行列リストに含まれる行列F)が基本ゲートであるか否かが判断する(ステップS1)。ここで、主記憶装置3に格納されたすべての特殊ユニタリ行列Fが基本ゲートであると判断された場合には処理を終了する。
一方、基本ゲートでない特殊ユニタリ行列Fが行列リストに存在すると判断された場合、構造判定部4は、行列リストの中で最初の基本ゲートでない特殊ユニタリ行列Fを主記憶装置3から読み出す(抽出する)(ステップS2)。特殊ユニタリ行列Fを抽出した構造判定部4は、抽出した特殊ユニタリ行列がSU(4)に含まれるか否かを判断する(ステップS3)。ここで、抽出した特殊ユニタリ行列がSU(4)に含まれると判断された場合(n<3であると判断された場合)、構造判定部4は、その特殊ユニタリ行列Fを基本ゲート分解部10に送り、基本ゲート分解部10は、この特殊ユニタリ行列Fを基本ゲートの積で置き換えて主記憶装置3に格納して処理を終了する。
Next, the structure determination unit 4 determines whether all the special unitary matrices F (the matrix F included in the matrix list of the main storage device 3) stored in the main storage device 3 are basic gates (step). S1). Here, if it is determined that all the special unitary matrices F stored in the main storage device 3 are basic gates, the processing is terminated.
On the other hand, when it is determined that the special unitary matrix F that is not a basic gate exists in the matrix list, the structure determination unit 4 reads (extracts) the special unitary matrix F that is not the first basic gate in the matrix list from the main storage device 3. (Step S2). The structure determination unit 4 that extracted the special unitary matrix F determines whether or not the extracted special unitary matrix is included in SU (4) (step S3). Here, when it is determined that the extracted special unitary matrix is included in SU (4) (when it is determined that n <3), the structure determination unit 4 converts the special unitary matrix F into the basic gate decomposition unit. 10, the basic gate decomposition unit 10 replaces the special unitary matrix F with the product of the basic gates and stores it in the main storage device 3 and ends the process.

一方、抽出した特殊ユニタリ行列がSU(4)に含まれないと判断された場合(n≧3であると判断された場合)、構造判定部4は、その特殊ユニタリ行列F(「分解対象である特殊ユニタリ行列F」に相当)を行列表現変換部5に送る。これを受け取った行列表現変換部5は、その分解対象である特殊ユニタリ行列Fに対応するリー代数表現fが計算されているか否か(主記憶装置3に格納されているか否か)を判断する(ステップS5)。ここで、対応するリー代数表現fが計算されていないと判断された場合、行列表現変換部5は、このリー代数表現fを求めて主記憶装置3に格納する(ステップS6)。具体的には、例えばまず、行列表現変換部5が対角行列計算部7を呼び出し、分解対象である特殊ユニタリ行列Fを対角行列Dに対角化する行列Uを算出させ、この行列U及び対角行列Dを受け取る。そして、行列表現変換部5は、
log(F)=log(U・D・U
=U・log(D)・U
の演算結果を、当該Fに対応するリー代数表現fとして主記憶装置3に格納する。このようにFを対角行列Dに分解してlogの演算を行うことにより、直接log(F)を計算するよりも演算量を低減させることができる。なお、logは式(1)で定義した指数演算に対応する自然対数である。
On the other hand, when it is determined that the extracted special unitary matrix is not included in SU (4) (when it is determined that n ≧ 3), the structure determination unit 4 determines that the special unitary matrix F (“with decomposition target”). (Corresponding to a certain special unitary matrix F)) is sent to the matrix representation conversion unit 5. Receiving this, the matrix representation conversion unit 5 determines whether or not the Lie algebra representation f corresponding to the special unitary matrix F that is the decomposition target is calculated (whether or not it is stored in the main storage device 3). (Step S5). If it is determined that the corresponding Lie algebra expression f has not been calculated, the matrix expression conversion unit 5 obtains this Lie algebra expression f and stores it in the main storage device 3 (step S6). Specifically, for example, first, the matrix representation conversion unit 5 calls the diagonal matrix calculation unit 7 to calculate the matrix U 2 that diagonalizes the special unitary matrix F to be decomposed into the diagonal matrix D 2 . A matrix U 2 and a diagonal matrix D 2 are received. Then, the matrix representation conversion unit 5
log (F) = log (U 2 · D 2 · U 2 * )
= U 2 · log (D 2 ) · U 2 *
Is stored in the main storage device 3 as the Lie algebra expression f corresponding to F. Thus, by performing by decomposing F diagonal matrices D 2 log operation, it is possible to reduce the amount of calculation than calculating a direct log (F). Note that log is a natural logarithm corresponding to the exponential operation defined by equation (1).

一方、ステップS5の判断で、対応するリー代数表現fが計算されていると判断された場合、行列表現変換部5は、リー代数表現fの算出を行わない。
その後、行列表現変換部5は、分解対象である特殊ユニタリ行列F∈SU(2)に対応するリー代数表現f∈su(2)を主記憶装置3から抽出し(ステップS7)、カルタン分解部6に送る。カルタン分解部6は、送られたリー代数表現fを、カルタン分解によって、直交する2つのベクトル空間k,mに含まれる要素k∈k,m∈mに分解し、対応するF=exp(f)をexp(k)・exp(m)で置き換える関係を保存しておく(ステップS8)。なお、このカルタン分解は、前述のように(図9)、分解された各行列の要素を格子状にとればよい。
On the other hand, if it is determined in step S5 that the corresponding Lie algebra expression f has been calculated, the matrix expression conversion unit 5 does not calculate the Lie algebra expression f.
After that, the matrix representation conversion unit 5 extracts the Lie algebra representation fεsu (2 n ) corresponding to the special unitary matrix FεSU (2 n ) to be decomposed from the main storage device 3 (step S7). This is sent to the disassembly unit 6. Cartan decomposition unit 6 decomposes the sent Lie algebra expressions f, by Cartan decomposition, two orthogonal vector space k, the element k 1 that is an element of the set K contained in m, to m 1 ∈m, corresponding F = exp The relationship of replacing (f) with exp (k 1 ) · exp (m 1 ) is stored (step S8). In this cartane decomposition, as described above (FIG. 9), the elements of each decomposed matrix may be taken in a lattice shape.

カルタン分解部6において分解されたmは、M分解部8に送られ、M分解部8は、これを対角行列計算部7に送る。そして、対角行列計算部7は、U・exp(m)・Uを対角行列Dに対角化する特殊ユニタリ行列Uを算出し、対角行列Dと特殊ユニタリ行列UとをM分解部8に返す。M分解部8は、exp(m)をU・U・D・U ・Uで置き換える関係を保存しておく(ステップS9)。
次に、M分解部8は、対角行列Dを対角行列分解部9に送り、対角行列分解部9は、対角行列DをトフォリゲートTGの積に分解する(ステップS10)。対角行列分解部9は、対角行列DをトフォリゲートTGの積で置き換える関係を保存し、これらのトフォリゲートTGを基本ゲート分解部10に送る。基本ゲート分解部10は、送られた各トフォリゲートTGを基本ゲートBGの積に分解し(ステップS11)、トフォリゲートTGを基本ゲートBGの積に置き換えた関係を対角行列分解部9に返す。
The m 1 decomposed in the cartan decomposition unit 6 is sent to the M decomposition unit 8, and the M decomposition unit 8 sends this to the diagonal matrix calculation unit 7. The diagonal matrix calculation unit 7, U h · exp (m 1 ) · U h diagonalizing the diagonal matrix D h was calculated special unitary matrix U m, the diagonal matrix D h and special unitary matrix U m is returned to the M decomposition unit 8. The M decomposition unit 8 stores a relationship in which exp (m 1 ) is replaced with U h , U m , D h , U m *, and U h (step S9).
Next, the M decomposition unit 8 sends the diagonal matrix D h to the diagonal matrix decomposition unit 9, and the diagonal matrix decomposition unit 9 decomposes the diagonal matrix D h into a product of the torigate TG h (step). S10). Diagonal matrix decomposition unit 9 stores the relationships to replace diagonal matrix D h the product of Toffoli gates TG h, sends these Toffoli gate TG h to the basic gate decomposition unit 10. The basic gate decomposition unit 10 decomposes each sent torigate TG h into a product of the basic gate BG h (step S11), and replaces the relationship of replacing the torigate TG h with the product of the basic gate BG h as a diagonal. It returns to the matrix decomposition unit 9.

対角行列分解部9は、保存しておいた「対角行列DをトフォリゲートTGの積で置き換える関係」を用い、基本ゲート分解部10から受け取った基本ゲートBGの積で対角行列Dを置き換える。そして、その基本ゲートBGの積で置き換えられた対角行列DをM分解部8に返す。
M分解部8は、保存しておいた「exp(m)をU・U・D・U ・Uで置き換える関係」を用い、対角行列分解部9から送られた基本ゲートBGの積(=D)でU・U・D・U ・Uを置き換え、その置き換え結果exp(m)=U・U・BG・U ・Uをカルタン分解部6に返す。
The diagonal matrix decomposition unit 9 uses the stored “relationship of replacing the diagonal matrix D h with the product of the torigate TG h ” and uses the product of the basic gate BG h received from the basic gate decomposition unit 10 as a pair. replacing the diagonal matrix D h. Then, the diagonal matrix D h replaced by the product of the basic gate BG h is returned to the M decomposition unit 8.
The M decomposition unit 8 is sent from the diagonal matrix decomposition unit 9 using the stored “relationship of exp (m 1 ) with U h , U m , D h , U m * , U h ”. U h · U m · D h · U m * · U h is replaced with the product of the basic gate BG h (= D h ), and the replacement result exp (m 1 ) = U h · U m · BG h · U m * Return U h to the cartan decomposition unit 6.

カルタン分解部6は、保存しておいた「F=exp(f)をexp(k)・exp(m)で置き換える関係」を用い、M分解部8から送られたexp(m)=U・U・BG・U ・UでF=exp(f)を置き換え、その置き換え結果F=exp(k)・U・U・BG・U ・Uを分解要素格納部11に送る。
分解要素格納部11は、exp(k)、k、U、U、U 及びBGを、Fの分解要素(F=exp(k)・(U・U・BG・U ・U))として主記憶装置3に格納する(ステップS12)。
Cartan decomposition unit 6, using the "relation replaced by F = exp a (f) exp (k 1) · exp (m 1) " to save had been, exp sent from M decomposition section 8 (m 1) = U h · U m · BG h · U m * · U h replaces F = exp (f), and the replacement result F = exp (k 1 ) · U h · U m · BG h · U m * · U h is sent to the disassembly element storage unit 11.
The decomposition element storage unit 11 converts exp (k 1 ), k 1 , U h , U m , U m *, and BG h into F decomposition elements (F = exp (k 1 ) · (U h · U m · BG h · U m * · U h )) and stored in the main memory 3 (step S12).

ここで、主記憶装置3に格納されたUの量子回路構成は前述の通り公知である(図3)。また、当然、基本ゲートBGの回路構成も公知である。従って、exp(k)及びUがU或いはBGに分解できれば、Fは実現可能な量子回路に分解されたことになる。そのため、以降は、このexp(k)及びUを新たな特殊ユニタリ行列F∈SU(2)として、上述したステップS1〜S12までの処理を再帰的に繰り返す。これにより、すべての行列が実現可能な量子回路に分解される。
<3量子ビットのFourier変換の行列の分解>
次に、本形態の具体例について説明する。この例では、3量子ビット(n=3)のFourier変換の行列の分解を行う。
Here, the quantum circuit configuration of U h stored in the main memory 3 is known as described above (FIG. 3). In addition, of course, it is also known circuit configuration of the basic gate BG h. Therefore, if exp (k 1 ) and U m can be decomposed into U h or BG h , F is decomposed into a realizable quantum circuit. Therefore, thereafter, the exp (k 1 ) and U m are set as a new special unitary matrix FεSU (2 n ), and the above-described steps S1 to S12 are recursively repeated. Thereby, all matrices are decomposed into realizable quantum circuits.
<Decomposition of Fourier transform matrix of 3 qubits>
Next, a specific example of this embodiment will be described. In this example, decomposition of a matrix of Fourier transform of 3 qubits (n = 3) is performed.

<基本行列>
まず、この例の分解に使用する基本的な行列を示す。

Figure 2005332242
Eは2×2の単位行列で、NはNOTゲート、Hはアダマールゲートである。また、Cは第1量子ビットが1のときだけ、第2量子ビットの状態を反転させる制御NOT(CNOT)ゲートで、CはCNOTの逆で、第1量子ビットが0ときだけ、第2量子ビットの状態を反転させるゲートである。また、Sは第1量子ビットと第2量子ビットの状態を入れ替えるSWAPゲートである。 <Basic matrix>
First, the basic matrix used for the decomposition of this example is shown.
Figure 2005332242
E is a 2 × 2 unit matrix, N is a NOT gate, and H is a Hadamard gate. Further, only when C 1 first qubit is 1, the control NOT (CNOT) gate for inverting the state of the second qubit, C 2 is the inverse of CNOT, only when the first qubit is zero, the It is a gate that inverts the state of 2 qubits. S is a SWAP gate that switches the state of the first qubit and the second qubit.

<入力>
3量子ビットのFourier変換の行列U∈SU(8)は、次の行列である。

Figure 2005332242
<Input>
The matrix U F ∈ SU (8) of the Fourier transform of 3 qubits is the following matrix.
Figure 2005332242

まず、この行列U(「F」に相当)を入力部2(図1)に入力し、主記憶装置3に格納する。この行列Uは、基本ゲートでなく(ステップS1)、SU(4)にも含まれない(ステップS3)。また、この時点では、行列Uに対応するLie代数表現も計算されていない(ステップS4)。そこでまず、行列表現変換部5は、対角行列計算部7を呼び出し、行列Uに対応するLie代数表現fを求める(ステップS5,S6)。つまり、U=exp(f)であることから、行列表現変換部5は、Uを対角行列Dに対角化する行列Uを利用し、
=U・D・U =exp(f)
f=log(U)=log(U・D・U )=U・log(D)・U
により、Lie代数表現fを求める。ここで、この対角化を実現する行列Uは、ユニタリ行列の性質を満たすようにUの固有ベクトルを縦に並べた行列である。すなわち、

Figure 2005332242
である。 First, this matrix U F (corresponding to “F”) is input to the input unit 2 (FIG. 1) and stored in the main memory 3. The matrix U F is not basic gate (step S1), and not included in SU (4) (Step S3). Further, at this time, even not calculated Lie algebra expressions corresponding to the matrix U F (step S4). Therefore, first, the matrix representation conversion unit 5 calls the diagonal matrix calculation unit 7 to obtain the Lie algebra representation f corresponding to the matrix U F (steps S5 and S6). That is, since U F = exp (f), the matrix representation conversion unit 5 uses a matrix U 1 that diagonalizes U F into a diagonal matrix D f .
U F = U 1 · D f · U 1 * = exp (f)
f = log (U F ) = log (U 1 · D f · U 1 * ) = U 1 · log (D f ) · U 1 *
Thus, the Lie algebra expression f is obtained. Here, the matrix U 1 to realize the diagonalization is a matrix obtained by arranging eigenvectors of U F vertically to meet the nature of the unitary matrix. That is,
Figure 2005332242
It is.

そして、行列Uに対応するLie代数表現fは、

Figure 2005332242
である。このように算出されたLie代数表現fは、行列Uに対応付けられて主記憶装置3に格納される。 And the Lie algebraic expression f corresponding to the matrix U F is
Figure 2005332242
It is. Thus calculated Lie algebra expressions f is stored in association with the matrix U F in the main storage device 3.

次に、行列表現変換部5は、主記憶装置3から行列Uに対応するLie代数表現fを抽出し(ステップS7)、カルタン分解部6に送る。カルタン分解部6は、カルタン分解を利用して、このfを

Figure 2005332242
という2つの行列k,mの直和に分解する(ステップS8)。この分解は、図9のように格子状に要素を抽出することによってできる。すなわち、
Figure 2005332242
となる。そして、K1=exp(k),M=exp(m)より、U=K1・Mの分解が求まる。 Next, the matrix representation conversion unit 5 extracts a Lie algebra expressions f corresponding to the matrix U F from the main memory 3 (step S7), and sends it to the Cartan decomposition unit 6. The cartan decomposition unit 6 uses the cartan decomposition to convert this f into
Figure 2005332242
Are decomposed into a direct sum of the two matrices k 1 and m 1 (step S8). This decomposition can be performed by extracting elements in a grid pattern as shown in FIG. That is,
Figure 2005332242
It becomes. Then, from K 1 = exp (k 1 ) and M 1 = exp (m 1 ), the decomposition of U F = K 1 · M 1 is obtained.

カルタン分解部6で算出されたmは、M分解部8に送られ、M分解部8は、対角行列計算部7を呼び出し、M=exp(m)をM=U・U・D・U ・Uで置き換える(ステップS9)。ここで、Uは前述の式(23)で示される行列であり、図3の量子回路で実現できるものである。DはU・M・Uの固有値が対角成分にならんだ対角行列で、
=diag(i,−i,i,−i,1,1,1,1) …(24)
となる。
M 1 calculated by the Cartan decomposition unit 6 is sent to the M decomposition unit 8, and the M decomposition unit 8 calls the diagonal matrix calculation unit 7, and M 1 = exp (m 1 ) M 1 = U h. replaced by U m · D h · U m * · U h ( step S9). Here, U h is a matrix represented by the aforementioned equation (23), and can be realized by the quantum circuit of FIG. D h is a diagonal matrix in which the eigenvalues of U h , M 1, and U h are diagonal components,
D h = diag (i, -i, i, -i, 1, 1, 1, 1) (24)
It becomes.

この対角行列Dは、対角行列分解部9において、<対角行列分解部>の説明で述べたように、4個の3量子ビットのトフォリゲートの積に分解されるが、F,Fは単位行列となるため、2個の3量子ビットのトフォリゲートの積に分解される(ステップS10)。そして、さらに基本ゲート分解部10において以下のような基本ゲートの積に分解される(ステップS11)。

Figure 2005332242
である。 This diagonal matrix D h is decomposed by the diagonal matrix decomposition unit 9 into a product of four 3-qubit torigates as described in the explanation of <diagonal matrix decomposition unit> Since 3 and F 4 are unit matrices, they are decomposed into products of two 3-qubit torigates (step S10). The basic gate decomposition unit 10 further decomposes the product into the following basic gate products (step S11).
Figure 2005332242
It is.

また、このような対角化を実現する行列U

Figure 2005332242
である。
そして、以上のような対角行列Dの基本ゲートの積、行列U、U 、U、K1=exp(k),kは、分解要素格納部11において主記憶装置3に格納される(ステップS12)。 The matrix U m for realizing such diagonalization is
Figure 2005332242
It is.
The product of the basic gates of the diagonal matrix D h as described above, the matrices U m , U m * , U h , K 1 = exp (k 1 ), and k 1 are stored in the main storage device in the decomposition element storage unit 11. 3 (step S12).

<Uの分解>
次に、UやK1は基本ゲートでないため(ステップS1)、構造判定部4において、まず行列Uが、主記憶装置3から読み出される(ステップS2)。ここで、式(25)に示すように、各行や列に含まれる0以外の要素の数は最大値は4である。よって、この行列UはSU(4)に含まれ、構造判定部4は、この行列Uを基本ゲート分解部10に送る。そして、基本ゲート分解部10は、以下のように、この行列Uを基本ゲートの積で置き換える(ステップS4)。

Figure 2005332242
<Decomposition of U m >
Next, since U m and K 1 are not basic gates (step S1), the structure determination unit 4 first reads the matrix U m from the main memory 3 (step S2). Here, as shown in Expression (25), the maximum number of elements other than 0 included in each row or column is 4. Therefore, this matrix U m is included in SU (4), and the structure determination unit 4 sends this matrix U m to the basic gate decomposition unit 10. Then, the basic gate decomposition unit 10 replaces this matrix U m with the product of the basic gates as follows (step S4).
Figure 2005332242

Figure 2005332242
ここで、Uは行と列を入れ替える行列であり、基本ゲート分解部10は、トフォリゲートTを用いて、さらにこのUを以下のように構成する。
Figure 2005332242
Here, U 4 is a matrix in which the rows and columns are interchanged, and the basic gate decomposition unit 10 further configures this U 4 using the torigate T 8 as follows.

Figure 2005332242
このT8は、第1量子ビットと第2量子ビットの状態が共に1の場合にのみ、第3量子ビットの状態を反転させる制御NOTゲートである。
Figure 2005332242
This T 8 is a control NOT gate that inverts the state of the third qubit only when the states of the first qubit and the second qubit are both 1.

また、基本ゲート分解部10は、Tを以下の行列のテンソル積に分解する。

Figure 2005332242
The basic gate decomposition unit 10 decomposes the T 5 to a tensor product of the following matrices.
Figure 2005332242

<Uの分解>
さらに、基本ゲート分解部10は、Uを以下の形に分解する。

Figure 2005332242
以上のような分解結果は主記憶装置3に格納される。 <Disassembly of U 6 >
Furthermore, the basic gate decomposition unit 10 decomposes the U 6 in the following form.
Figure 2005332242
The decomposition results as described above are stored in the main storage device 3.

<K=K2・M2への分解>
次に、まだK1は基本ゲートでないため(ステップS1)、構造判定部4においてK1が主記憶装置3から読み出される(ステップS2)。K1もSU(4)に含まれるため、構造判定部4は、このK1基本ゲート分解部10に送る。そして、基本ゲート分解部10は、以下のように、このK1を基本ゲートの積で置き換える(ステップS4)。
<Decomposition into K 1 = K2 · M2>
Then, because it is not yet K 1 is basic gate (step S1), K 1 is read from the main memory 3 in the configuration determining unit 4 (step S2). Since K 1 is also included in SU (4), the structure determination unit 4 sends it to the K 1 basic gate decomposition unit 10. The basic gate decomposition unit 10, as follows, replacing the K 1 by the product of the basic gate (step S4).

まず、基本ゲート分解部10は、K1=exp(k)に対応するリー代数表現k1を主記憶装置3から抽出する。そして、基本ゲート分解部10は、カルタン分解によって、このリー代数表現k1をkとmとの直和に分解する。具体的には、例えば、k1から図4の(a)の要素を取り出したものをkとし、図4の(b)の要素を取り出したものをmとする。すると、

Figure 2005332242
となる。従って、
Figure 2005332242
First, the basic gate decomposition unit 10 extracts a Lie algebra expression k 1 corresponding to K 1 = exp (k 1 ) from the main storage device 3. Then, the basic gate decomposition unit 10 decomposes this Lie algebra expression k 1 into a direct sum of k 2 and m 2 by Cartan decomposition. Specifically, for example, k 2 is obtained by extracting the element in FIG. 4A from k 1 , and m 2 is obtained by extracting the element in FIG. 4B. Then
Figure 2005332242
It becomes. Therefore,
Figure 2005332242

Figure 2005332242
となる。
Figure 2005332242
It becomes.

<Kの分解>
次に基本ゲート分解部10は、上記の式(26)に示されるKを、以下の形に書き換える。

Figure 2005332242
<Decomposition of K 2>
Then the basic gate decomposition unit 10, a K 2 represented by the above formula (26) is rewritten to the following form.
Figure 2005332242

Figure 2005332242
ここで、Uは、Kの行や列を入れ替えて作られた行列であり、Sがその行と列の入れ替えを表している。具体的には、
Figure 2005332242
であり、このSの操作は、
1.第2量子ビットと第3量子ビットを入れ替える。
2.第1量子ビットと第2量子ビットを入れ替える。
3.第1量子ビットの否定(NOT)をとる。
という操作から構成されている。
Figure 2005332242
Here, U 2 is a matrix created by replacing the rows and columns of K 2 , and S 1 represents the replacement of the rows and columns. In particular,
Figure 2005332242
, And the operation of the S 1 is,
1. Swap the second and third qubits.
2. Swap the first qubit and the second qubit.
3. Take the negation (NOT) of the first qubit.
It consists of the operation.

<Uの分解>
次に基本ゲート分解部10は、対角行列計算部7を呼び出して、上記の式(28)で示すUを、以下のように対角行列Dを含む行列の積に分解する。

Figure 2005332242
さらに、基本ゲート分解部10は、式(29)のUを、以下の形に分解する。 <Decomposition of U 2>
Next, the basic gate decomposition unit 10 calls the diagonal matrix calculation unit 7 to decompose U 2 represented by the above equation (28) into a matrix product including the diagonal matrix D 2 as follows.
Figure 2005332242
Further, the basic gate decomposition unit 10 decomposes U 3 in the equation (29) into the following form.

Figure 2005332242
次に基本ゲート分解部10は、式(30)のDを、以下の形に分解する。
Figure 2005332242
Then basic gate decomposition unit 10 decomposes the D 2 of formula (30), the following form.

Figure 2005332242
Figure 2005332242

<Mの分解>
また、基本ゲート分解部10は、前述の式(27)に示されるMを、以下の形に分解する。

Figure 2005332242
ここで、Tは2ビットのトフォリゲートであり、これをsingle-qubit rotationsとCNOTに分解する手法は既に知られている(例えば、b「A.Barenco et al., Elementary gates for quantum computation, Phys. Rev. A52, pp.3457-3467,1995.」や「C. Moore and M. Nilsson, parallel quantum computation and quantum codes, SIAM J. Comp, Vol.31, No.3, pp.799-815, 2001.」を参照。)。
そして、以上のような分解結果は主記憶装置3に格納される。 <Decomposition of M 2>
Further, the basic gate decomposition unit 10 decomposes M 2 represented by the above-described equation (27) into the following form.
Figure 2005332242
Here, T 6 is a 2-bit torigate, and a technique for decomposing it into single-qubit rotations and CNOT is already known (for example, b “A. Barenco et al., Elementary gates for quantum computation”). , Phys. Rev. A52, pp.3457-3467, 1995. '' and `` C. Moore and M. Nilsson, parallel quantum computation and quantum codes, SIAM J. Comp, Vol.31, No.3, pp.799- 815, 2001.).
The decomposition results as described above are stored in the main storage device 3.

以上のような処理により、求まったFuorier変換の分解は以下のようになる。

Figure 2005332242
また、図5の(a)は、上記の式(31)に示すUのカルタン分解により求まる量子回路を示している。この図に示すように、Uの量子回路は、U回路41、U 回路42、D回路43、U回路44、U回路45、M回路46、K回路47を直列に配置して構成される。
図5の(b)は、D回路43を基本ゲートに分解した構成(式(35))を示している。この図に示すように、D回路43は、4つのNOTゲート43a〜43dと2つの制御ユニタリ(T)ゲート43e,43fによって構成される。 The decomposition of the found Fuorier transform by the above processing is as follows.
Figure 2005332242
Further, (a) in FIG. 5 shows a quantum circuit obtained by Cartan decomposition of U F shown in the above equation (31). As shown in this figure, the quantum circuit of U F includes a U h circuit 41, a U m * circuit 42, a D h circuit 43, a U m circuit 44, a U h circuit 45, an M 2 circuit 46, and a K 2 circuit 47. It is arranged in series.
FIG. 5B shows a configuration (formula (35)) in which the Dh circuit 43 is disassembled into basic gates. As shown in FIG, D h circuit 43, four NOT gates 43a~43d and two control unitary (T 9) gate 43e, constituted by 43f.

図5の(c)は、M回路46を基本ゲートに分解した構成(式(33))を示している。この図に示すように、M回路46は、2つのSWAPゲート46a,46bと1つの制御ユニタリゲート(T)46cによって構成される。
図6の(a)は、U回路44を基本ゲートに分解した構成(式(34))を示している。この図に示すように、U回路44は、8つのNOTゲート44a〜44h、4つの制御ユニタリゲート(T)44i〜44p、1つの制御ユニタリゲート(T)44k、1つの制御ユニタリゲート(T)44m、2つのCNOTゲート(C)44q,44r,1つのNCNOTゲート(C:第1量子ビットが0ときだけ、第2量子ビットの状態を反転させるゲート)44s、2つのアダマールゲート(H)44t,44u、1つのSWAPゲート(S)44vによって構成される。
(C) in FIG. 5 shows a configuration obtained by decomposing the M 2 circuit 46 to the basic gate (formula (33)). As shown in FIG, M 2 circuit 46, two SWAP gates 46a, 46b and constituted by a single control unitary gate (T 6) 46c.
FIG. 6A shows a configuration (formula (34)) in which the Um circuit 44 is disassembled into basic gates. As shown in FIG., U m circuit 44, eight NOT gates 44A to 44H, 4 one control unitary gate (T 8) 44i~44p, 1 single control unitary gate (T 1) 44k, 1 single control unitary gate (T 7 ) 44m, two CNOT gates (C 1 ) 44q, 44r, one NCNOT gate (C 2 : a gate that inverts the state of the second qubit only when the first qubit is 0) 44s, The Hadamard gate (H) 44t, 44u is composed of one SWAP gate (S) 44v.

図6の(b)は、K回路47を基本ゲートに分解した構成(式(32))を示している。この図に示すように、K回路47は、4つのSWAPゲート(S)47a〜47d、4つのNOTゲート47e〜47h、2つのCNOTゲート(C)47i,47j、2つの制御ユニタリゲート(T)47m,47s、3つの制御ユニタリゲート(T)47k,47n、47r、1つの制御ユニタリゲート(T)47q、1つの制御ユニタリゲート(T)47pによって構成される。 (B) of FIG. 6 shows a configuration in which decompose K 2 circuit 47 to the basic gate (formula (32)). As shown in FIG, K 2 circuit 47, four SWAP gate (S) 47a-47d, four NOT gates 47E~47h, 2 two CNOT gate (C 1) 47i, 47j, 2 two control unitary gate ( T 1 ) 47m, 47s, three control unitary gates (T 2 ) 47k, 47n, 47r, one control unitary gate (T 3 ) 47q, and one control unitary gate (T 4 ) 47p.

〔第2の実施の形態〕
次に、本発明における第2の実施の形態について説明する。
本形態は第1の実施の形態の変形例である。本形態では、前述の同時対角化行列を用いず、リー代数表現された行列を対角化する行列を利用してユニタリ行列の分解を行う。以下では、第1の実施の形態との相違点を中心に説明し、第1の実施の形態と共通する事項については説明を省略する。
[Second Embodiment]
Next, a second embodiment of the present invention will be described.
This embodiment is a modification of the first embodiment. In this embodiment, the unitary matrix is decomposed by using a matrix that diagonalizes a Lie algebra-represented matrix without using the above-mentioned simultaneous diagonalization matrix. Below, it demonstrates centering around difference with 1st Embodiment, and abbreviate | omits description about the matter which is common in 1st Embodiment.

<構成>
まず、本形態におけるユニタリ行列分解装置の構成を説明する。
図7は、本形態におけるユニタリ行列分解装置100の構成を説明するためのブロック図である。なお、図7において第1の実施の形態のユニタリ行列分解装置1(図1)と共通する機能構成については図1と同じ符号を付した。
ユニタリ行列分解装置100の構成の第1の実施の形態との相違点は、第1の実施の形態のユニタリ行列分解装置1のM分解部8の代わりにm分解部108を具備する点である。
<Configuration>
First, the configuration of the unitary matrix decomposition apparatus according to this embodiment will be described.
FIG. 7 is a block diagram for explaining the configuration of the unitary matrix decomposition apparatus 100 according to this embodiment. In FIG. 7, the functional components common to the unitary matrix decomposition apparatus 1 (FIG. 1) of the first embodiment are denoted by the same reference numerals as in FIG.
The difference of the configuration of the unitary matrix decomposition apparatus 100 from the first embodiment is that an m decomposition unit 108 is provided instead of the M decomposition unit 8 of the unitary matrix decomposition apparatus 1 of the first embodiment. .

<M分解部>
m分解部108は、受け取ったmを対角行列計算部7へ渡し、mを対角行列Dに対角化する特殊ユニタリ行列Uを算出させる。そして、m分解部108は、対角行列計算部7において算出された特殊ユニタリ行列Uをと対角行列Dとを受け取り、exp(m)をU・exp(D)・U で置き換える。また、m分解部108は、この対角行列Dを対角行列分解部9に渡し、対角行列分解部9から返された分解結果で対角行列Dを置き換え、それらとU、U とをカルタン分解部6へ返す。
<M disassembly unit>
The m decomposition unit 108 passes the received m 1 to the diagonal matrix calculation unit 7 and calculates a special unitary matrix U 1 that diagonalizes m 1 into the diagonal matrix D 1 . Then, the m decomposition unit 108 receives the special unitary matrix U 1 calculated by the diagonal matrix calculation unit 7 and the diagonal matrix D 1 and converts exp (m 1 ) to U 1 · exp (D 1 ) · U. Replace with 1 * . In addition, the m decomposition unit 108 passes the diagonal matrix D 1 to the diagonal matrix decomposition unit 9, replaces the diagonal matrix D 1 with the decomposition result returned from the diagonal matrix decomposition unit 9, U 1 , Return U 1 * to the cartan decomposition unit 6.

<処理>
次に、本形態におけるユニタリ行列分解方法について説明する。
図8は、本形態におけるユニタリ行列分解方法を説明するためのフローチャートである。以下、図7及び図8を用い、本形態におけるユニタリ行列の分解分解処理について説明する。
まず、任意のユニタリ行列が入力部2から入力される。入力されたユニタリ行列は、入力部2において特殊ユニタリ行列F∈SU(2)に変換され、行列リストFとして主記憶装置3に格納される。
<Processing>
Next, a unitary matrix decomposition method according to this embodiment will be described.
FIG. 8 is a flowchart for explaining the unitary matrix decomposition method in this embodiment. The unitary matrix decomposition / decomposition processing in this embodiment will be described below with reference to FIGS.
First, an arbitrary unitary matrix is input from the input unit 2. The input unitary matrix is converted into a special unitary matrix FεSU (2 n ) in the input unit 2 and stored in the main storage device 3 as a matrix list F.

次に、構造判定部4が、主記憶装置3に格納されたすべての特殊ユニタリ行列F(主記憶装置3の行列リストに含まれる行列F)が基本ゲートであるか否かが判断する(ステップS21)。ここで、主記憶装置3に格納されたすべての特殊ユニタリ行列Fが基本ゲートであると判断された場合には処理を終了する。
一方、基本ゲートでない特殊ユニタリ行列Fが行列リストに存在すると判断された場合、構造判定部4は、行列リストの中で最初の基本ゲートでない特殊ユニタリ行列Fを主記憶装置3から読み出す(抽出する)(ステップS22)。特殊ユニタリ行列Fを抽出した構造判定部4は、抽出した特殊ユニタリ行列がSU(4)に含まれるか(n≧3であるか)否かを判断する(ステップS23)。ここで、抽出した特殊ユニタリ行列がSU(4)に含まれると判断された場合(n<3であると判断された場合)、構造判定部4は、その特殊ユニタリ行列Fを基本ゲート分解部10に送り、基本ゲート分解部10は、この特殊ユニタリ行列Fを基本ゲートの積で置き換えて主記憶装置3に格納して処理を終了する。
Next, the structure determination unit 4 determines whether all the special unitary matrices F (the matrix F included in the matrix list of the main storage device 3) stored in the main storage device 3 are basic gates (step). S21). Here, if it is determined that all the special unitary matrices F stored in the main storage device 3 are basic gates, the processing is terminated.
On the other hand, when it is determined that the special unitary matrix F that is not a basic gate exists in the matrix list, the structure determination unit 4 reads (extracts) the special unitary matrix F that is not the first basic gate in the matrix list from the main storage device 3. (Step S22). The structure determination unit 4 that has extracted the special unitary matrix F determines whether or not the extracted special unitary matrix is included in SU (4) (n ≧ 3) (step S23). Here, when it is determined that the extracted special unitary matrix is included in SU (4) (when it is determined that n <3), the structure determination unit 4 converts the special unitary matrix F into the basic gate decomposition unit. 10, the basic gate decomposition unit 10 replaces the special unitary matrix F with the product of the basic gates and stores it in the main storage device 3 and ends the process.

一方、抽出した特殊ユニタリ行列がSU(4)に含まれないと判断された場合(n≧3であると判断された場合)、構造判定部4は、その特殊ユニタリ行列F(「分解対象である特殊ユニタリ行列F」に相当)を行列表現変換部5に送る。これを受け取った行列表現変換部5は、その分解対象である特殊ユニタリ行列Fに対応するリー代数表現fが計算されているか否か(主記憶装置3に格納されているか否か)を判断する(ステップS25)。ここで、対応するリー代数表現fが計算されていないと判断された場合、行列表現変換部5は、第1の実施の形態と同様に、このリー代数表現fを求めて主記憶装置3に格納する(ステップS26)。一方、ステップS25の判断で、対応するリー代数表現fが計算されていると判断された場合、行列表現変換部5は、リー代数表現fの算出を行わない。   On the other hand, when it is determined that the extracted special unitary matrix is not included in SU (4) (when it is determined that n ≧ 3), the structure determination unit 4 determines that the special unitary matrix F (“with decomposition target”). (Corresponding to a certain special unitary matrix F)) is sent to the matrix expression conversion unit 5. Receiving this, the matrix expression conversion unit 5 determines whether or not the Lie algebra expression f corresponding to the special unitary matrix F that is the decomposition target is calculated (whether or not it is stored in the main storage device 3). (Step S25). Here, when it is determined that the corresponding Lie algebra expression f has not been calculated, the matrix expression conversion unit 5 obtains this Lie algebra expression f and stores it in the main storage device 3 as in the first embodiment. Store (step S26). On the other hand, if it is determined in step S25 that the corresponding Lie algebra expression f has been calculated, the matrix expression conversion unit 5 does not calculate the Lie algebra expression f.

その後、行列表現変換部5は、分解対象である特殊ユニタリ行列F∈SU(2)に対応するリー代数表現f∈su(2)を主記憶装置3から抽出し(ステップS27)、カルタン分解部6に送る。カルタン分解部6は、送られたリー代数表現fを、カルタン分解によって、直交する2つのベクトル空間k,mに含まれる要素k∈k,m∈mに分解し、対応するF=exp(f)をexp(k)・exp(m)で置き換える関係を保存しておく(ステップS28)。
カルタン分解部6において分解されたmは、m分解部108に送られ、m分解部108は、これを対角行列計算部7に送る。そして、対角行列計算部7は、mを対角行列Dに対角化する特殊ユニタリ行列Uを算出し、対角行列Dと特殊ユニタリ行列Uとをm分解部108に返す。m分解部108は、exp(m)をU・exp(D)・U で置き換える関係を保存しておく(ステップS29)。
Thereafter, the matrix representation conversion unit 5 extracts the Lie algebra representation fεsu (2 n ) corresponding to the special unitary matrix FεSU (2 n ) to be decomposed from the main storage device 3 (step S27), This is sent to the disassembly unit 6. Cartan decomposition unit 6 decomposes the sent Lie algebra expressions f, by Cartan decomposition, two orthogonal vector space k, the element k 1 that is an element of the set K contained in m, to m 1 ∈m, corresponding F = exp The relationship of replacing (f) with exp (k 1 ) · exp (m 1 ) is stored (step S28).
The m 1 decomposed in the cartan decomposition unit 6 is sent to the m decomposition unit 108, and the m decomposition unit 108 sends it to the diagonal matrix calculation unit 7. The diagonal matrix calculation unit 7 calculates the special unitary matrix U 1 to diagonalized the m 1 a diagonal matrix D 1, the diagonal matrix D 1 and special unitary matrix U 1 to m decomposition unit 108 return. The m decomposition unit 108 stores the relationship of replacing exp (m 1 ) with U 1 · exp (D 1 ) · U 1 * (step S29).

次に、m分解部108は、対角行列exp(D)を対角行列分解部9に送り、対角行列分解部9は、対角行列exp(D)をトフォリゲートTGの積に分解する(ステップS30)。対角行列分解部9は、対角行列exp(D)をトフォリゲートTGの積で置き換える関係を保存し、これらのトフォリゲートTGを基本ゲート分解部10に送る。基本ゲート分解部10は、送られた各トフォリゲートTGを基本ゲートBGの積に分解し(ステップS31)、トフォリゲートTGを基本ゲートBGの積に置き換えた関係を対角行列分解部9に返す。 Next, the m decomposing unit 108 sends the diagonal matrix exp (D 1 ) to the diagonal matrix decomposing unit 9, and the diagonal matrix decomposing unit 9 sends the diagonal matrix exp (D 1 ) to the torigate TG h . The product is decomposed (step S30). Diagonal matrix decomposition unit 9 stores the relationships to replace diagonal matrix exp a (D 1) by the product of Toffoli gates TG h, it sends these Toffoli gate TG h to the basic gate decomposition unit 10. The basic gate decomposition unit 10 decomposes each sent torigate TG h into a product of the basic gate BG h (step S31), and replaces the relationship of replacing the torigate TG h with the product of the basic gate BG h as a diagonal. It returns to the matrix decomposition unit 9.

対角行列分解部9は、保存しておいた「対角行列exp(D)をトフォリゲートTGの積で置き換える関係」を用い、基本ゲート分解部10から受け取った基本ゲートBGの積で対角行列exp(D)を置き換える。そして、その基本ゲートBGの積で置き換えられた対角行列exp(D)をm分解部108に返す。
m分解部18は、保存しておいた「exp(m)をU・exp(D)・U で置き換える関係」を用い、対角行列分解部9から送られた基本ゲートBGの積(=exp(D))でU・exp(D)・U を置き換え、その置き換え結果exp(m)=U・BG・U をカルタン分解部6に返す。
The diagonal matrix decomposition unit 9 uses the stored “relationship of replacing the diagonal matrix exp (D 1 ) with the product of the torigate TG h ” and stores the basic gate BG h received from the basic gate decomposition unit 10. Replace the diagonal matrix exp (D 1 ) with the product. Then, the diagonal matrix exp (D 1 ) replaced with the product of the basic gate BG h is returned to the m decomposition unit 108.
The m decomposition unit 18 uses the saved “relationship to replace exp (m 1 ) with U 1 · exp (D 1 ) · U 1 * ”, and the basic gate BG sent from the diagonal matrix decomposition unit 9. The product of h (= exp (D 1 )) replaces U 1 · exp (D 1 ) · U 1 * , and the replacement result exp (m 1 ) = U 1 · BG h · U 1 * Return to.

カルタン分解部6は、保存しておいた「F=exp(f)をexp(k)・exp(m)で置き換える関係」を用い、m分解部108から送られたexp(m)=U・BG・U でF=exp(f)を置き換え、その置き換え結果F=exp(k)・U・BG・U を分解要素格納部11に送る。
分解要素格納部11は、exp(k)、k、U、U 及びBGを、上記Fの分解要素(F=exp(k)・(U・BG・U =exp(m)))として主記憶装置3に格納する(ステップS32)。
Cartan decomposition unit 6, the saved "the F = exp (f) exp ( k 1) · replaced relationship exp (m 1)" used, it exp sent from m decomposing section 108 (m 1) F = exp (f) is replaced with = U 1 · BG h · U 1 * , and the replacement result F = exp (k 1 ) · U 1 · BG h · U 1 * is sent to the disassembly element storage unit 11.
The decomposition element storage unit 11 converts exp (k 1 ), k 1 , U 1 , U 1 *, and BG 1 into F decomposition elements (F = exp (k 1 ) · (U 1 · BG 1 · U 1). * = Exp (m 1 ))) and stored in the main memory 3 (step S32).

ここで、主記憶装置3に格納された基本ゲートBGの回路構成も公知である。従って、exp(k)及びUがBGに分解できれば、Fは実現可能な量子回路に分解されたことになる。そのため、以降は、このexp(k)及びUを新たな特殊ユニタリ行列F∈SU(2)として、上述したステップS21〜S32までの処理を再帰的に繰り返す。これにより、すべての行列が実現可能な量子回路に分解される。
なお、この発明は上述の各実施の形態に限定されるものではなく、その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。
また、上述の構成をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。
Here, the circuit configuration of the basic gate BG h stored in the main memory 3 are also known. Therefore, if exp (k) and U 1 can be decomposed into BG h , F is decomposed into a realizable quantum circuit. Therefore, thereafter, the above-described steps S21 to S32 are recursively repeated with exp (k 1 ) and U 1 as a new special unitary matrix FεSU (2 n ). Thereby, all matrices are decomposed into realizable quantum circuits.
The present invention is not limited to the above-described embodiments, and it goes without saying that other modifications can be made as appropriate without departing from the spirit of the present invention.
Further, when the above configuration is realized by a computer, the processing contents of functions that each device should have are described by a program. The processing functions are realized on the computer by executing the program on the computer.

この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよいが、具体的には、例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、DVD(Digital Versatile Disc)、DVD−RAM(Random Access Memory)、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(ReWritable)等を、光磁気記録媒体として、MO(Magneto-Optical disc)等を、半導体メモリとしてEEP−ROM(Electronically Erasable and Programmable-Read Only Memory)等を用いることができる。
また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD−ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
The program describing the processing contents can be recorded on a computer-readable recording medium. The computer-readable recording medium may be any medium such as a magnetic recording device, an optical disk, a magneto-optical recording medium, or a semiconductor memory. Specifically, for example, the magnetic recording device may be a hard disk device or a flexible Discs, magnetic tapes, etc. as optical disks, DVD (Digital Versatile Disc), DVD-RAM (Random Access Memory), CD-ROM (Compact Disc Read Only Memory), CD-R (Recordable) / RW (ReWritable), etc. As the magneto-optical recording medium, MO (Magneto-Optical disc) or the like can be used, and as the semiconductor memory, EEP-ROM (Electronically Erasable and Programmable-Read Only Memory) or the like can be used.
The program is distributed by selling, transferring, or lending a portable recording medium such as a DVD or CD-ROM in which the program is recorded. Furthermore, the program may be distributed by storing the program in a storage device of the server computer and transferring the program from the server computer to another computer via a network.

このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
A computer that executes such a program first stores, for example, a program recorded on a portable recording medium or a program transferred from a server computer in its own storage device. When executing the process, the computer reads a program stored in its own recording medium and executes a process according to the read program. As another execution form of the program, the computer may directly read the program from a portable recording medium and execute processing according to the program, and the program is transferred from the server computer to the computer. Each time, the processing according to the received program may be executed sequentially. Also, the program is not transferred from the server computer to the computer, and the above-described processing is executed by a so-called ASP (Application Service Provider) type service that realizes the processing function only by the execution instruction and result acquisition. It is good. Note that the program in this embodiment includes information that is used for processing by an electronic computer and that conforms to the program (data that is not a direct command to the computer but has a property that defines the processing of the computer).
In this embodiment, the present apparatus is configured by executing a predetermined program on a computer. However, at least a part of these processing contents may be realized by hardware.

本発明の産業上の利用分野としては、量子コンピュータを構成する任意のユニタリ変換量子回路の設計支援分野等を例示できる。本発明を適用することにより、容易に任意のユニタリ変換量子回路をCNOT等の基本ゲートに分解することができる。   As an industrial application field of the present invention, a design support field of an arbitrary unitary transformation quantum circuit constituting a quantum computer can be exemplified. By applying the present invention, an arbitrary unitary transformation quantum circuit can be easily decomposed into basic gates such as CNOT.

第1の実施の形態におけるユニタリ行列分解装置の構成を説明するためのブロック図。The block diagram for demonstrating the structure of the unitary matrix decomposition | disassembly apparatus in 1st Embodiment. 第1の実施の形態におけるユニタリ行列分解方法を説明するためのフローチャート。The flowchart for demonstrating the unitary matrix decomposition | disassembly method in 1st Embodiment. カルタン部分代数h(n)の基底のすべてを同時対角化する行列Uの量子回路を示した図。Shows a quantum circuit matrix U h that all joint diagonalization of underlying Cartan subalgebra h (n). カルタン分解の手法を説明するための図。The figure for demonstrating the method of cartan decomposition | disassembly. 分解結果に対応する量子回路を示した図。The figure which showed the quantum circuit corresponding to a decomposition | disassembly result. 分解結果に対応する量子回路を示した図。The figure which showed the quantum circuit corresponding to a decomposition | disassembly result. 第2の実施の形態におけるユニタリ行列分解装置の構成を説明するためのブロック図。The block diagram for demonstrating the structure of the unitary matrix decomposition | disassembly apparatus in 2nd Embodiment. 第2の実施の形態におけるユニタリ行列分解方法を説明するためのフローチャート。The flowchart for demonstrating the unitary matrix decomposition | disassembly method in 2nd Embodiment. カルタン分解の手法を説明するための図。The figure for demonstrating the method of cartan decomposition | disassembly.

符号の説明Explanation of symbols

1,100 ユニタリ行列分解装置
2 入力部
3 主記憶装置(記憶手段)
4 構造判定部(構造判定手段)
5 行列表現変換部(行列表現変換手段)
6 カルタン分解部(カルタン分解手段)
7 対角行列計算部(対角行列計算手段)
8 M分解部
9 対角行列分解部(対角行列分解手段)
10 基本ゲート分解部(基本ゲート分解手段)
11 分解要素格納部(分解要素格納手段)
12 出力部
108 m分解部
1,100 unitary matrix decomposition device 2 input unit 3 main storage device (storage means)
4 Structure determination unit (structure determination means)
5 Matrix representation conversion unit (Matrix representation conversion means)
6 Cartan decomposition part (Cartan decomposition means)
7 Diagonal matrix calculator (diagonal matrix calculation means)
8 M Decomposition Unit 9 Diagonal Matrix Decomposition Unit (Diagonal Matrix Decomposition Unit)
10 Basic gate disassembly section (Basic gate disassembly means)
11 Decomposition element storage (decomposition element storage means)
12 Output unit 108 m Disassembly unit

Claims (10)

ユニタリ行列を分解するユニタリ行列分解方法であって、
分解対象である2×2の特殊ユニタリ行列F∈SU(2)の自然対数であるリー(Lie)代数表現f∈su(2)を、行列表現変換手段が抽出するステップと、
抽出された上記リー代数表現fを、カルタン分解手段が、カルタン(Cartan)分解によって、直交する2つのベクトル空間k,mに含まれる要素k∈k,m∈mに分解するステップと、
・exp(m)・U(Uは、上記ベクトル空間mに含まれる極大可換部分代数であるカルタン部分代数h(n)の基底のすべてを同時対角化する行列)を対角行列D(D∈U・exp(h(n))・U)に対角化する特殊ユニタリ行列Uを、対角行列計算手段が算出するステップと、
対角行列分解手段が、上記対角行列Dをトフォリ(Toffoli)ゲートTGの積に分解するステップと、
基本ゲート分解手段が、上記各トフォリゲートTGを基本ゲートBGの積に分解するステップと、
分解要素格納手段が、上記exp(k)、U、U、U 及びBGを、上記Fの分解要素(F=exp(k)・(U・U・BG・U ・U))として記憶手段に格納するステップと、
を有することを特徴とするユニタリ行列分解方法。
A unitary matrix decomposition method for decomposing a unitary matrix,
A matrix representation conversion means for extracting a Lie algebraic representation fεsu (2 n ) that is a natural logarithm of a 2 n × 2 n special unitary matrix FεSU (2 n ) to be decomposed;
The extracted the Lie algebra expressions f, Cartan decomposition means, by Cartan (Cartan) decomposition, two orthogonal vector space k, the element k 1 that is an element of the set K contained in m, and decomposing the m 1 ∈m,
U h · exp (m 1 ) · U h (U h is a matrix that simultaneously diagonalizes all the bases of the Cartan partial algebra h (n) that is a maximal commutative partial algebra included in the vector space m). The diagonal matrix calculating means calculates a special unitary matrix U m that is diagonalized into a diagonal matrix D h (D h ∈ U h · exp (h (n)) · U h );
Diagonal matrix decomposition means for decomposing the diagonal matrix D h into a product of toffoli gates TG h ;
Basic gate decomposition means for decomposing each of the torigates TG h into a product of the basic gates BG h ;
The decomposition element storage means converts the exp (k 1 ), U h , U m , U m *, and BG h into the F decomposition element (F = exp (k 1 ) · (U h · U m · BG h • U m * · U h )) in the storage means;
A unitary matrix decomposition method characterized by comprising:
ユニタリ行列を分解するユニタリ行列分解方法であって、
分解対象である2×2の特殊ユニタリ行列F∈SU(2)の自然対数であるリー(Lie)代数表現f∈su(2)を、行列表現変換手段が抽出するステップと、
抽出された上記リー代数表現fを、カルタン分解手段が、カルタン(Cartan)分解によって、直交する2つのベクトル空間k,mに含まれる要素k∈k,m∈mに分解するステップと、
を対角行列Dに対角化する特殊ユニタリ行列Uを、対角行列計算手段が算出するステップと、
対角行列分解手段が、exp(D)をトフォリ(Toffoli)ゲートTGの積に分解するステップと、
基本ゲート分解手段が、上記各トフォリゲートTGを基本ゲートBGの積に分解するステップと、
分解要素格納手段が、上記exp(k)、U、U 及びBGを、上記Fの分解要素(F=exp(k)・(U・BG・U ))として記憶手段に格納するステップと、
を有することを特徴とするユニタリ行列分解方法。
A unitary matrix decomposition method for decomposing a unitary matrix,
A matrix representation conversion means for extracting a Lie algebraic representation fεsu (2 n ) that is a natural logarithm of a 2 n × 2 n special unitary matrix FεSU (2 n ) to be decomposed;
The extracted the Lie algebra expressions f, Cartan decomposition means, by Cartan (Cartan) decomposition, two orthogonal vector space k, the element k 1 that is an element of the set K contained in m, and decomposing the m 1 ∈m,
a diagonal matrix calculation means calculating a special unitary matrix U 1 that diagonalizes m 1 into a diagonal matrix D 1 ;
Diagonal matrix decomposition means decomposes exp (D 1 ) into a product of toffoli gates TG 1 ;
A basic gate decomposition means for decomposing each of the torigate gates TG 1 into a product of the basic gates BG 1 ;
The decomposition element storage means converts exp (k 1 ), U 1 , U 1 *, and BG 1 into F decomposition elements (F = exp (k 1 ) · (U 1 · BG 1 · U 1 * )). And storing in the storage means as
A unitary matrix decomposition method characterized by comprising:
請求項1或いは2記載のユニタリ行列分解方法であって、
上記記憶手段に格納されたすべての特殊ユニタリ行列が基本ゲートであるか否かを、構造判定手段が判断するステップと、
基本ゲートでないと判断された特殊ユニタリ行列を、構造判定手段が上記記憶手段から抽出するステップと、
抽出された上記特殊ユニタリ行列がn≧3であるか否かを、構造判定手段が判断するステップと、
をさらに有し、
上記分解対象である特殊ユニタリ行列Fは、
上記構造判定手段において、n≧3であると判断された特殊ユニタリ行列である、
ことを特徴とするユニタリ行列分解方法。
The unitary matrix decomposition method according to claim 1 or 2,
The structure determining means determining whether all the special unitary matrices stored in the storage means are basic gates; and
A step of extracting a special unitary matrix determined not to be a basic gate from the storage means by the structure determination means;
A step in which the structure determining means determines whether or not the extracted special unitary matrix is n ≧ 3;
Further comprising
The special unitary matrix F to be decomposed is
In the structure determination means, a special unitary matrix determined as n ≧ 3.
A unitary matrix decomposition method.
ユニタリ行列を分解するユニタリ行列分解装置であって、
×2の特殊ユニタリ行列(SU(2))と、当該特殊ユニタリ行列の自然対数であるリー(Lie)代数表現(su(2))と、を対応付けて格納する記憶手段と、
分解対象の特殊ユニタリ行列F∈SU(2)に対応するリー代数表現f∈su(2)を上記記憶手段から抽出する行列表現変換手段と、
抽出された上記リー代数表現fを、カルタン(Cartan)分解によって、直交する2つのベクトル空間k,mに含まれる要素k∈k,m∈mに分解するカルタン分解手段と、
・exp(m)・U(Uは、上記ベクトル空間mに含まれる極大可換部分代数であるカルタン部分代数h(n)の基底のすべてを同時対角化する行列)を対角行列D(D∈U・exp(h(n))・U)に対角化する特殊ユニタリ行列Uを算出する対角行列計算手段と、
上記対角行列Dをトフォリ(Toffoli)ゲートTGの積に分解する対角行列分解手段と、
上記各トフォリゲートTGを基本ゲートBGの積に分解する基本ゲート分解手段と、
上記exp(k)、U、U、U 及びBGを、上記Fの分解要素(F=exp(k)・(U・U・BG・U ・U=exp(m)))として上記記憶手段に格納する分解要素格納手段と、
を特徴とするユニタリ行列分解装置。
A unitary matrix decomposition apparatus that decomposes a unitary matrix,
Storage means for storing a 2 n × 2 n special unitary matrix (SU (2 n )) and a Lie algebraic representation (su (2 n )) that is a natural logarithm of the special unitary matrix in association with each other. When,
Matrix expression conversion means for extracting the Lie algebra expression f∈su (2 n ) corresponding to the special unitary matrix F∈SU (2 n ) to be decomposed from the storage means;
The extracted the Lie algebra expressions f, by Cartan (Cartan) decomposition, two orthogonal vector space k, the element k 1 that is an element of the set K contained in m, and Cartan decomposition means for decomposing the m 1 ∈m,
U h · exp (m 1 ) · U h (U h is a matrix that simultaneously diagonalizes all the bases of the Cartan partial algebra h (n) that is a maximal commutative partial algebra included in the vector space m). A diagonal matrix calculation means for calculating a special unitary matrix U m diagonalized to a diagonal matrix D h (D h ∈ U h · exp (h (n)) · U h );
Diagonal matrix decomposition means for decomposing the diagonal matrix D h into products of toffoli gates TG h ;
Basic gate disassembling means for resolving each torigate TG h into a product of basic gates BG h ;
The above exp (k 1 ), U h , U m , U m * and BG h are divided into the decomposition elements of F (F = exp (k 1 ) · (U h · U m · BG h · U m * · U h = exp (m 1 ))) in the storage means,
A unitary matrix decomposition apparatus characterized by
ユニタリ行列を分解するユニタリ行列分解装置であって、
×2の特殊ユニタリ行列(SU(2))と、当該特殊ユニタリ行列の自然対数であるリー(Lie)代数表現(su(2))と、を対応付けて格納する記憶手段と、
分解対象の特殊ユニタリ行列F∈SU(2)に対応するリー代数表現f∈su(2)を上記記憶手段から抽出する行列表現変換手段と、
抽出された上記リー代数表現fを、カルタン(Cartan)分解によって、直交する2つのベクトル空間k,mに含まれる要素k∈k,m∈mに分解するカルタン分解手段と、
を対角行列Dに対角化する特殊ユニタリ行列Uを算出する対角行列計算手段と、
exp(D)をトフォリ(Toffoli)ゲートTGの積に分解する対角行列分解手段と、
上記各トフォリゲートTGを基本ゲートBGの積に分解する基本ゲート分解手段と、
上記exp(k)、U、U 及びBGを、上記Fの分解要素(F=exp(k)・(U・BG・U =exp(m)))として上記記憶手段に格納する分解要素格納手段と、
を特徴とするユニタリ行列分解装置。
A unitary matrix decomposition apparatus that decomposes a unitary matrix,
Storage means for storing a 2 n × 2 n special unitary matrix (SU (2 n )) and a Lie algebraic representation (su (2 n )) that is a natural logarithm of the special unitary matrix in association with each other. When,
Matrix expression conversion means for extracting the Lie algebra expression f∈su (2 n ) corresponding to the special unitary matrix F∈SU (2 n ) to be decomposed from the storage means;
The extracted the Lie algebra expressions f, by Cartan (Cartan) decomposition, two orthogonal vector space k, the element k 1 that is an element of the set K contained in m, and Cartan decomposition means for decomposing the m 1 ∈m,
diagonal matrix calculation means for calculating a special unitary matrix U 1 that diagonalizes m 1 into a diagonal matrix D 1 ;
diagonal matrix decomposition means for decomposing exp (D 1 ) into products of toffoli gates TG 1 ;
Basic gate disassembling means for disassembling each torigate TG 1 into a product of the basic gate BG 1 ;
The above exp (k 1 ), U 1 , U 1 * and BG 1 are converted into the decomposition elements of F (F = exp (k 1 ) · (U 1 · BG 1 · U 1 * = exp (m 1 ))) Decomposition element storage means for storing in the storage means as
A unitary matrix decomposition apparatus characterized by
請求項4或いは5に記載のユニタリ行列分解装置であって、
上記分解対象の特殊ユニタリ行列Fは、
上記記憶手段に格納された特殊ユニタリ行列のうち、基本ゲートを除く、n≧3の特殊ユニタリ行列である、
ことを特徴とするユニタリ行列分解装置。
The unitary matrix decomposition apparatus according to claim 4 or 5,
The special unitary matrix F to be decomposed is
Of the special unitary matrix stored in the storage means, a special unitary matrix of n ≧ 3 excluding the basic gate,
A unitary matrix decomposition apparatus.
請求項6記載のユニタリ行列分解装置であって、
上記基本ゲート分解手段は、
さらに、上記記憶手段に格納された特殊ユニタリ行列のうち、基本ゲートを除く、n=2の特殊ユニタリ行列を、基本ゲートBGの積に分解する手段である、
ことを特徴とするユニタリ行列分解装置。
The unitary matrix decomposition apparatus according to claim 6,
The basic gate disassembly means is
Further, among the special unitary matrices stored in the storage means, the unit unit that decomposes the n = 2 special unitary matrix excluding the basic gate into the product of the basic gate BG 2 .
A unitary matrix decomposition apparatus.
請求項4或いは5に記載のユニタリ行列分解装置であって、
上記対角行列計算手段は、
分解対象の特殊ユニタリ行列F∈SU(2)に対応するリー代数表現f∈su(2)が上記記憶手段に格納されていない場合、当該Fを対角行列Dに対角化する行列Uを、さらに算出する手段であり、
上記行列表現変換手段は、
さらに、U・log(D)・U の演算結果を、当該Fに対応するリー代数表現fとして、上記記憶手段に格納する手段である、
ことを特徴とするユニタリ行列分解装置。
The unitary matrix decomposition apparatus according to claim 4 or 5,
The diagonal matrix calculation means includes:
When the Lie algebraic expression fεsu (2 n ) corresponding to the special unitary matrix FεSU (2 n ) to be decomposed is not stored in the storage means, the F is diagonalized into the diagonal matrix D 2 Means for further calculating the matrix U 2 ;
The matrix representation conversion means is
Furthermore, it is means for storing the operation result of U 2 · log (D 2 ) · U 2 * in the storage means as a Lie algebra expression f corresponding to F.
A unitary matrix decomposition apparatus.
請求項4から8の何れかに記載のユニタリ行列分解装置としてコンピュータを機能させるためのユニタリ行列分解プログラム。   A unitary matrix decomposition program for causing a computer to function as the unitary matrix decomposition apparatus according to claim 4. 請求項9に記載のユニタリ行列分解プログラムを格納したコンピュータ読取可能な記録媒体。   A computer-readable recording medium storing the unitary matrix decomposition program according to claim 9.
JP2004150549A 2004-05-20 2004-05-20 Unitary matrix decomposition method, unitary matrix decomposition apparatus, unitary matrix decomposition program, and recording medium Expired - Fee Related JP4260680B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004150549A JP4260680B2 (en) 2004-05-20 2004-05-20 Unitary matrix decomposition method, unitary matrix decomposition apparatus, unitary matrix decomposition program, and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004150549A JP4260680B2 (en) 2004-05-20 2004-05-20 Unitary matrix decomposition method, unitary matrix decomposition apparatus, unitary matrix decomposition program, and recording medium

Publications (2)

Publication Number Publication Date
JP2005332242A true JP2005332242A (en) 2005-12-02
JP4260680B2 JP4260680B2 (en) 2009-04-30

Family

ID=35486857

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004150549A Expired - Fee Related JP4260680B2 (en) 2004-05-20 2004-05-20 Unitary matrix decomposition method, unitary matrix decomposition apparatus, unitary matrix decomposition program, and recording medium

Country Status (1)

Country Link
JP (1) JP4260680B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009053933A (en) * 2007-08-27 2009-03-12 Nippon Telegr & Teleph Corp <Ntt> Unitary matrix decomposition method, unitary matrix decomposition device, unitary matrix decomposition program, and recording medium
JP2011090497A (en) * 2009-10-22 2011-05-06 Nippon Telegr & Teleph Corp <Ntt> Matrix decomposition device, matrix decomposition method and program
CN113850389A (en) * 2020-06-28 2021-12-28 合肥本源量子计算科技有限责任公司 Construction method and device of quantum line
JP2022068363A (en) * 2021-04-27 2022-05-09 ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド Quantum gate calibration method and apparatus, electronic device and medium

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009053933A (en) * 2007-08-27 2009-03-12 Nippon Telegr & Teleph Corp <Ntt> Unitary matrix decomposition method, unitary matrix decomposition device, unitary matrix decomposition program, and recording medium
JP2011090497A (en) * 2009-10-22 2011-05-06 Nippon Telegr & Teleph Corp <Ntt> Matrix decomposition device, matrix decomposition method and program
CN113850389A (en) * 2020-06-28 2021-12-28 合肥本源量子计算科技有限责任公司 Construction method and device of quantum line
CN113850389B (en) * 2020-06-28 2023-08-11 本源量子计算科技(合肥)股份有限公司 Quantum circuit construction method and device
JP2022068363A (en) * 2021-04-27 2022-05-09 ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド Quantum gate calibration method and apparatus, electronic device and medium
JP7369809B2 (en) 2021-04-27 2023-10-26 ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド Quantum gate calibration methods and apparatus, electronic equipment and media

Also Published As

Publication number Publication date
JP4260680B2 (en) 2009-04-30

Similar Documents

Publication Publication Date Title
Kaveh et al. Metaheuristics: outlines, MATLAB codes and examples
Schindler et al. Quantum simulation of dynamical maps with trapped ions
Heyfron et al. An efficient quantum compiler that reduces T count
Date et al. Efficiently embedding QUBO problems on adiabatic quantum computers
Rieffel et al. Growing and evolving soft robots
Melnikov et al. Quantum machine learning: from physics to software engineering
US20190332731A1 (en) Method and system for quantum computing
KR102061615B1 (en) Dropout method for improving training speed and memory efficiency on artificial neural network and learning method based on the same
McCaskey et al. Validating quantum-classical programming models with tensor network simulations
JP4718244B2 (en) Quantum program conversion apparatus, method thereof, program thereof and recording medium
Manchester et al. Contact-implicit trajectory optimization using variational integrators
Da Col et al. Industrial size job shop scheduling tackled by present day CP solvers
Pedro et al. On a cellular division method for topology optimization
US11574030B1 (en) Solving optimization problems using a hybrid computer system
US20230040584A1 (en) Computer-implemented method of solving a hamiltonian
Ender et al. Parity quantum optimization: Compiler
Murta et al. Preparing valence-bond-solid states on noisy intermediate-scale quantum computers
Moocarme et al. The Deep Learning with Keras Workshop: Learn how to define and train neural network models with just a few lines of code
Khine et al. Predictive big data analytics using multiple linear regression model
Burgholzer et al. Simulation paths for quantum circuit simulation with decision diagrams what to learn from tensor networks, and what not
JP4260680B2 (en) Unitary matrix decomposition method, unitary matrix decomposition apparatus, unitary matrix decomposition program, and recording medium
JPWO2017131081A1 (en) Quantum information processing system, quantum information processing method, program, and recording medium
Karasözen et al. Structure preserving integration and model order reduction of skew-gradient reaction–diffusion systems
JP7265965B2 (en) Machine learning device and machine learning method
Tankasala et al. Quantum-kit: simulating shor's factorization of 24-bit number on desktop

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060719

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20060719

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080131

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080624

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080820

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: 20090127

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: 20090204

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

Free format text: PAYMENT UNTIL: 20120220

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130220

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees