Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Vollqualifizierter Name: Std.Intrinsic.ApplyUnitary
operation ApplyUnitary(matrix : Complex[][], qubits : Qubit[]) : Unit
Zusammenfassung
Wendet die angegebene einheitliche Matrix auf die angegebenen Qubits an. Die Matrix wird zur Laufzeit überprüft, um sicherzustellen, dass es sich um ein Quadrat handelt und dass die Matrixabmessungen 2 ^ Length(qubits)werden.
Dieser Vorgang ist nur Simulator und wird auf Hardware nicht unterstützt.
Eingabe
Matrix
Die anzuwendende Einheitsmatrix.
Qubits
Die Qubits, auf die die Einheitsmatrix angewendet werden soll.
Beispiel
Dadurch wird eine zwei Qubit-CNOT mit der Einheitsmatrixdarstellung ausgeführt:
import Std.Math.Complex;
use qs = Qubit[2];
let one = new Complex { Real = 1.0, Imag = 0.0 };
let zero = new Complex { Real = 0.0, Imag = 0.0 };
ApplyUnitary(
[
[one, zero, zero, zero],
[zero, one, zero, zero],
[zero, zero, zero, one],
[zero, zero, one, zero]
],
qs
);