5252 - [ E] ( #E )
5353 - [ ELSE_CORRELATED_ERROR] ( #ELSE_CORRELATED_ERROR )
5454 - [ HERALDED_ERASE] ( #HERALDED_ERASE )
55+ - [ HERALDED_PAULI_CHANNEL_1] ( #HERALDED_PAULI_CHANNEL_1 )
5556 - [ PAULI_CHANNEL_1] ( #PAULI_CHANNEL_1 )
5657 - [ PAULI_CHANNEL_2] ( #PAULI_CHANNEL_2 )
5758 - [ X_ERROR] ( #X_ERROR )
@@ -1911,6 +1912,21 @@ record. When it doesn't fire, nothing happens to the target qubit and a
19111912is erased to the maximally mixed state by applying X_ERROR(0.5) and
19121913Z_ERROR(0.5).
19131914
1915+ CAUTION: when converting a circuit with this error into a detector
1916+ error model, this channel is split into multiple potential effects.
1917+ In the context of a DEM, these effects are considered independent.
1918+ This is an approximation, because independent effects can be combined.
1919+ The effect of this approximation, assuming a detector is declared
1920+ on the herald, is that it appears this detector can be cancelled out
1921+ by two of the (originally disjoint) heralded effects firing together.
1922+ Sampling from the DEM instead of the circuit can thus produce unheralded
1923+ errors, even if the circuit noise model only contains heralded errors.
1924+ These issues occur with probability p^2, where p is the probability of a
1925+ heralded error, since two effects that came from the same heralded error
1926+ must occur together to cancel out the herald detector. This also means
1927+ a decoder configured using the DEM will think there's a chance of unheralded
1928+ errors even if the circuit the DEM came from only uses heralded errors.
1929+
19141930Parens Arguments:
19151931
19161932 A single float (p) specifying the chance of the noise firing.
@@ -1954,6 +1970,75 @@ Examples:
19541970 DETECTOR rec[-4]
19551971 DETECTOR rec[-5]
19561972
1973+ <a name =" HERALDED_PAULI_CHANNEL_1 " ></a >
1974+ ### The 'HERALDED_PAULI_CHANNEL_1' Instruction
1975+
1976+ A heralded error channel that applies biased noise.
1977+
1978+ This error records a bit into the measurement record, indicating whether
1979+ or not the herald fired. How likely it is that the herald fires, and the
1980+ corresponding chance of each possible error effect (I, X, Y, or Z) are
1981+ configured by the parens arguments of the instruction.
1982+
1983+ CAUTION: when converting a circuit with this error into a detector
1984+ error model, this channel is split into multiple potential effects.
1985+ In the context of a DEM, these effects are considered independent.
1986+ This is an approximation, because independent effects can be combined.
1987+ The effect of this approximation, assuming a detector is declared
1988+ on the herald, is that it appears this detector can be cancelled out
1989+ by two of the (originally disjoint) heralded effects firing together.
1990+ Sampling from the DEM instead of the circuit can thus produce unheralded
1991+ errors, even if the circuit noise model only contains heralded errors.
1992+ These issues occur with probability p^2, where p is the probability of a
1993+ heralded error, since two effects that came from the same heralded error
1994+ must occur together to cancel out the herald detector. This also means
1995+ a decoder configured using the DEM will think there's a chance of unheralded
1996+ errors even if the circuit the DEM came from only uses heralded errors.
1997+
1998+ Parens Arguments:
1999+
2000+ This instruction takes four arguments (pi, px, py, pz). The
2001+ arguments are disjoint probabilities, specifying the chances
2002+ of heralding with various effects.
2003+
2004+ pi is the chance of heralding with no effect (a false positive).
2005+ px is the chance of heralding with an X error.
2006+ py is the chance of heralding with a Y error.
2007+ pz is the chance of heralding with a Z error.
2008+
2009+ Targets:
2010+
2011+ Qubits to apply heralded biased noise to.
2012+
2013+ Pauli Mixture:
2014+
2015+ 1-pi-px-py-pz: record 0, apply I
2016+ pi: record 1, apply I
2017+ px: record 1, apply X
2018+ py: record 1, apply Y
2019+ pz: record 1, apply Z
2020+
2021+ Examples:
2022+
2023+ # With 10% probability perform a phase flip of qubit 0.
2024+ HERALDED_PAULI_CHANNEL_1(0, 0, 0, 0.1) 0
2025+ DETECTOR rec[-1] # Include the herald in detectors available to the decoder
2026+
2027+ # With 20% probability perform a heralded dephasing of qubit 0.
2028+ HERALDED_PAULI_CHANNEL_1(0.1, 0, 0, 0.1) 0
2029+ DETECTOR rec[-1]
2030+
2031+ # Subject a Bell Pair to heralded noise.
2032+ MXX 0 1
2033+ MZZ 0 1
2034+ HERALDED_PAULI_CHANNEL_1(0.01, 0.02, 0.03, 0.04) 0 1
2035+ MXX 0 1
2036+ MZZ 0 1
2037+ DETECTOR rec[-1] rec[-5] # Did ZZ stabilizer change?
2038+ DETECTOR rec[-2] rec[-6] # Did XX stabilizer change?
2039+ DETECTOR rec[-3] # Did the herald on qubit 1 fire?
2040+ DETECTOR rec[-4] # Did the herald on qubit 0 fire?
2041+
19572042<a name =" PAULI_CHANNEL_1 " ></a >
19582043### The 'PAULI_CHANNEL_1' Instruction
19592044
@@ -1962,9 +2047,9 @@ A single qubit Pauli error channel with explicitly specified probabilities for e
19622047Parens Arguments:
19632048
19642049 Three floats specifying disjoint Pauli case probabilities.
1965- px: Probability of applying an X operation .
1966- py: Probability of applying a Y operation .
1967- pz: Probability of applying a Z operation .
2050+ px: Disjoint probability of applying an X error .
2051+ py: Disjoint probability of applying a Y error .
2052+ pz: Disjoint probability of applying a Z error .
19682053
19692054Targets:
19702055
0 commit comments