ApplyTransposition-Vorgang

Warnung

Diese Dokumentation bezieht sich auf das klassische QDK, das durch das moderne QDK ersetzt wurde.

Weitere Informationen finden https://aka.ms/qdk.api Sie in der API-Dokumentation für das moderne QDK.

Namespace: Microsoft.Quantum.Synthesis

Paket: Microsoft.Quantum.Standard

operation ApplyTransposition (a : Int, b : Int, qubits : Microsoft.Quantum.Arithmetic.LittleEndian) : Unit is Adj + Ctl

BESCHREIBUNG

Bei diesem Vorgang wird die Amplitude am Index a durch die Amplitude am Index b im angegebenen Zustandsvektor register mit der Länge $n$ getauscht. Wenn a gleich ist, wird der Zustandsvektor bnicht geändert.

Eingabe

a : Int

Erster Index (muss ein Wert von 0 bis $2^n - 1$ sein)

b : Int

Zweiter Index (muss ein Wert von 0 bis $2^n - 1$ sein)

Qubits : LittleEndian

Eine Liste der $n Qubits, auf die die Umsetzung angewendet wird.

Ausgabe: Einheit

Beispiel

Bereiten Sie eine einheitliche Superposition der Zahlenzustände $|1\rangle$, $|2\rangle$ und $|3\rangle$ auf 2 Qubits vor.

using (qubits = Qubit[2]) {
  let register = LittleEndian(qubits);
  PrepareUniformSuperposition(3, register);
  ApplyTransposition(0, 3, register);
}