Skip to main content
IBM Quantum Platform

Unroll3qOrMore

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

GitHub

ベース: TransformationPass

回路が 2q または 1q ゲートしか含まなくなるまで、 3q+ ゲートを再帰的に展開する。

Unroll3qOrMore パスの初期化

パラメーター

  • target (Target) – コンパイル・ターゲットを表すターゲット・オブジェクト。 指定された場合、パス実行時に回路内にあるマルチ量子ビット命令で、ターゲット・デバイスでサポートされているものはそのまま残される。 thisと basis_gates の両方が指定された場合は、ターゲットのみがチェックされる。
  • basis_gates (list) – ターゲット・デバイスがサポートする基底ゲート名のリスト。 指定された場合、このリストに存在する回路内のゲート名は展開されない。 thisと target の両方が指定された場合、どのゲートがサポートされているかをチェックするために、ターゲットだけが使用される。

属性

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

ダグに Unroll3qOrMore。

パラメーター

dag (DAGCircuit) – インプット・ダグ

戻り値

最大ノード度数2の出力ダグ

戻りの型

DAGサーキット

レイズ

QiskitError - 3q+ ゲートが分解可能でない場合

update_status

update_status(state, run_state)

GitHub

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

パラメーター

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

戻り値

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

戻りの型

PassManagerState

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