Medindo qubits específicos com o Open 3.0 QASM - Amazon Braket

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Medindo qubits específicos com o Open 3.0 QASM

O simulador vetorial estadual local e o simulador de matriz de densidade local suportam o envio OpenQASM programas em que um subconjunto dos qubits do circuito pode ser medido. Isso geralmente é chamado de medição parcial. Por exemplo, no código a seguir, você pode criar um circuito de dois qubits e medir somente o primeiro qubit.

partial_measure_qasm = """ OPENQASM 3.0; bit[1] b; qubit[2] q; h q[0]; cnot q[0], q[1]; b[0] = measure q[0]; """

Existem dois qubits, q[0] q[1] mas estamos medindo apenas o qubit 0 aqui:. b[0] = measure q[0] Agora, execute o seguinte no simulador vetorial estadual local.

from braket.devices import LocalSimulator local_sim = LocalSimulator() partial_measure_local_sim_task = local_sim.run(OpenQASMProgram(source=partial_measure_qasm), shots = 10) partial_measure_local_sim_result = partial_measure_local_sim_task.result() print(partial_measure_local_sim_result.measurement_counts) print("Measured qubits: ", partial_measure_local_sim_result.measured_qubits)

Você pode verificar se um dispositivo suporta medição parcial inspecionando o requiresAllQubitsMeasurement campo em suas propriedades de ação; se forFalse, então a medição parcial é suportada.

AwsDevice(Devices.Rigetti.AspenM3).properties.action['braket.ir.openqasm.program'].requiresAllQubitsMeasurement

Aqui requiresAllQubitsMeasurement estáFalse, o que indica que nem todos os qubits devem ser medidos.