2つの状態ベクトルがパウリ演算まで同等かどうかを確認する高速な方法


8

パウリ演算、、のみを使用して、特定の状態ベクトルを別の状態ベクトル変換できるかどうかをチェックするための高速コードまたは高速アルゴリズムを探しています。ABXYZ

単純な戦略は、キュビットのそれぞれにパウリ演算(または演算なし)を適用するためにすべての方法を単純に反復し、実際に演算(各ケースの各キュビットのコスト)を1つに適用することをシミュレートすることです状態、および結果の状態ベクトルが他の状態と等しいかどうかを確認します。確かに、これを最悪の場合時間よりも優れた方法で実行することは可能ですか?4nn2nn8n

[更新] ワーストケースのパフォーマンスに特に興味があります。ヒューリスティックは興味深い有用な回答ですが、受け入れられる回答にはなりません。

回答:


2

私が最初に考えた方法は、個々のキュービットの低密度行列を調べることでした。パウリ行列を使用して相互変換できない場合、全体を変換することはできません。

唯一の問題は、このアイデアは、密度の低下したマトリックスのいずれかが最大限に混合されるとすぐに失敗することです。その時点で、「2つの州は地方の統一の下で同等ですか?」と尋ねることができます。その質問の結果としてユニタリーを導き出した場合、それらがパウリであるかどうかをテストするのは簡単です。これはここで研究されました。スケーリングが問題となるケースはまだあると思いますが、最大混合混合低密度行列のビットを十分に覚えていません。


2
これはなどの状態に適したヒューリスティックですが、シングルトンノードのないグラフの状態などの一般的な状態は、その恩恵を受けません。このアイデアは一般化して、例えば、キュ​​ービットのペアまたはトリプレットの低密度行列に注目します。|CCZ
Craig Gidney

1
同意する。もちろん、グラフの状態については、ローカルのクリフォード等価性に関する多くの研究がありましたが、その後、状態がどのように指定されるかについて話し始める必要があります。ローカルのクリフォードとローカルのユニタリー同値を区別する際の注意は、問題がいかに厄介であるかを示唆しています。
DaftWullie

2

Aの要素を選択し、位相の変化を無視して、B内のその位置を見つけます。位置のシフトは、変換に必要な一連のまたはアプリケーションを一意に識別します。aiXY

の相対位相は、ローテーションのステップで、変換に必要なゲートの数を示します。と の相対位相は、最初のキュービットに作用する多くのまたはゲートがあることを示しています。そのための相対的な位相のためににのために又はキュービットに作用するゲート。(a0,b0)iY(a1,b1)(a0,b0)YZ(a2k1,b2k1)(a0,b0)YZk

がBに表示されない場合、変換は不可能です。ai

上記は -sh で実行できると思います。O(n)


1
要素が一意でない場合はどうなりますか?ai
DaftWullie

あなたはケースを取る。いずれの場合でも、要素の縮退が増加するにつれて、問題はより簡単になります。AとBの(の大きさ)要素は、バランスを取る必要があります。
Eelvex

3
しかし、すべての要素が同じ大きさであるグラフ状態のような状態はどうでしょうか?私が主張しようとしている点は、訴訟を起こすと、同じ指数関数的な爆発が起こるということです。確かに、あなたの提案は、多くの単純なケースを排除または解決するのに非常に適しています。
DaftWullie

すべてのコーナーケースをカバーしたと言っているわけではありませんが、すべての要素の大きさが同じである場合は、ゲートがゼロである必要があり、相対位相チェックに進みます。X
Eelvex

これは、特定の州にとってもう1つの優れたヒューリスティックです。しかし、特にワーストケースのパフォーマンスが良いアルゴリズムを探しています。
クレイグギドニー
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.