O circuito
pode ser traduzido para o seguinte código:
operation Teleport(msg, there) {
let register = AllocateRegister();
let here = register;
H(here);
CNOT(here, there);
CNOT(msg, here);
H(msg);
// Measure out the entanglement.
if (M(msg) == One) { Z(there); }
if (M(here) == One) { X(there); }
}
}
Como as declarações if acontecem? Por que as linhas duplas são usadas após as medições?
Posso perguntar qual é o idioma nesse exemplo? É Q #?
—
Norrius 31/03
Não, mas foi baseado em Q #. Como não queria exigir familiaridade com o Q # dos leitores, criei esse pseudocódigo que usa apenas recursos de linguagens amplamente usadas.
—
R. Chopin