JP4260680B2 - ユニタリ行列分解方法、ユニタリ行列分解装置、ユニタリ行列分解プログラム及び記録媒体 - Google Patents
ユニタリ行列分解方法、ユニタリ行列分解装置、ユニタリ行列分解プログラム及び記録媒体 Download PDFInfo
- Publication number
- JP4260680B2 JP4260680B2 JP2004150549A JP2004150549A JP4260680B2 JP 4260680 B2 JP4260680 B2 JP 4260680B2 JP 2004150549 A JP2004150549 A JP 2004150549A JP 2004150549 A JP2004150549 A JP 2004150549A JP 4260680 B2 JP4260680 B2 JP 4260680B2
- Authority
- JP
- Japan
- Prior art keywords
- matrix
- decomposition
- diagonal
- unitary
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Complex Calculations (AREA)
Description
次に、非特許文献1記載のカルタン分解について説明する。
カルタン分解では、与えられたリー代数表現g=su(2n)を、直交する2つのベクトル空間(kとm=k⊥)の直和
そして、これらのリー代数表現g、k、mにそれぞれ対応するリー群G,K=exp(k)、M=exp(m)では、
G=KM …(10)
が成り立つ。これはリー群G=SU(2n)の任意の元が、Kの元と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)に対応するリー群の元との積に分解できる。
N. Khaneja, S. Glaster,"Cartan Decomposition of SU(2n), constructive controllability of spin systems and universal quantum computing," quant-ph/0010100,2000.
本発明はこのような点に鑑みてなされたものであり、ユニタリ行列にカルタン分解を再帰的に適用し、このユニタリ行列を自動的に基本ゲートに分解する処理をコンピュータ上で実現する技術を提供することを目的とする。
上記課題を解決するために、第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)。
ここで、カルタン分解手段において、リー代数表現fを、直交するベクトル空間k,mに含まれる要素k1∈k,m1∈mに分解しているため、
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)
となる。
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)
であれば十分である。
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)
と分解できることが分かる。
上記課題を解決するために、第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 *))として記憶手段に格納する。
M1=U1・exp(D1)・U1 * …(21)
と書ける。
従って、分解対象である特殊ユニタリ行列Fは、
F=K1M1
=K1・U1・exp(D1)・U1 * …(22)
と分解できることが分かる。
〔第1の実施の形態〕
まず、本発明における第1の実施の形態について説明する。
<構成>
まず、本形態におけるユニタリ行列分解装置の構成を説明する。
図1は、本形態におけるユニタリ行列分解装置1の構成を説明するためのブロック図である。
ユニタリ行列分解装置1は、公知のコンピュータに所定のプログラムを実行させることにより構築され、入力部2、主記憶装置3(「記憶手段」に相当)、構造判定部4、行列表現変換部5、カルタン分解部6、対角行列計算部7、M分解部、対角行列分解部9、基本ゲート分解部10、分解要素格納部11及び出力部12を有している。
主記憶装置3は、2n×2nの特殊ユニタリ行列(SU(2n))と、当該特殊ユニタリ行列の自然対数であるリー(Lie)代数表現(su(2n))と、を対応付けて格納する。そして、分解対象とした行列を、その分解後の積の形に置き換えていく。
構造判定部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である場合も含まれる。
行列表現変換部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に格納する。
対角行列計算部7は、入力された行列を対角化するユニタリ行列を求める。そして、その対角化するユニタリ行列Uと、それによって対角化した対角行列Dとを出力する。具体的には、例えば、以下のアルゴリズムによりこの演算を行う。
[アルゴリズム1:入力行列のサイズが小さい場合]
1.固有方程式 det(A−λI)=0を厳密に解いて固有値λ∈Cを求める。なお、Aはm(=2n)次の入力行列を、Iは単位行列を、det(...)は行列式の値をそれぞれ意味する。
3.求められた固有値λ1,λ2,…,λm、及びこれらの固有値に対応する固有ベクトルν1,ν2,…,νmから、
U=(ν1,ν2,…,νm)
D=diag(λ1,λ2,…,λm)
を算出する。なお、diag(λ1,λ2,…,λm)は、λ1,λ2,…,λmを対角成分とする対角行列を意味する。
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と同様である。
(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法やベキ乗法などのよく知られている固有値問題を解くアルゴリズムを利用すれば、固有値を求めることができる。
基本ゲート分解部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へ渡す。
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へ返す。
前述のように、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は以下のようになる。
対角行列分解部9は、2n×2nの対角行列を、2n−1個のn量子ビットのトフォリ(Toffoli)ゲートの積に分解する。なお、ここでの「トフォリゲート」には、簡易な操作によりトフォリゲートの形になる行列も含まれる。
例えば、n=3のときの対角行列
対角行列分解部9は、対角行列をトフォリゲートに分解すると、次に、基本ゲート分解部10を呼び出し、このトフォリゲートを基本ゲートに分解させる。そして、その分解結果をM分解部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.」を参照。)。
分解要素格納部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に格納される。
一方、基本ゲートでない特殊ユニタリ行列Fが行列リストに存在すると判断された場合、構造判定部4は、行列リストの中で最初の基本ゲートでない特殊ユニタリ行列Fを主記憶装置3から読み出す(抽出する)(ステップS2)。特殊ユニタリ行列Fを抽出した構造判定部4は、抽出した特殊ユニタリ行列がSU(4)に含まれるか否かを判断する(ステップS3)。ここで、抽出した特殊ユニタリ行列がSU(4)に含まれると判断された場合(n<3であると判断された場合)、構造判定部4は、その特殊ユニタリ行列Fを基本ゲート分解部10に送り、基本ゲート分解部10は、この特殊ユニタリ行列Fを基本ゲートの積で置き換えて主記憶装置3に格納して処理を終了する。
log(F)=log(U2・D2・U2 *)
=U2・log(D2)・U2 *
の演算結果を、当該Fに対応するリー代数表現fとして主記憶装置3に格納する。このようにFを対角行列D2に分解してlogの演算を行うことにより、直接log(F)を計算するよりも演算量を低減させることができる。なお、logは式(1)で定義した指数演算に対応する自然対数である。
その後、行列表現変換部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)、分解された各行列の要素を格子状にとればよい。
次に、M分解部8は、対角行列Dhを対角行列分解部9に送り、対角行列分解部9は、対角行列DhをトフォリゲートTGhの積に分解する(ステップS10)。対角行列分解部9は、対角行列DhをトフォリゲートTGhの積で置き換える関係を保存し、これらのトフォリゲートTGhを基本ゲート分解部10に送る。基本ゲート分解部10は、送られた各トフォリゲートTGhを基本ゲートBGhの積に分解し(ステップS11)、トフォリゲートTGhを基本ゲートBGhの積に置き換えた関係を対角行列分解部9に返す。
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に返す。
分解要素格納部11は、exp(k1)、k1、Uh、Um、Um *及びBGhを、Fの分解要素(F=exp(k1)・(Uh・Um・BGh・Um *・Uh))として主記憶装置3に格納する(ステップS12)。
<3量子ビットのFourier変換の行列の分解>
次に、本形態の具体例について説明する。この例では、3量子ビット(n=3)のFourier変換の行列の分解を行う。
まず、この例の分解に使用する基本的な行列を示す。
UF=U1・Df・U1 *=exp(f)
f=log(UF)=log(U1・Df・U1 *)=U1・log(Df)・U1 *
により、Lie代数表現fを求める。ここで、この対角化を実現する行列U1は、ユニタリ行列の性質を満たすようにUFの固有ベクトルを縦に並べた行列である。すなわち、
Dh=diag(i,−i,i,−i,1,1,1,1) …(24)
となる。
そして、以上のような対角行列Dhの基本ゲートの積、行列Um、Um *、Uh、K1=exp(k1),k1は、分解要素格納部11において主記憶装置3に格納される(ステップS12)。
次に、UmやK1は基本ゲートでないため(ステップS1)、構造判定部4において、まず行列Umが、主記憶装置3から読み出される(ステップS2)。ここで、式(25)に示すように、各行や列に含まれる0以外の要素の数は最大値は4である。よって、この行列UmはSU(4)に含まれ、構造判定部4は、この行列Umを基本ゲート分解部10に送る。そして、基本ゲート分解部10は、以下のように、この行列Umを基本ゲートの積で置き換える(ステップS4)。
次に、まだK1は基本ゲートでないため(ステップS1)、構造判定部4においてK1が主記憶装置3から読み出される(ステップS2)。K1もSU(4)に含まれるため、構造判定部4は、このK1基本ゲート分解部10に送る。そして、基本ゲート分解部10は、以下のように、このK1を基本ゲートの積で置き換える(ステップS4)。
1.第2量子ビットと第3量子ビットを入れ替える。
2.第1量子ビットと第2量子ビットを入れ替える。
3.第1量子ビットの否定(NOT)をとる。
という操作から構成されている。
次に基本ゲート分解部10は、対角行列計算部7を呼び出して、上記の式(28)で示すU2を、以下のように対角行列D2を含む行列の積に分解する。
また、基本ゲート分解部10は、前述の式(27)に示されるM2を、以下の形に分解する。
そして、以上のような分解結果は主記憶装置3に格納される。
図5の(b)は、Dh回路43を基本ゲートに分解した構成(式(35))を示している。この図に示すように、Dh回路43は、4つのNOTゲート43a〜43dと2つの制御ユニタリ(T9)ゲート43e,43fによって構成される。
図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によって構成される。
次に、本発明における第2の実施の形態について説明する。
本形態は第1の実施の形態の変形例である。本形態では、前述の同時対角化行列を用いず、リー代数表現された行列を対角化する行列を利用してユニタリ行列の分解を行う。以下では、第1の実施の形態との相違点を中心に説明し、第1の実施の形態と共通する事項については説明を省略する。
まず、本形態におけるユニタリ行列分解装置の構成を説明する。
図7は、本形態におけるユニタリ行列分解装置100の構成を説明するためのブロック図である。なお、図7において第1の実施の形態のユニタリ行列分解装置1(図1)と共通する機能構成については図1と同じ符号を付した。
ユニタリ行列分解装置100の構成の第1の実施の形態との相違点は、第1の実施の形態のユニタリ行列分解装置1のM分解部8の代わりにm分解部108を具備する点である。
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へ返す。
次に、本形態におけるユニタリ行列分解方法について説明する。
図8は、本形態におけるユニタリ行列分解方法を説明するためのフローチャートである。以下、図7及び図8を用い、本形態におけるユニタリ行列の分解分解処理について説明する。
まず、任意のユニタリ行列が入力部2から入力される。入力されたユニタリ行列は、入力部2において特殊ユニタリ行列F∈SU(2n)に変換され、行列リストFとして主記憶装置3に格納される。
一方、基本ゲートでない特殊ユニタリ行列Fが行列リストに存在すると判断された場合、構造判定部4は、行列リストの中で最初の基本ゲートでない特殊ユニタリ行列Fを主記憶装置3から読み出す(抽出する)(ステップS22)。特殊ユニタリ行列Fを抽出した構造判定部4は、抽出した特殊ユニタリ行列がSU(4)に含まれるか(n≧3であるか)否かを判断する(ステップS23)。ここで、抽出した特殊ユニタリ行列がSU(4)に含まれると判断された場合(n<3であると判断された場合)、構造判定部4は、その特殊ユニタリ行列Fを基本ゲート分解部10に送り、基本ゲート分解部10は、この特殊ユニタリ行列Fを基本ゲートの積で置き換えて主記憶装置3に格納して処理を終了する。
カルタン分解部6において分解されたm1は、m分解部108に送られ、m分解部108は、これを対角行列計算部7に送る。そして、対角行列計算部7は、m1を対角行列D1に対角化する特殊ユニタリ行列U1を算出し、対角行列D1と特殊ユニタリ行列U1とをm分解部108に返す。m分解部108は、exp(m1)をU1・exp(D1)・U1 *で置き換える関係を保存しておく(ステップS29)。
m分解部18は、保存しておいた「exp(m1)をU1・exp(D1)・U1 *で置き換える関係」を用い、対角行列分解部9から送られた基本ゲートBGhの積(=exp(D1))でU1・exp(D1)・U1 *を置き換え、その置き換え結果exp(m1)=U1・BGh・U1 *をカルタン分解部6に返す。
分解要素格納部11は、exp(k1)、k1、U1、U1 *及びBG1を、上記Fの分解要素(F=exp(k1)・(U1・BG1・U1 *=exp(m1)))として主記憶装置3に格納する(ステップS32)。
なお、この発明は上述の各実施の形態に限定されるものではなく、その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。
また、上述の構成をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。
また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD−ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
2 入力部
3 主記憶装置(記憶手段)
4 構造判定部(構造判定手段)
5 行列表現変換部(行列表現変換手段)
6 カルタン分解部(カルタン分解手段)
7 対角行列計算部(対角行列計算手段)
8 M分解部
9 対角行列分解部(対角行列分解手段)
10 基本ゲート分解部(基本ゲート分解手段)
11 分解要素格納部(分解要素格納手段)
12 出力部
108 m分解部
Claims (7)
- コンピュータを、行列表現変換手段と、カルタン分解手段と、対角行列計算手段と、対角行列分解手段と、構造判定手段とを有するユニタリ行列分解装置として機能させて実行するユニタリ行列分解方法であって、
(a)行列表現変換手段が、基本ゲートを示す行列を除く、分解対象である2n×2n (n≧3)の特殊ユニタリ行列F∈SU(2n)の自然対数f=log(F)であるリー(Lie)代数表現された行列f∈su(2 n )が記憶手段に格納されているか否かを判定し、当該リー代数表現された行列f∈su(2 n )が記憶手段に格納されていない場合に自然対数f=log(F)を計算し、その演算結果を分解対象のリー代数表現された行列f∈su(2n)として記憶手段に格納するステップと、
(b)カルタン分解手段が、記憶手段から分解対象のリー代数表現された行列fを読み出し、f=k 1 +m 1 かつk 1 ・m 1 =m 1 ・k 1 を満たす2 n ×2 n の行列k 1 及び行列m 1 を生成し、生成した行列k 1 を記憶手段に格納し、行列m 1 を出力するステップと、
(c)対角行列計算手段が、上記カルタン分解手段が出力した行列m 1 を用い、
(d)対角行列分解手段が、上記対角行列計算手段が出力した上記対角行列Dh が具備する2 n 個の対角成分からそれぞれ重複なく抽出した2個の要素と、2 n −2個の1とをそれぞれの対角成分とする、2 n−1 個の2 n ×2 n の対角行列TG h を、記憶手段に格納するステップと、を有し、
構造判定手段が、上記カルタン分解手段が生成した行列k 1 が基本ゲートを示す行列でなく、なおかつ、当該行列k 1 の各行や各列の0以外の要素数の最大値が2 n’ (n’≧3)である場合に、当該行列k 1 を新たな分解対象のリー代数表現された行列fとして上記ステップ(b)〜(d)を実行させ、上記対角行列計算手段が生成した特殊ユニタリ行列U m が基本ゲートを示す行列でなく、なおかつ、当該特殊ユニタリ行列U m の各行や各列の0以外の要素数の最大値が2 n’ (n’≧3)である場合に、当該特殊ユニタリ行列U m を新たな分解対象である特殊ユニタリ行列Fとして上記ステップ(a)〜(d)を実行させる、
ことを特徴とするユニタリ行列分解方法。 - コンピュータを、行列表現変換手段と、カルタン分解手段と、対角行列計算手段と、対角行列分解手段と、構造判定手段とを有するユニタリ行列分解装置として機能させて実行するユニタリ行列分解方法であって、
(a)行列表現変換手段が、基本ゲートを示す行列を除く、分解対象である2n×2n (n≧3)の特殊ユニタリ行列F∈SU(2n)の自然対数f=log(F)であるリー(Lie)代数表現された行列f∈su(2 n )が記憶手段に格納されているか否かを判定し、当該リー代数表現された行列f∈su(2 n )が記憶手段に格納されていない場合に自然対数f=log(F)を計算し、その演算結果を分解対象のリー代数表現された行列f∈su(2n)として記憶手段に格納するステップと、
(b)カルタン分解手段が、記憶手段から分解対象のリー代数表現された行列fを読み出し、f=k 1 +m 1 かつk 1 ・m 1 =m 1 ・k 1 を満たす2 n ×2 n の行列k 1 及び行列m 1 を生成し、生成した行列k1 を記憶手段に格納し、行列m 1 を出力するステップと、
(c)対角行列計算手段が、上記カルタン分解手段が出力した行列m 1 の各固有値λと各固有ベクトルνとを算出し、各固有ベクトルνを列とする特殊ユニタリ行列U 1 を生成して記憶手段に格納し、各固有値λを対角成分に配置した2 n ×2 n の対角行列D 1 を出力するステップと、
(d)対角行列分解手段が、上記対角行列計算手段が出力した対角行列D 1 から定まるexp(D1)が具備する2 n 個の対角成分からそれぞれ重複なく抽出した2個の要素と、2 n −2個の1とをそれぞれの対角成分とする、2 n−1 個の2 n ×2 n の対角行列TG 1 を、記憶手段に格納するステップと、を有し、
構造判定手段が、上記カルタン分解手段で生成された行列k 1 が基本ゲートを示す行列でなく、なおかつ、当該行列k 1 の各行や各列の0以外の要素数の最大値が2 n’ (n’≧3)である場合に、当該行列k 1 を新たな分解対象のリー代数表現された行列fとして上記ステップ(b)〜(d)を実行させ、上記対角行列計算手段で生成された特殊ユニタリ行列U 1 が基本ゲートを示す行列でなく、なおかつ、当該特殊ユニタリ行列U 1 の各行や各列の0以外の要素数の最大値が2 n’ (n’≧3)である場合に、当該特殊ユニタリ行列U 1 を新たな分解対象である特殊ユニタリ行列Fとして上記ステップ(a)〜(d)を実行させる、
ことを特徴とするユニタリ行列分解方法。 - ユニタリ行列を分解するユニタリ行列分解装置であって、
2n×2nの特殊ユニタリ行列(SU(2n))と、当該特殊ユニタリ行列の自然対数であるリー(Lie)代数表現された行列(su(2n))と、を対応付けて格納する記憶手段と、
基本ゲートを示す行列を除く、分解対象である2n×2n (n≧3)の特殊ユニタリ行列F∈SU(2n)の自然対数f=log(F)であるリー(Lie)代数表現された行列f∈su(2 n )が記憶手段に格納されているか否かを判定し、当該リー代数表現された行列f∈su(2 n )が記憶手段に格納されていない場合に自然対数f=log(F)を計算し、その演算結果を分解対象のリー代数表現された行列f∈su(2n)として記憶手段に格納する行列表現変換手段と、
記憶手段から分解対象のリー代数表現された行列fを読み出し、f=k 1 +m 1 かつk 1 ・m 1 =m 1 ・k 1 を満たす2 n ×2 n の行列k 1 及び行列m 1 を生成し、生成した行列k 1 を記憶手段に格納し、行列m 1 を出力するカルタン分解手段と、
上記カルタン分解手段が出力した行列m 1 を用い、
上記対角行列計算手段が出力した上記対角行列Dh が具備する2 n 個の対角成分からそれぞれ重複なく抽出した2個の要素と、2 n −2個の1とをそれぞれの対角成分とする、2 n−1 個の2 n ×2 n の対角行列TG h を、記憶手段に格納する対角行列分解手段と、
上記カルタン分解手段が生成した行列k 1 が基本ゲートを示す行列でなく、なおかつ、当該行列k 1 の各行や各列の0以外の要素数の最大値が2 n’ (n’≧3)である場合に、当該行列k 1 を新たな分解対象のリー代数表現された行列fとして、上記カルタン分解手段と上記対角行列計算手段と対角行列分解手段との各処理を実行させ、上記対角行列計算手段が生成した特殊ユニタリ行列U m が基本ゲートを示す行列でなく、なおかつ、当該特殊ユニタリ行列U m の各行や各列の0以外の要素数の最大値が2 n’ (n’≧3)である場合に、当該特殊ユニタリ行列U m を新たな分解対象である特殊ユニタリ行列Fとして、上記行列表現変換手段と上記カルタン分解手段と上記対角行列計算手段と対角行列分解手段との各処理を実行させる構造判定手段と、
を有することを特徴とするユニタリ行列分解装置。 - ユニタリ行列を分解するユニタリ行列分解装置であって、
2n×2nの特殊ユニタリ行列(SU(2n))と、当該特殊ユニタリ行列の自然対数であるリー(Lie)代数表現された行列(su(2n))と、を対応付けて格納する記憶手段と、
基本ゲートを示す行列を除く、分解対象である2n×2n (n≧3)の特殊ユニタリ行列F∈SU(2n)の自然対数f=log(F)であるリー(Lie)代数表現された行列f∈su(2 n )が記憶手段に格納されているか否かを判定し、当該リー代数表現された行列f∈su(2 n )が記憶手段に格納されていない場合に自然対数f=log(F)を計算し、その演算結果を分解対象のリー代数表現された行列f∈su(2n)として記憶手段に格納する行列表現変換手段と、
記憶手段から分解対象のリー代数表現された行列fを読み出し、f=k 1 +m 1 かつk 1 ・m 1 =m 1 ・k 1 を満たす2 n ×2 n の行列k 1 及び行列m 1 を生成し、生成した行列k1 を記憶手段に格納し、行列m 1 を出力するカルタン分解手段と、
上記カルタン分解手段が出力した行列m 1 の各固有値λと各固有ベクトルνとを算出し、各固有ベクトルνを列とする特殊ユニタリ行列U 1 を生成して記憶手段に格納し、各固有値λを対角成分に配置した2 n ×2 n の対角行列D 1 を出力する対角行列計算手段と、
上記対角行列計算手段が出力した対角行列D 1 から定まるexp(D1)が具備する2 n 個の対角成分からそれぞれ重複なく抽出した2個の要素と、2 n −2個の1とをそれぞれの対角成分とする、2 n−1 個の2 n ×2 n の対角行列TG 1 を、記憶手段に格納する対角行列分解手段と、
上記カルタン分解手段で生成された行列k 1 が基本ゲートを示す行列でなく、なおかつ、当該行列k 1 の各行や各列の0以外の要素数の最大値が2 n’ (n’≧3)である場合に、当該行列k 1 を新たな分解対象のリー代数表現された行列fとして、上記カルタン分解手段と上記対角行列計算手段と対角行列分解手段との各処理を実行させ、上記対角行列計算手段で生成された特殊ユニタリ行列U 1 が基本ゲートを示す行列でなく、なおかつ、当該特殊ユニタリ行列U 1 の各行や各列の0以外の要素数の最大値が2 n’ (n’≧3)である場合に、当該特殊ユニタリ行列U 1 を新たな分解対象である特殊ユニタリ行列Fとして、上記行列表現変換手段と上記カルタン分解手段と上記対角行列計算手段と対角行列分解手段との各処理を実行させる構造判定手段と、
を有することを特徴とするユニタリ行列分解装置。 - 請求項3又は4のユニタリ行列分解装置であって、
上記対角行列計算手段は、
分解対象の特殊ユニタリ行列F∈SU(2n)に対応するリー代数表現された行列f=log(F)∈su(2n)が上記記憶手段に格納されていない場合、上記分解対象の特殊ユニタリ行列Fの各固有値λ’と各固有ベクトルν’とを求め、各固有ベクトルν’を列とする行列U 2 を生成し、生成した行列U 2 を記憶手段に格納し、各固有値λ’を対角成分に配置した2 n ×2 n の対角行列D 2 を生成して出力する手段であり、
上記行列表現変換手段は、
U2・log(D2)・U2 *の演算によって上記自然対数f=log(F)を算出する手段である、
ことを特徴とするユニタリ行列分解装置。 - 請求項3から5の何れかに記載のユニタリ行列分解装置としてコンピュータを機能させるためのユニタリ行列分解プログラム。
- 請求項6に記載のユニタリ行列分解プログラムを格納したコンピュータ読取可能な記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004150549A JP4260680B2 (ja) | 2004-05-20 | 2004-05-20 | ユニタリ行列分解方法、ユニタリ行列分解装置、ユニタリ行列分解プログラム及び記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004150549A JP4260680B2 (ja) | 2004-05-20 | 2004-05-20 | ユニタリ行列分解方法、ユニタリ行列分解装置、ユニタリ行列分解プログラム及び記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005332242A JP2005332242A (ja) | 2005-12-02 |
JP4260680B2 true JP4260680B2 (ja) | 2009-04-30 |
Family
ID=35486857
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004150549A Expired - Fee Related JP4260680B2 (ja) | 2004-05-20 | 2004-05-20 | ユニタリ行列分解方法、ユニタリ行列分解装置、ユニタリ行列分解プログラム及び記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4260680B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4758965B2 (ja) * | 2007-08-27 | 2011-08-31 | 日本電信電話株式会社 | ユニタリ行列分解方法、ユニタリ行列分解装置、ユニタリ行列分解プログラム及び記録媒体 |
JP5325072B2 (ja) * | 2009-10-22 | 2013-10-23 | 日本電信電話株式会社 | 行列分解装置、行列分解方法及びプログラム |
CN113850389B (zh) * | 2020-06-28 | 2023-08-11 | 本源量子计算科技(合肥)股份有限公司 | 一种量子线路的构建方法及装置 |
CN113128691B (zh) * | 2021-04-27 | 2022-03-08 | 北京百度网讯科技有限公司 | 量子门标定方法及装置、电子设备和介质 |
-
2004
- 2004-05-20 JP JP2004150549A patent/JP4260680B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2005332242A (ja) | 2005-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Heyfron et al. | An efficient quantum compiler that reduces T count | |
Schindler et al. | Quantum simulation of dynamical maps with trapped ions | |
Farrell et al. | Preparations for quantum simulations of quantum chromodynamics in 1+ 1 dimensions. I. Axial gauge | |
JP2022511331A (ja) | 量子ボルツマンマシンを実装及び最適化するためのハイブリッド量子古典コンピュータシステム | |
Pedro et al. | On a cellular division method for topology optimization | |
Brennen et al. | Why should anyone care about computing with anyons? | |
US20230040584A1 (en) | Computer-implemented method of solving a hamiltonian | |
Ender et al. | Parity quantum optimization: Compiler | |
JP4260751B2 (ja) | ユニタリ行列分解装置、ユニタリ行列分解方法、ユニタリ行列分解プログラム及び記録媒体 | |
JPWO2017131081A1 (ja) | 量子情報処理システム、量子情報処理方法、プログラム、及び記録媒体 | |
Murta et al. | Preparing valence-bond-solid states on noisy intermediate-scale quantum computers | |
JP4260680B2 (ja) | ユニタリ行列分解方法、ユニタリ行列分解装置、ユニタリ行列分解プログラム及び記録媒体 | |
Burgholzer et al. | Simulation paths for quantum circuit simulation with decision diagrams what to learn from tensor networks, and what not | |
Smith et al. | Programming physical quantum systems with pulse-level control | |
Karasözen et al. | Structure preserving integration and model order reduction of skew-gradient reaction–diffusion systems | |
JP7265965B2 (ja) | 機械学習装置および機械学習方法 | |
US11574030B1 (en) | Solving optimization problems using a hybrid computer system | |
Ma et al. | Low rank approximation in simulations of quantum algorithms | |
Tankasala et al. | Quantum-kit: simulating shor's factorization of 24-bit number on desktop | |
Nikahd et al. | One-way quantum computer simulation | |
de Avila et al. | Quantum computing simulation through reduction and decomposition optimizations with a case study of shor's algorithm | |
Smith et al. | Summary: Chicago Quantum Exchange (CQE) Pulse-level Quantum Control Workshop | |
Nautrup et al. | Measurement-based quantum computation from Clifford quantum cellular automata | |
KR102168677B1 (ko) | 양자정보 포킹 방법과 응용 | |
Batra et al. | Recommender system expedited quantum control optimization |
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 |