Die Rennbahn
kann in den folgenden Code übersetzt werden:
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); }
}
}
Wie kommen die if-Anweisungen zustande? Warum werden nach Messungen Doppellinien verwendet?
circuit-construction
notation
R. Chopin
quelle
quelle
Antworten:
Die doppelten Linien sind eine übliche Konvention für klassische Bits in Quantenschaltplänen. In diesem Fall stellen sie die Bits dar, die sich aus den Messungen der Qubits
msg
und ergebenhere
.Die gesteuerten Operationen, an denen die klassischen Bits beteiligt sind, sind nur Operationen, die ausgeführt werden, wenn diese klassischen Bits zufällig den Wert 1 haben, wofür die
if
Anweisungen im Pseudocode bestimmt sind.quelle