El circuito
se puede traducir al siguiente 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); }
}
}
¿Cómo surgen las declaraciones if? ¿Por qué se usan líneas dobles después de las mediciones?
circuit-construction
notation
R. Chopin
fuente
fuente
Respuestas:
Las líneas dobles son una convención común para bits clásicos en diagramas de circuitos cuánticos. En este caso, representan los bits que surgen de las mediciones de los qubits
msg
yhere
.Las operaciones controladas que involucran los bits clásicos son solo operaciones que se realizan si esos bits clásicos tienen el valor 1, que es para lo
if
que sirven las declaraciones en el pseudocódigo.fuente