Operação DumpOperation

Aviso

Esta documentação refere-se ao QDK clássico, que foi substituído pelo QDK moderno.

https://aka.ms/qdk.api Confira a documentação da API para o QDK Moderno.

Namespace: Microsoft.Quantum.Diagnostics

Pacote: Microsoft.Quantum.Standard

Dada uma operação, exibe diagnóstico sobre a operação disponibilizada pelo destino de execução atual.

operation DumpOperation (nQubits : Int, op : (Qubit[] => Unit is Adj)) : Unit is Adj + Ctl

Entrada

nQubits: Int

O número de qubits nos quais a operação determinada atua.

op: Qubit[] =>Unit is Adj

A operação que deve ser diagnosticada.

Saída: Unidade

Exemplo

Quando executado no destino do simulador quântico, o snippet de código a seguir produzirá a matriz $$ \begin{aligned} \left(\begin{matrix} 1 & 0 & 0 & 0 \\ 0 & 0 & 0 0 & 1 \\ 0 & 0 & 1 & 0 \\ 0 & 1 & 0 & 0 \end{matrix}\right) \end{aligned}. $$

operation DumpCnot() : Unit {
    DumpOperation(2, ApplyToFirstTwoQubitsCA(CNOT, _));
}

Comentários

Chamar essa operação não tem nenhum efeito observável de dentro do Q#. Os diagnóstico exatos exibidos, se houver, dependem do destino de execução atual e do ambiente do editor. Por exemplo, quando usado no simulador quântico de estado completo, uma matriz unitária usada para representar op é exibida.

Observe que, quando executadas em simuladores que admitem uma ambiguidade de fase global (por exemplo, o simulador de estado completo), as representações retornadas podem variar até uma fase global.

Da mesma forma, a ordenação de representações de matriz de linhas e colunas pode variar de acordo com as convenções usadas por cada simulador que dá suporte a essa operação.