Skip to content

Noise

atom_loss_channel

atom_loss_channel(
    qargs: IList[Qubit, Any] | list, *, prob: float
) -> None

Apply an atom loss channel to a list of qubits.

Parameters:

Name Type Description Default
qargs IList[Qubit, Any] | list

List of qubits to apply the noise to.

required
prob float

The loss probability.

required
Source code in .venv/lib/python3.12/site-packages/bloqade/qasm2/noise.py
14
15
16
17
18
19
20
21
22
@wraps(noise.AtomLossChannel)
def atom_loss_channel(qargs: ilist.IList[Qubit, Any] | list, *, prob: float) -> None:
    """Apply an atom loss channel to a list of qubits.

    Args:
        qargs (ilist.IList[Qubit, Any] | list): List of qubits to apply the noise to.
        prob (float): The loss probability.
    """
    ...

cz_pauli_channel

cz_pauli_channel(
    ctrls: IList[Qubit, Any] | list,
    qargs: IList[Qubit, Any] | list,
    *,
    px_ctrl: float,
    py_ctrl: float,
    pz_ctrl: float,
    px_qarg: float,
    py_qarg: float,
    pz_qarg: float,
    paired: bool
) -> None

Insert noise for a CZ gate with a Pauli channel on qubits.

Parameters:

Name Type Description Default
ctrls IList[Qubit, Any] | list

List of control qubits.

required
qarg2

List of target qubits.

required
px_ctrl float

Probability of X error on control qubits.

required
py_ctrl float

Probability of Y error on control qubits.

required
pz_ctrl float

Probability of Z error on control qubits.

required
px_qarg float

Probability of X error on target qubits.

required
py_qarg float

Probability of Y error on target qubits.

required
pz_qarg float

Probability of Z error on target qubits.

required
paired bool

If True, the noise is applied to both control and target qubits are not lost otherwise skip this error. If False Apply the noise on the whatever qubit is not lost.

required
Source code in .venv/lib/python3.12/site-packages/bloqade/qasm2/noise.py
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
@wraps(noise.CZPauliChannel)
def cz_pauli_channel(
    ctrls: ilist.IList[Qubit, Any] | list,
    qargs: ilist.IList[Qubit, Any] | list,
    *,
    px_ctrl: float,
    py_ctrl: float,
    pz_ctrl: float,
    px_qarg: float,
    py_qarg: float,
    pz_qarg: float,
    paired: bool,
) -> None:
    """Insert noise for a CZ gate with a Pauli channel on qubits.

    Args:
        ctrls: List of control qubits.
        qarg2: List of target qubits.
        px_ctrl: Probability of X error on control qubits.
        py_ctrl: Probability of Y error on control qubits.
        pz_ctrl: Probability of Z error on control qubits.
        px_qarg: Probability of X error on target qubits.
        py_qarg: Probability of Y error on target qubits.
        pz_qarg: Probability of Z error on target qubits.
        paired: If True, the noise is applied to both control and target qubits
            are not lost otherwise skip this error. If False Apply the noise on
            the whatever qubit is not lost.
    """
    ...

pauli_channel

pauli_channel(
    qargs: IList[Qubit, Any] | list,
    *,
    px: float,
    py: float,
    pz: float
) -> None

Apply a Pauli channel to a list of qubits.

Parameters:

Name Type Description Default
qargs IList[Qubit, Any] | list

List of qubits to apply the noise to.

required
px float

Probability of X error.

required
py float

Probability of Y error.

required
pz float

Probability of Z error.

required
Source code in .venv/lib/python3.12/site-packages/bloqade/qasm2/noise.py
25
26
27
28
29
30
31
32
33
34
35
36
@wraps(noise.PauliChannel)
def pauli_channel(
    qargs: ilist.IList[Qubit, Any] | list, *, px: float, py: float, pz: float
) -> None:
    """Apply a Pauli channel to a list of qubits.

    Args:
        qargs (ilist.IList[Qubit, Any] | list): List of qubits to apply the noise to.
        px (float): Probability of X error.
        py (float): Probability of Y error.
        pz (float): Probability of Z error.
    """