Operação AssertMeasurementProbability

Aviso

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

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

Espaço de nomes: Microsoft.Quantum.Diagnostics

Pacote: Microsoft.Quantum.QSharp.Foundation

Afirma que medir os qubits determinados na base de Pauli dada terá o resultado dado com a probabilidade dada, dentro de alguma tolerância.

operation AssertMeasurementProbability (bases : Pauli[], qubits : Qubit[], result : Result, prob : Double, msg : String, tolerance : Double) : Unit is Adj + Ctl

Entrada

bases: Pauli[]

Um efeito de medição para afirmar a probabilidade de, expresso como um operador Pauli multi-qubit.

qubits: Qubit[]

Um registo no qual pretende fazer a afirmação.

resultado: Resultado

Um resultado esperado de Measure(bases, qubits).

prob: Duplo

A probabilidade com que o resultado especificado é esperado.

msg: Cadeia

Uma mensagem a ser comunicada se a afirmação falhar.

tolerância: Duplo

Tolerância permitida na probabilidade de medição.

Saída: Unidade

Exemplo

using (register = Qubit()) {
    H(register);
    AssertMeasurementProbability([PauliZ], [register], One, 0.5,
        "Measuring in conjugate basis did not give 50/50 results.", 1e-5);
}

Observações

Tenha em atenção que as versões Adjacentes e Controladas desta operação não verificarão a condição.

Consulte também