Observable Estimation and Error Mitigation¶
The module observable_estimation
is at the heart of forest benchmarking. It provides a
convenient way to construct experiments that measure observables and mitigate errors
associated with readout (measurement) process.
Data structures¶
ObservablesExperiment (settings, …) |
A data structure for experiments involving estimation of the expectation of various observables measured on a core program, possibly with a collection of different preparations. |
ExperimentSetting (in_state, observable) |
Input and output settings for an ObservablesExperiment. |
ExperimentResult (setting, expectation, …) |
An expectation and standard deviation for the measurement of one experiment setting in an ObservablesExperiment. |
TensorProductState ([states]) |
A description of a multi-qubit quantum state that is a tensor product of many _OneQStates states. |
_OneQState (label, index, qubit) |
A description of a named one-qubit quantum state. |
to_json (fn, obj) |
Convenience method to save forest.benchmarking.observable_estimation objects as a JSON file. |
read_json (fn) |
Convenience method to read forest.benchmarking.observable_estimation objects from a JSON file. |
Functions¶
estimate_observables (qc, obs_expt, …) |
Standard wrapper for estimating the observables in an ObservableExperiment. |
calibrate_observable_estimates (qc, …) |
Calibrates the expectation and std_err of the input expt_results and updates those estimates. |
generate_experiment_programs (obs_expt, …) |
Generate the programs necessary to estimate the observables in an ObservablesExperiment. |
group_settings (obs_expt, method) |
Group settings that are diagonal in a shared tensor product basis (TPB) to minimize number of QPU runs. |
shots_to_obs_moments (bitarray, qubits, …) |
Calculate the mean and variance of the given observable based on the bitarray of results. |
ratio_variance (a, numpy.ndarray], var_a, …) |
Given random variables ‘A’ and ‘B’, compute the variance on the ratio Y = A/B. |
merge_disjoint_experiments (experiments, …) |
Merges the list of experiments into a single experiment that runs the sum of the individual experiment programs and contains all of the combined experiment settings. |
get_results_by_qubit_groups (results, …) |
Organizes ExperimentResults by the group of qubits on which the observable of the result acts. |