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.