-
Notifications
You must be signed in to change notification settings - Fork 1
Description
Amplitude indices/mixing are correct, but coefficients are erroneous; they were not generalised correctly from the 1-qubit depolarising channel in the distributed manuscript (which must be revised). They must be derived afresh (accounting all 15 combinations of site Paulis, grr).
This error was not caught by the two-qubit depolarising unit tests which themselves contained an unrelated bug! This line incorrectly overwrites the first Kraus operator (maintaining 16 in total), whereas it should instead be appended as the 17th operator, in order to undo the double-counting of the both-identity Kraus operator. This itself was not caught, because that line features incorrect coefficient sqrt(1-16/15.) in lieu of the correct sqrt(1-16*prob/15.). The former did not default to a complex number, but instead a NaN, corrupting the entire reference state. This was not detected as a disagreement between candidate and reference state, because function agreesWith ends up comparing NaN > tolerance (double) which yields false, suggesting no disagreement. Ouch! The issue was detected in the new QuEST v4 unit tests which used a different test formulation.
Must revise distributed manuscript, this repository, and new QuEST v4 implementation.