Supermap¶
- Supermap.ApplyQuSwitch(qs_k, rho_t, rho_c)¶
-
Two n-qubit quantum channels \(\mathcal{N}_1\) and \(\mathcal{N}_2\) have Kraus representations \(\{E_i\}_i\) and \(\{F_j\}_j\)
\[W_{ij} = \ket{0}\bra{0}_c\otimes E_i^{(2)}F_j^{(1)} + \ket{1}\bra{1}_c\otimes F_j^{(1)}E_i^{(2)}\]- Parameters:¶
qs_k (
numeric
) – Kraus operators of the quantum switch channelrho_t (
numeric
) – Choi matrix of the target quantum staterho_c (
numeric
) – Choi matrix of the control quantum state
- Returns:¶
Resulting quantum state after applying the quantum switch.
- Return type:¶
numeric
- Examples:¶
rho_out = ApplyQuSwitch(qs_k, rho, rho_c); % Apply Quantum Switch to specific target state and control state.
- Supermap.LinkProd(JA, JB, DIM)¶
Link Product of Two Quantum channels, where Aout of JA is linked with the Bin of JB.
\[J_{\mathcal{B} \circ \mathcal{A}} = J_{\mathcal{A}} * J_{\mathcal{B}} = Tr_1[(J_{\mathcal{A}} \otimes I_2) \cdot (I_0 \otimes J_{\mathcal{B}}^{T_1})],\]- Parameters:¶
JA (
numeric
) – The choi matrix of the quantum channel A.JB (
numeric
) – The choi matrix of the quantum channel B.DIM (
int
) – The dimensions of channel A and channel B.
- Returns:¶
Resulting Choi matrix of the link product of two Choi matrices JA and JB.
- Return type:¶
numeric
- Raises:¶
error
– If the dimension of the input state does not match with the pure stabilizer state matrix, an error is raised.- Examples:¶
% Link product of two Choi matrices JA and JB: Jout = LinkProd(JA, JB, [Ain, Aout, Bin, Bout]);
- Supermap.QSwitch(JN, d)¶
Quantum Switch Choi Matrices for Control System Measurement when we insert two same quantum channels N, and set the control qubit with \(|+\rangle\).
- Required packages:¶
- Parameters:¶
JN (
numeric
) – Choi matrix of the channel inserted into Quantum Switch.d (
int
) – Input dimension of the channel.
- Returns:¶
JoutPlus - Choi matrix for the quantum switch when the control system is measured on \(|+\rangle\);
JoutMinus - Choi matrix for the quantum switch when the control system is measured on \(|-\rangle\)
- Return type:¶
numeric
- Raises:¶
error
– None.- Examples:¶
[JoutPlus, JoutMinus] = QSwitch(JN, d); % Compute Choi matrices for a quantum switch with control system in :math:`|+\rangle` % and :math:`|-\rangle` states.
- Supermap.QSwitch_Kraus(Kraus_o1, Kraus_o2)¶
Two \(n\)-qubit quantum channels \(\mathcal{N}_1\) and \(\mathcal{N}_2\) have Kraus representations \(\{E_i\}_i\) and \(\{F_j\}_j\)
\[W_{ij} = \ket{0}\bra{0}_c\otimes E_i^{(2)}F_j^{(1)} + \ket{1}\bra{1}_c\otimes F_j^{(1)}E_i^{(2)}\]- Parameters:¶
Kraus_o1 (
numeric
) – Cell array of Kraus operators for the first channel.Kraus_o2 (
numeric
) – Cell array of Kraus operators for the second channel.
- Returns:¶
Cell array of quantum switch Kraus operators.
- Return type:¶
numeric
- Raises:¶
error
– None.- Examples:¶
QS_K = QSwitch_Kraus(Kraus_o1, Kraus_o2); % Generate quantum switch Kraus operators from two sets of Kraus % operators.