Operação SWAP
Aviso
Esta documentação refere-se ao QDK Clássico, que foi substituído pelo QDK Moderno.
https://aka.ms/qdk.api Veja a documentação da API para o QDK Moderno.
Espaço de nomes: Microsoft.Quantum.Intrínseco
Pacote: Microsoft.Quantum.Type2.Core
Aplica a porta SWAP a um par de qubits.
operation SWAP (qubit1 : Qubit, qubit2 : Qubit) : Unit is Adj + Ctl
Description
\begin{align} \operatorname{SWAP} \mathrel{:=} \begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 1 \end{bmatrix}, \end{align}
onde as linhas e colunas são ordenadas como no guia de conceitos quânticos.
Entrada
qubit1: Qubit
Primeiro qubit a ser trocado.
qubit2: Qubit
Segundo qubit a ser trocado.
Saída: Unidade
Observações
Equivalente a:
CNOT(qubit1, qubit2);
CNOT(qubit2, qubit1);
CNOT(qubit1, qubit2);