Run a quil program in such a way that the readout error is made collectively symmetric
This means the probability of a bitstring
bbeing mistaken for a bitstring
cis the same as the probability of
not(b)being mistaken for
A more general symmetrization would guarantee that the probability of
bbeing mistaken for
cdepends only on which bit of
care different from
b. This would require choosing random subsets of bits to flip.
In a noisy device, the probability of accurately reading the 0 state might be higher than that of the 1 state. This makes correcting for readout more difficult. This function runs the program normally
(trials//2)times. The other half of the time, it will insert an
Xgate prior to any
MEASUREinstruction and then flip the measured classical bit back.
run()for this function’s parameter descriptions.