scikit_quri.backend package#

Submodules#

scikit_quri.backend.base_estimator module#

class scikit_quri.backend.base_estimator.BaseEstimator[source]#

Bases: object

Estimatorを実行する際の基底クラス estimateメソッドに対するinterfaceを定義

abstract estimate(operators, states)[source]#

operatorsとstatesの組み合わせに対して期待値を計算する operatorsまたはstatesのどちらかが1つの場合、もう一方の数に合わせて繰り返す もしくは、両方の数が同じ場合、1対1で対応させる それ以外の場合、ValueErrorを投げる

Parameters:
Returns:

operatorsとstatesの組み合わせに対する期待値のリスト

Return type:

Iterable[Estimate[complex]]

scikit_quri.backend.oqtopus_estimator module#

class scikit_quri.backend.oqtopus_estimator.OqtopusEstimator(device_id, shots=1000, config=None)[source]#

Bases: BaseEstimator

quri-parts-oqtopusを用いて実機で期待値を計算するEstimator Class 実行には`~/.oqtopus`の設定が必要 https://quri-parts-oqtopus.readthedocs.io/en/stable/usage/getting_started/#prepare-oqtopus-configuration-file

Parameters:
  • device_id (str) – 実行するデバイスのID

  • shots (int) – ショット数. Defaults to 1000.

  • config (Optional[OqtopusConfig]) – OqtopusのConfig. Defaults to None.

estimate(operators, states)[source]#

operatorsとstatesの組み合わせに対して期待値を計算する operatorsまたはstatesのどちらかが1つの場合、もう一方の数に合わせて繰り返す もしくは、両方の数が同じ場合、1対1で対応させる それ以外の場合、ValueErrorを投げる

Parameters:
  • operators – 期待値を計算する演算子のリスト

  • states – 期待値を計算する状態のリスト

Returns:

operatorsとstatesの組み合わせに対する期待値のリスト

Raises:
  • ValueError – operatorsまたはstatesが空、もしくは両方の数が異なる場合

  • BackendError – Oqtopusでの実行に失敗した場合

scikit_quri.backend.sim_estimator module#

class scikit_quri.backend.sim_estimator.SimEstimator[source]#

Bases: BaseEstimator

quri-parts-qulacsを用いて期待値を計算するSimulation用Estimator Class

estimate(operators, states)[source]#

operatorsとstatesの組み合わせに対して期待値を計算する operatorsまたはstatesのどちらかが1つの場合、もう一方の数に合わせて繰り返す もしくは、両方の数が同じ場合、1対1で対応させる それ以外の場合、ValueErrorを投げる

Parameters:
  • operators – 期待値を計算する演算子のリスト

  • states – 期待値を計算する状態のリスト

Returns:

operatorsとstatesの組み合わせに対する期待値のリスト

Module contents#