{"abstract":"Decoded messages are wrong because correlations are not symmetric around zero.","category":"Error-correcting codes","checks":8,"contract":"Maximum-likelihood decoding of the first-order Reed-Muller code RM(1,3) by fast Hadamard transform. Codeword bit x (0..7) is m0 ^ m1*x2 ^ m2*x1 ^ m3*x0 where x2 x1 x0 are the bits of x. Map bit b to 1 - 2b, transform, pick u with the largest |W[u]| (smallest u on ties); m1 m2 m3 are the bits of u from the top, m0 = 0 when W[u] > 0 else 1. Return [[m0, m1, m2, m3], |W[u]|]; invalid input returns None.","evaluation_group":"w2-error_correcting_codes-reed-muller-1-3","failed_approach":"Using 2b - 1 flips every correlation sign and inverts m0.","family":"w2-error_correcting_codes-reed-muller-1-3-bipolar-map","id":"FA-72071","implementations":{"attempt":{"sha256":"cd7b6081f90c0d901c57fb37608a101e9c71c52e63fc49b311c263c2f8b97ac9","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(r):\n    if len(r) != 8 or any(b not in (0, 1) for b in r):\n        return None\n    W = [2 * b - 1 for b in r]\n    h = 1\n    while h < 8:\n        for i in range(0, 8, 2 * h):\n            for j in range(i, i + h):\n                a, b = W[j], W[j + h]\n                W[j], W[j + h] = a + b, a - b\n        h *= 2\n    best = 0\n    for u in range(1, 8):\n        if abs(W[u]) > abs(W[best]):\n            best = u\n    m0 = 0 if W[best] > 0 else 1\n    return [[m0, (best >> 2) & 1, (best >> 1) & 1, best & 1], abs(W[best])]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['regression [[0, 0, 0, 0, 0, 0, 0, 0]]', [[0, 0, 0, 0, 0, 0, 0, 0]], [[0, 0, 0, 0], 8]], ['regression [[0, 0, 0, 0, 0, 0, 1, 0]]', [[0, 0, 0, 0, 0, 0, 1, 0]], [[0, 0, 0, 0], 6]], ['control [[0, 1, 2, 0, 0, 0, 0, 0]]', [[0, 1, 2, 0, 0, 0, 0, 0]], None], ['control [[0, 1, 0, 1, 0, 1, 0, 1]]', [[0, 1, 0, 1, 0, 1, 0, 1]], [[0, 0, 0, 1], 8]], ['control [[0, 1, 0, 1, 0, 1, 0, 0]]', [[0, 1, 0, 1, 0, 1, 0, 0]], [[0, 0, 0, 1], 6]], ['control [[0, 0, 1, 1, 0, 0, 1, 1]]', [[0, 0, 1, 1, 0, 0, 1, 1]], [[0, 0, 1, 0], 8]], ['control [[0, 0, 1, 1, 0, 0, 0, 1]]', [[0, 0, 1, 1, 0, 0, 0, 1]], [[0, 0, 1, 0], 6]], ['control [[0, 1, 1, 0, 0, 1, 1, 0]]', [[0, 1, 1, 0, 0, 1, 1, 0]], [[0, 0, 1, 1], 8]]], [['regression [[0, 1, 0, 1, 0, 1, 0, 0]]', [[0, 1, 0, 1, 0, 1, 0, 0]], [[0, 0, 0, 1], 6]], ['regression [[0, 0, 1, 1, 0, 0, 1, 1]]', [[0, 0, 1, 1, 0, 0, 1, 1]], [[0, 0, 1, 0], 8]], ['control [[0, 1, 2, 0, 0, 0, 0, 0]]', [[0, 1, 2, 0, 0, 0, 0, 0]], None], ['control [[0, 1, 1, 0, 0, 1, 1, 0]]', [[0, 1, 1, 0, 0, 1, 1, 0]], [[0, 0, 1, 1], 8]], ['control [[1, 1, 1, 0, 0, 1, 1, 0]]', [[1, 1, 1, 0, 0, 1, 1, 0]], [[0, 0, 1, 1], 6]], ['control [[0, 0, 0, 0, 1, 1, 1, 1]]', [[0, 0, 0, 0, 1, 1, 1, 1]], [[0, 1, 0, 0], 8]], ['control [[0, 0, 0, 1, 1, 1, 1, 1]]', [[0, 0, 0, 1, 1, 1, 1, 1]], [[0, 1, 0, 0], 6]], ['control [[0, 1, 0, 1, 1, 0, 1, 0]]', [[0, 1, 0, 1, 1, 0, 1, 0]], [[0, 1, 0, 1], 8]]], [['regression [[0, 1, 1, 0, 0, 1, 1, 0]]', [[0, 1, 1, 0, 0, 1, 1, 0]], [[0, 0, 1, 1], 8]], ['regression [[1, 1, 1, 0, 0, 1, 1, 0]]', [[1, 1, 1, 0, 0, 1, 1, 0]], [[0, 0, 1, 1], 6]], ['control [[0, 1, 2, 0, 0, 0, 0, 0]]', [[0, 1, 2, 0, 0, 0, 0, 0]], None], ['control [[0, 1, 0, 0, 1, 0, 1, 0]]', [[0, 1, 0, 0, 1, 0, 1, 0]], [[0, 1, 0, 1], 6]], ['control [[0, 0, 1, 1, 1, 1, 0, 0]]', [[0, 0, 1, 1, 1, 1, 0, 0]], [[0, 1, 1, 0], 8]], ['control [[0, 0, 1, 1, 1, 1, 1, 0]]', [[0, 0, 1, 1, 1, 1, 1, 0]], [[0, 1, 1, 0], 6]], ['control [[0, 1, 1, 0, 1, 0, 0, 1]]', [[0, 1, 1, 0, 1, 0, 0, 1]], [[0, 1, 1, 1], 8]], ['control [[0, 1, 1, 0, 1, 0, 1, 1]]', [[0, 1, 1, 0, 1, 0, 1, 1]], [[0, 1, 1, 1], 6]]], [['regression [[0, 0, 0, 1, 1, 1, 1, 1]]', [[0, 0, 0, 1, 1, 1, 1, 1]], [[0, 1, 0, 0], 6]], ['regression [[0, 1, 0, 1, 1, 0, 1, 0]]', [[0, 1, 0, 1, 1, 0, 1, 0]], [[0, 1, 0, 1], 8]], ['control [[0, 1, 2, 0, 0, 0, 0, 0]]', [[0, 1, 2, 0, 0, 0, 0, 0]], None], ['control [[1, 1, 1, 1, 1, 1, 1, 1]]', [[1, 1, 1, 1, 1, 1, 1, 1]], [[1, 0, 0, 0], 8]], ['control [[1, 1, 0, 1, 1, 1, 1, 1]]', [[1, 1, 0, 1, 1, 1, 1, 1]], [[1, 0, 0, 0], 6]], ['control [[1, 0, 1, 0, 1, 0, 1, 0]]', [[1, 0, 1, 0, 1, 0, 1, 0]], [[1, 0, 0, 1], 8]], ['control [[0, 0, 1, 0, 1, 0, 1, 0]]', [[0, 0, 1, 0, 1, 0, 1, 0]], [[1, 0, 0, 1], 6]], ['control [[1, 1, 0, 0, 1, 1, 0, 0]]', [[1, 1, 0, 0, 1, 1, 0, 0]], [[1, 0, 1, 0], 8]]], [['regression [[0, 0, 1, 1, 1, 1, 0, 0]]', [[0, 0, 1, 1, 1, 1, 0, 0]], [[0, 1, 1, 0], 8]], ['regression [[0, 0, 1, 1, 1, 1, 1, 0]]', [[0, 0, 1, 1, 1, 1, 1, 0]], [[0, 1, 1, 0], 6]], ['control [[0, 1, 2, 0, 0, 0, 0, 0]]', [[0, 1, 2, 0, 0, 0, 0, 0]], None], ['control [[0, 1, 0, 0, 1, 1, 0, 0]]', [[0, 1, 0, 0, 1, 1, 0, 0]], [[1, 0, 1, 0], 6]], ['control [[1, 0, 0, 1, 1, 0, 0, 1]]', [[1, 0, 0, 1, 1, 0, 0, 1]], [[1, 0, 1, 1], 8]], ['control [[1, 0, 0, 1, 1, 1, 0, 1]]', [[1, 0, 0, 1, 1, 1, 0, 1]], [[1, 0, 1, 1], 6]], ['control [[1, 1, 1, 1, 0, 0, 0, 0]]', [[1, 1, 1, 1, 0, 0, 0, 0]], [[1, 1, 0, 0], 8]], ['control [[0, 1, 1, 1, 0, 0, 0, 0]]', [[0, 1, 1, 1, 0, 0, 0, 0]], [[1, 1, 0, 0], 6]]]]\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":"de2acbb92fec3eea6f6ef3fd9904e439cad138db06b9dba772a7355f27e3699e","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(r):\n    if len(r) != 8 or any(b not in (0, 1) for b in r):\n        return None\n    W = list(r)\n    h = 1\n    while h < 8:\n        for i in range(0, 8, 2 * h):\n            for j in range(i, i + h):\n                a, b = W[j], W[j + h]\n                W[j], W[j + h] = a + b, a - b\n        h *= 2\n    best = 0\n    for u in range(1, 8):\n        if abs(W[u]) > abs(W[best]):\n            best = u\n    m0 = 0 if W[best] > 0 else 1\n    return [[m0, (best >> 2) & 1, (best >> 1) & 1, best & 1], abs(W[best])]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['regression [[0, 0, 0, 0, 0, 0, 0, 0]]', [[0, 0, 0, 0, 0, 0, 0, 0]], [[0, 0, 0, 0], 8]], ['regression [[0, 0, 0, 0, 0, 0, 1, 0]]', [[0, 0, 0, 0, 0, 0, 1, 0]], [[0, 0, 0, 0], 6]], ['control [[0, 1, 2, 0, 0, 0, 0, 0]]', [[0, 1, 2, 0, 0, 0, 0, 0]], None], ['control [[0, 1, 0, 1, 0, 1, 0, 1]]', [[0, 1, 0, 1, 0, 1, 0, 1]], [[0, 0, 0, 1], 8]], ['control [[0, 1, 0, 1, 0, 1, 0, 0]]', [[0, 1, 0, 1, 0, 1, 0, 0]], [[0, 0, 0, 1], 6]], ['control [[0, 0, 1, 1, 0, 0, 1, 1]]', [[0, 0, 1, 1, 0, 0, 1, 1]], [[0, 0, 1, 0], 8]], ['control [[0, 0, 1, 1, 0, 0, 0, 1]]', [[0, 0, 1, 1, 0, 0, 0, 1]], [[0, 0, 1, 0], 6]], ['control [[0, 1, 1, 0, 0, 1, 1, 0]]', [[0, 1, 1, 0, 0, 1, 1, 0]], [[0, 0, 1, 1], 8]]], [['regression [[0, 1, 0, 1, 0, 1, 0, 0]]', [[0, 1, 0, 1, 0, 1, 0, 0]], [[0, 0, 0, 1], 6]], ['regression [[0, 0, 1, 1, 0, 0, 1, 1]]', [[0, 0, 1, 1, 0, 0, 1, 1]], [[0, 0, 1, 0], 8]], ['control [[0, 1, 2, 0, 0, 0, 0, 0]]', [[0, 1, 2, 0, 0, 0, 0, 0]], None], ['control [[0, 1, 1, 0, 0, 1, 1, 0]]', [[0, 1, 1, 0, 0, 1, 1, 0]], [[0, 0, 1, 1], 8]], ['control [[1, 1, 1, 0, 0, 1, 1, 0]]', [[1, 1, 1, 0, 0, 1, 1, 0]], [[0, 0, 1, 1], 6]], ['control [[0, 0, 0, 0, 1, 1, 1, 1]]', [[0, 0, 0, 0, 1, 1, 1, 1]], [[0, 1, 0, 0], 8]], ['control [[0, 0, 0, 1, 1, 1, 1, 1]]', [[0, 0, 0, 1, 1, 1, 1, 1]], [[0, 1, 0, 0], 6]], ['control [[0, 1, 0, 1, 1, 0, 1, 0]]', [[0, 1, 0, 1, 1, 0, 1, 0]], [[0, 1, 0, 1], 8]]], [['regression [[0, 1, 1, 0, 0, 1, 1, 0]]', [[0, 1, 1, 0, 0, 1, 1, 0]], [[0, 0, 1, 1], 8]], ['regression [[1, 1, 1, 0, 0, 1, 1, 0]]', [[1, 1, 1, 0, 0, 1, 1, 0]], [[0, 0, 1, 1], 6]], ['control [[0, 1, 2, 0, 0, 0, 0, 0]]', [[0, 1, 2, 0, 0, 0, 0, 0]], None], ['control [[0, 1, 0, 0, 1, 0, 1, 0]]', [[0, 1, 0, 0, 1, 0, 1, 0]], [[0, 1, 0, 1], 6]], ['control [[0, 0, 1, 1, 1, 1, 0, 0]]', [[0, 0, 1, 1, 1, 1, 0, 0]], [[0, 1, 1, 0], 8]], ['control [[0, 0, 1, 1, 1, 1, 1, 0]]', [[0, 0, 1, 1, 1, 1, 1, 0]], [[0, 1, 1, 0], 6]], ['control [[0, 1, 1, 0, 1, 0, 0, 1]]', [[0, 1, 1, 0, 1, 0, 0, 1]], [[0, 1, 1, 1], 8]], ['control [[0, 1, 1, 0, 1, 0, 1, 1]]', [[0, 1, 1, 0, 1, 0, 1, 1]], [[0, 1, 1, 1], 6]]], [['regression [[0, 0, 0, 1, 1, 1, 1, 1]]', [[0, 0, 0, 1, 1, 1, 1, 1]], [[0, 1, 0, 0], 6]], ['regression [[0, 1, 0, 1, 1, 0, 1, 0]]', [[0, 1, 0, 1, 1, 0, 1, 0]], [[0, 1, 0, 1], 8]], ['control [[0, 1, 2, 0, 0, 0, 0, 0]]', [[0, 1, 2, 0, 0, 0, 0, 0]], None], ['control [[1, 1, 1, 1, 1, 1, 1, 1]]', [[1, 1, 1, 1, 1, 1, 1, 1]], [[1, 0, 0, 0], 8]], ['control [[1, 1, 0, 1, 1, 1, 1, 1]]', [[1, 1, 0, 1, 1, 1, 1, 1]], [[1, 0, 0, 0], 6]], ['control [[1, 0, 1, 0, 1, 0, 1, 0]]', [[1, 0, 1, 0, 1, 0, 1, 0]], [[1, 0, 0, 1], 8]], ['control [[0, 0, 1, 0, 1, 0, 1, 0]]', [[0, 0, 1, 0, 1, 0, 1, 0]], [[1, 0, 0, 1], 6]], ['control [[1, 1, 0, 0, 1, 1, 0, 0]]', [[1, 1, 0, 0, 1, 1, 0, 0]], [[1, 0, 1, 0], 8]]], [['regression [[0, 0, 1, 1, 1, 1, 0, 0]]', [[0, 0, 1, 1, 1, 1, 0, 0]], [[0, 1, 1, 0], 8]], ['regression [[0, 0, 1, 1, 1, 1, 1, 0]]', [[0, 0, 1, 1, 1, 1, 1, 0]], [[0, 1, 1, 0], 6]], ['control [[0, 1, 2, 0, 0, 0, 0, 0]]', [[0, 1, 2, 0, 0, 0, 0, 0]], None], ['control [[0, 1, 0, 0, 1, 1, 0, 0]]', [[0, 1, 0, 0, 1, 1, 0, 0]], [[1, 0, 1, 0], 6]], ['control [[1, 0, 0, 1, 1, 0, 0, 1]]', [[1, 0, 0, 1, 1, 0, 0, 1]], [[1, 0, 1, 1], 8]], ['control [[1, 0, 0, 1, 1, 1, 0, 1]]', [[1, 0, 0, 1, 1, 1, 0, 1]], [[1, 0, 1, 1], 6]], ['control [[1, 1, 1, 1, 0, 0, 0, 0]]', [[1, 1, 1, 1, 0, 0, 0, 0]], [[1, 1, 0, 0], 8]], ['control [[0, 1, 1, 1, 0, 0, 0, 0]]', [[0, 1, 1, 1, 0, 0, 0, 0]], [[1, 1, 0, 0], 6]]]]\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":"c4692736b7a51919fd22a5dee898970872fa8dd4bb3b868321e6dc3a1cc0a55d","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\n\nN = 1\nobservations = []\ndef solve(r):\n    if len(r) != 8 or any(b not in (0, 1) for b in r):\n        return None\n    W = [1 - 2 * b for b in r]\n    h = 1\n    while h < 8:\n        for i in range(0, 8, 2 * h):\n            for j in range(i, i + h):\n                a, b = W[j], W[j + h]\n                W[j], W[j + h] = a + b, a - b\n        h *= 2\n    best = 0\n    for u in range(1, 8):\n        if abs(W[u]) > abs(W[best]):\n            best = u\n    m0 = 0 if W[best] > 0 else 1\n    return [[m0, (best >> 2) & 1, (best >> 1) & 1, best & 1], abs(W[best])]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[['regression [[0, 0, 0, 0, 0, 0, 0, 0]]', [[0, 0, 0, 0, 0, 0, 0, 0]], [[0, 0, 0, 0], 8]], ['regression [[0, 0, 0, 0, 0, 0, 1, 0]]', [[0, 0, 0, 0, 0, 0, 1, 0]], [[0, 0, 0, 0], 6]], ['control [[0, 1, 2, 0, 0, 0, 0, 0]]', [[0, 1, 2, 0, 0, 0, 0, 0]], None], ['control [[0, 1, 0, 1, 0, 1, 0, 1]]', [[0, 1, 0, 1, 0, 1, 0, 1]], [[0, 0, 0, 1], 8]], ['control [[0, 1, 0, 1, 0, 1, 0, 0]]', [[0, 1, 0, 1, 0, 1, 0, 0]], [[0, 0, 0, 1], 6]], ['control [[0, 0, 1, 1, 0, 0, 1, 1]]', [[0, 0, 1, 1, 0, 0, 1, 1]], [[0, 0, 1, 0], 8]], ['control [[0, 0, 1, 1, 0, 0, 0, 1]]', [[0, 0, 1, 1, 0, 0, 0, 1]], [[0, 0, 1, 0], 6]], ['control [[0, 1, 1, 0, 0, 1, 1, 0]]', [[0, 1, 1, 0, 0, 1, 1, 0]], [[0, 0, 1, 1], 8]]], [['regression [[0, 1, 0, 1, 0, 1, 0, 0]]', [[0, 1, 0, 1, 0, 1, 0, 0]], [[0, 0, 0, 1], 6]], ['regression [[0, 0, 1, 1, 0, 0, 1, 1]]', [[0, 0, 1, 1, 0, 0, 1, 1]], [[0, 0, 1, 0], 8]], ['control [[0, 1, 2, 0, 0, 0, 0, 0]]', [[0, 1, 2, 0, 0, 0, 0, 0]], None], ['control [[0, 1, 1, 0, 0, 1, 1, 0]]', [[0, 1, 1, 0, 0, 1, 1, 0]], [[0, 0, 1, 1], 8]], ['control [[1, 1, 1, 0, 0, 1, 1, 0]]', [[1, 1, 1, 0, 0, 1, 1, 0]], [[0, 0, 1, 1], 6]], ['control [[0, 0, 0, 0, 1, 1, 1, 1]]', [[0, 0, 0, 0, 1, 1, 1, 1]], [[0, 1, 0, 0], 8]], ['control [[0, 0, 0, 1, 1, 1, 1, 1]]', [[0, 0, 0, 1, 1, 1, 1, 1]], [[0, 1, 0, 0], 6]], ['control [[0, 1, 0, 1, 1, 0, 1, 0]]', [[0, 1, 0, 1, 1, 0, 1, 0]], [[0, 1, 0, 1], 8]]], [['regression [[0, 1, 1, 0, 0, 1, 1, 0]]', [[0, 1, 1, 0, 0, 1, 1, 0]], [[0, 0, 1, 1], 8]], ['regression [[1, 1, 1, 0, 0, 1, 1, 0]]', [[1, 1, 1, 0, 0, 1, 1, 0]], [[0, 0, 1, 1], 6]], ['control [[0, 1, 2, 0, 0, 0, 0, 0]]', [[0, 1, 2, 0, 0, 0, 0, 0]], None], ['control [[0, 1, 0, 0, 1, 0, 1, 0]]', [[0, 1, 0, 0, 1, 0, 1, 0]], [[0, 1, 0, 1], 6]], ['control [[0, 0, 1, 1, 1, 1, 0, 0]]', [[0, 0, 1, 1, 1, 1, 0, 0]], [[0, 1, 1, 0], 8]], ['control [[0, 0, 1, 1, 1, 1, 1, 0]]', [[0, 0, 1, 1, 1, 1, 1, 0]], [[0, 1, 1, 0], 6]], ['control [[0, 1, 1, 0, 1, 0, 0, 1]]', [[0, 1, 1, 0, 1, 0, 0, 1]], [[0, 1, 1, 1], 8]], ['control [[0, 1, 1, 0, 1, 0, 1, 1]]', [[0, 1, 1, 0, 1, 0, 1, 1]], [[0, 1, 1, 1], 6]]], [['regression [[0, 0, 0, 1, 1, 1, 1, 1]]', [[0, 0, 0, 1, 1, 1, 1, 1]], [[0, 1, 0, 0], 6]], ['regression [[0, 1, 0, 1, 1, 0, 1, 0]]', [[0, 1, 0, 1, 1, 0, 1, 0]], [[0, 1, 0, 1], 8]], ['control [[0, 1, 2, 0, 0, 0, 0, 0]]', [[0, 1, 2, 0, 0, 0, 0, 0]], None], ['control [[1, 1, 1, 1, 1, 1, 1, 1]]', [[1, 1, 1, 1, 1, 1, 1, 1]], [[1, 0, 0, 0], 8]], ['control [[1, 1, 0, 1, 1, 1, 1, 1]]', [[1, 1, 0, 1, 1, 1, 1, 1]], [[1, 0, 0, 0], 6]], ['control [[1, 0, 1, 0, 1, 0, 1, 0]]', [[1, 0, 1, 0, 1, 0, 1, 0]], [[1, 0, 0, 1], 8]], ['control [[0, 0, 1, 0, 1, 0, 1, 0]]', [[0, 0, 1, 0, 1, 0, 1, 0]], [[1, 0, 0, 1], 6]], ['control [[1, 1, 0, 0, 1, 1, 0, 0]]', [[1, 1, 0, 0, 1, 1, 0, 0]], [[1, 0, 1, 0], 8]]], [['regression [[0, 0, 1, 1, 1, 1, 0, 0]]', [[0, 0, 1, 1, 1, 1, 0, 0]], [[0, 1, 1, 0], 8]], ['regression [[0, 0, 1, 1, 1, 1, 1, 0]]', [[0, 0, 1, 1, 1, 1, 1, 0]], [[0, 1, 1, 0], 6]], ['control [[0, 1, 2, 0, 0, 0, 0, 0]]', [[0, 1, 2, 0, 0, 0, 0, 0]], None], ['control [[0, 1, 0, 0, 1, 1, 0, 0]]', [[0, 1, 0, 0, 1, 1, 0, 0]], [[1, 0, 1, 0], 6]], ['control [[1, 0, 0, 1, 1, 0, 0, 1]]', [[1, 0, 0, 1, 1, 0, 0, 1]], [[1, 0, 1, 1], 8]], ['control [[1, 0, 0, 1, 1, 1, 0, 1]]', [[1, 0, 0, 1, 1, 1, 0, 1]], [[1, 0, 1, 1], 6]], ['control [[1, 1, 1, 1, 0, 0, 0, 0]]', [[1, 1, 1, 1, 0, 0, 0, 0]], [[1, 1, 0, 0], 8]], ['control [[0, 1, 1, 1, 0, 0, 0, 0]]', [[0, 1, 1, 1, 0, 0, 0, 0]], [[1, 1, 0, 0], 6]]]]\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-reed-muller-1-3-bipolar-map","generated_at":"2026-09-29T14:48:35.303184+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Deep-space and control channels use RM(1,m) codes decoded with the Hadamard transform.","repair":"Map bit 0 to +1 and bit 1 to -1 before the transform.","root_cause":"The received bits are fed as 0/1 values instead of the bipolar map 1 - 2b.","sha256":"7f05ce6b673cc7a3b565f79afa80de95b459f4f972d8fb0c670353bf024f13d5","title":"Reed-Muller decoder correlates raw bits · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":40.284,"exit_code":1,"observations":[{"actual":[[1,0,0,0],8],"check":"regression [[0, 0, 0, 0, 0, 0, 0, 0]]","expected":[[0,0,0,0],8],"passed":false},{"actual":[[1,0,0,0],6],"check":"regression [[0, 0, 0, 0, 0, 0, 1, 0]]","expected":[[0,0,0,0],6],"passed":false},{"actual":null,"check":"control [[0, 1, 2, 0, 0, 0, 0, 0]]","expected":null,"passed":true},{"actual":[[1,0,0,1],8],"check":"control [[0, 1, 0, 1, 0, 1, 0, 1]]","expected":[[0,0,0,1],8],"passed":false},{"actual":[[1,0,0,1],6],"check":"control [[0, 1, 0, 1, 0, 1, 0, 0]]","expected":[[0,0,0,1],6],"passed":false},{"actual":[[1,0,1,0],8],"check":"control [[0, 0, 1, 1, 0, 0, 1, 1]]","expected":[[0,0,1,0],8],"passed":false},{"actual":[[1,0,1,0],6],"check":"control [[0, 0, 1, 1, 0, 0, 0, 1]]","expected":[[0,0,1,0],6],"passed":false},{"actual":[[1,0,1,1],8],"check":"control [[0, 1, 1, 0, 0, 1, 1, 0]]","expected":[[0,0,1,1],8],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression [[0, 0, 0, 0, 0, 0, 0, 0]]\", \"actual\": [[1, 0, 0, 0], 8], \"expected\": [[0, 0, 0, 0], 8], \"passed\": false}, {\"check\": \"regression [[0, 0, 0, 0, 0, 0, 1, 0]]\", \"actual\": [[1, 0, 0, 0], 6], \"expected\": [[0, 0, 0, 0], 6], \"passed\": false}, {\"check\": \"control [[0, 1, 2, 0, 0, 0, 0, 0]]\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"control [[0, 1, 0, 1, 0, 1, 0, 1]]\", \"actual\": [[1, 0, 0, 1], 8], \"expected\": [[0, 0, 0, 1], 8], \"passed\": false}, {\"check\": \"control [[0, 1, 0, 1, 0, 1, 0, 0]]\", \"actual\": [[1, 0, 0, 1], 6], \"expected\": [[0, 0, 0, 1], 6], \"passed\": false}, {\"check\": \"control [[0, 0, 1, 1, 0, 0, 1, 1]]\", \"actual\": [[1, 0, 1, 0], 8], \"expected\": [[0, 0, 1, 0], 8], \"passed\": false}, {\"check\": \"control [[0, 0, 1, 1, 0, 0, 0, 1]]\", \"actual\": [[1, 0, 1, 0], 6], \"expected\": [[0, 0, 1, 0], 6], \"passed\": false}, {\"check\": \"control [[0, 1, 1, 0, 0, 1, 1, 0]]\", \"actual\": [[1, 0, 1, 1], 8], \"expected\": [[0, 0, 1, 1], 8], \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":41.383,"exit_code":1,"observations":[{"actual":[[1,0,0,0],0],"check":"regression [[0, 0, 0, 0, 0, 0, 0, 0]]","expected":[[0,0,0,0],8],"passed":false},{"actual":[[0,0,0,0],1],"check":"regression [[0, 0, 0, 0, 0, 0, 1, 0]]","expected":[[0,0,0,0],6],"passed":false},{"actual":null,"check":"control [[0, 1, 2, 0, 0, 0, 0, 0]]","expected":null,"passed":true},{"actual":[[0,0,0,0],4],"check":"control [[0, 1, 0, 1, 0, 1, 0, 1]]","expected":[[0,0,0,1],8],"passed":false},{"actual":[[0,0,0,0],3],"check":"control [[0, 1, 0, 1, 0, 1, 0, 0]]","expected":[[0,0,0,1],6],"passed":false},{"actual":[[0,0,0,0],4],"check":"control [[0, 0, 1, 1, 0, 0, 1, 1]]","expected":[[0,0,1,0],8],"passed":false},{"actual":[[0,0,0,0],3],"check":"control [[0, 0, 1, 1, 0, 0, 0, 1]]","expected":[[0,0,1,0],6],"passed":false},{"actual":[[0,0,0,0],4],"check":"control [[0, 1, 1, 0, 0, 1, 1, 0]]","expected":[[0,0,1,1],8],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression [[0, 0, 0, 0, 0, 0, 0, 0]]\", \"actual\": [[1, 0, 0, 0], 0], \"expected\": [[0, 0, 0, 0], 8], \"passed\": false}, {\"check\": \"regression [[0, 0, 0, 0, 0, 0, 1, 0]]\", \"actual\": [[0, 0, 0, 0], 1], \"expected\": [[0, 0, 0, 0], 6], \"passed\": false}, {\"check\": \"control [[0, 1, 2, 0, 0, 0, 0, 0]]\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"control [[0, 1, 0, 1, 0, 1, 0, 1]]\", \"actual\": [[0, 0, 0, 0], 4], \"expected\": [[0, 0, 0, 1], 8], \"passed\": false}, {\"check\": \"control [[0, 1, 0, 1, 0, 1, 0, 0]]\", \"actual\": [[0, 0, 0, 0], 3], \"expected\": [[0, 0, 0, 1], 6], \"passed\": false}, {\"check\": \"control [[0, 0, 1, 1, 0, 0, 1, 1]]\", \"actual\": [[0, 0, 0, 0], 4], \"expected\": [[0, 0, 1, 0], 8], \"passed\": false}, {\"check\": \"control [[0, 0, 1, 1, 0, 0, 0, 1]]\", \"actual\": [[0, 0, 0, 0], 3], \"expected\": [[0, 0, 1, 0], 6], \"passed\": false}, {\"check\": \"control [[0, 1, 1, 0, 0, 1, 1, 0]]\", \"actual\": [[0, 0, 0, 0], 4], \"expected\": [[0, 0, 1, 1], 8], \"passed\": false}], \"passed\": false}\n"},"fixed":{"elapsed_ms":36.942,"exit_code":0,"observations":[{"actual":[[0,0,0,0],8],"check":"regression [[0, 0, 0, 0, 0, 0, 0, 0]]","expected":[[0,0,0,0],8],"passed":true},{"actual":[[0,0,0,0],6],"check":"regression [[0, 0, 0, 0, 0, 0, 1, 0]]","expected":[[0,0,0,0],6],"passed":true},{"actual":null,"check":"control [[0, 1, 2, 0, 0, 0, 0, 0]]","expected":null,"passed":true},{"actual":[[0,0,0,1],8],"check":"control [[0, 1, 0, 1, 0, 1, 0, 1]]","expected":[[0,0,0,1],8],"passed":true},{"actual":[[0,0,0,1],6],"check":"control [[0, 1, 0, 1, 0, 1, 0, 0]]","expected":[[0,0,0,1],6],"passed":true},{"actual":[[0,0,1,0],8],"check":"control [[0, 0, 1, 1, 0, 0, 1, 1]]","expected":[[0,0,1,0],8],"passed":true},{"actual":[[0,0,1,0],6],"check":"control [[0, 0, 1, 1, 0, 0, 0, 1]]","expected":[[0,0,1,0],6],"passed":true},{"actual":[[0,0,1,1],8],"check":"control [[0, 1, 1, 0, 0, 1, 1, 0]]","expected":[[0,0,1,1],8],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression [[0, 0, 0, 0, 0, 0, 0, 0]]\", \"actual\": [[0, 0, 0, 0], 8], \"expected\": [[0, 0, 0, 0], 8], \"passed\": true}, {\"check\": \"regression [[0, 0, 0, 0, 0, 0, 1, 0]]\", \"actual\": [[0, 0, 0, 0], 6], \"expected\": [[0, 0, 0, 0], 6], \"passed\": true}, {\"check\": \"control [[0, 1, 2, 0, 0, 0, 0, 0]]\", \"actual\": null, \"expected\": null, \"passed\": true}, {\"check\": \"control [[0, 1, 0, 1, 0, 1, 0, 1]]\", \"actual\": [[0, 0, 0, 1], 8], \"expected\": [[0, 0, 0, 1], 8], \"passed\": true}, {\"check\": \"control [[0, 1, 0, 1, 0, 1, 0, 0]]\", \"actual\": [[0, 0, 0, 1], 6], \"expected\": [[0, 0, 0, 1], 6], \"passed\": true}, {\"check\": \"control [[0, 0, 1, 1, 0, 0, 1, 1]]\", \"actual\": [[0, 0, 1, 0], 8], \"expected\": [[0, 0, 1, 0], 8], \"passed\": true}, {\"check\": \"control [[0, 0, 1, 1, 0, 0, 0, 1]]\", \"actual\": [[0, 0, 1, 0], 6], \"expected\": [[0, 0, 1, 0], 6], \"passed\": true}, {\"check\": \"control [[0, 1, 1, 0, 0, 1, 1, 0]]\", \"actual\": [[0, 0, 1, 1], 8], \"expected\": [[0, 0, 1, 1], 8], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}