{"abstract":"Words fixed by the final permitted iteration are reported as failures.","category":"Error-correcting codes","checks":8,"contract":"Parallel Gallager bit-flipping decoder. H lists the variable indices of each parity check. In each iteration: if every check is satisfied stop with success; otherwise count, per bit, the unsatisfied checks it joins and flip all bits that reach the maximum count. At most max_iter flipping iterations are performed and the syndrome is checked after the last one. Return [bits, iterations performed, success].","evaluation_group":"w2-error_correcting_codes-ldpc-bit-flipping","failed_approach":"Looping max_iter times without a final check leaves the same gap.","family":"w2-error_correcting_codes-ldpc-bit-flipping-final-syndrome","id":"FA-72106","implementations":{"attempt":{"sha256":"6a220ed523a2b553bf1152d6eb5e8f53b13a829b8493e13a91604e622c8d002a","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(H, r, max_iter):\n    c = list(r)\n    for it in range(max_iter):\n        unsat = [chk for chk in H if sum(c[v] for v in chk) % 2]\n        if not unsat:\n            return [c, it, True]\n        if it == max_iter:\n            break\n        cnt = [0] * len(c)\n        for chk in unsat:\n            for v in chk:\n                cnt[v] += 1\n        top = max(cnt)\n        c = [b ^ 1 if cnt[k] == top else b for k, b in enumerate(c)]\n    return [c, max_iter, False]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 0]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 0], [[0, 0, 0, 0, 0, 0, 0], 0, True]], ['regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 2]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 2], [[0, 0, 0, 0, 0, 0, 0], 2, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 2]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 2], [[0, 0, 0, 0, 0, 0, 0], 0, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 3]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 3], [[0, 0, 0, 0, 0, 0, 0], 2, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 0, 0, 1], 4]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 0, 0, 1], 4], [[0, 0, 1, 1, 0, 0, 1], 2, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 1, 0, 0], 1]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 1, 0, 0], 1], [[1, 0, 1, 1, 0, 0, 1], 1, False]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 3]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 3], [[0, 0, 0, 0, 0, 0, 0], 0, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 1, 1], 2]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 1, 1], 2], [[0, 0, 1, 0, 1, 1], 1, True]]], [['regression [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 1, 0, 0], 1]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 1, 0, 0], 1], [[0, 0, 0, 0, 0, 0], 1, True]], ['regression [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 0, 0, 0, 0, 0], 1]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 0, 0, 0, 0, 0], 1], [[0, 0, 0, 0, 0, 0], 1, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 1, 1], 2]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 1, 1], 2], [[0, 0, 1, 0, 1, 1], 1, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 0], 1]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 0], 1], [[0, 0, 0, 0, 0, 0], 0, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 1], 2]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 1], 2], [[0, 0, 0, 0, 0, 0], 1, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 0], 4]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 0], 4], [[0, 0, 0, 0, 0, 0], 0, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 1, 0, 0, 0, 0], 4]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 1, 0, 0, 0, 0], 4], [[1, 1, 1, 0, 0, 0], 1, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 1, 0, 0], 2]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 1, 0, 0], 2], [[0, 0, 0, 0, 0, 0], 1, True]]], [['regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 2]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 2], [[0, 0, 0, 0, 0, 0, 0], 2, True]], ['regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 0, 0, 0, 0, 1], 2]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 0, 0, 0, 0, 1], 2], [[0, 1, 0, 0, 1, 0, 1], 2, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 1, 0, 0], 2]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 1, 0, 0], 2], [[0, 0, 0, 0, 0, 0], 1, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 1, 0, 0, 1, 1], 3]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 1, 0, 0, 1, 1], 3], [[0, 1, 1, 0, 0, 1, 1], 0, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 1, 0, 1, 1, 1], 1]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 1, 0, 1, 1, 1], 1], [[0, 1, 1, 0, 0, 1, 0], 1, False]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 1, 0, 1, 1, 1], 0]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 1, 0, 1, 1, 1], 0], [[0, 1, 1, 0, 1, 1, 1], 0, False]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [1, 1, 1, 0, 0, 0, 0], 2]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [1, 1, 1, 0, 0, 0, 0], 2], [[1, 1, 1, 0, 0, 0, 0], 0, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 1, 0, 0, 0, 0], 3]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 1, 0, 0, 0, 0], 3], [[1, 1, 1, 0, 0, 0], 1, True]]], [['regression [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 0, 0, 0, 0, 0], 1]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 0, 0, 0, 0, 0], 1], [[0, 0, 0, 0, 0, 0], 1, True]], ['regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 0]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 0], [[0, 0, 0, 0, 0, 0, 0], 0, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 1, 0, 0, 0, 0], 3]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 1, 0, 0, 0, 0], 3], [[1, 1, 1, 0, 0, 0], 1, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 2]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 2], [[0, 0, 0, 0, 0, 0, 0], 0, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 3]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 3], [[0, 0, 0, 0, 0, 0, 0], 2, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 0, 0, 1], 4]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 0, 0, 1], 4], [[0, 0, 1, 1, 0, 0, 1], 2, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 1, 0, 0], 1]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 1, 0, 0], 1], [[1, 0, 1, 1, 0, 0, 1], 1, False]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 3]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 3], [[0, 0, 0, 0, 0, 0, 0], 0, True]]], [['regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 0, 0, 0, 0, 1], 2]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 0, 0, 0, 0, 1], 2], [[0, 1, 0, 0, 1, 0, 1], 2, True]], ['regression [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 1, 0, 0], 1]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 1, 0, 0], 1], [[0, 0, 0, 0, 0, 0], 1, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 3]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 3], [[0, 0, 0, 0, 0, 0, 0], 0, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 1, 1], 2]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 1, 1], 2], [[0, 0, 1, 0, 1, 1], 1, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 0], 1]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 0], 1], [[0, 0, 0, 0, 0, 0], 0, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 1], 2]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 1], 2], [[0, 0, 0, 0, 0, 0], 1, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 0], 4]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 0], 4], [[0, 0, 0, 0, 0, 0], 0, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 1, 0, 0, 0, 0], 4]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 1, 0, 0, 0, 0], 4], [[1, 1, 1, 0, 0, 0], 1, True]]]]\nfor label, args, expected in fixtures[N - 1]:\n    check(label, solve(*args), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"broken":{"sha256":"3fdcac6bf7c30f5e03020c35e9a65e28ace7e7f24f35b16e608fd36095462593","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(H, r, max_iter):\n    c = list(r)\n    for it in range(max_iter + 1):\n        if it == max_iter:\n            break\n        unsat = [chk for chk in H if sum(c[v] for v in chk) % 2]\n        if not unsat:\n            return [c, it, True]\n        cnt = [0] * len(c)\n        for chk in unsat:\n            for v in chk:\n                cnt[v] += 1\n        top = max(cnt)\n        c = [b ^ 1 if cnt[k] == top else b for k, b in enumerate(c)]\n    return [c, max_iter, False]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 0]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 0], [[0, 0, 0, 0, 0, 0, 0], 0, True]], ['regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 2]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 2], [[0, 0, 0, 0, 0, 0, 0], 2, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 2]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 2], [[0, 0, 0, 0, 0, 0, 0], 0, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 3]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 3], [[0, 0, 0, 0, 0, 0, 0], 2, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 0, 0, 1], 4]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 0, 0, 1], 4], [[0, 0, 1, 1, 0, 0, 1], 2, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 1, 0, 0], 1]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 1, 0, 0], 1], [[1, 0, 1, 1, 0, 0, 1], 1, False]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 3]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 3], [[0, 0, 0, 0, 0, 0, 0], 0, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 1, 1], 2]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 1, 1], 2], [[0, 0, 1, 0, 1, 1], 1, True]]], [['regression [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 1, 0, 0], 1]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 1, 0, 0], 1], [[0, 0, 0, 0, 0, 0], 1, True]], ['regression [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 0, 0, 0, 0, 0], 1]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 0, 0, 0, 0, 0], 1], [[0, 0, 0, 0, 0, 0], 1, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 1, 1], 2]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 1, 1], 2], [[0, 0, 1, 0, 1, 1], 1, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 0], 1]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 0], 1], [[0, 0, 0, 0, 0, 0], 0, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 1], 2]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 1], 2], [[0, 0, 0, 0, 0, 0], 1, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 0], 4]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 0], 4], [[0, 0, 0, 0, 0, 0], 0, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 1, 0, 0, 0, 0], 4]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 1, 0, 0, 0, 0], 4], [[1, 1, 1, 0, 0, 0], 1, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 1, 0, 0], 2]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 1, 0, 0], 2], [[0, 0, 0, 0, 0, 0], 1, True]]], [['regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 2]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 2], [[0, 0, 0, 0, 0, 0, 0], 2, True]], ['regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 0, 0, 0, 0, 1], 2]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 0, 0, 0, 0, 1], 2], [[0, 1, 0, 0, 1, 0, 1], 2, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 1, 0, 0], 2]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 1, 0, 0], 2], [[0, 0, 0, 0, 0, 0], 1, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 1, 0, 0, 1, 1], 3]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 1, 0, 0, 1, 1], 3], [[0, 1, 1, 0, 0, 1, 1], 0, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 1, 0, 1, 1, 1], 1]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 1, 0, 1, 1, 1], 1], [[0, 1, 1, 0, 0, 1, 0], 1, False]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 1, 0, 1, 1, 1], 0]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 1, 0, 1, 1, 1], 0], [[0, 1, 1, 0, 1, 1, 1], 0, False]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [1, 1, 1, 0, 0, 0, 0], 2]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [1, 1, 1, 0, 0, 0, 0], 2], [[1, 1, 1, 0, 0, 0, 0], 0, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 1, 0, 0, 0, 0], 3]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 1, 0, 0, 0, 0], 3], [[1, 1, 1, 0, 0, 0], 1, True]]], [['regression [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 0, 0, 0, 0, 0], 1]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 0, 0, 0, 0, 0], 1], [[0, 0, 0, 0, 0, 0], 1, True]], ['regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 0]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 0], [[0, 0, 0, 0, 0, 0, 0], 0, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 1, 0, 0, 0, 0], 3]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 1, 0, 0, 0, 0], 3], [[1, 1, 1, 0, 0, 0], 1, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 2]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 2], [[0, 0, 0, 0, 0, 0, 0], 0, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 3]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 3], [[0, 0, 0, 0, 0, 0, 0], 2, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 0, 0, 1], 4]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 0, 0, 1], 4], [[0, 0, 1, 1, 0, 0, 1], 2, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 1, 0, 0], 1]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 1, 0, 0], 1], [[1, 0, 1, 1, 0, 0, 1], 1, False]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 3]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 3], [[0, 0, 0, 0, 0, 0, 0], 0, True]]], [['regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 0, 0, 0, 0, 1], 2]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 0, 0, 0, 0, 1], 2], [[0, 1, 0, 0, 1, 0, 1], 2, True]], ['regression [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 1, 0, 0], 1]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 1, 0, 0], 1], [[0, 0, 0, 0, 0, 0], 1, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 3]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 3], [[0, 0, 0, 0, 0, 0, 0], 0, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 1, 1], 2]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 1, 1], 2], [[0, 0, 1, 0, 1, 1], 1, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 0], 1]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 0], 1], [[0, 0, 0, 0, 0, 0], 0, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 1], 2]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 1], 2], [[0, 0, 0, 0, 0, 0], 1, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 0], 4]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 0], 4], [[0, 0, 0, 0, 0, 0], 0, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 1, 0, 0, 0, 0], 4]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 1, 0, 0, 0, 0], 4], [[1, 1, 1, 0, 0, 0], 1, True]]]]\nfor label, args, expected in fixtures[N - 1]:\n    check(label, solve(*args), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"fixed":{"sha256":"d089958d0ef2cc0f886d848288d8bf97ee078fdfc00f60d167db9ccbfd575229","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(H, r, max_iter):\n    c = list(r)\n    for it in range(max_iter + 1):\n        unsat = [chk for chk in H if sum(c[v] for v in chk) % 2]\n        if not unsat:\n            return [c, it, True]\n        if it == max_iter:\n            break\n        cnt = [0] * len(c)\n        for chk in unsat:\n            for v in chk:\n                cnt[v] += 1\n        top = max(cnt)\n        c = [b ^ 1 if cnt[k] == top else b for k, b in enumerate(c)]\n    return [c, max_iter, False]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 0]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 0], [[0, 0, 0, 0, 0, 0, 0], 0, True]], ['regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 2]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 2], [[0, 0, 0, 0, 0, 0, 0], 2, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 2]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 2], [[0, 0, 0, 0, 0, 0, 0], 0, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 3]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 3], [[0, 0, 0, 0, 0, 0, 0], 2, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 0, 0, 1], 4]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 0, 0, 1], 4], [[0, 0, 1, 1, 0, 0, 1], 2, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 1, 0, 0], 1]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 1, 0, 0], 1], [[1, 0, 1, 1, 0, 0, 1], 1, False]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 3]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 3], [[0, 0, 0, 0, 0, 0, 0], 0, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 1, 1], 2]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 1, 1], 2], [[0, 0, 1, 0, 1, 1], 1, True]]], [['regression [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 1, 0, 0], 1]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 1, 0, 0], 1], [[0, 0, 0, 0, 0, 0], 1, True]], ['regression [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 0, 0, 0, 0, 0], 1]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 0, 0, 0, 0, 0], 1], [[0, 0, 0, 0, 0, 0], 1, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 1, 1], 2]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 1, 1], 2], [[0, 0, 1, 0, 1, 1], 1, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 0], 1]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 0], 1], [[0, 0, 0, 0, 0, 0], 0, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 1], 2]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 1], 2], [[0, 0, 0, 0, 0, 0], 1, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 0], 4]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 0], 4], [[0, 0, 0, 0, 0, 0], 0, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 1, 0, 0, 0, 0], 4]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 1, 0, 0, 0, 0], 4], [[1, 1, 1, 0, 0, 0], 1, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 1, 0, 0], 2]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 1, 0, 0], 2], [[0, 0, 0, 0, 0, 0], 1, True]]], [['regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 2]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 2], [[0, 0, 0, 0, 0, 0, 0], 2, True]], ['regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 0, 0, 0, 0, 1], 2]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 0, 0, 0, 0, 1], 2], [[0, 1, 0, 0, 1, 0, 1], 2, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 1, 0, 0], 2]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 1, 0, 0], 2], [[0, 0, 0, 0, 0, 0], 1, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 1, 0, 0, 1, 1], 3]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 1, 0, 0, 1, 1], 3], [[0, 1, 1, 0, 0, 1, 1], 0, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 1, 0, 1, 1, 1], 1]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 1, 0, 1, 1, 1], 1], [[0, 1, 1, 0, 0, 1, 0], 1, False]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 1, 0, 1, 1, 1], 0]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 1, 0, 1, 1, 1], 0], [[0, 1, 1, 0, 1, 1, 1], 0, False]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [1, 1, 1, 0, 0, 0, 0], 2]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [1, 1, 1, 0, 0, 0, 0], 2], [[1, 1, 1, 0, 0, 0, 0], 0, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 1, 0, 0, 0, 0], 3]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 1, 0, 0, 0, 0], 3], [[1, 1, 1, 0, 0, 0], 1, True]]], [['regression [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 0, 0, 0, 0, 0], 1]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 0, 0, 0, 0, 0], 1], [[0, 0, 0, 0, 0, 0], 1, True]], ['regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 0]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 0], [[0, 0, 0, 0, 0, 0, 0], 0, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 1, 0, 0, 0, 0], 3]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 1, 0, 0, 0, 0], 3], [[1, 1, 1, 0, 0, 0], 1, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 2]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 2], [[0, 0, 0, 0, 0, 0, 0], 0, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 3]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 3], [[0, 0, 0, 0, 0, 0, 0], 2, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 0, 0, 1], 4]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 0, 0, 1], 4], [[0, 0, 1, 1, 0, 0, 1], 2, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 1, 0, 0], 1]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 1, 0, 0], 1], [[1, 0, 1, 1, 0, 0, 1], 1, False]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 3]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 3], [[0, 0, 0, 0, 0, 0, 0], 0, True]]], [['regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 0, 0, 0, 0, 1], 2]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 1, 0, 0, 0, 0, 1], 2], [[0, 1, 0, 0, 1, 0, 1], 2, True]], ['regression [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 1, 0, 0], 1]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 1, 0, 0], 1], [[0, 0, 0, 0, 0, 0], 1, True]], ['control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 3]', [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 3], [[0, 0, 0, 0, 0, 0, 0], 0, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 1, 1], 2]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 1, 1], 2], [[0, 0, 1, 0, 1, 1], 1, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 0], 1]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 0], 1], [[0, 0, 0, 0, 0, 0], 0, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 1], 2]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 1], 2], [[0, 0, 0, 0, 0, 0], 1, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 0], 4]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 0, 0], 4], [[0, 0, 0, 0, 0, 0], 0, True]], ['control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 1, 0, 0, 0, 0], 4]', [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [1, 1, 0, 0, 0, 0], 4], [[1, 1, 1, 0, 0, 0], 1, True]]]]\nfor label, args, expected in fixtures[N - 1]:\n    check(label, solve(*args), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"}},"limitations":"A deterministic, bounded teaching model of the named code under the stated contract; not a production codec. 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.","method":"Deterministic executable model with adversarial boundary fixtures.","provenance":{"created_by":"Failure Map","dependencies":"Python standard library","family":"w2-error_correcting_codes-ldpc-bit-flipping-final-syndrome","generated_at":"2026-09-29T14:48:35.514040+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Hard-decision LDPC decoders in flash controllers use bit flipping as a low-power first pass.","repair":"Evaluate the syndrome first, then stop if the cap has been reached.","root_cause":"The iteration cap is tested before the syndrome, so the result of the last flip is never checked.","sha256":"c310c34bc8f8d82c7006fde6ac0ced24ae02a00d3489f6329276999ce2ff07c4","title":"Bit flipping stops before checking the last flip · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":39.367,"exit_code":1,"observations":[{"actual":[[0,0,0,0,0,0,0],0,false],"check":"regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 0]","expected":[[0,0,0,0,0,0,0],0,true],"passed":false},{"actual":[[0,0,0,0,0,0,0],2,false],"check":"regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 2]","expected":[[0,0,0,0,0,0,0],2,true],"passed":false},{"actual":[[0,0,0,0,0,0,0],0,true],"check":"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 2]","expected":[[0,0,0,0,0,0,0],0,true],"passed":true},{"actual":[[0,0,0,0,0,0,0],2,true],"check":"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 3]","expected":[[0,0,0,0,0,0,0],2,true],"passed":true},{"actual":[[0,0,1,1,0,0,1],2,true],"check":"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 0, 0, 1], 4]","expected":[[0,0,1,1,0,0,1],2,true],"passed":true},{"actual":[[1,0,1,1,0,0,1],1,false],"check":"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 1, 0, 0], 1]","expected":[[1,0,1,1,0,0,1],1,false],"passed":true},{"actual":[[0,0,0,0,0,0,0],0,true],"check":"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 3]","expected":[[0,0,0,0,0,0,0],0,true],"passed":true},{"actual":[[0,0,1,0,1,1],1,true],"check":"control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 1, 1], 2]","expected":[[0,0,1,0,1,1],1,true],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 0]\", \"actual\": [[0, 0, 0, 0, 0, 0, 0], 0, false], \"expected\": [[0, 0, 0, 0, 0, 0, 0], 0, true], \"passed\": false}, {\"check\": \"regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 2]\", \"actual\": [[0, 0, 0, 0, 0, 0, 0], 2, false], \"expected\": [[0, 0, 0, 0, 0, 0, 0], 2, true], \"passed\": false}, {\"check\": \"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 2]\", \"actual\": [[0, 0, 0, 0, 0, 0, 0], 0, true], \"expected\": [[0, 0, 0, 0, 0, 0, 0], 0, true], \"passed\": true}, {\"check\": \"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 3]\", \"actual\": [[0, 0, 0, 0, 0, 0, 0], 2, true], \"expected\": [[0, 0, 0, 0, 0, 0, 0], 2, true], \"passed\": true}, {\"check\": \"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 0, 0, 1], 4]\", \"actual\": [[0, 0, 1, 1, 0, 0, 1], 2, true], \"expected\": [[0, 0, 1, 1, 0, 0, 1], 2, true], \"passed\": true}, {\"check\": \"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 1, 0, 0], 1]\", \"actual\": [[1, 0, 1, 1, 0, 0, 1], 1, false], \"expected\": [[1, 0, 1, 1, 0, 0, 1], 1, false], \"passed\": true}, {\"check\": \"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 3]\", \"actual\": [[0, 0, 0, 0, 0, 0, 0], 0, true], \"expected\": [[0, 0, 0, 0, 0, 0, 0], 0, true], \"passed\": true}, {\"check\": \"control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 1, 1], 2]\", \"actual\": [[0, 0, 1, 0, 1, 1], 1, true], \"expected\": [[0, 0, 1, 0, 1, 1], 1, true], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":37.18,"exit_code":1,"observations":[{"actual":[[0,0,0,0,0,0,0],0,false],"check":"regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 0]","expected":[[0,0,0,0,0,0,0],0,true],"passed":false},{"actual":[[0,0,0,0,0,0,0],2,false],"check":"regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 2]","expected":[[0,0,0,0,0,0,0],2,true],"passed":false},{"actual":[[0,0,0,0,0,0,0],0,true],"check":"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 2]","expected":[[0,0,0,0,0,0,0],0,true],"passed":true},{"actual":[[0,0,0,0,0,0,0],2,true],"check":"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 3]","expected":[[0,0,0,0,0,0,0],2,true],"passed":true},{"actual":[[0,0,1,1,0,0,1],2,true],"check":"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 0, 0, 1], 4]","expected":[[0,0,1,1,0,0,1],2,true],"passed":true},{"actual":[[1,0,1,1,0,0,1],1,false],"check":"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 1, 0, 0], 1]","expected":[[1,0,1,1,0,0,1],1,false],"passed":true},{"actual":[[0,0,0,0,0,0,0],0,true],"check":"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 3]","expected":[[0,0,0,0,0,0,0],0,true],"passed":true},{"actual":[[0,0,1,0,1,1],1,true],"check":"control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 1, 1], 2]","expected":[[0,0,1,0,1,1],1,true],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 0]\", \"actual\": [[0, 0, 0, 0, 0, 0, 0], 0, false], \"expected\": [[0, 0, 0, 0, 0, 0, 0], 0, true], \"passed\": false}, {\"check\": \"regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 2]\", \"actual\": [[0, 0, 0, 0, 0, 0, 0], 2, false], \"expected\": [[0, 0, 0, 0, 0, 0, 0], 2, true], \"passed\": false}, {\"check\": \"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 2]\", \"actual\": [[0, 0, 0, 0, 0, 0, 0], 0, true], \"expected\": [[0, 0, 0, 0, 0, 0, 0], 0, true], \"passed\": true}, {\"check\": \"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 3]\", \"actual\": [[0, 0, 0, 0, 0, 0, 0], 2, true], \"expected\": [[0, 0, 0, 0, 0, 0, 0], 2, true], \"passed\": true}, {\"check\": \"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 0, 0, 1], 4]\", \"actual\": [[0, 0, 1, 1, 0, 0, 1], 2, true], \"expected\": [[0, 0, 1, 1, 0, 0, 1], 2, true], \"passed\": true}, {\"check\": \"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 1, 0, 0], 1]\", \"actual\": [[1, 0, 1, 1, 0, 0, 1], 1, false], \"expected\": [[1, 0, 1, 1, 0, 0, 1], 1, false], \"passed\": true}, {\"check\": \"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 3]\", \"actual\": [[0, 0, 0, 0, 0, 0, 0], 0, true], \"expected\": [[0, 0, 0, 0, 0, 0, 0], 0, true], \"passed\": true}, {\"check\": \"control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 1, 1], 2]\", \"actual\": [[0, 0, 1, 0, 1, 1], 1, true], \"expected\": [[0, 0, 1, 0, 1, 1], 1, true], \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":38.891,"exit_code":0,"observations":[{"actual":[[0,0,0,0,0,0,0],0,true],"check":"regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 0]","expected":[[0,0,0,0,0,0,0],0,true],"passed":true},{"actual":[[0,0,0,0,0,0,0],2,true],"check":"regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 2]","expected":[[0,0,0,0,0,0,0],2,true],"passed":true},{"actual":[[0,0,0,0,0,0,0],0,true],"check":"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 2]","expected":[[0,0,0,0,0,0,0],0,true],"passed":true},{"actual":[[0,0,0,0,0,0,0],2,true],"check":"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 3]","expected":[[0,0,0,0,0,0,0],2,true],"passed":true},{"actual":[[0,0,1,1,0,0,1],2,true],"check":"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 0, 0, 1], 4]","expected":[[0,0,1,1,0,0,1],2,true],"passed":true},{"actual":[[1,0,1,1,0,0,1],1,false],"check":"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 1, 0, 0], 1]","expected":[[1,0,1,1,0,0,1],1,false],"passed":true},{"actual":[[0,0,0,0,0,0,0],0,true],"check":"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 3]","expected":[[0,0,0,0,0,0,0],0,true],"passed":true},{"actual":[[0,0,1,0,1,1],1,true],"check":"control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 1, 1], 2]","expected":[[0,0,1,0,1,1],1,true],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 0]\", \"actual\": [[0, 0, 0, 0, 0, 0, 0], 0, true], \"expected\": [[0, 0, 0, 0, 0, 0, 0], 0, true], \"passed\": true}, {\"check\": \"regression [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 2]\", \"actual\": [[0, 0, 0, 0, 0, 0, 0], 2, true], \"expected\": [[0, 0, 0, 0, 0, 0, 0], 2, true], \"passed\": true}, {\"check\": \"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 2]\", \"actual\": [[0, 0, 0, 0, 0, 0, 0], 0, true], \"expected\": [[0, 0, 0, 0, 0, 0, 0], 0, true], \"passed\": true}, {\"check\": \"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 1, 0], 3]\", \"actual\": [[0, 0, 0, 0, 0, 0, 0], 2, true], \"expected\": [[0, 0, 0, 0, 0, 0, 0], 2, true], \"passed\": true}, {\"check\": \"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 0, 0, 1], 4]\", \"actual\": [[0, 0, 1, 1, 0, 0, 1], 2, true], \"expected\": [[0, 0, 1, 1, 0, 0, 1], 2, true], \"passed\": true}, {\"check\": \"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 1, 1, 0, 0], 1]\", \"actual\": [[1, 0, 1, 1, 0, 0, 1], 1, false], \"expected\": [[1, 0, 1, 1, 0, 0, 1], 1, false], \"passed\": true}, {\"check\": \"control [[[0, 2, 4, 6], [1, 2, 5, 6], [3, 4, 5, 6]], [0, 0, 0, 0, 0, 0, 0], 3]\", \"actual\": [[0, 0, 0, 0, 0, 0, 0], 0, true], \"expected\": [[0, 0, 0, 0, 0, 0, 0], 0, true], \"passed\": true}, {\"check\": \"control [[[0, 1, 3], [1, 2, 4], [0, 2, 5], [3, 4, 5]], [0, 0, 0, 0, 1, 1], 2]\", \"actual\": [[0, 0, 1, 0, 1, 1], 1, true], \"expected\": [[0, 0, 1, 0, 1, 1], 1, true], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}