rigetti / pyquil

A Python library for quantum programming using Quil.
http://docs.rigetti.com
Apache License 2.0
1.4k stars 342 forks source link

Readout symmetrization via parametric binaries #712

Open mpharrigan opened 5 years ago

mpharrigan commented 5 years ago

Symmetrized readout inserts X gates prior to measurement and flips the measurement result for half of the shots. This requires binary-compiling two executables. We could instead add parametric RY gates and specify theta=0 or theta=pi to dis/en-able the bit flips

cc @marcusps

ecpeterson commented 5 years ago

Just as a heads up: a single binary will always run the same number of X-90 pulses, whereas one in a pair of flipped binaries will have one fewer X-180 pulse.

ntezak commented 5 years ago

I think the former (equal number of X-90) is preferable

mpharrigan commented 5 years ago

Thanks for pointing that out @ecp-rigetti . That was my concern as well. @marcusps told me offline that he's ok with that. We'd obviously need to communicate this caveat to users

marcusps commented 5 years ago

Is there a way to batch jobs? Batching would be helpful for this.