(57)【特許請求の範囲】
【請求項１】
量子誤り訂正符号を構成する物理量子ビットの計算基底軸を設定する計算基底軸設定装置であって、
記憶部と、
各物理量子ビットに共通の基準計算基底軸に対する、j〔j∈{1,...,n}, n≧2〕番目の物理量子ビットQjの計算基底軸の回転を示す2×2のユニタリー行列Vjを設定し、当該ユニタリー行列Vjを上記記憶部に格納する計算基底軸設定部と、
上記記憶部から上記計算基底軸設定部で設定されたユニタリー行列Vjを読み込み、テンソル積演算子を(×)とし、ユニタリー行列Vj(j∈{1,...,n})のテンソル積からなる行列をV=V1(×) …(×)Vnとし、スタビライザー符号によってｋ(n＞k≧1)個の論理量子ビットに符号化されたn個の物理量子ビットの量子状態を示す列ベクトルである状態ベクトルを|ΦL(k)>とし、それと複素共役な行ベクトルを<ΦL(k)|とし、n個の物理量子ビットの密度行列を行列ρとし、当該スタビライザー符号の誤り訂正に対応するCPTP写像をCとし、 (hx, hy, hz)を要素とする３次元ベクトルをHとし、３次元ベクトルHの大きさをh=|H|とし、p(h)を
【数１】
0004664994.tif 000031
を満たすhの関数とし、2×2の単位行列をIとし、虚数単位をiとし、 ＸをパウリＸ行列とし、ＹをパウリＹ行列とし、ＺをパウリＺ行列とし、S=(X, Y, Z)とし、hx・X+hy・Y+hz・ZをH・Sとし、Hに対するユニタリー行列I・cos h+i(H・S /h)sin hをU(H)とし、n個のユニタリー行列U(H)のテンソル積からなる行列をU(H)(×)nとし、行列βの共役転置行列をβ+とし、qを正の実数とし、対称性のあるノイズによる物理量子ビット毎に無相関で一様な作用素をEq(・)とし、
【数２】
0004664994.tif 000032
とし、行列Vに従って計算基底軸を回転させた場合における行列V+ Eq(VρV+)Vを行列REq(ρ)とし、
【数３】
0004664994.tif 000033
を満たし、任意の関数fと、上記スタビライザー符号によってｋ個の論理量子ビットに符号化されたn個の物理量子ビットの量子状態を示す列ベクトルが張るベクトル空間VSの元である要素数2nのベクトルを当該ベクトル空間VSに写像する2n×2nの任意のユニタリー行列AUと、に対して
【数４】
0004664994.tif 000034
を満たす、上記ベクトル空間VS上での積分とした場合における、フィデリティ
【数５】
0004664994.tif 000035
に基づき、上記計算基底軸設定部で設定されたユニタリー行列Vjを採用するか否かを判定し、その判定結果を出力する計算基底軸評価部と、
を有することを特徴とする計算基底軸設定装置。
【請求項２】
請求項１に記載の計算基底軸設定装置であって、
上記計算基底軸評価部は、
すべてのj∈{1,...,n}についてVj=Iとした場合よりも上記フィデリティが大きくなるユニタリー行列Vjを採用する、
ことを特徴とする計算基底軸設定装置。
【請求項３】
請求項１又は２に記載の計算基底軸設定装置であって、
上記スタビライザー符号は、
[n,k,d] スタビライザー符号であり、
上記計算基底軸評価部は、
hx=h・sinθ・cosνとし、hy=h・sinθ・sinνとし、hz=h・cosθとし、
【数６】
0004664994.tif 000036
とし、
【数７】
0004664994.tif 000037
とし、スモールオー記法をoとし、上記ユニタリー行列U(H)とH= h・Hjとした当該ユニタリー行列U(h・Hj)とユニタリー行列Vjに対してU(h・Hj)= Vj U(H) Vj+を満たす３次元ベクトルをHjとし、δ以上の最小の整数を
【数８】
0004664994.tif 000038
とした場合における、フィデリティ
【数９】
0004664994.tif 000039
の値を算出し、当該算出値に基づき、上記計算基底軸設定部で設定されたユニタリー行列Vjを採用するか否かを判定する、
ことを特徴とする計算基底軸設定装置。
【請求項４】
請求項１から３の何れかに記載の計算基底軸設定装置であって、
上記計算基底軸設定部は、
物理量子ビットQj毎に独立にユニタリー行列Vjを設定する、
ことを特徴とする計算基底軸設定装置。
【請求項５】
請求項１から４の何れかに記載の計算基底軸設定装置であって、
すべてのj∈{1,...,n}に対してVj=Iである場合の上記スタビライザー符号によって構成された量子回路に設定される初期量子状態を示す状態ベクトル|Φ>と、当該量子回路が具備する１つの物理量子ビットQjに対する演算を示す行列A及び／又は２つの物理量子ビットQj，Qm〔m∈{1,...,n},m≠j〕に対する演算を示す行列Bと、を含む基準量子回路情報QCの入力を受け付ける入力部と、
上記記憶部から上記計算基底軸設定部で設定されたユニタリー行列Vjを読み込み、当該ユニタリー行列Vjを用い、上記基準量子回路情報QCが具備する上記初期量子状態を示す状態ベクトル|Φ>をV|Φ>に変更し、上記行列Aを行列VjAVj+に変更し、上記行列Bを、
{Vj(×)I}{I(×)Vm}B{I(×)Vm}+{Vj(×)I}+
に変更して、修正量子回路情報RQCを生成し、当該修正量子回路情報RQCを記憶部に格納する量子回路情報修正部をさらに有する、
ことを特徴とする計算基底軸設定装置。
【請求項６】
量子誤り訂正符号を構成する物理量子ビットの計算基底軸を設定する計算基底軸設定方法であって、
上記量子誤り訂正符号装置の計算基底軸設定部が、各物理量子ビットに共通の基準計算基底軸に対する、j〔j∈{1,...,n} ,n≧2〕番目の物理量子ビットQjの計算基底軸の回転を示す2×2のユニタリー行列Vjを設定し、当該ユニタリー行列Vjを記憶部に格納する計算基底軸設定過程と、
上記量子誤り訂正符号装置の計算基底軸評価部が、上記記憶部から上記計算基底軸設定部で設定されたユニタリー行列Vjを読み込み、テンソル積演算子を(×)とし、ユニタリー行列Vj (j∈{1,...,n})のテンソル積からなる行列をV=V1(×) …(×)Vnとし、スタビライザー符号によってｋ(n＞k≧1)個の論理量子ビットに符号化されたn個の物理量子ビットの量子状態を示す列ベクトルである状態ベクトルを|ΦL(k)>とし、それと複素共役な行ベクトルを<ΦL(k)|とし、n個の物理量子ビットの密度行列を行列ρとし、当該スタビライザー符号の誤り訂正に対応するCPTP写像をCとし、 (hx, hy, hz)を要素とする３次元ベクトルをHとし、３次元ベクトルHの大きさをh=|H|とし、p(h)を
【数１０】
0004664994.tif 000040
を満たすhの関数とし、2×2の単位行列をIとし、虚数単位をiとし、ＸをパウリＸ行列とし、ＹをパウリＹ行列とし、ＺをパウリＺ行列とし、S=(X, Y, Z)とし、hx・X+hy・Y+hz・ZをH・Sとし、Hに対するユニタリー行列I・cos h+i(H・S /h)sin hをU(H)とし、n個のユニタリー行列U(H)のテンソル積からなる行列をU(H)(×)nとし、行列βの共役転置行列をβ+とし、qを正の実数とし、対称性のあるノイズによる物理量子ビット毎に無相関で一様な作用素をEq(・)とし、
【数１１】
0004664994.tif 000041
とし、行列Vに従って計算基底軸を回転させた場合における行列V+ Eq(VρV+)Vを行列REq(ρ)とし、
【数１２】
0004664994.tif 000042
を満たし、任意の関数fと、上記スタビライザー符号によってｋ個の論理量子ビットに符号化されたn個の物理量子ビットの量子状態を示す列ベクトルが張るベクトル空間VSの元である要素数2nのベクトルを当該ベクトル空間VSに写像する2n×2nの任意のユニタリー行列AUと、に対して
【数１３】
0004664994.tif 000043
を満たす、上記ベクトル空間VS上での積分とした場合における、フィデリティ
【数１４】
0004664994.tif 000044
に基づき、上記計算基底軸設定過程で設定されたユニタリー行列Vjを採用するか否かを判定し、その判定結果を出力する計算基底軸評価過程と、
を有することを特徴とする計算基底軸設定方法。
【請求項７】
請求項１から５の何れかに記載の計算基底軸設定装置としてコンピュータを機能させるためのプログラム。
【請求項８】
請求項７に記載のプログラムを格納したコンピュータ読取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、量子誤り訂正符号技術に関し、特に、対称性のあるノイズとランダムなノイズとの古典的な混合からなるノイズに対する誤り訂正を行う技術に関する。
【背景技術】
【０００２】
＜量子誤り訂正符号＞
量子計算機は、連続した状態（continuum）を扱う。そのため誤差を完全に取り除くことは、非常に困難である。他方、意義のある量子計算では、入力長に対して非常に高い計算精度を要求される場合がしばしばある。そのため、量子計算機の実現の研究において、ノイズに対して影響を受けにくく誤差の少ないデバイスを作ることは非常に重要な問題のうちの一つである。
【０００３】
誤差を減らす方法として、物理的デバイスそのものの研究以外に、生じた誤差を修正しながら扱うことで実効的に誤差を小さくする研究もなされてきた。その代表的なものとしてスタビライザー符号（stabilizer cord：固定部分群符号）と呼ばれるものがある（例えば、非特許文献１参照）。スタビライザー符号とは、ある形式で書くことが可能な量子符号全体を指し、これによる量子誤り訂正手法は、ノイズがある程度以上小さいという以外、ノイズに関する情報が無い場合の誤差訂正手法の一般論である。他方、ノイズに関する情報がある程度知られている場合には、デコヒーレンスサブスペース（Decoherence-Free Subspaces）上で誤り訂正を行うことにより、ノイズの持っている既知の対称性を利用して、ノイズの影響を受けない領域に量子状態をコードする方法もある（例えば、非特許文献２，３参照）。
【０００４】
双方の理論では、ある与えられた体系の中において誤りを完全に訂正する。例えば、スタビライザー符号であれば、符号を設計する上で事前に定められた数以下の量子ビットにのみノイズが発生した場合において、これを完全に訂正することができる。また、デコヒーレンスサブスペースでは、事前に想定されたノイズのみが発生した場合においては、論理量子ビットにはそもそもノイズの影響が生じない構造になっている。
【０００５】
＜システムのノイズと量子誤り訂正符号＞
多くの実験系では、システムのノイズが、予測されるある種の対称性のあるノイズと全く予測不能なランダムなノイズの古典的な混合であると想定する。このため、量子誤り訂正符号は、ランダムなノイズに対して耐性を持つとともに、対称性のあるノイズに対しても頑健である必要がある。このようなノイズは、デコヒーレンスサブスペースにおいて構成された論理量子ビットを物理量子ビットとしてスタビライザー符号を組めば、対称的なノイズについては完全に排除でき、全体として或る程度有効に誤り訂正を行うことができる。
【非特許文献１】D. Gottesman, “Theory of fault-tolerant quantum computation”, Phys. Rev. A57 (1988) 127.
【非特許文献２】D. A. Lidar, I. L. Chuang and K. B. Whaley, “Decoherence-Free Subspaces for Quantum Computation”, Phys. Rev. Lett. 81 (1998) 2594.
【非特許文献３】D. Bacon, J. Kempe, D. A. Lidar, and K. B. Whaley, “Universal Fault-Tolerant Quantum Computation on Decoherence-Free Subspaces”, Phys. Rev. Lett. 85, (2000) 1758.
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、デコヒーレンスサブスペースにおいて構成された論理量子ビットを物理量子ビットとしてスタビライザー符号を組む場合、１論理量子ビットを構成する物理量子ビットの数が必然的に大きくなる。さらに、論理量子ビット上の一つの演算が非常に多くの物理量子ビット上の演算になってしまう。そのため、対称的なノイズの量がそれほど多くなかった場合には、これらの欠点が対称的なノイズを完全に排除できるという利点を上回ってしまう場合がある。
【０００７】
本発明はこのような点に鑑みてなされたものであり、従来よりも少ない物理量子ビットを用い、対称性のあるノイズとランダムなノイズとの古典的な混合からなるノイズに対する誤り訂正を行うことが可能な技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明では課題を解決するために、各物理量子ビットに共通の基準計算基底軸に対する、j〔j∈{1,...,n} ,n≧2〕番目の物理量子ビットQjの計算基底軸の回転を示す2×2のユニタリー行列Vjを設定し、フィデリティ
【数１５】
0004664994.tif 000002
に基づき、設定されたユニタリー行列Vjを採用するか否かを判定し、その判定結果を出力する。なお、テンソル積演算子を(×)とし、ユニタリー行列Vj(j∈{1,...,n})のテンソル積からなる行列をV=V1(×) …(×)Vnとし、スタビライザー符号によってｋ(n＞k≧1)個の論理量子ビットに符号化されたn個の物理量子ビットの量子状態を示す列ベクトルである状態ベクトルを|ΦL(k)>とし、それと複素共役な行ベクトルを<ΦL(k)|とし、n個の物理量子ビットの密度行列を行列ρとし、当該スタビライザー符号の誤り訂正に対応するCPTP写像をCとし、 (hx, hy, hz)を要素とする３次元ベクトルをHとし、３次元ベクトルHの大きさをh=|H|とし、p(h)を
【０００９】
【数１６】
0004664994.tif 000003
を満たすhの関数とし、2×2の単位行列をIとし、虚数単位をiとし、ＸをパウリＸ行列とし、ＹをパウリＹ行列とし、ＺをパウリＺ行列とし、S=(X, Y, Z)とし、hx・X+hy・Y+hz・ZをH・Sとし、Hに対するユニタリー行列I・cos h+i(H・S /h)sin hをU(H)とし、n個のユニタリー行列U(H)のテンソル積からなる行列をU(H)(×)nとし、行列βの共役転置行列をβ+とし、qを正の実数とし、対称性のあるノイズによる物理量子ビット毎に無相関で一様な作用素をEq(・)とし、
【数１７】
0004664994.tif 000004
とし、行列Vに従って計算基底軸を回転させた場合における行列V+ Eq(VρV+)Vを行列REq(ρ)とし、
【００１０】
【数１８】
0004664994.tif 000005
を満たし、任意の関数fと、上記スタビライザー符号によってｋ個の論理量子ビットに符号化されたn個の物理量子ビットの量子状態を示す列ベクトルが張るベクトル空間VSの元である要素数2nのベクトルを当該ベクトル空間VSに写像する2n×2nの任意のユニタリー行列AUと、に対して
【数１９】
0004664994.tif 000006
を満たす、上記ベクトル空間VS上での積分とする。
【００１１】
以下に本発明の作用を説明する。各物理量子ビットの計算基底軸を変更することにより、ノイズの対称性を実効的に崩すことができる場合がある。この場合、対称性のあるノイズが物理量子ビットに同期することによってノイズが強め合うことを実効的に防止できる。その結果、対称性のあるノイズをランダムなノイズと同様にスタビライザー符号のみによって適切に誤り訂正できる。
【００１２】
ただ、任意に各物理量子ビットの計算基底軸を変更した場合に如何なるスタビライザー符号に対しても実効的なノイズの対称性が失われるわけではなく、変更された各物理量子ビットの計算基底軸や、具体的に採用したスタビライザー符号や対称性のあるノイズの性質によっては対称性のあるノイズの影響を実効的に低減できない場合もある。
【００１３】
そのため、本発明では、各物理量子ビットの計算基底軸の方向を物理量子ビット毎に変更し、特定のスタビライザー符号を適用して符号化した場合におけるフィデリティを解析的に評価し、対称性のあるノイズの影響の低減が確認された場合にのみ、変更された各物理量子ビットの計算基底軸の方向を採用する。
【発明の効果】
【００１４】
本発明では、従来よりも少ない物理量子ビットを用い、対称性のあるノイズとランダムなノイズとの古典的な混合からなるノイズに対する誤り訂正を行うことが可能となる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明を実施するための最良の形態を図面を参照して説明する。
〔記号・用語の定義〕
まず、記号・用語の定義を行う。
【００１６】
［一般記号］
まず、以下で使用する一般記号について定義する。
ｉ：虚数単位。
I：2×2の単位行列。
α*：値αと複素共役な値。
β+：行列βの共役転置行列。
(×)： テンソル積演算子。
β(×)α：α個の行列βのテンソル積。
|η|：ベクトルηの大きさ。
O(α):ビッグオー記法（オーダー）。一変数実関数f(x),g(x)に対してf(x)=O(g(x))とは、
【数２０】
0004664994.tif 000007
であることを意味する。
【００１７】
o(α)：スモールオー記法。一変数実関数f(x),g(x)に対してf(x)=o(g(x))とは、
【数２１】
0004664994.tif 000008
であることを意味する。
【数２２】
0004664994.tif 000009
【００１８】
［量子ビット］
次に、量子ビットについて定義する。物理量子ビットとは、量子二準位系（量子力学的な２つの状態をとる系）を意味する。例えば、原子の核スピンや量子ドット中の電子スピンや光子の偏光等が物理量子ビットに相当する。以下では、量子計算に用いられる物理量子ビット数をn (n≧2)とし、j〔j∈{1,...,n}, n≧2〕番目の物理量子ビットをQjと表記する。
また、物理量子ビットの計算基底軸とは、 各物理量子ビットの量子力学的な２つの状態を定義するための３次元座標軸を意味する。例えば、一般的なスピンの測定軸は計算基底軸のＺ軸である。
【００１９】
論理量子ビットとは、複数の物理量子ビットから構成された量子計算における基本単位を意味する。以下では、スタビライザー符号によってn個の物理量子ビットを用いてｋ(k≧1)個の論理量子ビットを構成するものとする。
【００２０】
［量子状態］
次に、量子状態の表記について定義する。
各物理量子ビットは、古典的ビットの２値に対応する状態の任意の重ね合わせ状態をとることができる。重ね合わせ状態とは、各物理量子ビットが古典的ビットの２値に対応する状態を同時にとることができる性質を意味し、この状態は古典的ビット値に対応する各量子状態をそれぞれ示す基底ベクトルの線形結合で表現される。例えば、n個の物理量子ビットは、t=2n個の量子状態φ1, φ2,…, φtの重ね合わせ状態をとることができ、それらの量子状態φ（状態ベクトル）は、以下のように量子状態φ1, φ2,…, φtをそれぞれ示す基底ベクトル|φ1>, |φ2>,…, |φt>の線形結合で表現される。
【００２１】
φ=c1|φ1>+c2|φ2>+…+ct|φt>（c12+c22+…+ct2=1）  …(1)
ここでc1, c2,..., ctは、複素数で表される各量子状態φ1, φ2,…, φtの係数であり、それらの２乗が各量子状態をとる確率を示す。また、｜δ〉は量子状態を示す列ベクトル（縦ベクトル）を意味し、n個の物理量子ビットに対応する基底ベクトル|φ1>, |φ2>,…, |φt>は、それぞれt次元のベクトルとなる。そして、さらに式(1)は、基底ベクトルを省略して
【数２３】
0004664994.tif 000010
と表現される。
【００２２】
また、<δ|は|δ>と複素共役な行ベクトル（横ベクトル）を意味し、<φ|は以下のように表現される。
<φ|=(c1*, c2*,..., ct*)  …(3)
また、<φ’|=(b1*, b2*,..., bt*)とすると、<φ|φ’>は以下の内積を意味する。
【数２４】
0004664994.tif 000011
また、|φ><φ’|は、以下の行列を意味する。
【数２５】
0004664994.tif 000012
【００２３】
本形態では、n個の物理量子ビットの一般的な量子状態をΦ(n)と表記し、その状態ベクトルを|Φ(n)>と表記する。特に、スタビライザー符号によってｋ個の論理量子ビットに符号化されたn個の物理量子ビットの量子状態ΦL(k)を示す列ベクトルである状態ベクトルを|ΦL(k)>と表記し、それと複素共役な行ベクトルを<ΦL(k)|と表記する。また、n個の物理量子ビットの一般的な密度行列を行列ρと表記する。
【００２４】
［演算ゲート］
次に、物理量子ビットに対する演算ゲートを定義する。
Ｘ：量子状態がh1|0>+h2|1>（h1，h2は複素数）である１つの量子ビットの量子状態をh2|0>+h1|1>に変換するパウリＸゲート。パウリＸゲートを行列表現（パウリ行列）すると以下のようになる（パウリＸゲートの行列表現をパウリＸ行列と呼ぶことにする）。
【数２６】
0004664994.tif 000013
【００２５】
Ｙ：量子状態がh1|0>+h2|1>である１つの量子ビットの量子状態を-i・h2|0>+i・h1|1>に変換するパウリＹゲート。パウリＹゲートを行列表現すると以下のようになる（パウリＹゲートの行列表現をパウリＹ行列と呼ぶことにする）。
【数２７】
0004664994.tif 000014
Ｚ：量子状態がh1|0>+h2|1>である１つの量子ビットの量子状態をh1|0>-h2|1>に変換するパウリＺゲート。パウリＺゲートを行列表現すると以下のようになる（パウリＺゲートの行列表現をパウリＺ行列と呼ぶことにする）。
【００２６】
【数２８】
0004664994.tif 000015
I：無変換を示す。これを行列表現すると以下の2×2の単位行列になる。
【数２９】
0004664994.tif 000016
【００２７】
［スタビライザー符号］
スタビライザー符号とは、論理量子ビットに符号化された物理量子ビットの量子状態を示す状態ベクトルが、以下に示す演算子の集合であるスタビライザー（stabilizer：固定部分群）の各要素によって安定化されるベクトル空間を張るように論理量子ビットを構成し、ランダムなノイズに対する量子誤り訂正を可能とする技術を意味する（例えば、非特許文献１やNielsen and Chuang, "Quantum Computation and Quantum Information", Cambridge University Press等参照）。このスタビライザー符号により、ランダムなノイズに対する量子誤り訂正が可能となる。以下、スタビライザー符号の概要を示す。
【００２８】
まず、係数因子±1,±iを伴ったパウリ行列X,Y,Zと単位行列Iとの組み合わせからなるn重テンソル積のすべてを、n個の物理量子ビットに働くパウリ群Gnと定義する。これはn個の物理量子ビットに生じるノイズ全体を示す。
Gn≡{σ1(×)σ2(×)…(×)σn|σj∈{±I,±iI,±X,±iX,±Y,±iY,±Z,±iZ}, j∈{1,...,n}}  …(6)
【００２９】
そして、与えられた符号空間CS上で実効的に無変換となるようなノイズ全体が成す可換群をスタビライザーと呼ぶ。すなわち、すべての|φ>∈CSに対して固有値が１（gr|φ>=|φ>）であり、互いに独立で可換なパウリ群Gnのn-k個の生成元gr(r∈{1,...,n-k})からなる部分群S∈Gnをスタビライザーと呼ぶ。なお、前述の通り、nは物理量子ビット数を示し、kは論理量子ビット数を示す。また、生成元gr∈Sが互いに独立とは、生成元gr∈S以外のすべてのSの生成元について固有ベクトルとなっている或るベクトルが、当該生成元gr∈Sについては固有ベクトルとなっていないという関係が、すべてのr∈{1,...,n-k}についてそれぞれ成り立つ関係をいう。
【００３０】
また、スタビライザーSの生成元は互いに独立であるため、スタビライザーSの生成元の積のみによって当該生成元以外の生成元（当該スタビライザーSの他の生成元）を表現することはできない。しかし、スタビライザーSの１以上の生成元と、パウリ群GnにおけるスタビライザーSの補集合の何れか１つの元（Iのn重テンソル積からなる元を除く）との積によって当該スタビライザーSの他の生成元を表現することはできる。すなわち、スタビライザーSの生成元gr, gμ∈Sに対して
【００３１】
【数３０】
0004664994.tif 000017
を満たす、パウリ群GnにおけるスタビライザーSの補集合の元g(r)∈Gn-Sが存在する。そして、すべてのr∈{1,...,n-k}についてそれぞれ式(7)を満たすg(r)を求めた場合に、単位行列I以外の演算子（X,Y,Zの何れか）の数が最も少ないg(r)の当該単位行列I以外の演算子の数をdとする。例えば、この単位行列I以外の演算子の数が最も少ないg(r)が、X(×)Z(×)I(×)…(×)Iであったとするとd=2となる。
【００３２】
そして、前述のようにスタビライザーを定義する符号空間CSを構成するように論理量子ビットを構成して符号化を行うことをスタビライザー符号と呼ぶ。また、上述のようなn,k,dに対応するスタビライザー符号を[n,k,d] スタビライザー符号と呼ぶ。すなわち、当該スタビライザー符号によってｋ個の論理量子ビットに符号化されたn個の物理量子ビットの量子状態を示す状態ベクトル|ΦL(k)>は、|ΦL(k)>∈CSとなる。
【００３３】
このように論理量子ビットを構成した場合において、物理量子ビットに誤りが生じていなかったならば、すべての生成元gr∈Sについて状態ベクトル|ΦL(k)>に対する固有値は１になる（gr|ΦL(k)>=|ΦL(k)>）。一方、何れかの物理量子ビットに誤りが生じていたならば、何れかの生成元gr∈Sについて状態ベクトル|ΦL(k)>に対する固有値は-1となる（gr|ΦL(k)>= -|ΦL(k)>）。すなわち、スタビライザーSの各生成元gr∈Sで状態ベクトル|ΦL(k)>を観測し、その観測値がすべて1であれば物理量子ビットに誤りが生じていないことが分かり、何れかの観測値が-1であれば何れかの物理量子ビットに誤りが生じていることが分かる。
【００３４】
そして、誤りが生じている物理量子ビット数がd/2以下であれば、誤りが生じている物理量子ビットとその誤りが特定でき、誤り訂正を行うことができる。この誤り訂正は、特定された誤りを補正するための演算（係数因子±1,±iを伴ったパウリ行列X,Y,Z演算）を、誤りが生じている物理量子ビットに適用することによって行われる。この演算に対応する写像をCPTP(completely positive trace preserving)写像と呼び、Cと表現することにする。また、C(ρ)は以下を意味する。
【数３１】
0004664994.tif 000018
【００３５】
また、スタビライザー符号において、ノイズによって有限個の物理量子ビットに生じた誤りが完全に修正できるという性質は、結果として「ある一定量よりも小さなノイズであれば如何なるノイズが物理量子ビットに作用した場合であっても、論理ビットのフィデリティ（忠実度）の低下は、物理量子ビットのフィデリティの低下よりも必ず小さくなる」ということを示している。すなわち、量子状態Φ(n)に作用するノイズによる物理量子ビット毎に無相関で一様な作用素をEq(・)とし、qを正の実数パラメータとし、
【数３２】
0004664994.tif 000019
が成り立つことが言える。なお、このような行列Eq(ρ)の一般表現は以下のようになる。
【００３６】
【数３３】
0004664994.tif 000020
【数３４】
0004664994.tif 000021
を満たし、任意の関数fと2n×2nの任意のユニタリー行列AUとに対して
【００３７】
【数３５】
0004664994.tif 000022
を満たし、任意の関数fと、特定のスタビライザー符号によってｋ個の論理量子ビットに符号化されたn個の物理量子ビットの量子状態を示す列ベクトルが張るベクトル空間VSの元である要素数2nのベクトルを当該ベクトル空間VSに写像する2n×2nの任意のユニタリー行列AUと、に対して
【数３６】
0004664994.tif 000023
を満たす、上記ベクトル空間VS上での積分とする。
【００３８】
［対称性のあるノイズ］
また、量子状態Φ(n)に作用する対称性のあるノイズによる物理量子ビット毎に無相関で一様な作用素をEq(・)とし、密度行列ρに作用素Eq(・)を作用させた結果を
【数３７】
0004664994.tif 000024
とする。なお、Hは(hx, hy, hz)を要素とする３次元ベクトルであり、hは３次元ベクトルHの大きさであり、p(h)は
【数３８】
0004664994.tif 000025
を満たすhの関数である。また、U(H)(×)nは、n個のユニタリー行列U(H)のテンソル積からなる行列であり、U(H)は、Hに対するユニタリー行列
U(H)=I・cos h+i(H・S /h)sin h  …(16)
であり、H・Sは、hx・X+hy・Y+hz・Zを意味する。なお、S=(X, Y, Z)であり、前述のように、ＸはパウリＸ行列であり、ＹはパウリＹ行列であり、ＺはパウリＺ行列である。
【００３９】
このようなノイズは、スケーラブルな量子コンピュータにおいて、熱浴との相互作用のエネルギーの大きさに比べて十分小さい時間スケールで見た場合に、非常に起こりやすいノイズであると予想される。
【００４０】
〔原理〕
次に、本形態の原理について説明する。
【００４１】
各物理量子ビットの計算基底軸（例えば、スピンの向きを定義するためのＺ軸等）の方向は、すべての物理量子ビットに対して同一に設定されることが一般的である。しかし、計算基底軸が同一方向に設定された各物理量子ビットに対称性のあるノイズが作用した場合、各物理量子ビットへ作用するノイズは互いに同期することで強め合い、ノイズの影響が大きくなってしまう。そのため、スタビライザー符号のみでは十分な量子誤り訂正ができない場合がある。本形態では、通常同一方向に設定される各物理量子ビットの計算基底軸の方向を物理量子ビット毎に独立に変更し、それらの物理量子ビットを用いてスタビライザー符号を構成することで、この問題を解決する。
【００４２】
物理量子ビットの計算基底軸を変更することは、観測、論理量子ビット上の演算の物理量子ビット上での実装方法、及び、論理量子ビットの物理量子ビット上での実装方法を変更することに相当する。これを具体的に説明すると、まず、各物理量子ビットに同一の基準計算基底軸を設定し、j〔j∈{1,...,n}, n≧2〕番目の物理量子ビットQjの計算基底軸の回転（基準計算基底軸に対する回転）を示す2×2のユニタリー行列をVjとし、ユニタリー行列Vj (j∈{1,...,n})のテンソル積からなる行列をV=V1(×) …(×)Vnとする。この場合、行列Aで示される演算子によるj番目の物理量子ビットの観測は、行列Vj AVj+で示される演算子によるj番目の物理量子ビットの観測に変更され、行列Aで示される演算子によるj番目の物理量子ビットへの演算は、行列Vj AVj+で示される演算子によるj番目の物理量子ビットの演算に変更される。また、行列Bで示される２つの物理量子ビットQj，Qm〔m∈{1,...,n},m≠j〕に対する演算（例えば、C-NOT演算）は、{Vj(×)I}{I(×)Vm}B{I(×)Vm}+{Vj(×)I}+で示される２つの物理量子ビットQj，Qm〔m∈{1,...,n},m≠j〕に対する演算に変更される。さらに、論理量子ビットに符号化されたn個の物理量子ビットの状態ベクトル|ΦL(k)>は、V|ΦL(k)>に変更される。
【００４３】
このような変更は、実効的には、量子符号を変更せずに、式（１４）で表現される行列が
REq(ρ)=V+ Eq(VρV+)V  …(17)
で表現される行列に変化したことと同等であるといえる。この変更によってノイズの対称性が実効的に失われれば、各物理量子ビットに作用するノイズが同期することで強め合うことがなくなり、対称性のあるノイズの影響を小さく抑えることができる。
【００４４】
ただ、任意にユニタリー行列VjとVとを設定した場合に如何なるスタビライザー符号に対して実効的なノイズの対称性が失われるわけではなく、ユニタリー行列VjとVや、具体的に採用したスタビライザー符号や、対称性のあるノイズの性質によっては対称性のあるノイズの影響を低減できない場合もある。
【００４５】
そのため、本形態では、各物理量子ビットの計算基底軸の方向を物理量子ビット毎に独立に変更し、特定のスタビライザー符号を適用して符号化した場合におけるフィデリティ（量子誤りの無い状態に対する、対称性のあるノイズによる量子誤りを訂正した後の状態のフィデリティ）を解析的に評価し、対称性のあるノイズの影響の低減が確認された場合にのみ、変更された各物理量子ビットの計算基底軸の方向を採用する。具体的には、式（９）のオーダーの項をV=V1(×) …(×)Vnの関数として具体的に評価し、すべてのj∈{1,...,n}についてVj=Iとした場合（Vが2n×2nの単位行列である場合）よりもフィデリティが大きくなる場合にのみユニタリー行列Vj及びV=V1(×) …(×)Vnを採用する。より具体的には、
REq(|ΦL(k)><ΦL(k)|)=V+Eq(V|ΦL(k)><ΦL(k)|V+)V  …(18)
とした場合におけるフィデリティ
【００４６】
【数３９】
0004664994.tif 000026
に基づき、ユニタリー行列Vj及びV=V1(×) …(×)Vnを採用するか否かを判定する。さらに具体的には、スタビライザー符号を[n,k,d] スタビライザー符号とし、hx=h・sinθ・cosν，hy=h・sinθ・sinν，hz=h・cosθとし、
【数４０】
0004664994.tif 000027
とし、
【００４７】
【数４１】
0004664994.tif 000028
とし、式（１６）のユニタリー行列U(H)とH=h・Hjとした当該ユニタリー行列U(h・Hj)とユニタリー行列Vjに対してU(h・Hj)= Vj U(H) Vj+を満たす３次元ベクトルをHjとした場合における、フィデリティ
【数４２】
0004664994.tif 000029
の値を算出し、当該算出値に基づき、ユニタリー行列Vj及びV=V1(×) …(×)Vnを採用するか否かを判定する。
【００４８】
〔第１実施形態〕
次に、本発明の第１実施形態を説明する。
＜構成＞
図１は、第１実施形態の計算基底軸設定装置１０の機能構成を示したブロック図である。
図１に示すように、本形態の計算基底軸設定装置１０は、記憶部１１と、入力部１２と、計算基底軸設定部１３と、計算基底軸評価部１４と、出力部１６と、制御部１７とを有する。なお、計算基底軸設定装置１０は、制御部１７の制御のもと各処理を実行する。
図２は、第１実施形態の計算基底軸設定装置１０のハードウェア構成を例示したブロック図である。
【００４９】
図２に例示するように、本形態の計算基底軸設定装置１０は、ＣＰＵ（Central Processing Unit）１０ａ、出力部１０ｂ、出力部１０ｃ、ＲＡＭ（Random Access Memory）１０ｄ、ＲＯＭ（Read Only Memory）１０ｅ、補助記憶装置１０ｆ及びバス１０ｇを有している。ＣＰＵ１０ａは、制御部１０ａａ、演算部１０ａｂ及びレジスタ１０ａｃを有し、レジスタ１０ａｃに読み込まれた各種プログラムに従って様々な演算処理を実行する。また、ＲＡＭ１０ｄは、所定のプログラムが格納されるプログラム領域１０ｄａ及び各種データが格納されるデータ領域１０ｄｂを有している。また、補助記憶装置１０ｆは、例えば、所定のプログラムが格納されるプログラム領域１０ｆａ及び各種データが格納されるデータ領域１０ｆｂを有している。また、バス１０ｇは、ＣＰＵ１０ａ、出力部１０ｂ、通信部１０ｃ、ＲＡＭ１０ｄ、ＲＯＭ１０ｅ及び補助記憶装置１０ｆを、情報のやり取りが可能なように接続する。
【００５０】
また、ＣＰＵ１０ａは、読み込まれたＯＳ（Operating System）プログラムに従い、補助記憶装置１０ｆのプログラム領域１０ｆａに格納されているプログラムをＲＡＭ１０ｄのプログラム領域１０ｄａに書き込む。同様にＣＰＵ１０ａは、補助記憶装置１０ｆのデータ領域１０ｆｂに格納されている各種データを、ＲＡＭ１０ｄのデータ領域１０ｄｂに書き込む。そして、このプログラムやデータが書き込まれたＲＡＭ１０ｄ上のアドレスがＣＰＵ１０ａのレジスタ１０ａｃに格納される。ＣＰＵ１０ａの制御部１０ａｂは、レジスタ１０ａｃに格納されたこれらのアドレスを順次読み出し、読み出したアドレスが示すＲＡＭ１０ｄ上の領域からプログラムやデータを読み出し、そのプログラムが示す演算を演算部１０ａｂに順次実行させ、その演算結果をレジスタ１０ａｃに格納していく。
【００５１】
このような構成により、図１に例示した計算基底軸設定装置１０の機能構成が実現される。すなわち、図１の記憶部１１は、図２の補助記憶装置１０ｆのデータ領域１０ｆｂ、ＲＡＭ１０ｄのデータ領域１０ｄｂ、ＣＰＵ１０ａのレジスタ１０ａｃ、その他のバッファメモリやキャッシュメモリ等の何れか、或いはこれらを併用した記憶領域に相当する。また、図１の入力部１２及び出力部１６は、それぞれ、上述のプログラムが読み込まれたＣＰＵ１０ａの制御のもとで駆動する図２の入力部１０ｂ及び出力部１０ｃに相当する。また、図１の計算基底設定部１３と計算基底軸評価部１４と制御部１７とは、それぞれ上述のプログラムが読み込まれたＣＰＵ１０ａである。
【００５２】
＜処理＞
次に、本形態の処理について説明する。
本形態では、特定の[n,k,d] スタビライザー符号によってn個の物理量子ビットをｋ(n＞k≧1)個の論理量子ビットに符号化する際に適用される処理を説明する。
図３は、第１実施形態の処理を説明するためのフローチャートである。
【００５３】
まず、計算基底軸設定装置１０（図１）の入力部１２に、特定の[n,k,d] スタビライザー符号によってｋ(n＞k≧1)個の論理量子ビットに符号化されたn個の物理量子ビットの量子状態を示す列ベクトルが張るベクトル空間を特定する符号空間情報CSと、当該[n,k,d]スタビライザー符号の誤り訂正に対応するCPTP写像Cとが入力され、これらのデータが記憶部１１に格納される（ステップＳ１）。なお、符号空間情報CSとしては、例えば、当該特定の[n,k,d] スタビライザー符号によって符号化された論理量子ビットの論理的な基底ベクトルを示す、物理量子ビットの状態ベクトルを例示できる。
【００５４】
次に、計算基底軸設定部１３が、各物理量子ビットに共通の基準計算基底軸に対する、j〔j∈{1,...,n}, n≧2〕番目の物理量子ビットQjの計算基底軸の回転を示す2×2のユニタリー行列Vjを設定する。なお、本形態の計算基底軸は、３次元空間上のＸ軸，Ｙ軸及びＺ軸である。
【００５５】
また、各ユニタリー行列Vjは、物理量子ビットQj毎に独立に設定されることが望ましい。一般的に、対称性のあるノイズの影響を低減できる可能性が高まるからである。また、各ユニタリー行列Vjの設定は、例えば、ランダムに2×2のユニタリー行列をn個生成し、それらを各ユニタリー行列Vjとすることによって行われてもよいし、予め設定された2×2のユニタリー行列の中からn個のユニタリー行列を選択し、それらを各ユニタリー行列Vjとしてもよい。また、例えば、ステップＳ２〜Ｓ４のループに最速降下法（Steepest descent method）を適用し、各ユニタリー行列Vjの初期行列は任意に設定し、最速降下法で規定された更新方法に従って各ユニタリー行列Vjを更新してもよい。
【００５６】
次に、計算基底軸評価部１４が、記憶部１１から、符号空間情報CSと、CPTP写像Cと、ステップＳ２で設定された各ユニタリー行列Vjとを読み込む。そして、計算基底軸評価部１４は、これらを用いて式（１９）に示すフィデリティ（量子誤りの無い状態に対する、対称性のあるノイズによる量子誤りを訂正した後の状態のフィデリティ）に基づき、計算基底軸設定部１３で設定されたユニタリー行列Vjを採用するか否かを判定し、その判定結果を制御部１７に出力する（ステップＳ３）。以下、ステップＳ３の判定方法を例示する。
【００５７】
［ステップＳ３の判定方法１］
この例の計算基底軸評価部１４は、すべてのj∈{1,...,n}についてVj=Iとした場合よりもフィデリティが大きくなるユニタリー行列Vjを採用する。すなわち、行列Vに従って計算基底軸を回転させることにより対称性のあるノイズの影響を低減させることができる行列Vを選択する。
【００５８】
具体的には、まず、（Ａ）計算基底軸評価部１４は、記憶部１１から読み込んだ、符号空間情報CSとCPTP写像CとステップＳ２で設定された各ユニタリー行列Vjとを入力として式（２１）の値EV(V)を算出する。（Ｂ）次に、計算基底軸評価部１４は、当該符号空間情報CSとCPTP写像CとVj=I（すべてのj∈{1,...,n}）とを入力として式（２１）の値RVを算出する。（Ｃ）そして、計算基底軸評価部１４は、値EVが値RVよりも小さい場合にステップＳ２で設定された各ユニタリー行列Vjを採用すると判定し、値EVが値RV以上の場合にステップＳ２で設定された各ユニタリー行列Vjを採用しないと判定し、判定結果を制御部１７に出力する。
【００５９】
［ステップＳ３の判定方法２］
この例の計算基底軸評価部１４は、最速降下法を用いて各ユニタリー行列Vjを評価する。この場合、例えば、ステップＳ１で入力された符号空間情報CSとCPTP写像Cとが代入され、各ユニタリー行列Vjを特定するための3n個（3nはn個のユニタリー行列Vjの自由度）の要素からなるベクトルvx(V)=(vx1(V), vx2(V),..., vx3n(V))を変数とした式（２１）の関数をEV(vx(V))とする。そして、EV(vx(V))の各vx1(V), vx2(V),..., vx3n(V)についての一階偏微分を∂EV(vx)/∂vx1(V), EV(vx)/∂vx2(V),...,∂EV(vx)/∂vx3n(V)とする。この例の計算基底軸評価部１４は、ステップＳ２で設定された各ユニタリー行列Vjの時点における、各一階偏微分値∂EV(vx)/∂vx1(V), EV(vx)/∂vx2(V),...,∂EV(vx)/∂vx3n(V)を求め、これらすべての一階偏微分値の絶対値がそれぞれ所定の範囲内の値となった場合（又はこれらすべての一階偏微分値が０となった場合）にステップＳ２で設定された各ユニタリー行列Vjを採用すると判定し、そうならなければステップＳ２で設定された各ユニタリー行列Vjを採用しないと判定し、判定結果を制御部１７に出力する。
【００６０】
なお、ステップＳ２で設定された各ユニタリー行列Vjを採用しないと判定された場合、当該ステップＳ２で設定された各ユニタリー行列Vjに対応するベクトルvx(V)=(vx1(V), vx2(V),..., vx3n(V))の各要素から、それに対応するSP・(∂EV(vx)/∂vx1(V), EV(vx)/∂vx2(V),...,∂EV(vx)/∂vx3n(V))の各要素をそれぞれ減じた値（SPは正のステップパラメータ）が、次のループのステップＳ２で設定される各ユニタリー行列Vjに対応するベクトルとなる（ステップＳ３の判定方法の例示終わり）。
【００６１】
次に、制御部１７は、計算基底軸評価部１４から出力された判定結果が「設定された各ユニタリー行列Vjを採用しない」旨のものであった場合には、処理をステップＳ２に戻し、ステップＳ２〜Ｓ４のループを再び実行させる。一方、計算基底軸評価部１４から出力された判定結果が「設定された各ユニタリー行列Vjを採用する」旨のものであった場合には、制御部１７は、処理をステップＳ５に進める。
ステップＳ５では、最後にステップＳ２で算出された各ユニタリー行列Vj(j∈{1,...,n})が記憶部１１から読み出され、出力部１６に送られ、出力部１６はこれらを出力する（ステップＳ５）。
【００６２】
＜スティーン符号の例＞
次に、スタビライザー符号としてスティーン（Steane）符号（例えば、A. M. Steane,“Active Stabilization, Quantum Computation, and Quantum State Synthesis”, Phys. Rev. Lett. 78 (1997) 2252等参照）を用いる場合を例示する。なお、スティーン符号は、[7,1,3] スタビライザー符号に分類される。スティーン符号によって構成された論理量子ビットの基底ベクトル（|0L>，|1L>）は、物理量子ビットの基底ベクトルを用いて次のように表現できる。なお、以下では、各物理量子ビットの基底ベクトルの係数の正規化を省略して表記する。また、係数が０になる物理量子ビットの基底ベクトルの項の記載も省略する。
|0L>= |0000000>+|0001111>+|0110011>+|0111100>+|1010101>+|1011010>
+|1100110>+|1101001>
|1L>= |1111111>+|1110000>+|1001100>+|1000011>+|0101010>+|0100101>
+|0011001>+|0010110>
【００６３】
この場合の量子状態を物理量子ビットの基底ベクトルを用いて表現すると以下のようになる。
ΦL(k)=h1|0L>+h2|1L>
= h1(|0000000>+|0001111>+|0110011>+|0111100>+|1010101>+|1011010>
+|1100110>+|1101001>)+ h2(|1111111>+|1110000>+|1001100>+|1000011>+|0101010>
+|0100101>+|0011001>+|0010110>)  …(22)
そして、この例の状態ベクトル|ΦL(k)>は、式（２２）の各基底ベクトルの係数（係数０も含む）を要素とする27次元の列ベクトルとなる。また、この例の符号空間情報CSは、例えば、上述の論理量子ビットの論理的な基底ベクトル|0L>，|1L>をそれぞれ示す、物理量子ビットの27次元状態ベクトルである。
【００６４】
また、スティーン符号のスタビライザーの生成元は次のようになる。
g1=I(×)I(×)I(×)X(×)X(×)X(×)X
g2=I(×)X(×)X(×)I(×)I(×)X(×)X
g3=X(×)I(×)X(×)I(×)X(×)I(×)X            …(23)
g4=I(×)I(×)I(×)Z(×)Z(×)Z(×)Z
g5=I(×)Z(×)Z(×)I(×)I(×)Z(×)Z
g6=Z(×)I(×)Z(×)I(×)Z(×)I(×)Z
【００６５】
そして、スティーン符号の誤り訂正は、量子状態Φを式（２３）の６つの生成元によって観測し、その観測結果（g1|Φ>=δ1|Φ>,g2|Φ>=δ2|Φ>,...,g6|Φ>=δ6|Φ>とした場合のδ1,δ2,…,δ6）がすべて１ならばエラーは無いと認定し誤り訂正は行わない。一方、観測結果（δ1,δ2,…,δ6）の何れかが−１であったならば、それに応じてX,Z演算子を適宜作用させる。具体的には、左から(1-δ3)/2+(1-δ2)+2(1-δ2) 番目の物理量子ビット（j=(1-δ3)/2+(1-δ2)+2(1-δ2)の場合の物理量子ビットQj）にZ演算子を作用させ、さらに、左から(1-δ6)/2+(1-δ5)+2(1-δ4) 番目の物理量子ビット（j=(1-δ6)/2+(1-δ5)+2(1-δ4)の場合の物理量子ビットQj）にX演算子を作用させる。なお、スティーン符号の場合のCPTP写像C(ρ)は、式(8)のRτを以下のように設定した関数となる。
【００６６】
Rτ=rxτ1・rzτ2      …(24)
rx0=2-3・(g1+I(×)7)(g2+I(×)7)(g3+I(×)7)
rx1=2-3・(g1+I(×)7)(g2+I(×)7)(g3-I(×)7)・Z(×)I(×)I(×)I(×)I(×)I(×)I
rx2=2-3・(g1+I(×)7)(g2-I(×)7)(g3+I(×)7)・I(×)Z(×)I(×)I(×)I(×)I(×)I
rx3=2-3・(g1+I(×)7)(g2-I(×)7)(g3-I(×)7)・I(×)I(×)Z(×)I(×)I(×)I(×)I
rx4=2-3・(g1-I(×)7)(g2+I(×)7)(g3+I(×)7)・I(×)I(×)I(×)Z(×)I(×)I(×)I
rx5=2-3・(g1-I(×)7)(g2+I(×)7)(g3-I(×)7)・I(×)I(×)I(×)I(×)Z(×)I(×)I
rx6=2-3・(g1-I(×)7)(g2-I(×)7)(g3+I(×)7)・I(×)I(×)I(×)I(×)I(×)Z(×)I
rx7=2-3・(g1-I(×)7)(g2-I(×)7)(g3-I(×)7)・I(×)I(×)I(×)I(×)I(×)I(×)Z
rz0=2-3・(g4+I(×)7)(g5+I(×)7)(g6+I(×)7) 
rz1=2-3・(g4+I(×)7)(g5+I(×)7)(g6-I(×)7)・Z(×)I(×)I(×)I(×)I(×)I(×)I
rz2=2-3・(g4+I(×)7)(g5-I(×)7)(g6+I(×)7)・I(×)Z(×)I(×)I(×)I(×)I(×)I
rz3=2-3・(g4+I(×)7)(g5-I(×)7)(g6-I(×)7)・I(×)I(×)Z(×)I(×)I(×)I(×)I
rz4=2-3・(g4-I(×)7)(g5+I(×)7)(g6+I(×)7)・I(×)I(×)I(×)Z(×)I(×)I(×)I
rz5=2-3・(g1-I(×)7)(g5+I(×)7)(g6-I(×)7)・I(×)I(×)I(×)I(×)Z(×)I(×)I
rz6=2-3・(g4-I(×)7)(g5-I(×)7)(g6+I(×)7)・I(×)I(×)I(×)I(×)I(×)Z(×)I
rz7=2-3・(g4-I(×)7)(g5-I(×)7)(g6-I(×)7)・I(×)I(×)I(×)I(×)I(×)I(×)Z
ただし、τ=1,...,64であり、各Rτは、上述の行列rxτ1と行列rzτ2とのすべての組み合わせについての式（２４）で示す各行列積である。
【００６７】
この場合、式（２１）に含まれる関数f(Hj)は、Hj=Hのとき（すべてのjについてユニタリー行列Vj=Iであることに相当する）に最大の値28.9333となる。よって、ステップＳ２において、少なくとも何れかのjについてI以外のユニタリー行列Vjが選択されていれば、量子符号に対するノイズ耐性が向上し、ステップＳ４において行列Vを採用する旨の判断がなされる。
【００６８】
また、ステップＳ２において
【数４３】
0004664994.tif 000030
とすることで、上述の式（２１）の値は7.472となる。よって、これらのユニタリー行列Vjを用いてスティーン符号を変更することにより、すべてのjについてVj=Iである場合に比べ、４倍ほどノイズに対する耐性が向上する。
【００６９】
〔第２実施形態〕
本形態は、第１実施形態の応用例であり、第１実施形態と同様な処理によって採用すると判定されたユニタリー行列Vjを用い、スタビライザー符号を変更する処理を付加したものである。以下では、第１実施形態との相違点を中心に説明し、第１実施形態と共通する事項については説明を省略する。
【００７０】
＜構成＞
図４は、第２実施形態の計算基底軸設定装置２０の機能構成を示したブロック図である。なお、図４において第１実施形態の計算基底軸設定装置１０と共通する部分については図１と同じ符号を付している。
【００７１】
図４に示すように、本形態の計算基底軸設定装置２０は、記憶部１１と、入力部１２と、計算基底軸設定部１３と、計算基底軸評価部１４と、量子回路情報修正部２５と、出力部１６と、制御部１７とを有する。なお、計算基底軸設定装置２０は、制御部１７の制御のもと各処理を実行する。なお、第１実施形態と同様、本形態の計算基底軸設定装置２０も公知のコンピュータに所定のプログラムが読み込まれることによって構成される装置であり、量子回路変更部２５は、所定のプログラムが読み込まれたＣＰＵに相当する。
【００７２】
＜処理＞
次に、本形態の処理について説明する。
本形態でも、特定の[n,k,d] スタビライザー符号によってn個の物理量子ビットをｋ(n＞k≧1)個の論理量子ビットに符号化する際に適用される処理を説明する。
図５は、第２実施形態の処理を説明するためのフローチャートである。
まず、計算基底軸設定装置２０（図４）の入力部１２に、特定の[n,k,d] スタビライザー符号によってｋ(n＞k≧1)個の論理量子ビットに符号化されたn個の物理量子ビットの量子状態を示す列ベクトルが張るベクトル空間を特定する符号空間情報CSと、当該[n,k,d]スタビライザー符号の誤り訂正に対応するCPTP写像Cとが入力され、これらのデータが記憶部１１に格納される（ステップＳ１１）。
【００７３】
さらに、本形態では、計算基底軸設定装置２０の入力部１２に、すべてのj∈{1,...,n}に対してVj=Iである場合の上記のスタビライザー符号によって構成された量子回路に設定される初期量子状態を示す状態ベクトル|Φ>と、当該量子回路が具備する１つの物理量子ビットQjに対する演算（観測も含む）を示す行列A及び／又は２つの物理量子ビットQj，Qm〔m∈{1,...,n},m≠j〕に対する演算を示す行列Bと、を含む基準量子回路情報QCが入力され、当該基準量子回路情報QCが記憶部１１に格納される（ステップＳ１２）。なお、１つの物理量子ビットQjに対する演算と、２つの物理量子ビットQj，Qmに対するC-NOT演算とによって、全ての量子演算ゲートを構成することが可能である。また、量子回路とは、初期量子状態に設定された複数の物理量子ビットに対し、所定の順序で複数の演算を作用させる量子計算機構を意味する。
【００７４】
次に、第１実施形態のステップＳ２，Ｓ３の処理が実行される（ステップＳ１３，Ｓ１４）。
次に、制御部１７は、ステップＳ１４で計算基底軸評価部１４から出力された判定結果が「設定された各ユニタリー行列Vjを採用しない」旨のものであった場合には、処理をステップＳ１３に戻し、ステップＳ１３〜Ｓ１５のループを再び実行させる。一方、計算基底軸評価部１４から出力された判定結果が「設定された各ユニタリー行列Vjを採用する」旨のものであった場合には、制御部１７は、処理をステップＳ１６に進める。
【００７５】
ステップＳ１６では、量子回路情報修正部２５が、計算基底軸設定部１４で設定されたユニタリー行列Vjを用い、基準量子回路情報QCを修正量子回路情報RQCに変更する。すなわち、量子回路情報修正部２５は、記憶部１１から、計算基底軸設定部１４で設定されたユニタリー行列Vjと、基準量子回路情報QCとを読み込み、当該ユニタリー行列Vjを用い、基準量子回路情報QCが具備する初期量子状態を示す状態ベクトル|Φ>をV|Φ>に変更し、１つの物理量子ビットQjに対する演算を示す行列Aを行列VjAVj+に変更し、２つの物理量子ビットQj，Qm〔m∈{1,...,n},m≠j〕に対する演算を示す行列Bを、
{Vj(×)I}{I(×)Vm}B{I(×)Vm}+{Vj(×)I}+
に変更して、修正量子回路情報RQCを生成し、当該修正量子回路情報RQCを記憶部１１に格納する（ステップＳ１６）。
【００７６】
その後、記憶部１１から読み出された修正量子回路情報RQCが出力部１６に送られ、出力部１６は、当該修正量子回路情報RQCを出力する。このように出力された修正量子回路情報RQCに基づき、量子計算機の初期量子状態や演算ゲートを設定することにより、ノイズ耐性の高い量子計算機を構成することができる。なお、物理量子ビット、量子状態の初期化処理、演算ゲート、観測等を実現する量子計算機の物理系としては、例えば、液体中の各スピンを用いる方法（Gershenfield, Chuang, Bulk spin resonance quantum computation, Science, 275;350, 1997）、シリコン結晶中の核スピンを用いる方法（B. E. Kane, A silicon-based nuclear spin quantum computer, Nature 393, 133, 1998）、量子ドット中の電子スピンを用いる方法（D. Loss and D. P. DiVincenzo, Quantum computation with quantum dots, Physical Review A 57, 120-126, 1998）、光子を用いる方法（Y. Nakamura, M. Kitagawa, K. Igeta, In 3-rd Proc. Asia-Pacific Phys. Comf., World Scientific, Singapore, 1988）等を例示できる。また、それぞれの物理系に対する量子コンピュータの実現方法については、「M. A. Nielsen and I. L. Chuang, Quantum Computation and Quantum Information, Cambridge University Press, Chapter 7 Physical Realization」に詳しい。
【００７７】
なお、本発明は上述の実施の形態に限定されるものではなく、その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。
また、上述の構成をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、処理機能がコンピュータ上で実現される。
【００７８】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよいが、具体的には、例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ（Random Access Memory）、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）等を、光磁気記録媒体として、ＭＯ（Magneto-Optical disc）等を、半導体メモリとしてＥＥＰ−ＲＯＭ（Electronically Erasable and Programmable-Read Only Memory）等を用いることができる。
【００７９】
また、このプログラムの流通は、例えば、そのプログラムを記録したＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
【００８０】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるＡＳＰ（Application Service Provider）型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの（コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等）を含むものとする。
【００８１】
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【産業上の利用可能性】
【００８２】
本発明の産業上の利用分野としては、量子コンピュータの誤り訂正機能を例示できる。
【図面の簡単な説明】
【００８３】
【図１】図１は、第１実施形態の計算基底軸設定装置の機能構成を示したブロック図である。
【図２】図２は、第１実施形態の計算基底軸設定装置のハードウェア構成を例示したブロック図である。
【図３】図３は、第１実施形態の処理を説明するためのフローチャートである。
【図４】図４は、第２実施形態の計算基底軸設定装置の機能構成を示したブロック図である。
【図５】図５は、第２実施形態の処理を説明するためのフローチャートである。
【符号の説明】
【００８４】
１０，２０  計算基底設定装置
【図１】
0004664994.tif 000045
【図２】
0004664994.tif 000046
【図３】
0004664994.tif 000047
【図４】
0004664994.tif 000048
【図５】
0004664994.tif 000049