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.