Skip to main content
IBM Quantum Platform

テンソルネットワークシミュレーション

qiskit_addon_aqc_tensor.simulation

このモジュールはテンソルネットワークシミュレーションへのインタフェースを提供します。

現在のところ、Qiskit Aerの行列積状態(MPS)シミュレータをバックエンドとする実装が1つある。


利用可能なバックエンド


関数

以下の関数は、サポートされているバックエンドで使用できる共通のインターフェイスを提供します。 どのバックエンドを使っても、これらの関数は共通のインターフェースとして呼び出される。

以下の各関数では、その関数で利用可能なすべての異なる実装がドキュメントに示されている。 アドオンは、指定した引数のタイプに基づいて、使用する実装を選択します。 (このパラダイムは「多重派遣」と呼ばれる)

tensornetwork_from_circuit

tensornetwork_from_circuit(qc, settings, /)

GitHub

量子回路をシミュレートしてテンソルネットワークの状態を作る。

settings テンソルネットワークの状態の型は、オブジェクトの型に対応します。 QiskitAerMPSたとえば、a の場合、この関 QiskitAerSimulationSettings 数は を返すことになります。

tensornetwork_from_circuit(qc: qiskit.circuit.quantumcircuit.QuantumCircuit, settings: qiskit_addon_aqc_tensor.simulation.aer.simulation.QiskitAerSimulationSettings | plum._type.ModuleType[qiskit_aer.AerSimulator], /, *, out_state: numpy.ndarray | None = None) → qiskit_addon_aqc_tensor.simulation.aer.state.QiskitAerMPS

GitHub

パラメーター

戻りの型

TensorNetworkState

tensornetwork_from_circuit(qc: qiskit.circuit.quantumcircuit.QuantumCircuit, settings: qiskit_addon_aqc_tensor.simulation.quimb.QuimbSimulator, /, *, out_state: numpy.ndarray | None = None) → plum._type.ModuleType[quimb.tensor.CircuitBase] | plum._type.ModuleType[quimb.tensor.Circuit]

GitHub

パラメーター

戻りの型

TensorNetworkState

戻りの型

TensorNetworkState

パラメーター

apply_circuit_to_state

apply_circuit_to_state(qc, psi, settings, /, *, out_state=None)

GitHub

テンソルネットワークの状態に量子回路を適用する。

入力状態(psi)は変更されない。

戻りの型

TensorNetworkState

戻り値

新しい国家。

パラメーター

apply_circuit_to_state(qc: qiskit.circuit.quantumcircuit.QuantumCircuit, psi: qiskit_addon_aqc_tensor.simulation.aer.state.QiskitAerMPS, settings: qiskit_addon_aqc_tensor.simulation.aer.simulation.QiskitAerSimulationSettings | plum._type.ModuleType[qiskit_aer.AerSimulator], /, *, out_state: numpy.ndarray | None = None) → qiskit_addon_aqc_tensor.simulation.aer.state.QiskitAerMPS

GitHub

パラメーター

戻りの型

TensorNetworkState

apply_circuit_to_state(qc: qiskit.circuit.quantumcircuit.QuantumCircuit, circ0: plum._type.ModuleType[quimb.tensor.CircuitBase] | plum._type.ModuleType[quimb.tensor.Circuit], settings: qiskit_addon_aqc_tensor.simulation.quimb.QuimbSimulator, /, *, out_state: numpy.ndarray | None = None) → plum._type.ModuleType[quimb.tensor.CircuitBase] | plum._type.ModuleType[quimb.tensor.Circuit]

GitHub

パラメーター

戻りの型

TensorNetworkState

テンソルネットワークの状態に量子回路を適用する。

入力状態(psi)は変更されない。

戻り値

新しい国家。

パラメーター

戻りの型

TensorNetworkState

compute_overlap

compute_overlap(psi_1, psi_2, /)

GitHub

2つの量子状態の重なりを計算する: ψ1ψ2\langle \psi_1 | \psi_2 \rangle.

注: numpy.dot と異なり、このメソッドの実装では、第1引数に対して複素共役を行う。

パラメーター

戻りの型

complex

戻り値

複素ドット積の値。

compute_overlap(mps1: qiskit_addon_aqc_tensor.simulation.aer.state.QiskitAerMPS, mps2: qiskit_addon_aqc_tensor.simulation.aer.state.QiskitAerMPS, /) → complex

GitHub

パラメーター

戻りの型

複合

compute_overlap(circ1: plum._type.ModuleType[quimb.tensor.CircuitBase] | plum._type.ModuleType[quimb.tensor.Circuit], circ2: plum._type.ModuleType[quimb.tensor.CircuitBase] | plum._type.ModuleType[quimb.tensor.Circuit], /) → complex

GitHub

パラメーター

戻りの型

複合


抽象クラス

これらは抽象クラスで、各バックエンドによって実装されます。

TensorNetworkState

class TensorNetworkState

GitHub

ベース: object

抽象的なテンソルネットワークの状態。

TensorNetworkSimulationSettings

class TensorNetworkSimulationSettings

GitHub

ベース: object

抽象的な切り捨ての設定。

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