qiskit-documentation/docs/api/qiskit-ibm-runtime/0.33/utils-noise-learner-result-...

87 lines
4.1 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: PauliLindbladError (v0.33)
description: API reference for qiskit_ibm_runtime.utils.noise_learner_result.PauliLindbladError in qiskit-ibm-runtime v0.33
in_page_toc_min_heading_level: 1
python_api_type: class
python_api_name: qiskit_ibm_runtime.utils.noise_learner_result.PauliLindbladError
---
# PauliLindbladError
<Class id="qiskit_ibm_runtime.utils.noise_learner_result.PauliLindbladError" isDedicatedPage={true} github="https://github.com/Qiskit/qiskit-ibm-runtime/tree/stable/0.33/qiskit_ibm_runtime/utils/noise_learner_result.py#L43-L134" signature="PauliLindbladError(generators, rates)" modifiers="class">
Bases: `object`
A Pauli error channel generated by a Pauli Lindblad dissipators.
This operator represents an N-qubit quantum error channel $E(\rho) = e^{\sum_j r_j D_{P_j}}(\rho)$ generated by Pauli Lindblad dissipators $D_P(\rho) = P \rho P - \rho$, where $P_j$ are N-qubit `Pauli` operators.
The list of Pauli generator terms are stored as a `PauliList` and can be accessed via the [`generators`](#qiskit_ibm_runtime.utils.noise_learner_result.PauliLindbladError.generators "qiskit_ibm_runtime.utils.noise_learner_result.PauliLindbladError.generators") attribute. The array of dissipator rates $r_j$ can be accessed via the [`rates`](#qiskit_ibm_runtime.utils.noise_learner_result.PauliLindbladError.rates "qiskit_ibm_runtime.utils.noise_learner_result.PauliLindbladError.rates") attribute.
The equivalent Pauli error channel can be constructed as a composition of single-Pauli channel terms
$$
E = e^{\sum_j r_j D_{P_j}} = \prod_j e^{r_j D_{P_j}}
= prod_j \left( (1 - p_j) S_I + p_j S_{P_j} \right)
$$
where $p_j = \frac12 - \frac12 e^{-2 r_j}$ \[1].
**Parameters**
* **generators** (*PauliList*) A list of the Pauli Lindblad generators for the error channel.
* **rates** (*Sequence\[float]*) A list of the rates for the Pauli-Lindblad `generators`.
**Raises**
**ValueError** If `generators` and `rates` have different lengths.
**References**
1. E. van den Berg, Z. Minev, A. Kandala, K. Temme, *Probabilistic error cancellation with sparse PauliLindblad models on noisy quantum processors*, Nature Physics volume 19, pages11161121 (2023). [arXiv:2201.09866 \[quant-ph\]](https://arxiv.org/abs/2201.09866)
## Attributes
### generators
<Attribute id="qiskit_ibm_runtime.utils.noise_learner_result.PauliLindbladError.generators">
The Pauli Lindblad generators of this [`PauliLindbladError`](#qiskit_ibm_runtime.utils.noise_learner_result.PauliLindbladError "qiskit_ibm_runtime.utils.noise_learner_result.PauliLindbladError").
</Attribute>
### num\_qubits
<Attribute id="qiskit_ibm_runtime.utils.noise_learner_result.PauliLindbladError.num_qubits">
The number of qubits in this [`PauliLindbladError`](#qiskit_ibm_runtime.utils.noise_learner_result.PauliLindbladError "qiskit_ibm_runtime.utils.noise_learner_result.PauliLindbladError").
</Attribute>
### rates
<Attribute id="qiskit_ibm_runtime.utils.noise_learner_result.PauliLindbladError.rates">
The Lindblad generator rates of this quantum error.
</Attribute>
## Methods
### restrict\_num\_bodies
<Function id="qiskit_ibm_runtime.utils.noise_learner_result.PauliLindbladError.restrict_num_bodies" github="https://github.com/Qiskit/qiskit-ibm-runtime/tree/stable/0.33/qiskit_ibm_runtime/utils/noise_learner_result.py#L110-L127" signature="restrict_num_bodies(num_qubits)">
The [`PauliLindbladError`](#qiskit_ibm_runtime.utils.noise_learner_result.PauliLindbladError "qiskit_ibm_runtime.utils.noise_learner_result.PauliLindbladError") containing only those terms acting on exactly `num_qubits` qubits.
**Parameters**
**num\_qubits** (*int*) The number of qubits that the returned error acts on.
**Returns**
The error containing only those terms acting on exactly `num_qubits` qubits.
**Raises**
**ValueError** If `num_qubits` is smaller than `0`.
**Return type**
[*PauliLindbladError*](#qiskit_ibm_runtime.utils.noise_learner_result.PauliLindbladError "qiskit_ibm_runtime.utils.noise_learner_result.PauliLindbladError")
</Function>
</Class>