qat.model.error_mitigation module

class ErrorMitigation(**data)

Bases: NoExtraFieldsModel

A collection of error mitigation strategies. Currently, this holds a single mitigation strategy, but this can be expanded in the future as we add more error correction schemes.

Parameters:

readout_mitigation – Linear readout mitigation.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

property is_enabled
model_config: ClassVar[ConfigDict] = {'extra': 'forbid', 'ser_json_inf_nan': 'constants', 'use_enum_values': False, 'validate_assignment': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

property qubits
readout_mitigation: Optional[ReadoutMitigation]
class ReadoutMitigation(**data)

Bases: NoExtraFieldsModel

Parameters:
  • linear

    Maps each individual qubit to its <0/1> state given the <0/1> probabilistic error that happens on the device. Note that linear assumes no cross-talk effects and considers each qubit independent. linear = {

    <qubit_number>: NDArray(2, 2)

    } The matrix element (i, j) of the NDArray maps the probability p(i|j).

  • m3_available – Flag to enable a runtime mitigation strategy that builds up the calibration it needs at runtime. For more info https://github.com/Qiskit-Partners/mthree.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

linear: FrozenDict[Annotated[int, AfterValidator], Annotated[NDArray, AfterValidator]]
m3_available: bool
model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'ser_json_inf_nan': 'constants', 'use_enum_values': False, 'validate_assignment': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

property qubits
classmethod validate_linear(linear)