FAILURE MAP
← Case archive

FA-91266 / Quantum circuit simulation / Open access

Bloch S gate rotates clockwise · case 01

S applied to |+> lands at y = -1 instead of y = +1.

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

ROOT CAUSE

The S rotation uses (x, y) -> (y, -x), which is S-dagger.

VERIFIED REPAIR

Use (x, y) -> (-y, x) for a +90 degree rotation about z.

Unsuccessful approach: The attempted repair maps (x, y) -> (-x, -y), which is a Z gate.

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, 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: s on x', [['1', '0', '0'], [['s']]], [0.0, 1.0, 0.0]], ['regression: random channel chain 0', [['0.0691', '-0.4004', '0.0791'], [['dephase', '0.2'], ['bitflip', '0.3'], ['s']]], [0.096096, 0.04146, 0.03164]], ['regression: random channel chain 2', [['0.0766', '-0.6718', '0.0357'], [['s']]], [0.6718, 0.0766, 0.0357]], ['control: amplitude damping from |1>', [['0', '0', '-1'], [['ampdamp', '0.5']]], [0.0, 0.0, 0.0]], ['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]]], [['regression: random channel chain 5', [['-0.4729', '-0.0797', '-0.3692'], [['h'], ['s'], ['dephase', '0.1']]], [-0.06376, -0.29536, -0.4729]], ['regression: random channel chain 12', [['0.3838', '0.2434', '0.1995'], [['x'], ['s'], ['depol', '0.5'], ['dephase', '0.05']]], [0.10953, 0.17271, -0.09975]], ['regression: random channel chain 2', [['0.0766', '-0.6718', '0.0357'], [['s']]], [0.6718, 0.0766, 0.0357]], ['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 1', [['0.2317', '0.4662', '-0.3393'], [['h'], ['ampdamp', '0.1'], ['h'], ['h']]], [-0.321888, -0.442276, 0.30853]], ['control: random channel chain 3', [['0.2389', '-0.1722', '0.2639'], [['dephase', '0.1'], ['bitflip', '0.2'], ['x']]], [0.19112, 0.082656, -0.15834]]], [['regression: random channel chain 27', [['-0.2675', '0.148', '0.3339'], [['s'], ['dephase', '0.1'], ['dephase', '0.05'], ['ampdamp', '0.1']]], [-0.101092, -0.182716, 0.40051]], ['regression: random channel chain 29', [['0.6889', '0.141', '0.2562'], [['s'], ['depol', '0.1'], ['dephase', '0.05']]], [-0.11421, 0.558009, 0.23058]], ['regression: 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 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 6', [['0.394', '0.1792', '-0.6952'], [['x']]], [0.394, -0.1792, 0.6952]], ['control: 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: random channel chain 8', [['0.255', '-0.4128', '-0.2664'], [['x'], ['dephase', '0.05'], ['h'], ['depol', '0.05']]], [0.25308, -0.352944, 0.218025]]], [['regression: random channel chain 38', [['0.1646', '-0.3434', '-0.0118'], [['s'], ['h']]], [-0.0118, -0.1646, 0.3434]], ['regression: random channel chain 39', [['0.3446', '-0.4495', '-0.4416'], [['s']]], [0.4495, 0.3446, -0.4416]], ['repair check: 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 9', [['0.2932', '0.3716', '-0.2949'], [['x'], ['bitflip', '0.2'], ['ampdamp', '0.3']]], [0.245309, -0.186542, 0.423858]], ['control: 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 11', [['0.2608', '0.1361', '-0.2576'], [['x'], ['depol', '0.05']]], [0.24776, -0.129295, 0.24472]], ['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 45', [['0.0821', '-0.2333', '0.2015'], [['dephase', '0.3'], ['dephase', '0.05'], ['s']]], [0.083988, 0.029556, 0.2015]], ['regression: s on x', [['1', '0', '0'], [['s']]], [0.0, 1.0, 0.0]], ['repair check: random channel chain 25', [['-0.3552', '0.3424', '-0.3469'], [['depol', '0.05'], ['s'], ['bitflip', '0.2'], ['s']]], [0.202464, -0.32528, -0.197733]], ['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 16', [['0.0125', '-0.322', '0.0664'], [['h'], ['ampdamp', '0.05']]], [0.064719, 0.313847, 0.061875]], ['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: s on x[0.0, -1.0, 0.0][0.0, 1.0, 0.0]Failed
regression: random channel chain 0[-0.096096, -0.04146, 0.03164][0.096096, 0.04146, 0.03164]Failed
regression: random channel chain 2[-0.6718, -0.0766, 0.0357][0.6718, 0.0766, 0.0357]Failed
control: amplitude damping from |1>[0.0, 0.0, 0.0][0.0, 0.0, 0.0]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

SHA-256 / 7bb7718fb359c745f2abf4ca164e567b1eca85313951df88de38377014c28cde

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 + (1 - g) * bz
        elif kind == 'h':
            bx, by, bz = bz, -by, bx
        elif kind == 's':
            bx, by = -bx, -by
        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: s on x', [['1', '0', '0'], [['s']]], [0.0, 1.0, 0.0]], ['regression: random channel chain 0', [['0.0691', '-0.4004', '0.0791'], [['dephase', '0.2'], ['bitflip', '0.3'], ['s']]], [0.096096, 0.04146, 0.03164]], ['regression: random channel chain 2', [['0.0766', '-0.6718', '0.0357'], [['s']]], [0.6718, 0.0766, 0.0357]], ['control: amplitude damping from |1>', [['0', '0', '-1'], [['ampdamp', '0.5']]], [0.0, 0.0, 0.0]], ['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]]], [['regression: random channel chain 5', [['-0.4729', '-0.0797', '-0.3692'], [['h'], ['s'], ['dephase', '0.1']]], [-0.06376, -0.29536, -0.4729]], ['regression: random channel chain 12', [['0.3838', '0.2434', '0.1995'], [['x'], ['s'], ['depol', '0.5'], ['dephase', '0.05']]], [0.10953, 0.17271, -0.09975]], ['regression: random channel chain 2', [['0.0766', '-0.6718', '0.0357'], [['s']]], [0.6718, 0.0766, 0.0357]], ['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 1', [['0.2317', '0.4662', '-0.3393'], [['h'], ['ampdamp', '0.1'], ['h'], ['h']]], [-0.321888, -0.442276, 0.30853]], ['control: random channel chain 3', [['0.2389', '-0.1722', '0.2639'], [['dephase', '0.1'], ['bitflip', '0.2'], ['x']]], [0.19112, 0.082656, -0.15834]]], [['regression: random channel chain 27', [['-0.2675', '0.148', '0.3339'], [['s'], ['dephase', '0.1'], ['dephase', '0.05'], ['ampdamp', '0.1']]], [-0.101092, -0.182716, 0.40051]], ['regression: random channel chain 29', [['0.6889', '0.141', '0.2562'], [['s'], ['depol', '0.1'], ['dephase', '0.05']]], [-0.11421, 0.558009, 0.23058]], ['regression: 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 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 6', [['0.394', '0.1792', '-0.6952'], [['x']]], [0.394, -0.1792, 0.6952]], ['control: 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: random channel chain 8', [['0.255', '-0.4128', '-0.2664'], [['x'], ['dephase', '0.05'], ['h'], ['depol', '0.05']]], [0.25308, -0.352944, 0.218025]]], [['regression: random channel chain 38', [['0.1646', '-0.3434', '-0.0118'], [['s'], ['h']]], [-0.0118, -0.1646, 0.3434]], ['regression: random channel chain 39', [['0.3446', '-0.4495', '-0.4416'], [['s']]], [0.4495, 0.3446, -0.4416]], ['repair check: 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 9', [['0.2932', '0.3716', '-0.2949'], [['x'], ['bitflip', '0.2'], ['ampdamp', '0.3']]], [0.245309, -0.186542, 0.423858]], ['control: 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 11', [['0.2608', '0.1361', '-0.2576'], [['x'], ['depol', '0.05']]], [0.24776, -0.129295, 0.24472]], ['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 45', [['0.0821', '-0.2333', '0.2015'], [['dephase', '0.3'], ['dephase', '0.05'], ['s']]], [0.083988, 0.029556, 0.2015]], ['regression: s on x', [['1', '0', '0'], [['s']]], [0.0, 1.0, 0.0]], ['repair check: random channel chain 25', [['-0.3552', '0.3424', '-0.3469'], [['depol', '0.05'], ['s'], ['bitflip', '0.2'], ['s']]], [0.202464, -0.32528, -0.197733]], ['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 16', [['0.0125', '-0.322', '0.0664'], [['h'], ['ampdamp', '0.05']]], [0.064719, 0.313847, 0.061875]], ['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: s on x[-1.0, 0.0, 0.0][0.0, 1.0, 0.0]Failed
regression: random channel chain 0[-0.04146, 0.096096, 0.03164][0.096096, 0.04146, 0.03164]Failed
regression: random channel chain 2[-0.0766, 0.6718, 0.0357][0.6718, 0.0766, 0.0357]Failed
control: amplitude damping from |1>[0.0, 0.0, 0.0][0.0, 0.0, 0.0]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

SHA-256 / 82f916106696a693cbc0edc74d4be8a62dfd12987ac427fcf85fbb45c7590589

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: s on x', [['1', '0', '0'], [['s']]], [0.0, 1.0, 0.0]], ['regression: random channel chain 0', [['0.0691', '-0.4004', '0.0791'], [['dephase', '0.2'], ['bitflip', '0.3'], ['s']]], [0.096096, 0.04146, 0.03164]], ['regression: random channel chain 2', [['0.0766', '-0.6718', '0.0357'], [['s']]], [0.6718, 0.0766, 0.0357]], ['control: amplitude damping from |1>', [['0', '0', '-1'], [['ampdamp', '0.5']]], [0.0, 0.0, 0.0]], ['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]]], [['regression: random channel chain 5', [['-0.4729', '-0.0797', '-0.3692'], [['h'], ['s'], ['dephase', '0.1']]], [-0.06376, -0.29536, -0.4729]], ['regression: random channel chain 12', [['0.3838', '0.2434', '0.1995'], [['x'], ['s'], ['depol', '0.5'], ['dephase', '0.05']]], [0.10953, 0.17271, -0.09975]], ['regression: random channel chain 2', [['0.0766', '-0.6718', '0.0357'], [['s']]], [0.6718, 0.0766, 0.0357]], ['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 1', [['0.2317', '0.4662', '-0.3393'], [['h'], ['ampdamp', '0.1'], ['h'], ['h']]], [-0.321888, -0.442276, 0.30853]], ['control: random channel chain 3', [['0.2389', '-0.1722', '0.2639'], [['dephase', '0.1'], ['bitflip', '0.2'], ['x']]], [0.19112, 0.082656, -0.15834]]], [['regression: random channel chain 27', [['-0.2675', '0.148', '0.3339'], [['s'], ['dephase', '0.1'], ['dephase', '0.05'], ['ampdamp', '0.1']]], [-0.101092, -0.182716, 0.40051]], ['regression: random channel chain 29', [['0.6889', '0.141', '0.2562'], [['s'], ['depol', '0.1'], ['dephase', '0.05']]], [-0.11421, 0.558009, 0.23058]], ['regression: 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 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 6', [['0.394', '0.1792', '-0.6952'], [['x']]], [0.394, -0.1792, 0.6952]], ['control: 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: random channel chain 8', [['0.255', '-0.4128', '-0.2664'], [['x'], ['dephase', '0.05'], ['h'], ['depol', '0.05']]], [0.25308, -0.352944, 0.218025]]], [['regression: random channel chain 38', [['0.1646', '-0.3434', '-0.0118'], [['s'], ['h']]], [-0.0118, -0.1646, 0.3434]], ['regression: random channel chain 39', [['0.3446', '-0.4495', '-0.4416'], [['s']]], [0.4495, 0.3446, -0.4416]], ['repair check: 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 9', [['0.2932', '0.3716', '-0.2949'], [['x'], ['bitflip', '0.2'], ['ampdamp', '0.3']]], [0.245309, -0.186542, 0.423858]], ['control: 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 11', [['0.2608', '0.1361', '-0.2576'], [['x'], ['depol', '0.05']]], [0.24776, -0.129295, 0.24472]], ['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 45', [['0.0821', '-0.2333', '0.2015'], [['dephase', '0.3'], ['dephase', '0.05'], ['s']]], [0.083988, 0.029556, 0.2015]], ['regression: s on x', [['1', '0', '0'], [['s']]], [0.0, 1.0, 0.0]], ['repair check: random channel chain 25', [['-0.3552', '0.3424', '-0.3469'], [['depol', '0.05'], ['s'], ['bitflip', '0.2'], ['s']]], [0.202464, -0.32528, -0.197733]], ['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 16', [['0.0125', '-0.322', '0.0664'], [['h'], ['ampdamp', '0.05']]], [0.064719, 0.313847, 0.061875]], ['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: s on x[0.0, 1.0, 0.0][0.0, 1.0, 0.0]Passed
regression: random channel chain 0[0.096096, 0.04146, 0.03164][0.096096, 0.04146, 0.03164]Passed
regression: random channel chain 2[0.6718, 0.0766, 0.0357][0.6718, 0.0766, 0.0357]Passed
control: amplitude damping from |1>[0.0, 0.0, 0.0][0.0, 0.0, 0.0]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

SHA-256 / 15f0ac14008efa9352397b6e51b3ce9542aac5164e65852a4f9062f94e035bca

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.319869+00:00.

Case digest / d08ce7e0c457d2ea1877522efbe105056ebfc8792cde302ed1702822284aa3f5