Estimator

class Estimator(circuits: Iterable[QuantumCircuit] | QuantumCircuit | None = None, observables: Iterable[SparsePauliOp] | SparsePauliOp | None = None, parameters: Iterable[Iterable[Parameter]] | None = None, **kwargs)[source]

Aer implmentation of Estimator.

Run Options:
  • shots (None or int) – The number of shots. If None and approximation is True, it calculates the exact expectation values. Otherwise, it calculates expectation values with sampling.

  • seed (int) – Set a fixed seed for the sampling.

Note

Precedence of seeding for seed_simulator is as follows:

  1. seed_simulator in runtime (i.e. in __call__())

  2. seed in runtime (i.e. in __call__())

  3. seed_simulator of backend_options.

  4. default.

seed is also used for sampling from a normal distribution when approximation is True.

Parameters:
  • backend_options – Options passed to AerSimulator.

  • transpile_options – Options passed to transpile.

  • run_options – Options passed to run.

  • approximation – If True, it calculates expectation values with normal distribution approximation.

  • skip_transpilation – If True, transpilation is skipped.

  • abelian_grouping – Whether the observable should be grouped into commuting. If approximation is True, this parameter is ignored and assumed to be False.

Attributes

Estimator.circuits

Quantum circuits that represents quantum states.

Estimator.observables

Observables to be estimated.

Estimator.options

Return options values for the estimator.

Estimator.parameters

Parameters of the quantum circuits.

Methods

Estimator.__call__(circuits, observables[, ...])

Run the estimation of expectation value(s).

Estimator.close()

Close the session and free resources

Estimator.run(circuits, observables[, ...])

Run the job of the estimation of expectation value(s).

Estimator.set_options(**fields)

Set options values for the estimator.

Estimator.__call__(circuits, observables[, ...])

Run the estimation of expectation value(s).