Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Nome totalmente qualificado: Std.Intrinsic.ApplyUnitary
operation ApplyUnitary(matrix : Complex[][], qubits : Qubit[]) : Unit
Resumo
Aplica a matriz unitária fornecida aos qubits determinados. A matriz é verificada em runtime para garantir que sua forma seja quadrada e que as dimensões da matriz sejam 2 ^ Length(qubits).
Essa operação é somente simulador e não tem suporte no hardware.
Entrada
matriz
A matriz unitária a ser aplicada.
qubits
Os qubits aos quais a matriz unitária deve ser aplicada.
Exemplo
Isso executa um CNOT de dois qubits usando a representação de matriz unitária:
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
);