Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Plně kvalifikovaný název: Std.Intrinsic.ApplyUnitary
operation ApplyUnitary(matrix : Complex[][], qubits : Qubit[]) : Unit
Shrnutí
Použije danou jednotkovou matici na dané qubity. Matice je kontrolována za běhu, aby se zajistilo, že je obrazec čtvercový a že rozměry matice jsou 2 ^ Length(qubits).
Tato operace je pouze simulátor a není podporována na hardwaru.
Vstup
matice
Jednotková matice, která se má použít.
qubity
Qubity, na které se má použít jednotková matice.
Příklad
Tím se provede dvou qubitů CNOT pomocí reprezentace unitární matice:
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
);