Note

This is the documentation for the current state of the development branch of Qiskit Experiments. The documentation or APIs here can change prior to being released.

Randomized Benchmarking Experiments (qiskit_experiments.library.randomized_benchmarking)

Experiments

StandardRB(physical_qubits, lengths[, ...])

An experiment to characterize the error rate of a gate set on a device.

InterleavedRB(interleaved_element, ...[, ...])

An experiment to characterize the error rate of a specific gate on a device.

LayerFidelity(physical_qubits, ...[, ...])

A holistic benchmarking experiment to characterize the full quality of the devices at scale.

LayerFidelityUnitary(physical_qubits, ...[, ...])

A holistic benchmarking experiment to characterize the full quality of the devices at scale.

Analysis

RBAnalysis()

A class to analyze randomized benchmarking experiments.

InterleavedRBAnalysis()

A class to analyze interleaved randomized benchmarking experiment.

LayerFidelityAnalysis(layers[, analyses])

A class to analyze layer fidelity experiments.

Synthesis

RBDefaultCliffordSynthesis()

Default Clifford synthesis plugin for randomized benchmarking.

Utilities

RBUtils()

A collection of utility functions for computing additional data from randomized benchmarking experiments

CliffordUtils()

Utilities for generating one- and two-qubit Clifford circuits and elements.

Synthesis Methods

There are a few built-in options for the Clifford synthesis method:

  • rb_default (default) for n<=2 Cliffords this methods will transpile using optimization_level=1. For 3 or more qubits the behavior is similar but a custom transpilation sequence is used to avoid the transpiler changing the layout of the circuit.

  • clifford_synthesis_method='basis_only' will use optimization_level=0.

  • clifford_synthesis_method='1Q_fixed will use a rz-sx-rz-sx-rz decomposition for the 1Q Cliffords and the default for the 2Q cliffords. This is most relevant for LayerFidelity experiments because it will keep a fixed structure.