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);