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

Wendet den X-Vorgangsvorgang auf an target, wenn die boolesche Funktion func für die klassische Zuweisung in controlRegisterals true ausgewertet wird.

operation ApplyXControlledOnTruthTable (func : BigInt, controlRegister : Qubit[], target : Qubit) : Unit is Adj + Ctl

BESCHREIBUNG

Der Vorgang implementiert den unitären Vorgang \begin{align} U\ket{x}\ket{y} = \ket{x}\ket{y \oplus f(x)} \end{align}, wobei $x$ und $y$ jeweils und targetdarstellencontrolRegister.

Die boolesche Funktion $f$ wird als Wahrheitstabelle in Bezug auf eine große ganze Zahl dargestellt. Beispielsweise wird die Mehrheitsfunktion auf drei Eingaben durch die Bitzeichenfolge 11101000dargestellt, wobei das wichtigste Bit 1 der Eingabezuweisung (1, 1, 1)entspricht und das am wenigsten signifikante Bit 0 der Eingabezuweisung (0, 0, 0)entspricht. Sie kann durch die große ganze Zahl 0xE8L in hexadezimaler Notation oder als 232L Dezimalschreibweise dargestellt werden. Das L Suffix gibt an, dass die Konstante vom Typ BigIntist. Weitere Details zu dieser Darstellung finden Sie auch in der Kata der Wahrheitstabellen.

Bei der Implementierung werden CNOT-Vorgänge und R1-Vorgangsgates verwendet.

Eingabe

func : BigInt

Boolesche Wahrheitstabelle als große ganze Zahl dargestellt

controlRegister : Qubit[]

Register der Steuerqubits

Target : Qubit

Zielqubit

Ausgabe : Einheit

Referenzen

Weitere Informationen