Skip to main content
IBM Quantum Platform

RemoveIdentityEquivalent

class qiskit.transpiler.passes.RemoveIdentityEquivalent(*args, **kwargs)

GitHub

ベース: TransformationPass

無視できる効果のゲートを取り除く。

大域的な位相と指定された許容範囲まで、同一性操作に近い効果を持つゲートを削除する。 パラメータ化されたゲートは、このパスでは考慮されない。

カットオフ・フィデリティ ff に対して、このパスは、アイデンティティに関する平均ゲート・フィデリティが ff 以下のゲートを削除する。具体的には、ゲート GG は、 Fˉ<f\bar F < f ここで

Fˉ=1+dFprocess1+d, Fprocess=Tr(G)2d2\bar{F} = \frac{1 + d F_{\text{process}}}{1 + d},\ F_{\text{process}} = \frac{|\mathrm{Tr}(G)|^2}{d^2}

ここで、 d=2nd = 2^nnn の量子ビットのゲートの次元である。

この関数はマルチスレッド対応であり、デフォルトではCPUコア数と同じ数のスレッドを持つスレッドプールを起動する可能性があります。 スレッド数は、環境 RAYON_NUM_THREADS 変数で調整できます。 たとえば、 を設定すると、スレッドプールは RAYON_NUM_THREADS=4 4 スレッドに制限されます。

トランスパイラー・パスを初期化する。

パラメーター

  • approximation_degree - 同値チェックのために近似する次数。 これは0から1の間の浮動小数点値、または None。 値が1の場合、浮動小数点精度以上の近似値は得られない。 この値は、カットオフ・フィデリティのスケーリング・ファクターとして使用される。 値が None の場合、 target で指定されたゲートの忠実度まで近似する。 target が設定されていない場合は、少数量子ビット系での蓄積を考慮し、デフォルトとして 16 * machine_eps まで近似する。
  • target - approximation_degreeNone に設定され、このフィールドに Target がこのフィールドに指定されている場合、操作が ID と等価かどうかを判断するための許容誤差は、ターゲットで報告されたエラー率に設定される。 approximation_degree (デフォルト)の場合、これは何の効果もない。 approximation_degree=None の場合、評価されるゲートの Target で指定されたエラー・レートが使用され、 target が設定された 1 以外の数値が、ターゲットのエラー・レートのスケーリング・ファクターとして使用される。

属性

is_analysis_pass

パスが分析パスかどうかをチェックする。

パスが AnalysisPass,、パスがDAGを分析し、その分析結果をプロパティセットに書き込むことができることを意味する。 この種のパスでは、DAGの変更は許されない。

is_transformation_pass

パスが変身パスかどうかをチェックする。

パスが TransformationPass, の場合、そのパスはDAGを操作することはできるが、プロパティセットを変更することはできない(ただし、読み取ることはできる)ことを意味する。


方法

execute

execute(passmanager_ir, state, callback=None)

GitHub

入力Qiskit IRに対して最適化タスクを実行する。

パラメーター

  • passmanager_ir (Any) – Qiskit IRを最適化する。
  • state (PassManagerState) – パスマネージャー自身によるワークフロー実行に関連する状態。
  • callback (Callable | None) – 最適化タスクの実行ごとに呼び出されるコールバック関数。

戻り値

Qiskit IRとワークフローの状態を最適化。

戻りの型

タプル [ Any, PassManagerState ]

name

name()

GitHub

パスの名前

戻りの型

str

run

run(dag)

GitHub

DAGCircuitでパスを実行する。 これはパス開発者によって実装される。

パラメーター

dag (DAGCircuit) – パスが実行されるダグ。

レイズ

NotImplementedError - パスが未実装の場合。

戻りの型

DAGサーキット

update_status

update_status(state, run_state)

GitHub

ワークフローのステータスを更新する。

パラメーター

  • state (PassManagerState) – 更新するマネージャーの状態を渡す。
  • run_state (RunState) – 現在のタスクの完了状況。

戻り値

パスマネージャーの状態を更新。

戻りの型

PassManagerState

このページは役に立ちましたか?
バグや誤字の報告、またはコンテンツの要求はGitHubで行ってください。