Condividi tramite


Operazione ApplyUnitary

Nome completo: Std.Intrinsic.ApplyUnitary

operation ApplyUnitary(matrix : Complex[][], qubits : Qubit[]) : Unit

Sommario

Applica la matrice unitaria specificata ai qubit specificati. La matrice viene controllata in fase di esecuzione per assicurarsi che la forma sia quadrata e che le dimensioni della matrice siano 2 ^ Length(qubits). Questa operazione è solo simulatore e non è supportata nell'hardware.

Inserimento

matrice

Matrice unitaria da applicare.

qubit

Qubit a cui applicare la matrice unitaria.

Esempio

Questa operazione esegue un CNOT a due qubit usando la rappresentazione della matrice unità:

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
);