ApplyPermutationUsingDecompositionWithVariableOrder-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

Permutiert die Amplituden in einem Quantenzustand bei einer Permutation mithilfe einer auf der Zerlegung basierenden Synthese.

operation ApplyPermutationUsingDecompositionWithVariableOrder (perm : Int[], variableOrder : Int[], qubits : Microsoft.Quantum.Arithmetic.LittleEndian) : Unit is Adj + Ctl

BESCHREIBUNG

Dieser Vorgang ist eine allgemeinere Version des ApplyPermutationUsingDecomposition-Vorgangs , in dem die Variablenreihenfolge angegeben werden kann. Eine andere Variablenreihenfolge ändert die Analysesequenz und die Wahrheitstabellen, die für die gesteuerten X-Vorgangsgates verwendet werden. Daher ändert das Ändern der Variablenreihenfolge die Anzahl der Gesamtgates, die verwendet werden, um die Permutation zu realisieren.

Eingabe

perm : Int[]

Eine Permutation von $2^n$-Elementen ab 0.

variableOrder : Int[]

Eine Permutation von $n$-Elementen ab 0.

Qubits : LittleEndian

Eine Liste von $n$-Qubits, auf die die Permutation angewendet wird.

Ausgabe: Einheit

Beispiel

So synthetisieren Sie einen SWAP Vorgang:

using (qubits = Qubit[2]) {
  ApplyPermutationUsingDecompositionWithVariableOrder([0, 2, 1, 3], [1, 0], LittleEndian(qubits));
}

Weitere Informationen