toqito.channels.dephasing¶
Generates the dephasing channel.
Module Contents¶
- toqito.channels.dephasing.dephasing(dim, param_p=0)[source]¶
Produce the partially dephasing channel.
(Section: The Completely Dephasing Channel from [@Watrous_2018_TQI]).
The Choi matrix of the completely dephasing channel that acts on dim-by-dim matrices.
Let (Sigma) be an alphabet and let (mathcal{X} = mathbb{C}^{Sigma}). The map (Delta in text{T}(mathcal{X})) defined as
- [
Delta(X) = sum_{a in Sigma} X(a, a) E_{a,a}
]
for every (X in text{L}(mathcal{X})) is defined as the completely dephasing channel.
Examples
The completely dephasing channel maps kills everything off the diagonal. Consider the following matrix
- [
- rho = begin{pmatrix}
1 & 2 & 3 & 4 \ 5 & 6 & 7 & 8 \ 9 & 10 & 11 & 12 \ 13 & 14 & 15 & 16
end{pmatrix}.
]
Applying the dephasing channel to (rho) we have that
- [
- Phi(rho) = begin{pmatrix}
1 & 0 & 0 & 0 \ 0 & 6 & 0 & 0 \ 0 & 0 & 11 & 0 \ 0 & 0 & 0 & 16
end{pmatrix}.
]
This can be observed in |toqito⟩ as follows.
```python exec=”1” source=”above” import numpy as np from toqito.channels import dephasing from toqito.channel_ops import apply_channel
test_input_mat = np.arange(1, 17).reshape(4, 4)
print(apply_channel(test_input_mat, dephasing(4))) ```
We may also consider setting the parameter p = 0.5.
```python exec=”1” source=”above” import numpy as np from toqito.channels import dephasing from toqito.channel_ops import apply_channel
test_input_mat = np.arange(1, 17).reshape(4, 4)
print(apply_channel(test_input_mat, dephasing(4, 0.5))) ```
- Parameters:
dim (int) – The dimensionality on which the channel acts.
param_p (float) – Default is 0.
- Returns:
The Choi matrix of the dephasing channel.
- Return type:
numpy.ndarray