FAILURE MAP
← Case archive

FA-91241 / Quantum circuit simulation / Open access

Amplitude damping relaxes toward |1> · case 01

Damping |1> with g = 0.5 gives z = -1 instead of 0; the channel pushes population the wrong way.

Verified by executionVariant 1 · 7 checks per implementationDownload source bundle ↓JSON ↗

ROOT CAUSE

The z update is (1-g) z - g, relaxing toward the south pole.

VERIFIED REPAIR

Use z -> g + (1-g) z so |0> (z = +1) is the fixed point.

Unsuccessful approach: The attempted repair uses g + sqrt(1-g) z, borrowing the coherence scale for the population.

Case contract

Input [[x, y, z], channels] (decimal strings). Apply in order: depol p (r -> (1-p) r), dephase p (x, y scaled by 1-2p), bitflip p (y, z scaled by 1-2p), ampdamp g (x, y scaled by sqrt(1-g), z -> g + (1-g) z toward |0> at z=+1), h ((x,y,z) -> (z,-y,x)), s ((x,y) -> (-y,x)), x ((y,z) -> (-y,-z)). Return the final vector rounded to 6 decimals.

Why this case matters

Single-qubit noise channels on the Bloch ball are the standard sanity model for T1/T2 behaviour; axis or scale slips mislead calibration.

1 / The failure

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json
import math
N = 1
observations = []
def solve(x):
    bx, by, bz = [float(v) for v in x[0]]
    for ch in x[1]:
        kind = ch[0]
        if kind == 'depol':
            p = float(ch[1])
            bx, by, bz = (1 - p) * bx, (1 - p) * by, (1 - p) * bz
        elif kind == 'dephase':
            p = float(ch[1])
            bx, by = (1 - 2 * p) * bx, (1 - 2 * p) * by
        elif kind == 'bitflip':
            p = float(ch[1])
            by, bz = (1 - 2 * p) * by, (1 - 2 * p) * bz
        elif kind == 'ampdamp':
            g = float(ch[1])
            s = math.sqrt(1 - g)
            bx, by, bz = s * bx, s * by, (1 - g) * bz - g
        elif kind == 'h':
            bx, by, bz = bz, -by, bx
        elif kind == 's':
            bx, by = -by, bx
        elif kind == 'x':
            by, bz = -by, -bz
    return [round(v, 6) + 0.0 for v in (bx, by, bz)]
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['regression: amplitude damping from |1>', [['0', '0', '-1'], [['ampdamp', '0.5']]], [0.0, 0.0, 0.0]], ['regression: random channel chain 1', [['0.2317', '0.4662', '-0.3393'], [['h'], ['ampdamp', '0.1'], ['h'], ['h']]], [-0.321888, -0.442276, 0.30853]], ['regression: random channel chain 7', [['0.2531', '-0.7095', '0.5685'], [['ampdamp', '0.2'], ['bitflip', '0.1'], ['dephase', '0.2'], ['x']]], [0.135828, 0.304606, -0.52384]], ['control: dephasing plus state', [['1', '0', '0'], [['dephase', '0.25']]], [0.5, 0.0, 0.0]], ['control: bit flip on |0>', [['0', '0', '1'], [['bitflip', '0.25']]], [0.0, 0.0, 0.5]], ['control: hadamard on y', [['0', '1', '0'], [['h']]], [0.0, -1.0, 0.0]], ['control: s on x', [['1', '0', '0'], [['s']]], [0.0, 1.0, 0.0]]], [['regression: random channel chain 9', [['0.2932', '0.3716', '-0.2949'], [['x'], ['bitflip', '0.2'], ['ampdamp', '0.3']]], [0.245309, -0.186542, 0.423858]], ['regression: random channel chain 10', [['0.0325', '0.65', '0.2184'], [['depol', '0.2'], ['ampdamp', '0.05'], ['bitflip', '0.05'], ['h']]], [0.194386, -0.45615, 0.025342]], ['regression: random channel chain 7', [['0.2531', '-0.7095', '0.5685'], [['ampdamp', '0.2'], ['bitflip', '0.1'], ['dephase', '0.2'], ['x']]], [0.135828, 0.304606, -0.52384]], ['control: x on |+i>', [['0', '1', '0'], [['x']]], [0.0, -1.0, 0.0]], ['control: depolarize', [['0.6', '0', '0.8'], [['depol', '0.1']]], [0.54, 0.0, 0.72]], ['control: random channel chain 0', [['0.0691', '-0.4004', '0.0791'], [['dephase', '0.2'], ['bitflip', '0.3'], ['s']]], [0.096096, 0.04146, 0.03164]], ['control: random channel chain 2', [['0.0766', '-0.6718', '0.0357'], [['s']]], [0.6718, 0.0766, 0.0357]]], [['regression: random channel chain 16', [['0.0125', '-0.322', '0.0664'], [['h'], ['ampdamp', '0.05']]], [0.064719, 0.313847, 0.061875]], ['regression: random channel chain 26', [['-0.4382', '0.0441', '-0.3433'], [['depol', '0.1'], ['bitflip', '0.5'], ['ampdamp', '0.2']]], [-0.352744, 0.0, 0.2]], ['regression: random channel chain 10', [['0.0325', '0.65', '0.2184'], [['depol', '0.2'], ['ampdamp', '0.05'], ['bitflip', '0.05'], ['h']]], [0.194386, -0.45615, 0.025342]], ['control: random channel chain 3', [['0.2389', '-0.1722', '0.2639'], [['dephase', '0.1'], ['bitflip', '0.2'], ['x']]], [0.19112, 0.082656, -0.15834]], ['control: random channel chain 4', [['-0.0477', '-0.2431', '-0.2391'], [['x'], ['depol', '0.5'], ['x'], ['bitflip', '0.1']]], [-0.02385, -0.09724, -0.09564]], ['control: random channel chain 5', [['-0.4729', '-0.0797', '-0.3692'], [['h'], ['s'], ['dephase', '0.1']]], [-0.06376, -0.29536, -0.4729]], ['control: random channel chain 6', [['0.394', '0.1792', '-0.6952'], [['x']]], [0.394, -0.1792, 0.6952]]], [['regression: random channel chain 28', [['-0.4727', '0.0368', '-0.4788'], [['h'], ['ampdamp', '0.2']]], [-0.428252, -0.032915, -0.17816]], ['regression: random channel chain 32', [['0.089', '-0.4706', '-0.3715'], [['ampdamp', '0.2'], ['bitflip', '0.3'], ['ampdamp', '0.3']]], [0.066602, -0.140866, 0.272784]], ['regression: random channel chain 16', [['0.0125', '-0.322', '0.0664'], [['h'], ['ampdamp', '0.05']]], [0.064719, 0.313847, 0.061875]], ['control: random channel chain 8', [['0.255', '-0.4128', '-0.2664'], [['x'], ['dephase', '0.05'], ['h'], ['depol', '0.05']]], [0.25308, -0.352944, 0.218025]], ['control: random channel chain 11', [['0.2608', '0.1361', '-0.2576'], [['x'], ['depol', '0.05']]], [0.24776, -0.129295, 0.24472]], ['control: random channel chain 12', [['0.3838', '0.2434', '0.1995'], [['x'], ['s'], ['depol', '0.5'], ['dephase', '0.05']]], [0.10953, 0.17271, -0.09975]], ['control: random channel chain 13', [['-0.3842', '-0.4838', '0.2088'], [['h'], ['depol', '0.05']]], [0.19836, 0.45961, -0.36499]]], [['regression: random channel chain 36', [['0.2754', '-0.5471', '-0.3106'], [['dephase', '0.5'], ['s'], ['ampdamp', '0.3'], ['x']]], [0.0, 0.0, -0.08258]], ['regression: random channel chain 41', [['0.1671', '-0.4264', '-0.1284'], [['ampdamp', '0.1'], ['bitflip', '0.3']]], [0.158525, -0.161807, -0.006224]], ['regression: random channel chain 28', [['-0.4727', '0.0368', '-0.4788'], [['h'], ['ampdamp', '0.2']]], [-0.428252, -0.032915, -0.17816]], ['control: random channel chain 14', [['-0.1159', '-0.3227', '0.1975'], [['bitflip', '0.3'], ['h'], ['bitflip', '0.1'], ['dephase', '0.3']]], [0.0316, 0.041306, -0.09272]], ['control: random channel chain 17', [['0.1445', '-0.5422', '-0.0485'], [['s'], ['s'], ['dephase', '0.2'], ['dephase', '0.05']]], [-0.07803, 0.292788, -0.0485]], ['control: random channel chain 18', [['-0.3894', '0.6131', '-0.5953'], [['bitflip', '0.05']]], [-0.3894, 0.55179, -0.53577]], ['control: random channel chain 19', [['0.6907', '-0.2493', '0.6355'], [['depol', '0.5'], ['dephase', '0.05'], ['depol', '0.05']]], [0.295274, -0.106576, 0.301862]]]]
for label, args, expected in fixtures[N-1]:
    check(label, solve(args), expected)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
regression: amplitude damping from |1>[0.0, 0.0, -1.0][0.0, 0.0, 0.0]Failed
regression: random channel chain 1[-0.321888, -0.442276, 0.10853][-0.321888, -0.442276, 0.30853]Failed
regression: random channel chain 7[0.135828, 0.304606, -0.20384][0.135828, 0.304606, -0.52384]Failed
control: dephasing plus state[0.5, 0.0, 0.0][0.5, 0.0, 0.0]Passed
control: bit flip on |0>[0.0, 0.0, 0.5][0.0, 0.0, 0.5]Passed
control: hadamard on y[0.0, -1.0, 0.0][0.0, -1.0, 0.0]Passed
control: s on x[0.0, 1.0, 0.0][0.0, 1.0, 0.0]Passed

SHA-256 / a805e4b31b6226f21b0f59c33aee3cec9bfbc19fc78f26e5dd0f55a093d3703e

2 / The unsuccessful fix

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json
import math
N = 1
observations = []
def solve(x):
    bx, by, bz = [float(v) for v in x[0]]
    for ch in x[1]:
        kind = ch[0]
        if kind == 'depol':
            p = float(ch[1])
            bx, by, bz = (1 - p) * bx, (1 - p) * by, (1 - p) * bz
        elif kind == 'dephase':
            p = float(ch[1])
            bx, by = (1 - 2 * p) * bx, (1 - 2 * p) * by
        elif kind == 'bitflip':
            p = float(ch[1])
            by, bz = (1 - 2 * p) * by, (1 - 2 * p) * bz
        elif kind == 'ampdamp':
            g = float(ch[1])
            s = math.sqrt(1 - g)
            bx, by, bz = s * bx, s * by, g + s * bz
        elif kind == 'h':
            bx, by, bz = bz, -by, bx
        elif kind == 's':
            bx, by = -by, bx
        elif kind == 'x':
            by, bz = -by, -bz
    return [round(v, 6) + 0.0 for v in (bx, by, bz)]
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['regression: amplitude damping from |1>', [['0', '0', '-1'], [['ampdamp', '0.5']]], [0.0, 0.0, 0.0]], ['regression: random channel chain 1', [['0.2317', '0.4662', '-0.3393'], [['h'], ['ampdamp', '0.1'], ['h'], ['h']]], [-0.321888, -0.442276, 0.30853]], ['regression: random channel chain 7', [['0.2531', '-0.7095', '0.5685'], [['ampdamp', '0.2'], ['bitflip', '0.1'], ['dephase', '0.2'], ['x']]], [0.135828, 0.304606, -0.52384]], ['control: dephasing plus state', [['1', '0', '0'], [['dephase', '0.25']]], [0.5, 0.0, 0.0]], ['control: bit flip on |0>', [['0', '0', '1'], [['bitflip', '0.25']]], [0.0, 0.0, 0.5]], ['control: hadamard on y', [['0', '1', '0'], [['h']]], [0.0, -1.0, 0.0]], ['control: s on x', [['1', '0', '0'], [['s']]], [0.0, 1.0, 0.0]]], [['regression: random channel chain 9', [['0.2932', '0.3716', '-0.2949'], [['x'], ['bitflip', '0.2'], ['ampdamp', '0.3']]], [0.245309, -0.186542, 0.423858]], ['regression: random channel chain 10', [['0.0325', '0.65', '0.2184'], [['depol', '0.2'], ['ampdamp', '0.05'], ['bitflip', '0.05'], ['h']]], [0.194386, -0.45615, 0.025342]], ['regression: random channel chain 7', [['0.2531', '-0.7095', '0.5685'], [['ampdamp', '0.2'], ['bitflip', '0.1'], ['dephase', '0.2'], ['x']]], [0.135828, 0.304606, -0.52384]], ['control: x on |+i>', [['0', '1', '0'], [['x']]], [0.0, -1.0, 0.0]], ['control: depolarize', [['0.6', '0', '0.8'], [['depol', '0.1']]], [0.54, 0.0, 0.72]], ['control: random channel chain 0', [['0.0691', '-0.4004', '0.0791'], [['dephase', '0.2'], ['bitflip', '0.3'], ['s']]], [0.096096, 0.04146, 0.03164]], ['control: random channel chain 2', [['0.0766', '-0.6718', '0.0357'], [['s']]], [0.6718, 0.0766, 0.0357]]], [['regression: random channel chain 16', [['0.0125', '-0.322', '0.0664'], [['h'], ['ampdamp', '0.05']]], [0.064719, 0.313847, 0.061875]], ['regression: random channel chain 26', [['-0.4382', '0.0441', '-0.3433'], [['depol', '0.1'], ['bitflip', '0.5'], ['ampdamp', '0.2']]], [-0.352744, 0.0, 0.2]], ['regression: random channel chain 10', [['0.0325', '0.65', '0.2184'], [['depol', '0.2'], ['ampdamp', '0.05'], ['bitflip', '0.05'], ['h']]], [0.194386, -0.45615, 0.025342]], ['control: random channel chain 3', [['0.2389', '-0.1722', '0.2639'], [['dephase', '0.1'], ['bitflip', '0.2'], ['x']]], [0.19112, 0.082656, -0.15834]], ['control: random channel chain 4', [['-0.0477', '-0.2431', '-0.2391'], [['x'], ['depol', '0.5'], ['x'], ['bitflip', '0.1']]], [-0.02385, -0.09724, -0.09564]], ['control: random channel chain 5', [['-0.4729', '-0.0797', '-0.3692'], [['h'], ['s'], ['dephase', '0.1']]], [-0.06376, -0.29536, -0.4729]], ['control: random channel chain 6', [['0.394', '0.1792', '-0.6952'], [['x']]], [0.394, -0.1792, 0.6952]]], [['regression: random channel chain 28', [['-0.4727', '0.0368', '-0.4788'], [['h'], ['ampdamp', '0.2']]], [-0.428252, -0.032915, -0.17816]], ['regression: random channel chain 32', [['0.089', '-0.4706', '-0.3715'], [['ampdamp', '0.2'], ['bitflip', '0.3'], ['ampdamp', '0.3']]], [0.066602, -0.140866, 0.272784]], ['regression: random channel chain 16', [['0.0125', '-0.322', '0.0664'], [['h'], ['ampdamp', '0.05']]], [0.064719, 0.313847, 0.061875]], ['control: random channel chain 8', [['0.255', '-0.4128', '-0.2664'], [['x'], ['dephase', '0.05'], ['h'], ['depol', '0.05']]], [0.25308, -0.352944, 0.218025]], ['control: random channel chain 11', [['0.2608', '0.1361', '-0.2576'], [['x'], ['depol', '0.05']]], [0.24776, -0.129295, 0.24472]], ['control: random channel chain 12', [['0.3838', '0.2434', '0.1995'], [['x'], ['s'], ['depol', '0.5'], ['dephase', '0.05']]], [0.10953, 0.17271, -0.09975]], ['control: random channel chain 13', [['-0.3842', '-0.4838', '0.2088'], [['h'], ['depol', '0.05']]], [0.19836, 0.45961, -0.36499]]], [['regression: random channel chain 36', [['0.2754', '-0.5471', '-0.3106'], [['dephase', '0.5'], ['s'], ['ampdamp', '0.3'], ['x']]], [0.0, 0.0, -0.08258]], ['regression: random channel chain 41', [['0.1671', '-0.4264', '-0.1284'], [['ampdamp', '0.1'], ['bitflip', '0.3']]], [0.158525, -0.161807, -0.006224]], ['regression: random channel chain 28', [['-0.4727', '0.0368', '-0.4788'], [['h'], ['ampdamp', '0.2']]], [-0.428252, -0.032915, -0.17816]], ['control: random channel chain 14', [['-0.1159', '-0.3227', '0.1975'], [['bitflip', '0.3'], ['h'], ['bitflip', '0.1'], ['dephase', '0.3']]], [0.0316, 0.041306, -0.09272]], ['control: random channel chain 17', [['0.1445', '-0.5422', '-0.0485'], [['s'], ['s'], ['dephase', '0.2'], ['dephase', '0.05']]], [-0.07803, 0.292788, -0.0485]], ['control: random channel chain 18', [['-0.3894', '0.6131', '-0.5953'], [['bitflip', '0.05']]], [-0.3894, 0.55179, -0.53577]], ['control: random channel chain 19', [['0.6907', '-0.2493', '0.6355'], [['depol', '0.5'], ['dephase', '0.05'], ['depol', '0.05']]], [0.295274, -0.106576, 0.301862]]]]
for label, args, expected in fixtures[N-1]:
    check(label, solve(args), expected)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
regression: amplitude damping from |1>[0.0, 0.0, -0.207107][0.0, 0.0, 0.0]Failed
regression: random channel chain 1[-0.321888, -0.442276, 0.31981][-0.321888, -0.442276, 0.30853]Failed
regression: random channel chain 7[0.135828, 0.304606, -0.566785][0.135828, 0.304606, -0.52384]Failed
control: dephasing plus state[0.5, 0.0, 0.0][0.5, 0.0, 0.0]Passed
control: bit flip on |0>[0.0, 0.0, 0.5][0.0, 0.0, 0.5]Passed
control: hadamard on y[0.0, -1.0, 0.0][0.0, -1.0, 0.0]Passed
control: s on x[0.0, 1.0, 0.0][0.0, 1.0, 0.0]Passed

SHA-256 / 6d2abb5cf6199f851046f5eac5f0866bffaa5f5bcbcb578208e4d064454911f1

3 / The verified repair

Exit 0
"""Failure Map reference implementation. Python standard library only."""
import json
import math
N = 1
observations = []
def solve(x):
    bx, by, bz = [float(v) for v in x[0]]
    for ch in x[1]:
        kind = ch[0]
        if kind == 'depol':
            p = float(ch[1])
            bx, by, bz = (1 - p) * bx, (1 - p) * by, (1 - p) * bz
        elif kind == 'dephase':
            p = float(ch[1])
            bx, by = (1 - 2 * p) * bx, (1 - 2 * p) * by
        elif kind == 'bitflip':
            p = float(ch[1])
            by, bz = (1 - 2 * p) * by, (1 - 2 * p) * bz
        elif kind == 'ampdamp':
            g = float(ch[1])
            s = math.sqrt(1 - g)
            bx, by, bz = s * bx, s * by, g + (1 - g) * bz
        elif kind == 'h':
            bx, by, bz = bz, -by, bx
        elif kind == 's':
            bx, by = -by, bx
        elif kind == 'x':
            by, bz = -by, -bz
    return [round(v, 6) + 0.0 for v in (bx, by, bz)]
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[['regression: amplitude damping from |1>', [['0', '0', '-1'], [['ampdamp', '0.5']]], [0.0, 0.0, 0.0]], ['regression: random channel chain 1', [['0.2317', '0.4662', '-0.3393'], [['h'], ['ampdamp', '0.1'], ['h'], ['h']]], [-0.321888, -0.442276, 0.30853]], ['regression: random channel chain 7', [['0.2531', '-0.7095', '0.5685'], [['ampdamp', '0.2'], ['bitflip', '0.1'], ['dephase', '0.2'], ['x']]], [0.135828, 0.304606, -0.52384]], ['control: dephasing plus state', [['1', '0', '0'], [['dephase', '0.25']]], [0.5, 0.0, 0.0]], ['control: bit flip on |0>', [['0', '0', '1'], [['bitflip', '0.25']]], [0.0, 0.0, 0.5]], ['control: hadamard on y', [['0', '1', '0'], [['h']]], [0.0, -1.0, 0.0]], ['control: s on x', [['1', '0', '0'], [['s']]], [0.0, 1.0, 0.0]]], [['regression: random channel chain 9', [['0.2932', '0.3716', '-0.2949'], [['x'], ['bitflip', '0.2'], ['ampdamp', '0.3']]], [0.245309, -0.186542, 0.423858]], ['regression: random channel chain 10', [['0.0325', '0.65', '0.2184'], [['depol', '0.2'], ['ampdamp', '0.05'], ['bitflip', '0.05'], ['h']]], [0.194386, -0.45615, 0.025342]], ['regression: random channel chain 7', [['0.2531', '-0.7095', '0.5685'], [['ampdamp', '0.2'], ['bitflip', '0.1'], ['dephase', '0.2'], ['x']]], [0.135828, 0.304606, -0.52384]], ['control: x on |+i>', [['0', '1', '0'], [['x']]], [0.0, -1.0, 0.0]], ['control: depolarize', [['0.6', '0', '0.8'], [['depol', '0.1']]], [0.54, 0.0, 0.72]], ['control: random channel chain 0', [['0.0691', '-0.4004', '0.0791'], [['dephase', '0.2'], ['bitflip', '0.3'], ['s']]], [0.096096, 0.04146, 0.03164]], ['control: random channel chain 2', [['0.0766', '-0.6718', '0.0357'], [['s']]], [0.6718, 0.0766, 0.0357]]], [['regression: random channel chain 16', [['0.0125', '-0.322', '0.0664'], [['h'], ['ampdamp', '0.05']]], [0.064719, 0.313847, 0.061875]], ['regression: random channel chain 26', [['-0.4382', '0.0441', '-0.3433'], [['depol', '0.1'], ['bitflip', '0.5'], ['ampdamp', '0.2']]], [-0.352744, 0.0, 0.2]], ['regression: random channel chain 10', [['0.0325', '0.65', '0.2184'], [['depol', '0.2'], ['ampdamp', '0.05'], ['bitflip', '0.05'], ['h']]], [0.194386, -0.45615, 0.025342]], ['control: random channel chain 3', [['0.2389', '-0.1722', '0.2639'], [['dephase', '0.1'], ['bitflip', '0.2'], ['x']]], [0.19112, 0.082656, -0.15834]], ['control: random channel chain 4', [['-0.0477', '-0.2431', '-0.2391'], [['x'], ['depol', '0.5'], ['x'], ['bitflip', '0.1']]], [-0.02385, -0.09724, -0.09564]], ['control: random channel chain 5', [['-0.4729', '-0.0797', '-0.3692'], [['h'], ['s'], ['dephase', '0.1']]], [-0.06376, -0.29536, -0.4729]], ['control: random channel chain 6', [['0.394', '0.1792', '-0.6952'], [['x']]], [0.394, -0.1792, 0.6952]]], [['regression: random channel chain 28', [['-0.4727', '0.0368', '-0.4788'], [['h'], ['ampdamp', '0.2']]], [-0.428252, -0.032915, -0.17816]], ['regression: random channel chain 32', [['0.089', '-0.4706', '-0.3715'], [['ampdamp', '0.2'], ['bitflip', '0.3'], ['ampdamp', '0.3']]], [0.066602, -0.140866, 0.272784]], ['regression: random channel chain 16', [['0.0125', '-0.322', '0.0664'], [['h'], ['ampdamp', '0.05']]], [0.064719, 0.313847, 0.061875]], ['control: random channel chain 8', [['0.255', '-0.4128', '-0.2664'], [['x'], ['dephase', '0.05'], ['h'], ['depol', '0.05']]], [0.25308, -0.352944, 0.218025]], ['control: random channel chain 11', [['0.2608', '0.1361', '-0.2576'], [['x'], ['depol', '0.05']]], [0.24776, -0.129295, 0.24472]], ['control: random channel chain 12', [['0.3838', '0.2434', '0.1995'], [['x'], ['s'], ['depol', '0.5'], ['dephase', '0.05']]], [0.10953, 0.17271, -0.09975]], ['control: random channel chain 13', [['-0.3842', '-0.4838', '0.2088'], [['h'], ['depol', '0.05']]], [0.19836, 0.45961, -0.36499]]], [['regression: random channel chain 36', [['0.2754', '-0.5471', '-0.3106'], [['dephase', '0.5'], ['s'], ['ampdamp', '0.3'], ['x']]], [0.0, 0.0, -0.08258]], ['regression: random channel chain 41', [['0.1671', '-0.4264', '-0.1284'], [['ampdamp', '0.1'], ['bitflip', '0.3']]], [0.158525, -0.161807, -0.006224]], ['regression: random channel chain 28', [['-0.4727', '0.0368', '-0.4788'], [['h'], ['ampdamp', '0.2']]], [-0.428252, -0.032915, -0.17816]], ['control: random channel chain 14', [['-0.1159', '-0.3227', '0.1975'], [['bitflip', '0.3'], ['h'], ['bitflip', '0.1'], ['dephase', '0.3']]], [0.0316, 0.041306, -0.09272]], ['control: random channel chain 17', [['0.1445', '-0.5422', '-0.0485'], [['s'], ['s'], ['dephase', '0.2'], ['dephase', '0.05']]], [-0.07803, 0.292788, -0.0485]], ['control: random channel chain 18', [['-0.3894', '0.6131', '-0.5953'], [['bitflip', '0.05']]], [-0.3894, 0.55179, -0.53577]], ['control: random channel chain 19', [['0.6907', '-0.2493', '0.6355'], [['depol', '0.5'], ['dephase', '0.05'], ['depol', '0.05']]], [0.295274, -0.106576, 0.301862]]]]
for label, args, expected in fixtures[N-1]:
    check(label, solve(args), expected)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
regression: amplitude damping from |1>[0.0, 0.0, 0.0][0.0, 0.0, 0.0]Passed
regression: random channel chain 1[-0.321888, -0.442276, 0.30853][-0.321888, -0.442276, 0.30853]Passed
regression: random channel chain 7[0.135828, 0.304606, -0.52384][0.135828, 0.304606, -0.52384]Passed
control: dephasing plus state[0.5, 0.0, 0.0][0.5, 0.0, 0.0]Passed
control: bit flip on |0>[0.0, 0.0, 0.5][0.0, 0.0, 0.5]Passed
control: hadamard on y[0.0, -1.0, 0.0][0.0, -1.0, 0.0]Passed
control: s on x[0.0, 1.0, 0.0][0.0, 1.0, 0.0]Passed

SHA-256 / 01e498ba82f3237b120e7febff89c4496002b7f22cb0f211a8e4f9450dc8c92c

Verification & scope

A deterministic bounded teaching model with a stipulated toy contract; amplitudes are rounded to fixed decimals for strict JSON output. It is not a production quantum SDK and claims no standards conformance. This reproducer isolates one failure mechanism. Results cover the supplied fixtures. Variants within a family share a test contract and should remain grouped when constructing evaluation splits. Related mechanisms with a shared evaluation_group must also remain together; these controlled models are not independent production incidents.

Observations recorded using Python 3.12.14 at 2026-09-29T14:51:34.182428+00:00.

Case digest / ea31dedb92bd3ef7e903980778d6dc4a36aa1792fa9fd1fc1738bd3f514981ac