I'm facing a strange issue with the logical error rate after implementing Lattice Surgery in Stim. For $d=3$ (I have some custom error annotations in the circuit),
Logical error rate of X-basis Lattice Surgery, XX-Observable: 0.06361
Logical error rate of X-basis Lattice Surgery, Z1-Observable: 0.00737
Logical error rate of X-basis Lattice Surgery, Z2-Observable: 0.00705
Logical error rate of X-basis Lattice Surgery, ZZ-Observable: 0.01417
There is a significant difference between these cases, and I can't understand why that would be the case. I followed all the directions in How to implement lattice surgery in stim? for the right detector annotations and for both cases, stim.Circuit.shortest_graphlike_error()
returns the same value (3). I've manually gone through the circuit and made sure all detectors have been included too.
What's a good way of debugging this?