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 PDFInfo
- 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
Links
Images
Landscapes
- Complex Calculations (AREA)
Abstract
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(2n))に属する特殊ユニタリ行列を分解対象とし、そのリー代数表現(g=su(2n))を利用して行列分解を行う手法である。ここで、リー群(SU(2n))とリー代数表現(su(2n))は2n×2nの行列の集合であり、exp(su(2n))=SU(2n)の関係にある。また、su(2n)は歪エルミート(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)は、
<N.Khanejaによるsu(2n)の定義>
まず、リー代数表現(su(2n))における直交基底{iBs}を以下の形でとる(iは虚数単位)。
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).
ここで、Ikαは
すると、リー代数表現(su(2n))は
<N.Khanejaによるカルタン分解>
次に、非特許文献1記載のカルタン分解について説明する。
カルタン分解では、与えられたリー代数表現g=su(2n)を、直交する2つのベクトル空間(kとm=k⊥)の直和
Next, cartan decomposition described in
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 ⊥ ).
そして、これらのリー代数表現g、k、mにそれぞれ対応するリー群G,K=exp(k)、M=exp(m)では、
G=KM …(10)
が成り立つ。これはリー群G=SU(2n)の任意の元が、Kの元とMの元との積に分解できることを意味する。
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)を定義する。
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.
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.
以上のようなカルタン分解の産業上の利用分野としては、例えば、ユニタリ変換量子回路等のユニタリ行列の分解を例示できる。すなわち、任意のユニタリ行列を現実の量子回路で実現する場合、そのユニタリ行列を基本ゲートに分解しなければならない。そして、もし、このカルタン分解によって分解された各元を新たな入力元とし、このカルタン分解を再帰的に繰り返していくことができるならば、任意のユニタリ行列をシステマチックに基本ゲートに分解することも可能である。
しかし、従来、カルタン分解による分解結果から、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の本発明では、まず、分解対象である2n×2nの特殊ユニタリ行列F∈SU(2n)の自然対数であるリー(Lie)代数表現f∈su(2n)を、行列表現変換手段が抽出し、抽出されたリー代数表現fを、カルタン分解手段が、カルタン(Cartan)分解によって、直交する2つのベクトル空間k,mに含まれる要素k1∈k,m1∈mに分解する。
次に、対角行列計算手段が、Uh・exp(m1)・Uhを対角行列Dhに対角化する特殊ユニタリ行列Umを算出する。なお、Uhは、ベクトル空間mに含まれる極大可換部分代数であるカルタン部分代数h(n)の基底のすべてを同時対角化する行列を意味し、対角行列Dhは、カルタン部分代数h(n)に対応するリー群exp(h(n))を行列Uhによって対角化した行列を意味する(Dh∈Uh・exp(h(n))・Uh)。
<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 ).
そして、対角行列分解手段が、対角行列Dhをトフォリ(Toffoli)ゲートTGhの積に分解し、基本ゲート分解手段が、各トフォリゲートTGhを基本ゲートBGhの積に分解し、分解要素格納手段が、exp(k1)、Uh、Um、Um *及びBGhを、Fの分解要素(F=exp(k1)・(Uh・Um・BGh・Um *・Uh))として記憶手段に格納する。なお、本発明の「トフォリゲート」は、行の入れ替え等の簡易な操作によりトフォリゲートとなる行列をも含む概念である。
ここで、カルタン分解手段において、リー代数表現fを、直交するベクトル空間k,mに含まれる要素k1∈k,m1∈mに分解しているため、
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,
また、前述の式(12)でも示したとおり、このM1は、
M1=K2・exp(h1)・K3 …(14)
と分解できる(h1∈h(n),K2,K3∈K=exp(k))。
ここでM1=K2・exp(h1)・K3を行列Uhによって対角化すると、
Uh・M1・Uh=(Uh・K2・Uh)(Uh・exp(h1)・Uh)(Uh・K3・Uh) …(15)
となる。そして、Uhは、h(n)の基底のすべてを同時対角化する行列を意味するのであるから、h1を対角化する行列でもあり、さらには、上述の式(1)の定義より、そのリー群exp(h1)をも対角化する行列である。そして、Dh=Uh・exp(h(n))・Uhとしているのだから、上述の式(15)は、
Uh・M1・Uh=Uh・K2・Uh・Dh・Uh・K3・Uh …(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 ·
It becomes.
また、対角行列計算手段において、Uh・exp(m1)・Uhを対角行列Dhに対角化する特殊ユニタリ行列Umを算出しているが、M1=exp(m1)であるため、
Um *(Uh・M1・Uh)Um=Dh
Uh・M1・Uh=Um・Dh・Um * …(17)
が成り立つ。ここで、式(16)と(17)とが成り立つためには、
K2=Uh・Um・Uh …(18)
K3=Uh・Um *・Uh …(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)に代入すると、
M1=K2・exp(h1)・K3
=(Uh・Um・Uh)・exp(h1)・(Uh・Um *・Uh)
=Uh・Um・(Uh・exp(h1)・Uh)・Um *・Uh
=Uh・Um・Dh・Um *・Uh
となる。
すなわち、この式より、分解対象である特殊ユニタリ行列Fは、
F=K1M1
=K1・Uh・Um・Dh・Um *・Uh …(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)において、行列Uhの量子回路は公知である(後述)。また、対角行列Dhは、対角行列分解手段及び基本ゲート分解手段により、基本ゲートBGhの積に分解できる。従って、残りのK1とUmが基本ゲートまで分解できれば、Fを基本ゲートに分解できる。そこで、次は、これらK1とUmを、それぞれ分解対象である特殊ユニタリ行列として本発明の処理を再帰的に繰り返す。なお、Umは対角行列計算手段が算出したものであるからUmを、分解対象である特殊ユニタリ行列として特定することは容易であり、また、Umが特定できるならば、残りのK1を式(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の本発明では、まず、分解対象である2n×2nの特殊ユニタリ行列F∈SU(2n)の自然対数であるリー(Lie)代数表現f∈su(2n)を、行列表現変換手段が抽出し、抽出されたリー代数表現fを、カルタン分解手段が、カルタン(Cartan)分解によって、直交する2つのベクトル空間k,mに含まれる要素k1∈k,m1∈mに分解する。
次に、m1を対角行列D1に対角化する特殊ユニタリ行列U1を、対角行列計算手段が算出し、対角行列分解手段が、exp(D1)をトフォリ(Toffoli)ゲートTG1の積に分解し、基本ゲート分解手段が、上記各トフォリゲートTG1を基本ゲートBG1の積に分解し、分解要素格納手段が、上記exp(k1)、U1、U1 *及びBG1を、Fの分解要素(F=exp(k1)・(U1・BG1・U1 *))として記憶手段に格納する。
<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 ,
ここで、カルタン分解手段において、リー代数表現fを、直交するベクトル空間k,mに分解しているため、k1∈k,m1∈mとすると、
また、対角行列計算手段において、m1を対角行列D1に対角化する特殊ユニタリ行列U1を算出している。そして、上述の式(1)の定義より、この特殊ユニタリ行列U1は、m1のリー群M1=exp(m1)を対角行列exp(D1)に対角化する行列である。従って、この特殊ユニタリ行列U1を用いれば、M1は、
M1=U1・exp(D1)・U1 * …(21)
と書ける。
従って、分解対象である特殊ユニタリ行列Fは、
F=K1M1
=K1・U1・exp(D1)・U1 * …(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
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)において、対角行列D1は、対角行列分解手段及び基本ゲート分解手段により、基本ゲートBG1の積に分解できる。従って、残りのK1とU1が基本ゲートまで分解できれば、Fを基本ゲートに分解できる。そこで、次は、これらK1とU1を、それぞれ分解対象である特殊ユニタリ行列として本発明の処理を再帰的に繰り返す。なお、U1は対角行列計算手段が算出したものであるからU1を、分解対象である特殊ユニタリ行列として特定することは容易であり、また、U1が特定できるならば、残りのK1を式(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
The unitary
<主記憶装置>
主記憶装置3は、2n×2nの特殊ユニタリ行列(SU(2n))と、当該特殊ユニタリ行列の自然対数であるリー(Lie)代数表現(su(2n))と、を対応付けて格納する。そして、分解対象とした行列を、その分解後の積の形に置き換えていく。
<Main memory>
The
<構造判定部>
構造判定部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
Here, when it is determined that the extracted special unitary matrix is included in the SU (4), the
<行列表現変換部>
行列表現変換部5は、構造判定部4から受け取った分解対象の特殊ユニタリ行列F∈SU(2n)に対応するリー代数表現f∈su(2n)が主記憶装置3に格納されているか否かを判断する。
ここで、対応するリー代数表現fが格納されていると判断された場合、行列表現変換部5は、分解対象の特殊ユニタリ行列F∈SU(2n)に対応するリー代数表現f∈su(2n)を主記憶装置3から抽出する。一方、対応するリー代数表現fが格納されていないと判断された場合、行列表現変換部5は、対角行列計算部7を呼び出し、当該Fを対角行列D2に対角化する行列U2を計算させ、U2・log(D2)・U2 *の演算結果を、当該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
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
<対角行列計算部>
対角行列計算部7は、入力された行列を対角化するユニタリ行列を求める。そして、その対角化するユニタリ行列Uと、それによって対角化した対角行列Dとを出力する。具体的には、例えば、以下のアルゴリズムによりこの演算を行う。
[アルゴリズム1:入力行列のサイズが小さい場合]
1.固有方程式 det(A−λI)=0を厳密に解いて固有値λ∈Cを求める。なお、Aはm(=2n)次の入力行列を、Iは単位行列を、det(...)は行列式の値をそれぞれ意味する。
<Diagonal matrix calculator>
The diagonal
[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ν=λνに代入し、この方程式を解くことにより、各固有値λに対応する固有ベクトルν∈Cm,ν≠0を求める。
3.求められた固有値λ1,λ2,…,λm、及びこれらの固有値に対応する固有ベクトルν1,ν2,…,νmから、
U=(ν1,ν2,…,νm)
D=diag(λ1,λ2,…,λm)
を算出する。なお、diag(λ1,λ2,…,λm)は、λ1,λ2,…,λmを対角成分とする対角行列を意味する。
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
なお、アルゴリズム2の「1.」におけるHermite行列への変換には、以下のような手法を利用できる。
(a)入力行列Aがユニタリ行列の場合、B=A+A*とすれば、BはHermite行列となる。この場合、Aの固有値をα1とすれば、Bの固有値β1は、β1=α1+α1 *(α1 *は、α1の共役複素数)である(「4.」の処理に対応)。
(b)入力行列Aが歪みHermite行列の場合、B=iAとすれば、BはHermite行列となる。この場合、Aの固有値をα1とすれば、Bの固有値β1は、β1=‐iα1である(「4.」の処理に対応)。
なお、上記の方法の他にも、適切な相似変換(前処理)を行うことで、QR法やベキ乗法などのよく知られている固有値問題を解くアルゴリズムを利用すれば、固有値を求めることができる。
The following method can be used for conversion to the Hermitian matrix in “1.” of
(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) 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に含まれる要素k1∈k,m1∈mの直和に分解する。そして、分解されたm1をM分解部8へ渡す。その後、M分解部8から返された分解結果をkとともに、分解要素格納部11へ渡す。
<Basic gate disassembly unit>
The basic
<Cartan decomposition part>
<M分解部>
M分解部8は、受け取ったmを対角行列計算部7へ渡し、Uh・exp(m1)・Uhを対角行列Dh(Dh∈Uh・exp(h(n))・Uh)に対角化する特殊ユニタリ行列Umを算出させる。そして、M分解部8は、対角行列計算部7において算出された特殊ユニタリ行列Umと対角行列Dhとを受け取り、exp(m1)をUh・Um・Dh・Um *・Uhで置き換える。また、M分解部8は、この対角行列Dhを対角行列分解部9に渡し、対角行列分解部9から返された分解結果で対角行列Dhを置き換え、それらとUh、Um、Um *とをカルタン分解部6へ返す。
<M disassembly unit>
The M decomposition unit 8 passes the received m to the diagonal
[行列Uhの説明]
前述のように、Uhはベクトル空間mに含まれる極大可換部分代数であるカルタン部分代数h(n)の基底のすべてを同時対角化する行列である。すなわち、前述の式(11)で定義されるカルタン部分代数h(n)の基底には、それらすべてを同時対角化するような行列Uhが存在する。例えば、g∈su(23)の場合を考えると、(g,k)の組に対するカルタン部分代数h(n)は、
h1=i(α1σ1+α2σ2+α3σ3+α4σ4)∈h(3)
と書ける。この場合、h(3)の基底σ1,σ2,σ3,σ4のすべてを同時対角化する行列、すなわち、任意のh1∈h(3)に対して、
Uh *・h(n)・Uh=α1・Uh *・σ1・Uh+α2・Uh *・σ2・Uh+α3・Uh *・σ3・Uh+α4・Uh *・σ4・Uh=Dh
が成り立つような行列Uhが存在し、その行列Uhは以下のようになる。
[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
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.
このような行列Uhは、n≧3のとき、図3のように規則的に構成することができ、かつ、Uh *=Uh −1=Uhが成り立つ。すなわち、n=3のときは、図3の(a)に示すように、2つのCNOTゲート21,22と、その目標ビット経路上にCNOTゲート21,22に挟まれて配置されたアダマール(Hadamard)ゲート31と、これらの目標ビット及び制御ビット以外の第3の量子ビット経路上に配置されるアダマールゲート32‐1とによって行列Uh(3)が構成される(Uh(β)は、n=βの行列Uhを意味する。)。また、n=4のときは、図3の(b)に示すように、さらに第4の量子ビット経路上に配置されるアダマールゲート32‐2が追加されることによって行列Uh(4)が構成される。そして、これを一般化すると、図3の(c)に示すように、2つのCNOTゲート21,22と、その目標ビット経路上にCNOTゲート21,22に挟まれて配置されたアダマールゲート31と、アダマールゲート32‐1〜nとによって行列Uh(n)が構成される(行列Uhの説明終わり)。
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
<対角行列分解部>
対角行列分解部9は、2n×2nの対角行列を、2n−1個のn量子ビットのトフォリ(Toffoli)ゲートの積に分解する。なお、ここでの「トフォリゲート」には、簡易な操作によりトフォリゲートの形になる行列も含まれる。
例えば、n=3のときの対角行列
<Diagonal matrix decomposition unit>
The diagonal
For example, a diagonal matrix when n = 3
ここで、F4は3量子ビットのトフォリゲートそのものである。F1,F2,F3は、行の入れ替えをすれば、やはり3量子ビットのトフォリゲートで実現できる。例えば、F1の場合は、まず上半分と下半分とを入れ替え(第1量子ビットの0,1を反転させる)、次に下半分のうち、さらに上半分と下半分とを入れ替える(第2量子ビットの0,1を反転させる)ことで3量子ビットのトフォリゲートの形になる。本発明では、F1,F2,F3のようなものも「トフォリゲート」と呼ぶことにする。
対角行列分解部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
<基本ゲート分解部>
基本ゲート分解部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
<分解要素格納部>
分解要素格納部11は、exp(k1)、Uh、Um、Um *及び基本ゲートBGhを、Fの分解要素(F=exp(k1)・(Uh・Um・BGh・Um *・Uh=exp(m1)))として主記憶装置3に格納する(ここで、k1∈k、m1∈m)。
<処理>
次に、本形態におけるユニタリ行列分解方法について説明する。
図2は、本形態におけるユニタリ行列分解方法を説明するためのフローチャートである。以下、図1及び図2を用い、本形態におけるユニタリ行列の分解分解処理について説明する。
まず、任意のユニタリ行列が入力部2から入力される。入力されたユニタリ行列は、入力部2において特殊ユニタリ行列F∈SU(2n)に変換され、行列リストFとして主記憶装置3に格納される。
<Disassembly element storage unit>
The decomposition
<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
次に、構造判定部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
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
一方、抽出した特殊ユニタリ行列がSU(4)に含まれないと判断された場合(n≧3であると判断された場合)、構造判定部4は、その特殊ユニタリ行列F(「分解対象である特殊ユニタリ行列F」に相当)を行列表現変換部5に送る。これを受け取った行列表現変換部5は、その分解対象である特殊ユニタリ行列Fに対応するリー代数表現fが計算されているか否か(主記憶装置3に格納されているか否か)を判断する(ステップS5)。ここで、対応するリー代数表現fが計算されていないと判断された場合、行列表現変換部5は、このリー代数表現fを求めて主記憶装置3に格納する(ステップS6)。具体的には、例えばまず、行列表現変換部5が対角行列計算部7を呼び出し、分解対象である特殊ユニタリ行列Fを対角行列D2に対角化する行列U2を算出させ、この行列U2及び対角行列D2を受け取る。そして、行列表現変換部5は、
log(F)=log(U2・D2・U2 *)
=U2・log(D2)・U2 *
の演算結果を、当該Fに対応するリー代数表現fとして主記憶装置3に格納する。このようにFを対角行列D2に分解して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
log (F) = log (U 2 · D 2 · U 2 * )
= U 2 · log (D 2 ) · U 2 *
Is stored in the
一方、ステップS5の判断で、対応するリー代数表現fが計算されていると判断された場合、行列表現変換部5は、リー代数表現fの算出を行わない。
その後、行列表現変換部5は、分解対象である特殊ユニタリ行列F∈SU(2n)に対応するリー代数表現f∈su(2n)を主記憶装置3から抽出し(ステップS7)、カルタン分解部6に送る。カルタン分解部6は、送られたリー代数表現fを、カルタン分解によって、直交する2つのベクトル空間k,mに含まれる要素k1∈k,m1∈mに分解し、対応するF=exp(f)をexp(k1)・exp(m1)で置き換える関係を保存しておく(ステップ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
カルタン分解部6において分解されたm1は、M分解部8に送られ、M分解部8は、これを対角行列計算部7に送る。そして、対角行列計算部7は、Uh・exp(m1)・Uhを対角行列Dhに対角化する特殊ユニタリ行列Umを算出し、対角行列Dhと特殊ユニタリ行列UmとをM分解部8に返す。M分解部8は、exp(m1)をUh・Um・Dh・Um *・Uhで置き換える関係を保存しておく(ステップS9)。
次に、M分解部8は、対角行列Dhを対角行列分解部9に送り、対角行列分解部9は、対角行列DhをトフォリゲートTGhの積に分解する(ステップS10)。対角行列分解部9は、対角行列DhをトフォリゲートTGhの積で置き換える関係を保存し、これらのトフォリゲートTGhを基本ゲート分解部10に送る。基本ゲート分解部10は、送られた各トフォリゲートTGhを基本ゲートBGhの積に分解し(ステップS11)、トフォリゲートTGhを基本ゲートBGhの積に置き換えた関係を対角行列分解部9に返す。
The m 1 decomposed in the
Next, the M decomposition unit 8 sends the diagonal matrix D h to the diagonal
対角行列分解部9は、保存しておいた「対角行列DhをトフォリゲートTGhの積で置き換える関係」を用い、基本ゲート分解部10から受け取った基本ゲートBGhの積で対角行列Dhを置き換える。そして、その基本ゲートBGhの積で置き換えられた対角行列DhをM分解部8に返す。
M分解部8は、保存しておいた「exp(m1)をUh・Um・Dh・Um *・Uhで置き換える関係」を用い、対角行列分解部9から送られた基本ゲートBGhの積(=Dh)でUh・Um・Dh・Um *・Uhを置き換え、その置き換え結果exp(m1)=Uh・Um・BGh・Um *・Uhをカルタン分解部6に返す。
The diagonal
The M decomposition unit 8 is sent from the diagonal
カルタン分解部6は、保存しておいた「F=exp(f)をexp(k1)・exp(m1)で置き換える関係」を用い、M分解部8から送られたexp(m1)=Uh・Um・BGh・Um *・UhでF=exp(f)を置き換え、その置き換え結果F=exp(k1)・Uh・Um・BGh・Um *・Uhを分解要素格納部11に送る。
分解要素格納部11は、exp(k1)、k1、Uh、Um、Um *及びBGhを、Fの分解要素(F=exp(k1)・(Uh・Um・BGh・Um *・Uh))として主記憶装置3に格納する(ステップS12)。
The decomposition
ここで、主記憶装置3に格納されたUhの量子回路構成は前述の通り公知である(図3)。また、当然、基本ゲートBGhの回路構成も公知である。従って、exp(k1)及びUmがUh或いはBGhに分解できれば、Fは実現可能な量子回路に分解されたことになる。そのため、以降は、このexp(k1)及びUmを新たな特殊ユニタリ行列F∈SU(2n)として、上述したステップS1〜S12までの処理を再帰的に繰り返す。これにより、すべての行列が実現可能な量子回路に分解される。
<3量子ビットのFourier変換の行列の分解>
次に、本形態の具体例について説明する。この例では、3量子ビット(n=3)のFourier変換の行列の分解を行う。
Here, the quantum circuit configuration of U h stored in the
<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.
<基本行列>
まず、この例の分解に使用する基本的な行列を示す。
First, the basic matrix used for the decomposition of this example is shown.
<入力>
3量子ビットのFourier変換の行列UF∈SU(8)は、次の行列である。
The matrix U F ∈ SU (8) of the Fourier transform of 3 qubits is the following matrix.
まず、この行列UF(「F」に相当)を入力部2(図1)に入力し、主記憶装置3に格納する。この行列UFは、基本ゲートでなく(ステップS1)、SU(4)にも含まれない(ステップS3)。また、この時点では、行列UFに対応するLie代数表現も計算されていない(ステップS4)。そこでまず、行列表現変換部5は、対角行列計算部7を呼び出し、行列UFに対応するLie代数表現fを求める(ステップS5,S6)。つまり、UF=exp(f)であることから、行列表現変換部5は、UFを対角行列Dfに対角化する行列U1を利用し、
UF=U1・Df・U1 *=exp(f)
f=log(UF)=log(U1・Df・U1 *)=U1・log(Df)・U1 *
により、Lie代数表現fを求める。ここで、この対角化を実現する行列U1は、ユニタリ行列の性質を満たすようにUFの固有ベクトルを縦に並べた行列である。すなわち、
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,
そして、行列UFに対応するLie代数表現fは、
次に、行列表現変換部5は、主記憶装置3から行列UFに対応するLie代数表現fを抽出し(ステップS7)、カルタン分解部6に送る。カルタン分解部6は、カルタン分解を利用して、このfを
カルタン分解部6で算出されたm1は、M分解部8に送られ、M分解部8は、対角行列計算部7を呼び出し、M1=exp(m1)をM1=Uh・Um・Dh・Um *・Uhで置き換える(ステップS9)。ここで、Uhは前述の式(23)で示される行列であり、図3の量子回路で実現できるものである。DhはUh・M1・Uhの固有値が対角成分にならんだ対角行列で、
Dh=diag(i,−i,i,−i,1,1,1,1) …(24)
となる。
M 1 calculated by the
D h = diag (i, -i, i, -i, 1, 1, 1, 1) (24)
It becomes.
この対角行列Dhは、対角行列分解部9において、<対角行列分解部>の説明で述べたように、4個の3量子ビットのトフォリゲートの積に分解されるが、F3,F4は単位行列となるため、2個の3量子ビットのトフォリゲートの積に分解される(ステップS10)。そして、さらに基本ゲート分解部10において以下のような基本ゲートの積に分解される(ステップS11)。
また、このような対角化を実現する行列Umは
そして、以上のような対角行列Dhの基本ゲートの積、行列Um、Um *、Uh、K1=exp(k1),k1は、分解要素格納部11において主記憶装置3に格納される(ステップS12)。
The matrix U m for realizing such diagonalization 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
<Umの分解>
次に、UmやK1は基本ゲートでないため(ステップS1)、構造判定部4において、まず行列Umが、主記憶装置3から読み出される(ステップS2)。ここで、式(25)に示すように、各行や列に含まれる0以外の要素の数は最大値は4である。よって、この行列UmはSU(4)に含まれ、構造判定部4は、この行列Umを基本ゲート分解部10に送る。そして、基本ゲート分解部10は、以下のように、この行列Umを基本ゲートの積で置き換える(ステップS4)。
Next, since U m and K 1 are not basic gates (step S1), the
また、基本ゲート分解部10は、T5を以下の行列のテンソル積に分解する。
<U6の分解>
さらに、基本ゲート分解部10は、U6を以下の形に分解する。
Furthermore, the basic
<K1=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
まず、基本ゲート分解部10は、K1=exp(k1)に対応するリー代数表現k1を主記憶装置3から抽出する。そして、基本ゲート分解部10は、カルタン分解によって、このリー代数表現k1をk2とm2との直和に分解する。具体的には、例えば、k1から図4の(a)の要素を取り出したものをk2とし、図4の(b)の要素を取り出したものをm2とする。すると、
<K2の分解>
次に基本ゲート分解部10は、上記の式(26)に示されるK2を、以下の形に書き換える。
Then the basic
1.第2量子ビットと第3量子ビットを入れ替える。
2.第1量子ビットと第2量子ビットを入れ替える。
3.第1量子ビットの否定(NOT)をとる。
という操作から構成されている。
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.
<U2の分解>
次に基本ゲート分解部10は、対角行列計算部7を呼び出して、上記の式(28)で示すU2を、以下のように対角行列D2を含む行列の積に分解する。
Next, the basic
<M2の分解>
また、基本ゲート分解部10は、前述の式(27)に示されるM2を、以下の形に分解する。
そして、以上のような分解結果は主記憶装置3に格納される。
<Decomposition of M 2>
Further, the basic
The decomposition results as described above are stored in the
以上のような処理により、求まったFuorier変換の分解は以下のようになる。
図5の(b)は、Dh回路43を基本ゲートに分解した構成(式(35))を示している。この図に示すように、Dh回路43は、4つのNOTゲート43a〜43dと2つの制御ユニタリ(T9)ゲート43e,43fによって構成される。
The decomposition of the found Fuorier transform by the above processing is as follows.
FIG. 5B shows a configuration (formula (35)) in which the Dh
図5の(c)は、M2回路46を基本ゲートに分解した構成(式(33))を示している。この図に示すように、M2回路46は、2つのSWAPゲート46a,46bと1つの制御ユニタリゲート(T6)46cによって構成される。
図6の(a)は、Um回路44を基本ゲートに分解した構成(式(34))を示している。この図に示すように、Um回路44は、8つのNOTゲート44a〜44h、4つの制御ユニタリゲート(T8)44i〜44p、1つの制御ユニタリゲート(T1)44k、1つの制御ユニタリゲート(T7)44m、2つのCNOTゲート(C1)44q,44r,1つのNCNOTゲート(C2:第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
FIG. 6A shows a configuration (formula (34)) in which the Um
図6の(b)は、K2回路47を基本ゲートに分解した構成(式(32))を示している。この図に示すように、K2回路47は、4つのSWAPゲート(S)47a〜47d、4つのNOTゲート47e〜47h、2つのCNOTゲート(C1)47i,47j、2つの制御ユニタリゲート(T1)47m,47s、3つの制御ユニタリゲート(T2)47k,47n、47r、1つの制御ユニタリゲート(T3)47q、1つの制御ユニタリゲート(T4)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
〔第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
The difference of the configuration of the unitary
<M分解部>
m分解部108は、受け取ったm1を対角行列計算部7へ渡し、m1を対角行列D1に対角化する特殊ユニタリ行列U1を算出させる。そして、m分解部108は、対角行列計算部7において算出された特殊ユニタリ行列U1をと対角行列D1とを受け取り、exp(m1)をU1・exp(D1)・U1 *で置き換える。また、m分解部108は、この対角行列D1を対角行列分解部9に渡し、対角行列分解部9から返された分解結果で対角行列D1を置き換え、それらとU1、U1 *とをカルタン分解部6へ返す。
<M disassembly unit>
The
<処理>
次に、本形態におけるユニタリ行列分解方法について説明する。
図8は、本形態におけるユニタリ行列分解方法を説明するためのフローチャートである。以下、図7及び図8を用い、本形態におけるユニタリ行列の分解分解処理について説明する。
まず、任意のユニタリ行列が入力部2から入力される。入力されたユニタリ行列は、入力部2において特殊ユニタリ行列F∈SU(2n)に変換され、行列リスト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
次に、構造判定部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
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
一方、抽出した特殊ユニタリ行列が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
その後、行列表現変換部5は、分解対象である特殊ユニタリ行列F∈SU(2n)に対応するリー代数表現f∈su(2n)を主記憶装置3から抽出し(ステップS27)、カルタン分解部6に送る。カルタン分解部6は、送られたリー代数表現fを、カルタン分解によって、直交する2つのベクトル空間k,mに含まれる要素k1∈k,m1∈mに分解し、対応するF=exp(f)をexp(k1)・exp(m1)で置き換える関係を保存しておく(ステップS28)。
カルタン分解部6において分解されたm1は、m分解部108に送られ、m分解部108は、これを対角行列計算部7に送る。そして、対角行列計算部7は、m1を対角行列D1に対角化する特殊ユニタリ行列U1を算出し、対角行列D1と特殊ユニタリ行列U1とをm分解部108に返す。m分解部108は、exp(m1)をU1・exp(D1)・U1 *で置き換える関係を保存しておく(ステップ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
The m 1 decomposed in the
次に、m分解部108は、対角行列exp(D1)を対角行列分解部9に送り、対角行列分解部9は、対角行列exp(D1)をトフォリゲートTGhの積に分解する(ステップS30)。対角行列分解部9は、対角行列exp(D1)をトフォリゲートTGhの積で置き換える関係を保存し、これらのトフォリゲートTGhを基本ゲート分解部10に送る。基本ゲート分解部10は、送られた各トフォリゲートTGhを基本ゲートBGhの積に分解し(ステップS31)、トフォリゲートTGhを基本ゲートBGhの積に置き換えた関係を対角行列分解部9に返す。
Next, the
対角行列分解部9は、保存しておいた「対角行列exp(D1)をトフォリゲートTGhの積で置き換える関係」を用い、基本ゲート分解部10から受け取った基本ゲートBGhの積で対角行列exp(D1)を置き換える。そして、その基本ゲートBGhの積で置き換えられた対角行列exp(D1)をm分解部108に返す。
m分解部18は、保存しておいた「exp(m1)をU1・exp(D1)・U1 *で置き換える関係」を用い、対角行列分解部9から送られた基本ゲートBGhの積(=exp(D1))でU1・exp(D1)・U1 *を置き換え、その置き換え結果exp(m1)=U1・BGh・U1 *をカルタン分解部6に返す。
The diagonal
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
カルタン分解部6は、保存しておいた「F=exp(f)をexp(k1)・exp(m1)で置き換える関係」を用い、m分解部108から送られたexp(m1)=U1・BGh・U1 *でF=exp(f)を置き換え、その置き換え結果F=exp(k1)・U1・BGh・U1 *を分解要素格納部11に送る。
分解要素格納部11は、exp(k1)、k1、U1、U1 *及びBG1を、上記Fの分解要素(F=exp(k1)・(U1・BG1・U1 *=exp(m1)))として主記憶装置3に格納する(ステップS32)。
The decomposition
ここで、主記憶装置3に格納された基本ゲートBGhの回路構成も公知である。従って、exp(k)及びU1がBGhに分解できれば、Fは実現可能な量子回路に分解されたことになる。そのため、以降は、このexp(k1)及びU1を新たな特殊ユニタリ行列F∈SU(2n)として、上述したステップS21〜S32までの処理を再帰的に繰り返す。これにより、すべての行列が実現可能な量子回路に分解される。
なお、この発明は上述の各実施の形態に限定されるものではなく、その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。
また、上述の構成をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。
Here, the circuit configuration of the basic gate BG h stored in the
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,100 ユニタリ行列分解装置
2 入力部
3 主記憶装置(記憶手段)
4 構造判定部(構造判定手段)
5 行列表現変換部(行列表現変換手段)
6 カルタン分解部(カルタン分解手段)
7 対角行列計算部(対角行列計算手段)
8 M分解部
9 対角行列分解部(対角行列分解手段)
10 基本ゲート分解部(基本ゲート分解手段)
11 分解要素格納部(分解要素格納手段)
12 出力部
108 m分解部
1,100 unitary
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
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)
分解対象である2n×2nの特殊ユニタリ行列F∈SU(2n)の自然対数であるリー(Lie)代数表現f∈su(2n)を、行列表現変換手段が抽出するステップと、
抽出された上記リー代数表現fを、カルタン分解手段が、カルタン(Cartan)分解によって、直交する2つのベクトル空間k,mに含まれる要素k1∈k,m1∈mに分解するステップと、
Uh・exp(m1)・Uh(Uhは、上記ベクトル空間mに含まれる極大可換部分代数であるカルタン部分代数h(n)の基底のすべてを同時対角化する行列)を対角行列Dh(Dh∈Uh・exp(h(n))・Uh)に対角化する特殊ユニタリ行列Umを、対角行列計算手段が算出するステップと、
対角行列分解手段が、上記対角行列Dhをトフォリ(Toffoli)ゲートTGhの積に分解するステップと、
基本ゲート分解手段が、上記各トフォリゲートTGhを基本ゲートBGhの積に分解するステップと、
分解要素格納手段が、上記exp(k1)、Uh、Um、Um *及びBGhを、上記Fの分解要素(F=exp(k1)・(Uh・Um・BGh・Um *・Uh))として記憶手段に格納するステップと、
を有することを特徴とするユニタリ行列分解方法。 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:
分解対象である2n×2nの特殊ユニタリ行列F∈SU(2n)の自然対数であるリー(Lie)代数表現f∈su(2n)を、行列表現変換手段が抽出するステップと、
抽出された上記リー代数表現fを、カルタン分解手段が、カルタン(Cartan)分解によって、直交する2つのベクトル空間k,mに含まれる要素k1∈k,m1∈mに分解するステップと、
m1を対角行列D1に対角化する特殊ユニタリ行列U1を、対角行列計算手段が算出するステップと、
対角行列分解手段が、exp(D1)をトフォリ(Toffoli)ゲートTG1の積に分解するステップと、
基本ゲート分解手段が、上記各トフォリゲートTG1を基本ゲートBG1の積に分解するステップと、
分解要素格納手段が、上記exp(k1)、U1、U1 *及びBG1を、上記Fの分解要素(F=exp(k1)・(U1・BG1・U1 *))として記憶手段に格納するステップと、
を有することを特徴とするユニタリ行列分解方法。 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:
上記記憶手段に格納されたすべての特殊ユニタリ行列が基本ゲートであるか否かを、構造判定手段が判断するステップと、
基本ゲートでないと判断された特殊ユニタリ行列を、構造判定手段が上記記憶手段から抽出するステップと、
抽出された上記特殊ユニタリ行列が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.
2n×2nの特殊ユニタリ行列(SU(2n))と、当該特殊ユニタリ行列の自然対数であるリー(Lie)代数表現(su(2n))と、を対応付けて格納する記憶手段と、
分解対象の特殊ユニタリ行列F∈SU(2n)に対応するリー代数表現f∈su(2n)を上記記憶手段から抽出する行列表現変換手段と、
抽出された上記リー代数表現fを、カルタン(Cartan)分解によって、直交する2つのベクトル空間k,mに含まれる要素k1∈k,m1∈mに分解するカルタン分解手段と、
Uh・exp(m1)・Uh(Uhは、上記ベクトル空間mに含まれる極大可換部分代数であるカルタン部分代数h(n)の基底のすべてを同時対角化する行列)を対角行列Dh(Dh∈Uh・exp(h(n))・Uh)に対角化する特殊ユニタリ行列Umを算出する対角行列計算手段と、
上記対角行列Dhをトフォリ(Toffoli)ゲートTGhの積に分解する対角行列分解手段と、
上記各トフォリゲートTGhを基本ゲートBGhの積に分解する基本ゲート分解手段と、
上記exp(k1)、Uh、Um、Um *及びBGhを、上記Fの分解要素(F=exp(k1)・(Uh・Um・BGh・Um *・Uh=exp(m1)))として上記記憶手段に格納する分解要素格納手段と、
を特徴とするユニタリ行列分解装置。 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
2n×2nの特殊ユニタリ行列(SU(2n))と、当該特殊ユニタリ行列の自然対数であるリー(Lie)代数表現(su(2n))と、を対応付けて格納する記憶手段と、
分解対象の特殊ユニタリ行列F∈SU(2n)に対応するリー代数表現f∈su(2n)を上記記憶手段から抽出する行列表現変換手段と、
抽出された上記リー代数表現fを、カルタン(Cartan)分解によって、直交する2つのベクトル空間k,mに含まれる要素k1∈k,m1∈mに分解するカルタン分解手段と、
m1を対角行列D1に対角化する特殊ユニタリ行列U1を算出する対角行列計算手段と、
exp(D1)をトフォリ(Toffoli)ゲートTG1の積に分解する対角行列分解手段と、
上記各トフォリゲートTG1を基本ゲートBG1の積に分解する基本ゲート分解手段と、
上記exp(k1)、U1、U1 *及びBG1を、上記Fの分解要素(F=exp(k1)・(U1・BG1・U1 *=exp(m1)))として上記記憶手段に格納する分解要素格納手段と、
を特徴とするユニタリ行列分解装置。 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
上記分解対象の特殊ユニタリ行列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.
上記基本ゲート分解手段は、
さらに、上記記憶手段に格納された特殊ユニタリ行列のうち、基本ゲートを除く、n=2の特殊ユニタリ行列を、基本ゲートBG2の積に分解する手段である、
ことを特徴とするユニタリ行列分解装置。 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.
上記対角行列計算手段は、
分解対象の特殊ユニタリ行列F∈SU(2n)に対応するリー代数表現f∈su(2n)が上記記憶手段に格納されていない場合、当該Fを対角行列D2に対角化する行列U2を、さらに算出する手段であり、
上記行列表現変換手段は、
さらに、U2・log(D2)・U2 *の演算結果を、当該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.
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)
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 |
-
2004
- 2004-05-20 JP JP2004150549A patent/JP4260680B2/en not_active Expired - Fee Related
Cited By (6)
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 |