{"abstract":"Raw estimates explode for sparse sketches because empty registers no longer contribute 1 each.","category":"Probabilistic sketches","checks":10,"contract":"Input {regs} with 16, 32, 64 or 128 registers. alpha is 0.673, 0.697, 0.709 for m = 16, 32, 64 and 0.7213/(1 + 1.079/m) otherwise. Raw E = alpha m^2 / sum 2^-r. If E <= 2.5m and V (zero registers) > 0, use linear counting m ln(m/V); otherwise if E > 2^32/30 apply the large-range correction -2^32 ln(1 - E/2^32). Return [round(E), V].","evaluation_group":"w2-probabilistic_sketches-hll-estimate","failed_approach":"Replacing the harmonic mean with a geometric mean reproduces LogLog, not HyperLogLog.","family":"w2-probabilistic_sketches-hll-estimate-harmonic-mean","id":"FA-72991","implementations":{"attempt":{"sha256":"df4a492191699f5244b40dca939d4634da4d200f1dff86f15bfcb0d4917f2f8d","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nN = 1\nobservations = []\ndef solve(x):\n    regs = x['regs']\n    m = len(regs)\n    if m == 16:\n        alpha = 0.673\n    elif m == 32:\n        alpha = 0.697\n    elif m == 64:\n        alpha = 0.709\n    else:\n        alpha = 0.7213 / (1 + 1.079 / m)\n    E = alpha * m * m / m * 2.0 ** -(sum(regs) / m)\n    V = regs.count(0)\n    if E <= 2.5 * m and V > 0:\n        E = m * math.log(m / V)\n    elif E > (2 ** 32) / 30:\n        E = -(2 ** 32) * math.log(1 - E / 2 ** 32)\n    return [round(E), V]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncases = [[['sparse m=16', {'regs': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 1, 3, 1, 1]}, [8, 10]],\n  ['dense m=32',\n   {'regs': [4,\n             5,\n             2,\n             2,\n             6,\n             6,\n             3,\n             6,\n             3,\n             5,\n             6,\n             6,\n             2,\n             4,\n             3,\n             6,\n             2,\n             3,\n             6,\n             5,\n             2,\n             4,\n             5,\n             4,\n             4,\n             4,\n             4,\n             2,\n             4,\n             3,\n             6,\n             6]},\n   [247, 0]],\n  ['dense m=64',\n   {'regs': [7,\n             3,\n             7,\n             8,\n             6,\n             6,\n             4,\n             6,\n             7,\n             4,\n             6,\n             4,\n             3,\n             3,\n             8,\n             8,\n             3,\n             8,\n             8,\n             8,\n             8,\n             8,\n             5,\n             4,\n             8,\n             7,\n             6,\n             6,\n             8,\n             3,\n             3,\n             8,\n             8,\n             8,\n             8,\n             6,\n             3,\n             6,\n             4,\n             3,\n             6,\n             5,\n             5,\n             7,\n             5,\n             4,\n             5,\n             7,\n             6,\n             8,\n             5,\n             4,\n             8,\n             4,\n             6,\n             4,\n             6,\n             8,\n             8,\n             6,\n             3,\n             8,\n             4,\n             4]},\n   [1249, 0]],\n  ['m=128 formula alpha',\n   {'regs': [6,\n             4,\n             4,\n             5,\n             4,\n             8,\n             4,\n             5,\n             8,\n             6,\n             6,\n             8,\n             6,\n             4,\n             7,\n             8,\n             6,\n             4,\n             7,\n             5,\n             6,\n             6,\n             4,\n             5,\n             8,\n             5,\n             9,\n             4,\n             8,\n             8,\n             4,\n             9,\n             7,\n             4,\n             9,\n             9,\n             9,\n             4,\n             6,\n             9,\n             5,\n             7,\n             4,\n             9,\n             8,\n             5,\n             7,\n             4,\n             5,\n             6,\n             8,\n             4,\n             7,\n             5,\n             7,\n             6,\n             9,\n             7,\n             6,\n             7,\n             9,\n             8,\n             6,\n             4,\n             4,\n             7,\n             4,\n             6,\n             6,\n             6,\n             4,\n             6,\n             9,\n             9,\n             5,\n             9,\n             8,\n             6,\n             9,\n             9,\n             6,\n             6,\n             7,\n             4,\n             8,\n             4,\n             4,\n             4,\n             4,\n             7,\n             5,\n             8,\n             9,\n             8,\n             8,\n             9,\n             4,\n             8,\n             7,\n             8,\n             8,\n             9,\n             9,\n             4,\n             7,\n             4,\n             8,\n             5,\n             7,\n             9,\n             5,\n             5,\n             5,\n             5,\n             7,\n             8,\n             4,\n             6,\n             7,\n             7,\n             6,\n             8,\n             8,\n             8,\n             8,\n             5,\n             5,\n             8]},\n   [4107, 0]],\n  ['all registers full', {'regs': [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2]}, [43, 0]],\n  ['large range correction',\n   {'regs': [25, 26, 27, 24, 25, 26, 27, 24, 25, 26, 27, 24, 25, 26, 27, 24]},\n   [403802870, 0]],\n  ['mixed m=32 with zeros',\n   {'regs': [0,\n             0,\n             0,\n             4,\n             2,\n             1,\n             2,\n             3,\n             3,\n             1,\n             1,\n             3,\n             4,\n             2,\n             4,\n             2,\n             3,\n             1,\n             1,\n             3,\n             4,\n             1,\n             1,\n             1,\n             2,\n             2,\n             4,\n             4,\n             4,\n             4,\n             1,\n             3]},\n   [76, 3]],\n  ['dense m=16', {'regs': [4, 7, 5, 7, 3, 6, 6, 3, 3, 3, 4, 6, 4, 6, 7, 5]}, [206, 0]],\n  ['all ones no empty register',\n   {'regs': [1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1]},\n   [45, 0]],\n  ['exactly one empty register',\n   {'regs': [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]},\n   [44, 1]]],\n [['sparse m=16', {'regs': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 1, 3, 2, 1]}, [8, 10]],\n  ['dense m=32',\n   {'regs': [2,\n             3,\n             2,\n             4,\n             3,\n             4,\n             5,\n             6,\n             5,\n             2,\n             4,\n             3,\n             6,\n             3,\n             5,\n             3,\n             2,\n             5,\n             5,\n             5,\n             2,\n             2,\n             6,\n             6,\n             3,\n             3,\n             2,\n             4,\n             6,\n             5,\n             2,\n             5]},\n   [207, 0]],\n  ['dense m=64',\n   {'regs': [4,\n             7,\n             5,\n             7,\n             3,\n             7,\n             3,\n             7,\n             6,\n             6,\n             3,\n             8,\n             8,\n             8,\n             8,\n             4,\n             7,\n             6,\n             5,\n             7,\n             5,\n             8,\n             6,\n             4,\n             3,\n             8,\n             7,\n             3,\n             8,\n             6,\n             5,\n             8,\n             5,\n             5,\n             7,\n             5,\n             8,\n             5,\n             3,\n             6,\n             4,\n             7,\n             3,\n             6,\n             4,\n             8,\n             4,\n             6,\n             3,\n             4,\n             8,\n             6,\n             6,\n             7,\n             7,\n             6,\n             8,\n             4,\n             8,\n             8,\n             8,\n             6,\n             8,\n             3]},\n   [1313, 0]],\n  ['m=128 formula alpha',\n   {'regs': [5,\n             4,\n             7,\n             9,\n             8,\n             7,\n             5,\n             5,\n             4,\n             9,\n             5,\n             4,\n             7,\n             9,\n             8,\n             9,\n             9,\n             8,\n             9,\n             5,\n             8,\n             4,\n             8,\n             9,\n             5,\n             4,\n             6,\n             4,\n             4,\n             8,\n             4,\n             5,\n             6,\n             4,\n             4,\n             6,\n             4,\n             5,\n             5,\n             4,\n             7,\n             8,\n             4,\n             7,\n             9,\n             9,\n             4,\n             7,\n             6,\n             6,\n             5,\n             4,\n             5,\n             8,\n             6,\n             8,\n             5,\n             8,\n             8,\n             7,\n             7,\n             4,\n             7,\n             4,\n             8,\n             9,\n             6,\n             4,\n             5,\n             7,\n             6,\n             4,\n             6,\n             9,\n             6,\n             8,\n             4,\n             4,\n             5,\n             4,\n             7,\n             5,\n             9,\n             4,\n             8,\n             9,\n             8,\n             4,\n             4,\n             9,\n             7,\n             4,\n             6,\n             5,\n             9,\n             5,\n             8,\n             5,\n             5,\n             4,\n             7,\n             8,\n             9,\n             6,\n             7,\n             9,\n             5,\n             5,\n             9,\n             9,\n             9,\n             5,\n             5,\n             5,\n             5,\n             8,\n             9,\n             4,\n             9,\n             5,\n             4,\n             8,\n             9,\n             8,\n             6,\n             8,\n             9,\n             8]},\n   [3817, 0]],\n  ['all registers full', {'regs': [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3]}, [86, 0]],\n  ['large range correction',\n   {'regs': [26, 27, 24, 25, 26, 27, 24, 25, 26, 27, 24, 25, 26, 27, 24, 25]},\n   [403802870, 0]],\n  ['mixed m=32 with zeros',\n   {'regs': [0,\n             0,\n             0,\n             2,\n             3,\n             3,\n             4,\n             1,\n             3,\n             4,\n             3,\n             2,\n             3,\n             2,\n             4,\n             2,\n             1,\n             1,\n             4,\n             4,\n             2,\n             1,\n             4,\n             4,\n             2,\n             3,\n             3,\n             2,\n             1,\n             4,\n             3,\n             4]},\n   [81, 3]],\n  ['dense m=16', {'regs': [7, 4, 3, 4, 4, 5, 4, 7, 4, 4, 3, 3, 6, 7, 7, 7]}, [206, 0]],\n  ['all ones no empty register',\n   {'regs': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]},\n   [22, 0]],\n  ['exactly one empty register',\n   {'regs': [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]},\n   [44, 1]]],\n [['sparse m=16', {'regs': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 1, 3, 3, 1]}, [8, 10]],\n  ['dense m=32',\n   {'regs': [2,\n             4,\n             3,\n             5,\n             3,\n             5,\n             2,\n             4,\n             2,\n             2,\n             6,\n             5,\n             3,\n             6,\n             4,\n             5,\n             3,\n             4,\n             4,\n             3,\n             6,\n             4,\n             3,\n             3,\n             3,\n             5,\n             2,\n             2,\n             6,\n             4,\n             6,\n             2]},\n   [209, 0]],\n  ['dense m=64',\n   {'regs': [6,\n             3,\n             4,\n             7,\n             3,\n             8,\n             7,\n             8,\n             6,\n             4,\n             8,\n             6,\n             7,\n             7,\n             5,\n             6,\n             5,\n             8,\n             4,\n             4,\n             6,\n             3,\n             3,\n             6,\n             8,\n             6,\n             4,\n             8,\n             8,\n             5,\n             4,\n             6,\n             6,\n             5,\n             3,\n             8,\n             6,\n             4,\n             7,\n             7,\n             6,\n             7,\n             6,\n             4,\n             6,\n             5,\n             7,\n             8,\n             8,\n             6,\n             7,\n             4,\n             6,\n             4,\n             6,\n             3,\n             6,\n             7,\n             8,\n             5,\n             7,\n             5,\n             6,\n             8]},\n   [1446, 0]],\n  ['m=128 formula alpha',\n   {'regs': [5,\n             9,\n             9,\n             9,\n             4,\n             8,\n             8,\n             7,\n             4,\n             8,\n             5,\n             8,\n             9,\n             9,\n             4,\n             4,\n             4,\n             5,\n             5,\n             4,\n             6,\n             7,\n             8,\n             7,\n             5,\n             5,\n             4,\n             6,\n             6,\n             8,\n             8,\n             9,\n             7,\n             9,\n             9,\n             5,\n             7,\n             5,\n             9,\n             8,\n             7,\n             9,\n             5,\n             8,\n             5,\n             7,\n             5,\n             8,\n             8,\n             6,\n             9,\n             5,\n             4,\n             9,\n             4,\n             4,\n             8,\n             6,\n             7,\n             4,\n             7,\n             4,\n             7,\n             4,\n             8,\n             8,\n             8,\n             9,\n             7,\n             9,\n             8,\n             8,\n             8,\n             5,\n             5,\n             6,\n             6,\n             4,\n             6,\n             6,\n             6,\n             8,\n             7,\n             9,\n             8,\n             5,\n             8,\n             4,\n             7,\n             8,\n             4,\n             8,\n             8,\n             4,\n             7,\n             4,\n             5,\n             5,\n             5,\n             6,\n             9,\n             4,\n             6,\n             9,\n             6,\n             5,\n             5,\n             6,\n             6,\n             6,\n             6,\n             5,\n             9,\n             8,\n             9,\n             6,\n             9,\n             7,\n             8,\n             5,\n             5,\n             5,\n             8,\n             6,\n             8,\n             7,\n             4,\n             9]},\n   [4556, 0]],\n  ['all registers full', {'regs': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, [22, 0]],\n  ['large range correction',\n   {'regs': [27, 24, 25, 26, 27, 24, 25, 26, 27, 24, 25, 26, 27, 24, 25, 26]},\n   [403802870, 0]],\n  ['mixed m=32 with zeros',\n   {'regs': [0,\n             0,\n             0,\n             3,\n             1,\n             1,\n             4,\n             2,\n             4,\n             3,\n             3,\n             1,\n             3,\n             2,\n             4,\n             3,\n             3,\n             4,\n             4,\n             1,\n             2,\n             4,\n             2,\n             3,\n             4,\n             1,\n             1,\n             1,\n             3,\n             3,\n             2,\n             4]},\n   [76, 3]],\n  ['dense m=16', {'regs': [4, 6, 4, 7, 7, 6, 4, 7, 3, 4, 3, 7, 6, 7, 7, 6]}, [283, 0]],\n  ['all ones no empty register',\n   {'regs': [1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1]},\n   [45, 0]],\n  ['exactly one empty register',\n   {'regs': [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]},\n   [44, 1]]],\n [['sparse m=16', {'regs': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 1, 3, 4, 1]}, [8, 10]],\n  ['dense m=32',\n   {'regs': [6,\n             4,\n             6,\n             4,\n             5,\n             5,\n             3,\n             4,\n             5,\n             4,\n             3,\n             3,\n             4,\n             2,\n             2,\n             3,\n             2,\n             5,\n             4,\n             3,\n             3,\n             4,\n             5,\n             4,\n             6,\n             5,\n             6,\n             2,\n             6,\n             5,\n             4,\n             4]},\n   [267, 0]],\n  ['dense m=64',\n   {'regs': [5,\n             4,\n             5,\n             6,\n             8,\n             5,\n             4,\n             7,\n             5,\n             3,\n             8,\n             8,\n             6,\n             8,\n             8,\n             5,\n             7,\n             7,\n             6,\n             4,\n             4,\n             7,\n             6,\n             5,\n             7,\n             8,\n             8,\n             8,\n             6,\n             8,\n             4,\n             3,\n             4,\n             8,\n             5,\n             4,\n             7,\n             8,\n             3,\n             7,\n             6,\n             3,\n             4,\n             6,\n             6,\n             5,\n             8,\n             3,\n             4,\n             3,\n             3,\n             7,\n             5,\n             5,\n             3,\n             5,\n             4,\n             7,\n             3,\n             6,\n             7,\n             6,\n             4,\n             3]},\n   [1133, 0]],\n  ['m=128 formula alpha',\n   {'regs': [6,\n             6,\n             4,\n             6,\n             8,\n             7,\n             6,\n             9,\n             4,\n             4,\n             5,\n             7,\n             6,\n             9,\n             7,\n             4,\n             9,\n             7,\n             5,\n             5,\n             6,\n             9,\n             6,\n             7,\n             7,\n             4,\n             9,\n             9,\n             5,\n             4,\n             5,\n             4,\n             4,\n             6,\n             9,\n             9,\n             7,\n             7,\n             9,\n             7,\n             4,\n             7,\n             4,\n             5,\n             9,\n             8,\n             7,\n             6,\n             9,\n             9,\n             4,\n             9,\n             8,\n             4,\n             6,\n             6,\n             5,\n             8,\n             5,\n             7,\n             8,\n             7,\n             8,\n             7,\n             7,\n             4,\n             6,\n             9,\n             9,\n             4,\n             6,\n             5,\n             6,\n             6,\n             8,\n             4,\n             6,\n             8,\n             6,\n             7,\n             9,\n             5,\n             9,\n             8,\n             9,\n             9,\n             7,\n             6,\n             5,\n             6,\n             5,\n             6,\n             6,\n             7,\n             7,\n             9,\n             8,\n             6,\n             8,\n             6,\n             9,\n             8,\n             9,\n             4,\n             9,\n             4,\n             6,\n             4,\n             4,\n             6,\n             7,\n             9,\n             4,\n             6,\n             7,\n             5,\n             5,\n             5,\n             7,\n             5,\n             6,\n             6,\n             7,\n             6,\n             7,\n             7,\n             6,\n             5]},\n   [4615, 0]],\n  ['all registers full', {'regs': [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2]}, [43, 0]],\n  ['large range correction',\n   {'regs': [24, 25, 26, 27, 24, 25, 26, 27, 24, 25, 26, 27, 24, 25, 26, 27]},\n   [403802870, 0]],\n  ['mixed m=32 with zeros',\n   {'regs': [0,\n             0,\n             0,\n             1,\n             2,\n             1,\n             2,\n             4,\n             3,\n             3,\n             4,\n             4,\n             3,\n             4,\n             4,\n             3,\n             4,\n             1,\n             4,\n             3,\n             3,\n             3,\n             2,\n             2,\n             3,\n             3,\n             1,\n             4,\n             2,\n             3,\n             3,\n             1]},\n   [83, 3]],\n  ['dense m=16', {'regs': [5, 4, 5, 3, 4, 7, 7, 5, 5, 3, 6, 7, 3, 5, 7, 6]}, [240, 0]],\n  ['all ones no empty register',\n   {'regs': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]},\n   [22, 0]],\n  ['exactly one empty register',\n   {'regs': [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]},\n   [44, 1]]],\n [['sparse m=16', {'regs': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 1, 3, 5, 1]}, [8, 10]],\n  ['dense m=32',\n   {'regs': [4,\n             2,\n             4,\n             4,\n             5,\n             5,\n             4,\n             3,\n             6,\n             2,\n             5,\n             2,\n             2,\n             5,\n             4,\n             4,\n             3,\n             6,\n             5,\n             6,\n             6,\n             5,\n             4,\n             5,\n             6,\n             4,\n             2,\n             5,\n             4,\n             2,\n             5,\n             3]},\n   [255, 0]],\n  ['dense m=64',\n   {'regs': [7,\n             7,\n             7,\n             4,\n             7,\n             6,\n             3,\n             3,\n             6,\n             4,\n             4,\n             8,\n             8,\n             7,\n             8,\n             4,\n             8,\n             8,\n             8,\n             6,\n             4,\n             5,\n             5,\n             8,\n             8,\n             5,\n             4,\n             4,\n             4,\n             7,\n             6,\n             5,\n             8,\n             7,\n             3,\n             5,\n             3,\n             8,\n             3,\n             4,\n             3,\n             8,\n             5,\n             3,\n             4,\n             3,\n             8,\n             3,\n             7,\n             5,\n             7,\n             3,\n             7,\n             8,\n             6,\n             6,\n             4,\n             3,\n             6,\n             3,\n             7,\n             3,\n             5,\n             7]},\n   [1031, 0]],\n  ['m=128 formula alpha',\n   {'regs': [6,\n             8,\n             8,\n             6,\n             7,\n             5,\n             8,\n             4,\n             6,\n             4,\n             4,\n             8,\n             6,\n             7,\n             8,\n             6,\n             7,\n             7,\n             7,\n             4,\n             7,\n             6,\n             7,\n             8,\n             5,\n             9,\n             9,\n             8,\n             4,\n             9,\n             5,\n             7,\n             6,\n             8,\n             7,\n             8,\n             4,\n             4,\n             7,\n             9,\n             8,\n             7,\n             6,\n             6,\n             4,\n             8,\n             8,\n             4,\n             5,\n             4,\n             7,\n             6,\n             5,\n             4,\n             7,\n             5,\n             5,\n             5,\n             6,\n             5,\n             5,\n             8,\n             6,\n             5,\n             9,\n             4,\n             4,\n             7,\n             7,\n             8,\n             4,\n             7,\n             4,\n             8,\n             5,\n             6,\n             8,\n             7,\n             8,\n             9,\n             7,\n             9,\n             9,\n             7,\n             8,\n             4,\n             5,\n             8,\n             6,\n             4,\n             7,\n             7,\n             7,\n             4,\n             5,\n             8,\n             9,\n             8,\n             6,\n             8,\n             5,\n             8,\n             8,\n             7,\n             5,\n             9,\n             4,\n             4,\n             7,\n             9,\n             7,\n             5,\n             8,\n             7,\n             5,\n             5,\n             6,\n             5,\n             7,\n             7,\n             7,\n             7,\n             5,\n             6,\n             4,\n             8,\n             5,\n             7]},\n   [4454, 0]],\n  ['all registers full', {'regs': [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3]}, [86, 0]],\n  ['large range correction',\n   {'regs': [25, 26, 27, 24, 25, 26, 27, 24, 25, 26, 27, 24, 25, 26, 27, 24]},\n   [403802870, 0]],\n  ['mixed m=32 with zeros',\n   {'regs': [0,\n             0,\n             0,\n             3,\n             1,\n             2,\n             1,\n             2,\n             1,\n             1,\n             2,\n             1,\n             4,\n             2,\n             2,\n             3,\n             2,\n             3,\n             1,\n             2,\n             2,\n             4,\n             3,\n             3,\n             2,\n             3,\n             3,\n             2,\n             4,\n             2,\n             3,\n             2]},\n   [76, 3]],\n  ['dense m=16', {'regs': [6, 5, 7, 7, 7, 7, 3, 7, 5, 7, 7, 6, 3, 6, 3, 3]}, [259, 0]],\n  ['all ones no empty register',\n   {'regs': [1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1]},\n   [45, 0]],\n  ['exactly one empty register',\n   {'regs': [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]},\n   [44, 1]]]]\nfor label, args, expected in cases[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":"edd9d0ff74a500082b4ad4be01a21907448205ed368c267bd8832f7c921e6b88","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nN = 1\nobservations = []\ndef solve(x):\n    regs = x['regs']\n    m = len(regs)\n    if m == 16:\n        alpha = 0.673\n    elif m == 32:\n        alpha = 0.697\n    elif m == 64:\n        alpha = 0.709\n    else:\n        alpha = 0.7213 / (1 + 1.079 / m)\n    E = alpha * m * m / sum(2.0 ** -r for r in regs if r > 0)\n    V = regs.count(0)\n    if E <= 2.5 * m and V > 0:\n        E = m * math.log(m / V)\n    elif E > (2 ** 32) / 30:\n        E = -(2 ** 32) * math.log(1 - E / 2 ** 32)\n    return [round(E), V]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncases = [[['sparse m=16', {'regs': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 1, 3, 1, 1]}, [8, 10]],\n  ['dense m=32',\n   {'regs': [4,\n             5,\n             2,\n             2,\n             6,\n             6,\n             3,\n             6,\n             3,\n             5,\n             6,\n             6,\n             2,\n             4,\n             3,\n             6,\n             2,\n             3,\n             6,\n             5,\n             2,\n             4,\n             5,\n             4,\n             4,\n             4,\n             4,\n             2,\n             4,\n             3,\n             6,\n             6]},\n   [247, 0]],\n  ['dense m=64',\n   {'regs': [7,\n             3,\n             7,\n             8,\n             6,\n             6,\n             4,\n             6,\n             7,\n             4,\n             6,\n             4,\n             3,\n             3,\n             8,\n             8,\n             3,\n             8,\n             8,\n             8,\n             8,\n             8,\n             5,\n             4,\n             8,\n             7,\n             6,\n             6,\n             8,\n             3,\n             3,\n             8,\n             8,\n             8,\n             8,\n             6,\n             3,\n             6,\n             4,\n             3,\n             6,\n             5,\n             5,\n             7,\n             5,\n             4,\n             5,\n             7,\n             6,\n             8,\n             5,\n             4,\n             8,\n             4,\n             6,\n             4,\n             6,\n             8,\n             8,\n             6,\n             3,\n             8,\n             4,\n             4]},\n   [1249, 0]],\n  ['m=128 formula alpha',\n   {'regs': [6,\n             4,\n             4,\n             5,\n             4,\n             8,\n             4,\n             5,\n             8,\n             6,\n             6,\n             8,\n             6,\n             4,\n             7,\n             8,\n             6,\n             4,\n             7,\n             5,\n             6,\n             6,\n             4,\n             5,\n             8,\n             5,\n             9,\n             4,\n             8,\n             8,\n             4,\n             9,\n             7,\n             4,\n             9,\n             9,\n             9,\n             4,\n             6,\n             9,\n             5,\n             7,\n             4,\n             9,\n             8,\n             5,\n             7,\n             4,\n             5,\n             6,\n             8,\n             4,\n             7,\n             5,\n             7,\n             6,\n             9,\n             7,\n             6,\n             7,\n             9,\n             8,\n             6,\n             4,\n             4,\n             7,\n             4,\n             6,\n             6,\n             6,\n             4,\n             6,\n             9,\n             9,\n             5,\n             9,\n             8,\n             6,\n             9,\n             9,\n             6,\n             6,\n             7,\n             4,\n             8,\n             4,\n             4,\n             4,\n             4,\n             7,\n             5,\n             8,\n             9,\n             8,\n             8,\n             9,\n             4,\n             8,\n             7,\n             8,\n             8,\n             9,\n             9,\n             4,\n             7,\n             4,\n             8,\n             5,\n             7,\n             9,\n             5,\n             5,\n             5,\n             5,\n             7,\n             8,\n             4,\n             6,\n             7,\n             7,\n             6,\n             8,\n             8,\n             8,\n             8,\n             5,\n             5,\n             8]},\n   [4107, 0]],\n  ['all registers full', {'regs': [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2]}, [43, 0]],\n  ['large range correction',\n   {'regs': [25, 26, 27, 24, 25, 26, 27, 24, 25, 26, 27, 24, 25, 26, 27, 24]},\n   [403802870, 0]],\n  ['mixed m=32 with zeros',\n   {'regs': [0,\n             0,\n             0,\n             4,\n             2,\n             1,\n             2,\n             3,\n             3,\n             1,\n             1,\n             3,\n             4,\n             2,\n             4,\n             2,\n             3,\n             1,\n             1,\n             3,\n             4,\n             1,\n             1,\n             1,\n             2,\n             2,\n             4,\n             4,\n             4,\n             4,\n             1,\n             3]},\n   [76, 3]],\n  ['dense m=16', {'regs': [4, 7, 5, 7, 3, 6, 6, 3, 3, 3, 4, 6, 4, 6, 7, 5]}, [206, 0]],\n  ['all ones no empty register',\n   {'regs': [1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1]},\n   [45, 0]],\n  ['exactly one empty register',\n   {'regs': [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]},\n   [44, 1]]],\n [['sparse m=16', {'regs': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 1, 3, 2, 1]}, [8, 10]],\n  ['dense m=32',\n   {'regs': [2,\n             3,\n             2,\n             4,\n             3,\n             4,\n             5,\n             6,\n             5,\n             2,\n             4,\n             3,\n             6,\n             3,\n             5,\n             3,\n             2,\n             5,\n             5,\n             5,\n             2,\n             2,\n             6,\n             6,\n             3,\n             3,\n             2,\n             4,\n             6,\n             5,\n             2,\n             5]},\n   [207, 0]],\n  ['dense m=64',\n   {'regs': [4,\n             7,\n             5,\n             7,\n             3,\n             7,\n             3,\n             7,\n             6,\n             6,\n             3,\n             8,\n             8,\n             8,\n             8,\n             4,\n             7,\n             6,\n             5,\n             7,\n             5,\n             8,\n             6,\n             4,\n             3,\n             8,\n             7,\n             3,\n             8,\n             6,\n             5,\n             8,\n             5,\n             5,\n             7,\n             5,\n             8,\n             5,\n             3,\n             6,\n             4,\n             7,\n             3,\n             6,\n             4,\n             8,\n             4,\n             6,\n             3,\n             4,\n             8,\n             6,\n             6,\n             7,\n             7,\n             6,\n             8,\n             4,\n             8,\n             8,\n             8,\n             6,\n             8,\n             3]},\n   [1313, 0]],\n  ['m=128 formula alpha',\n   {'regs': [5,\n             4,\n             7,\n             9,\n             8,\n             7,\n             5,\n             5,\n             4,\n             9,\n             5,\n             4,\n             7,\n             9,\n             8,\n             9,\n             9,\n             8,\n             9,\n             5,\n             8,\n             4,\n             8,\n             9,\n             5,\n             4,\n             6,\n             4,\n             4,\n             8,\n             4,\n             5,\n             6,\n             4,\n             4,\n             6,\n             4,\n             5,\n             5,\n             4,\n             7,\n             8,\n             4,\n             7,\n             9,\n             9,\n             4,\n             7,\n             6,\n             6,\n             5,\n             4,\n             5,\n             8,\n             6,\n             8,\n             5,\n             8,\n             8,\n             7,\n             7,\n             4,\n             7,\n             4,\n             8,\n             9,\n             6,\n             4,\n             5,\n             7,\n             6,\n             4,\n             6,\n             9,\n             6,\n             8,\n             4,\n             4,\n             5,\n             4,\n             7,\n             5,\n             9,\n             4,\n             8,\n             9,\n             8,\n             4,\n             4,\n             9,\n             7,\n             4,\n             6,\n             5,\n             9,\n             5,\n             8,\n             5,\n             5,\n             4,\n             7,\n             8,\n             9,\n             6,\n             7,\n             9,\n             5,\n             5,\n             9,\n             9,\n             9,\n             5,\n             5,\n             5,\n             5,\n             8,\n             9,\n             4,\n             9,\n             5,\n             4,\n             8,\n             9,\n             8,\n             6,\n             8,\n             9,\n             8]},\n   [3817, 0]],\n  ['all registers full', {'regs': [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3]}, [86, 0]],\n  ['large range correction',\n   {'regs': [26, 27, 24, 25, 26, 27, 24, 25, 26, 27, 24, 25, 26, 27, 24, 25]},\n   [403802870, 0]],\n  ['mixed m=32 with zeros',\n   {'regs': [0,\n             0,\n             0,\n             2,\n             3,\n             3,\n             4,\n             1,\n             3,\n             4,\n             3,\n             2,\n             3,\n             2,\n             4,\n             2,\n             1,\n             1,\n             4,\n             4,\n             2,\n             1,\n             4,\n             4,\n             2,\n             3,\n             3,\n             2,\n             1,\n             4,\n             3,\n             4]},\n   [81, 3]],\n  ['dense m=16', {'regs': [7, 4, 3, 4, 4, 5, 4, 7, 4, 4, 3, 3, 6, 7, 7, 7]}, [206, 0]],\n  ['all ones no empty register',\n   {'regs': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]},\n   [22, 0]],\n  ['exactly one empty register',\n   {'regs': [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]},\n   [44, 1]]],\n [['sparse m=16', {'regs': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 1, 3, 3, 1]}, [8, 10]],\n  ['dense m=32',\n   {'regs': [2,\n             4,\n             3,\n             5,\n             3,\n             5,\n             2,\n             4,\n             2,\n             2,\n             6,\n             5,\n             3,\n             6,\n             4,\n             5,\n             3,\n             4,\n             4,\n             3,\n             6,\n             4,\n             3,\n             3,\n             3,\n             5,\n             2,\n             2,\n             6,\n             4,\n             6,\n             2]},\n   [209, 0]],\n  ['dense m=64',\n   {'regs': [6,\n             3,\n             4,\n             7,\n             3,\n             8,\n             7,\n             8,\n             6,\n             4,\n             8,\n             6,\n             7,\n             7,\n             5,\n             6,\n             5,\n             8,\n             4,\n             4,\n             6,\n             3,\n             3,\n             6,\n             8,\n             6,\n             4,\n             8,\n             8,\n             5,\n             4,\n             6,\n             6,\n             5,\n             3,\n             8,\n             6,\n             4,\n             7,\n             7,\n             6,\n             7,\n             6,\n             4,\n             6,\n             5,\n             7,\n             8,\n             8,\n             6,\n             7,\n             4,\n             6,\n             4,\n             6,\n             3,\n             6,\n             7,\n             8,\n             5,\n             7,\n             5,\n             6,\n             8]},\n   [1446, 0]],\n  ['m=128 formula alpha',\n   {'regs': [5,\n             9,\n             9,\n             9,\n             4,\n             8,\n             8,\n             7,\n             4,\n             8,\n             5,\n             8,\n             9,\n             9,\n             4,\n             4,\n             4,\n             5,\n             5,\n             4,\n             6,\n             7,\n             8,\n             7,\n             5,\n             5,\n             4,\n             6,\n             6,\n             8,\n             8,\n             9,\n             7,\n             9,\n             9,\n             5,\n             7,\n             5,\n             9,\n             8,\n             7,\n             9,\n             5,\n             8,\n             5,\n             7,\n             5,\n             8,\n             8,\n             6,\n             9,\n             5,\n             4,\n             9,\n             4,\n             4,\n             8,\n             6,\n             7,\n             4,\n             7,\n             4,\n             7,\n             4,\n             8,\n             8,\n             8,\n             9,\n             7,\n             9,\n             8,\n             8,\n             8,\n             5,\n             5,\n             6,\n             6,\n             4,\n             6,\n             6,\n             6,\n             8,\n             7,\n             9,\n             8,\n             5,\n             8,\n             4,\n             7,\n             8,\n             4,\n             8,\n             8,\n             4,\n             7,\n             4,\n             5,\n             5,\n             5,\n             6,\n             9,\n             4,\n             6,\n             9,\n             6,\n             5,\n             5,\n             6,\n             6,\n             6,\n             6,\n             5,\n             9,\n             8,\n             9,\n             6,\n             9,\n             7,\n             8,\n             5,\n             5,\n             5,\n             8,\n             6,\n             8,\n             7,\n             4,\n             9]},\n   [4556, 0]],\n  ['all registers full', {'regs': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, [22, 0]],\n  ['large range correction',\n   {'regs': [27, 24, 25, 26, 27, 24, 25, 26, 27, 24, 25, 26, 27, 24, 25, 26]},\n   [403802870, 0]],\n  ['mixed m=32 with zeros',\n   {'regs': [0,\n             0,\n             0,\n             3,\n             1,\n             1,\n             4,\n             2,\n             4,\n             3,\n             3,\n             1,\n             3,\n             2,\n             4,\n             3,\n             3,\n             4,\n             4,\n             1,\n             2,\n             4,\n             2,\n             3,\n             4,\n             1,\n             1,\n             1,\n             3,\n             3,\n             2,\n             4]},\n   [76, 3]],\n  ['dense m=16', {'regs': [4, 6, 4, 7, 7, 6, 4, 7, 3, 4, 3, 7, 6, 7, 7, 6]}, [283, 0]],\n  ['all ones no empty register',\n   {'regs': [1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1]},\n   [45, 0]],\n  ['exactly one empty register',\n   {'regs': [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]},\n   [44, 1]]],\n [['sparse m=16', {'regs': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 1, 3, 4, 1]}, [8, 10]],\n  ['dense m=32',\n   {'regs': [6,\n             4,\n             6,\n             4,\n             5,\n             5,\n             3,\n             4,\n             5,\n             4,\n             3,\n             3,\n             4,\n             2,\n             2,\n             3,\n             2,\n             5,\n             4,\n             3,\n             3,\n             4,\n             5,\n             4,\n             6,\n             5,\n             6,\n             2,\n             6,\n             5,\n             4,\n             4]},\n   [267, 0]],\n  ['dense m=64',\n   {'regs': [5,\n             4,\n             5,\n             6,\n             8,\n             5,\n             4,\n             7,\n             5,\n             3,\n             8,\n             8,\n             6,\n             8,\n             8,\n             5,\n             7,\n             7,\n             6,\n             4,\n             4,\n             7,\n             6,\n             5,\n             7,\n             8,\n             8,\n             8,\n             6,\n             8,\n             4,\n             3,\n             4,\n             8,\n             5,\n             4,\n             7,\n             8,\n             3,\n             7,\n             6,\n             3,\n             4,\n             6,\n             6,\n             5,\n             8,\n             3,\n             4,\n             3,\n             3,\n             7,\n             5,\n             5,\n             3,\n             5,\n             4,\n             7,\n             3,\n             6,\n             7,\n             6,\n             4,\n             3]},\n   [1133, 0]],\n  ['m=128 formula alpha',\n   {'regs': [6,\n             6,\n             4,\n             6,\n             8,\n             7,\n             6,\n             9,\n             4,\n             4,\n             5,\n             7,\n             6,\n             9,\n             7,\n             4,\n             9,\n             7,\n             5,\n             5,\n             6,\n             9,\n             6,\n             7,\n             7,\n             4,\n             9,\n             9,\n             5,\n             4,\n             5,\n             4,\n             4,\n             6,\n             9,\n             9,\n             7,\n             7,\n             9,\n             7,\n             4,\n             7,\n             4,\n             5,\n             9,\n             8,\n             7,\n             6,\n             9,\n             9,\n             4,\n             9,\n             8,\n             4,\n             6,\n             6,\n             5,\n             8,\n             5,\n             7,\n             8,\n             7,\n             8,\n             7,\n             7,\n             4,\n             6,\n             9,\n             9,\n             4,\n             6,\n             5,\n             6,\n             6,\n             8,\n             4,\n             6,\n             8,\n             6,\n             7,\n             9,\n             5,\n             9,\n             8,\n             9,\n             9,\n             7,\n             6,\n             5,\n             6,\n             5,\n             6,\n             6,\n             7,\n             7,\n             9,\n             8,\n             6,\n             8,\n             6,\n             9,\n             8,\n             9,\n             4,\n             9,\n             4,\n             6,\n             4,\n             4,\n             6,\n             7,\n             9,\n             4,\n             6,\n             7,\n             5,\n             5,\n             5,\n             7,\n             5,\n             6,\n             6,\n             7,\n             6,\n             7,\n             7,\n             6,\n             5]},\n   [4615, 0]],\n  ['all registers full', {'regs': [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2]}, [43, 0]],\n  ['large range correction',\n   {'regs': [24, 25, 26, 27, 24, 25, 26, 27, 24, 25, 26, 27, 24, 25, 26, 27]},\n   [403802870, 0]],\n  ['mixed m=32 with zeros',\n   {'regs': [0,\n             0,\n             0,\n             1,\n             2,\n             1,\n             2,\n             4,\n             3,\n             3,\n             4,\n             4,\n             3,\n             4,\n             4,\n             3,\n             4,\n             1,\n             4,\n             3,\n             3,\n             3,\n             2,\n             2,\n             3,\n             3,\n             1,\n             4,\n             2,\n             3,\n             3,\n             1]},\n   [83, 3]],\n  ['dense m=16', {'regs': [5, 4, 5, 3, 4, 7, 7, 5, 5, 3, 6, 7, 3, 5, 7, 6]}, [240, 0]],\n  ['all ones no empty register',\n   {'regs': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]},\n   [22, 0]],\n  ['exactly one empty register',\n   {'regs': [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]},\n   [44, 1]]],\n [['sparse m=16', {'regs': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 1, 3, 5, 1]}, [8, 10]],\n  ['dense m=32',\n   {'regs': [4,\n             2,\n             4,\n             4,\n             5,\n             5,\n             4,\n             3,\n             6,\n             2,\n             5,\n             2,\n             2,\n             5,\n             4,\n             4,\n             3,\n             6,\n             5,\n             6,\n             6,\n             5,\n             4,\n             5,\n             6,\n             4,\n             2,\n             5,\n             4,\n             2,\n             5,\n             3]},\n   [255, 0]],\n  ['dense m=64',\n   {'regs': [7,\n             7,\n             7,\n             4,\n             7,\n             6,\n             3,\n             3,\n             6,\n             4,\n             4,\n             8,\n             8,\n             7,\n             8,\n             4,\n             8,\n             8,\n             8,\n             6,\n             4,\n             5,\n             5,\n             8,\n             8,\n             5,\n             4,\n             4,\n             4,\n             7,\n             6,\n             5,\n             8,\n             7,\n             3,\n             5,\n             3,\n             8,\n             3,\n             4,\n             3,\n             8,\n             5,\n             3,\n             4,\n             3,\n             8,\n             3,\n             7,\n             5,\n             7,\n             3,\n             7,\n             8,\n             6,\n             6,\n             4,\n             3,\n             6,\n             3,\n             7,\n             3,\n             5,\n             7]},\n   [1031, 0]],\n  ['m=128 formula alpha',\n   {'regs': [6,\n             8,\n             8,\n             6,\n             7,\n             5,\n             8,\n             4,\n             6,\n             4,\n             4,\n             8,\n             6,\n             7,\n             8,\n             6,\n             7,\n             7,\n             7,\n             4,\n             7,\n             6,\n             7,\n             8,\n             5,\n             9,\n             9,\n             8,\n             4,\n             9,\n             5,\n             7,\n             6,\n             8,\n             7,\n             8,\n             4,\n             4,\n             7,\n             9,\n             8,\n             7,\n             6,\n             6,\n             4,\n             8,\n             8,\n             4,\n             5,\n             4,\n             7,\n             6,\n             5,\n             4,\n             7,\n             5,\n             5,\n             5,\n             6,\n             5,\n             5,\n             8,\n             6,\n             5,\n             9,\n             4,\n             4,\n             7,\n             7,\n             8,\n             4,\n             7,\n             4,\n             8,\n             5,\n             6,\n             8,\n             7,\n             8,\n             9,\n             7,\n             9,\n             9,\n             7,\n             8,\n             4,\n             5,\n             8,\n             6,\n             4,\n             7,\n             7,\n             7,\n             4,\n             5,\n             8,\n             9,\n             8,\n             6,\n             8,\n             5,\n             8,\n             8,\n             7,\n             5,\n             9,\n             4,\n             4,\n             7,\n             9,\n             7,\n             5,\n             8,\n             7,\n             5,\n             5,\n             6,\n             5,\n             7,\n             7,\n             7,\n             7,\n             5,\n             6,\n             4,\n             8,\n             5,\n             7]},\n   [4454, 0]],\n  ['all registers full', {'regs': [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3]}, [86, 0]],\n  ['large range correction',\n   {'regs': [25, 26, 27, 24, 25, 26, 27, 24, 25, 26, 27, 24, 25, 26, 27, 24]},\n   [403802870, 0]],\n  ['mixed m=32 with zeros',\n   {'regs': [0,\n             0,\n             0,\n             3,\n             1,\n             2,\n             1,\n             2,\n             1,\n             1,\n             2,\n             1,\n             4,\n             2,\n             2,\n             3,\n             2,\n             3,\n             1,\n             2,\n             2,\n             4,\n             3,\n             3,\n             2,\n             3,\n             3,\n             2,\n             4,\n             2,\n             3,\n             2]},\n   [76, 3]],\n  ['dense m=16', {'regs': [6, 5, 7, 7, 7, 7, 3, 7, 5, 7, 7, 6, 3, 6, 3, 3]}, [259, 0]],\n  ['all ones no empty register',\n   {'regs': [1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1]},\n   [45, 0]],\n  ['exactly one empty register',\n   {'regs': [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]},\n   [44, 1]]]]\nfor label, args, expected in cases[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":"dc6614b47c66fa516cdb22459d4b116690e8d5c136ab5631efb91f87c6900c38","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nN = 1\nobservations = []\ndef solve(x):\n    regs = x['regs']\n    m = len(regs)\n    if m == 16:\n        alpha = 0.673\n    elif m == 32:\n        alpha = 0.697\n    elif m == 64:\n        alpha = 0.709\n    else:\n        alpha = 0.7213 / (1 + 1.079 / m)\n    E = alpha * m * m / sum(2.0 ** -r for r in regs)\n    V = regs.count(0)\n    if E <= 2.5 * m and V > 0:\n        E = m * math.log(m / V)\n    elif E > (2 ** 32) / 30:\n        E = -(2 ** 32) * math.log(1 - E / 2 ** 32)\n    return [round(E), V]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncases = [[['sparse m=16', {'regs': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 1, 3, 1, 1]}, [8, 10]],\n  ['dense m=32',\n   {'regs': [4,\n             5,\n             2,\n             2,\n             6,\n             6,\n             3,\n             6,\n             3,\n             5,\n             6,\n             6,\n             2,\n             4,\n             3,\n             6,\n             2,\n             3,\n             6,\n             5,\n             2,\n             4,\n             5,\n             4,\n             4,\n             4,\n             4,\n             2,\n             4,\n             3,\n             6,\n             6]},\n   [247, 0]],\n  ['dense m=64',\n   {'regs': [7,\n             3,\n             7,\n             8,\n             6,\n             6,\n             4,\n             6,\n             7,\n             4,\n             6,\n             4,\n             3,\n             3,\n             8,\n             8,\n             3,\n             8,\n             8,\n             8,\n             8,\n             8,\n             5,\n             4,\n             8,\n             7,\n             6,\n             6,\n             8,\n             3,\n             3,\n             8,\n             8,\n             8,\n             8,\n             6,\n             3,\n             6,\n             4,\n             3,\n             6,\n             5,\n             5,\n             7,\n             5,\n             4,\n             5,\n             7,\n             6,\n             8,\n             5,\n             4,\n             8,\n             4,\n             6,\n             4,\n             6,\n             8,\n             8,\n             6,\n             3,\n             8,\n             4,\n             4]},\n   [1249, 0]],\n  ['m=128 formula alpha',\n   {'regs': [6,\n             4,\n             4,\n             5,\n             4,\n             8,\n             4,\n             5,\n             8,\n             6,\n             6,\n             8,\n             6,\n             4,\n             7,\n             8,\n             6,\n             4,\n             7,\n             5,\n             6,\n             6,\n             4,\n             5,\n             8,\n             5,\n             9,\n             4,\n             8,\n             8,\n             4,\n             9,\n             7,\n             4,\n             9,\n             9,\n             9,\n             4,\n             6,\n             9,\n             5,\n             7,\n             4,\n             9,\n             8,\n             5,\n             7,\n             4,\n             5,\n             6,\n             8,\n             4,\n             7,\n             5,\n             7,\n             6,\n             9,\n             7,\n             6,\n             7,\n             9,\n             8,\n             6,\n             4,\n             4,\n             7,\n             4,\n             6,\n             6,\n             6,\n             4,\n             6,\n             9,\n             9,\n             5,\n             9,\n             8,\n             6,\n             9,\n             9,\n             6,\n             6,\n             7,\n             4,\n             8,\n             4,\n             4,\n             4,\n             4,\n             7,\n             5,\n             8,\n             9,\n             8,\n             8,\n             9,\n             4,\n             8,\n             7,\n             8,\n             8,\n             9,\n             9,\n             4,\n             7,\n             4,\n             8,\n             5,\n             7,\n             9,\n             5,\n             5,\n             5,\n             5,\n             7,\n             8,\n             4,\n             6,\n             7,\n             7,\n             6,\n             8,\n             8,\n             8,\n             8,\n             5,\n             5,\n             8]},\n   [4107, 0]],\n  ['all registers full', {'regs': [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2]}, [43, 0]],\n  ['large range correction',\n   {'regs': [25, 26, 27, 24, 25, 26, 27, 24, 25, 26, 27, 24, 25, 26, 27, 24]},\n   [403802870, 0]],\n  ['mixed m=32 with zeros',\n   {'regs': [0,\n             0,\n             0,\n             4,\n             2,\n             1,\n             2,\n             3,\n             3,\n             1,\n             1,\n             3,\n             4,\n             2,\n             4,\n             2,\n             3,\n             1,\n             1,\n             3,\n             4,\n             1,\n             1,\n             1,\n             2,\n             2,\n             4,\n             4,\n             4,\n             4,\n             1,\n             3]},\n   [76, 3]],\n  ['dense m=16', {'regs': [4, 7, 5, 7, 3, 6, 6, 3, 3, 3, 4, 6, 4, 6, 7, 5]}, [206, 0]],\n  ['all ones no empty register',\n   {'regs': [1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1]},\n   [45, 0]],\n  ['exactly one empty register',\n   {'regs': [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]},\n   [44, 1]]],\n [['sparse m=16', {'regs': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 1, 3, 2, 1]}, [8, 10]],\n  ['dense m=32',\n   {'regs': [2,\n             3,\n             2,\n             4,\n             3,\n             4,\n             5,\n             6,\n             5,\n             2,\n             4,\n             3,\n             6,\n             3,\n             5,\n             3,\n             2,\n             5,\n             5,\n             5,\n             2,\n             2,\n             6,\n             6,\n             3,\n             3,\n             2,\n             4,\n             6,\n             5,\n             2,\n             5]},\n   [207, 0]],\n  ['dense m=64',\n   {'regs': [4,\n             7,\n             5,\n             7,\n             3,\n             7,\n             3,\n             7,\n             6,\n             6,\n             3,\n             8,\n             8,\n             8,\n             8,\n             4,\n             7,\n             6,\n             5,\n             7,\n             5,\n             8,\n             6,\n             4,\n             3,\n             8,\n             7,\n             3,\n             8,\n             6,\n             5,\n             8,\n             5,\n             5,\n             7,\n             5,\n             8,\n             5,\n             3,\n             6,\n             4,\n             7,\n             3,\n             6,\n             4,\n             8,\n             4,\n             6,\n             3,\n             4,\n             8,\n             6,\n             6,\n             7,\n             7,\n             6,\n             8,\n             4,\n             8,\n             8,\n             8,\n             6,\n             8,\n             3]},\n   [1313, 0]],\n  ['m=128 formula alpha',\n   {'regs': [5,\n             4,\n             7,\n             9,\n             8,\n             7,\n             5,\n             5,\n             4,\n             9,\n             5,\n             4,\n             7,\n             9,\n             8,\n             9,\n             9,\n             8,\n             9,\n             5,\n             8,\n             4,\n             8,\n             9,\n             5,\n             4,\n             6,\n             4,\n             4,\n             8,\n             4,\n             5,\n             6,\n             4,\n             4,\n             6,\n             4,\n             5,\n             5,\n             4,\n             7,\n             8,\n             4,\n             7,\n             9,\n             9,\n             4,\n             7,\n             6,\n             6,\n             5,\n             4,\n             5,\n             8,\n             6,\n             8,\n             5,\n             8,\n             8,\n             7,\n             7,\n             4,\n             7,\n             4,\n             8,\n             9,\n             6,\n             4,\n             5,\n             7,\n             6,\n             4,\n             6,\n             9,\n             6,\n             8,\n             4,\n             4,\n             5,\n             4,\n             7,\n             5,\n             9,\n             4,\n             8,\n             9,\n             8,\n             4,\n             4,\n             9,\n             7,\n             4,\n             6,\n             5,\n             9,\n             5,\n             8,\n             5,\n             5,\n             4,\n             7,\n             8,\n             9,\n             6,\n             7,\n             9,\n             5,\n             5,\n             9,\n             9,\n             9,\n             5,\n             5,\n             5,\n             5,\n             8,\n             9,\n             4,\n             9,\n             5,\n             4,\n             8,\n             9,\n             8,\n             6,\n             8,\n             9,\n             8]},\n   [3817, 0]],\n  ['all registers full', {'regs': [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3]}, [86, 0]],\n  ['large range correction',\n   {'regs': [26, 27, 24, 25, 26, 27, 24, 25, 26, 27, 24, 25, 26, 27, 24, 25]},\n   [403802870, 0]],\n  ['mixed m=32 with zeros',\n   {'regs': [0,\n             0,\n             0,\n             2,\n             3,\n             3,\n             4,\n             1,\n             3,\n             4,\n             3,\n             2,\n             3,\n             2,\n             4,\n             2,\n             1,\n             1,\n             4,\n             4,\n             2,\n             1,\n             4,\n             4,\n             2,\n             3,\n             3,\n             2,\n             1,\n             4,\n             3,\n             4]},\n   [81, 3]],\n  ['dense m=16', {'regs': [7, 4, 3, 4, 4, 5, 4, 7, 4, 4, 3, 3, 6, 7, 7, 7]}, [206, 0]],\n  ['all ones no empty register',\n   {'regs': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]},\n   [22, 0]],\n  ['exactly one empty register',\n   {'regs': [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]},\n   [44, 1]]],\n [['sparse m=16', {'regs': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 1, 3, 3, 1]}, [8, 10]],\n  ['dense m=32',\n   {'regs': [2,\n             4,\n             3,\n             5,\n             3,\n             5,\n             2,\n             4,\n             2,\n             2,\n             6,\n             5,\n             3,\n             6,\n             4,\n             5,\n             3,\n             4,\n             4,\n             3,\n             6,\n             4,\n             3,\n             3,\n             3,\n             5,\n             2,\n             2,\n             6,\n             4,\n             6,\n             2]},\n   [209, 0]],\n  ['dense m=64',\n   {'regs': [6,\n             3,\n             4,\n             7,\n             3,\n             8,\n             7,\n             8,\n             6,\n             4,\n             8,\n             6,\n             7,\n             7,\n             5,\n             6,\n             5,\n             8,\n             4,\n             4,\n             6,\n             3,\n             3,\n             6,\n             8,\n             6,\n             4,\n             8,\n             8,\n             5,\n             4,\n             6,\n             6,\n             5,\n             3,\n             8,\n             6,\n             4,\n             7,\n             7,\n             6,\n             7,\n             6,\n             4,\n             6,\n             5,\n             7,\n             8,\n             8,\n             6,\n             7,\n             4,\n             6,\n             4,\n             6,\n             3,\n             6,\n             7,\n             8,\n             5,\n             7,\n             5,\n             6,\n             8]},\n   [1446, 0]],\n  ['m=128 formula alpha',\n   {'regs': [5,\n             9,\n             9,\n             9,\n             4,\n             8,\n             8,\n             7,\n             4,\n             8,\n             5,\n             8,\n             9,\n             9,\n             4,\n             4,\n             4,\n             5,\n             5,\n             4,\n             6,\n             7,\n             8,\n             7,\n             5,\n             5,\n             4,\n             6,\n             6,\n             8,\n             8,\n             9,\n             7,\n             9,\n             9,\n             5,\n             7,\n             5,\n             9,\n             8,\n             7,\n             9,\n             5,\n             8,\n             5,\n             7,\n             5,\n             8,\n             8,\n             6,\n             9,\n             5,\n             4,\n             9,\n             4,\n             4,\n             8,\n             6,\n             7,\n             4,\n             7,\n             4,\n             7,\n             4,\n             8,\n             8,\n             8,\n             9,\n             7,\n             9,\n             8,\n             8,\n             8,\n             5,\n             5,\n             6,\n             6,\n             4,\n             6,\n             6,\n             6,\n             8,\n             7,\n             9,\n             8,\n             5,\n             8,\n             4,\n             7,\n             8,\n             4,\n             8,\n             8,\n             4,\n             7,\n             4,\n             5,\n             5,\n             5,\n             6,\n             9,\n             4,\n             6,\n             9,\n             6,\n             5,\n             5,\n             6,\n             6,\n             6,\n             6,\n             5,\n             9,\n             8,\n             9,\n             6,\n             9,\n             7,\n             8,\n             5,\n             5,\n             5,\n             8,\n             6,\n             8,\n             7,\n             4,\n             9]},\n   [4556, 0]],\n  ['all registers full', {'regs': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}, [22, 0]],\n  ['large range correction',\n   {'regs': [27, 24, 25, 26, 27, 24, 25, 26, 27, 24, 25, 26, 27, 24, 25, 26]},\n   [403802870, 0]],\n  ['mixed m=32 with zeros',\n   {'regs': [0,\n             0,\n             0,\n             3,\n             1,\n             1,\n             4,\n             2,\n             4,\n             3,\n             3,\n             1,\n             3,\n             2,\n             4,\n             3,\n             3,\n             4,\n             4,\n             1,\n             2,\n             4,\n             2,\n             3,\n             4,\n             1,\n             1,\n             1,\n             3,\n             3,\n             2,\n             4]},\n   [76, 3]],\n  ['dense m=16', {'regs': [4, 6, 4, 7, 7, 6, 4, 7, 3, 4, 3, 7, 6, 7, 7, 6]}, [283, 0]],\n  ['all ones no empty register',\n   {'regs': [1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1]},\n   [45, 0]],\n  ['exactly one empty register',\n   {'regs': [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]},\n   [44, 1]]],\n [['sparse m=16', {'regs': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 1, 3, 4, 1]}, [8, 10]],\n  ['dense m=32',\n   {'regs': [6,\n             4,\n             6,\n             4,\n             5,\n             5,\n             3,\n             4,\n             5,\n             4,\n             3,\n             3,\n             4,\n             2,\n             2,\n             3,\n             2,\n             5,\n             4,\n             3,\n             3,\n             4,\n             5,\n             4,\n             6,\n             5,\n             6,\n             2,\n             6,\n             5,\n             4,\n             4]},\n   [267, 0]],\n  ['dense m=64',\n   {'regs': [5,\n             4,\n             5,\n             6,\n             8,\n             5,\n             4,\n             7,\n             5,\n             3,\n             8,\n             8,\n             6,\n             8,\n             8,\n             5,\n             7,\n             7,\n             6,\n             4,\n             4,\n             7,\n             6,\n             5,\n             7,\n             8,\n             8,\n             8,\n             6,\n             8,\n             4,\n             3,\n             4,\n             8,\n             5,\n             4,\n             7,\n             8,\n             3,\n             7,\n             6,\n             3,\n             4,\n             6,\n             6,\n             5,\n             8,\n             3,\n             4,\n             3,\n             3,\n             7,\n             5,\n             5,\n             3,\n             5,\n             4,\n             7,\n             3,\n             6,\n             7,\n             6,\n             4,\n             3]},\n   [1133, 0]],\n  ['m=128 formula alpha',\n   {'regs': [6,\n             6,\n             4,\n             6,\n             8,\n             7,\n             6,\n             9,\n             4,\n             4,\n             5,\n             7,\n             6,\n             9,\n             7,\n             4,\n             9,\n             7,\n             5,\n             5,\n             6,\n             9,\n             6,\n             7,\n             7,\n             4,\n             9,\n             9,\n             5,\n             4,\n             5,\n             4,\n             4,\n             6,\n             9,\n             9,\n             7,\n             7,\n             9,\n             7,\n             4,\n             7,\n             4,\n             5,\n             9,\n             8,\n             7,\n             6,\n             9,\n             9,\n             4,\n             9,\n             8,\n             4,\n             6,\n             6,\n             5,\n             8,\n             5,\n             7,\n             8,\n             7,\n             8,\n             7,\n             7,\n             4,\n             6,\n             9,\n             9,\n             4,\n             6,\n             5,\n             6,\n             6,\n             8,\n             4,\n             6,\n             8,\n             6,\n             7,\n             9,\n             5,\n             9,\n             8,\n             9,\n             9,\n             7,\n             6,\n             5,\n             6,\n             5,\n             6,\n             6,\n             7,\n             7,\n             9,\n             8,\n             6,\n             8,\n             6,\n             9,\n             8,\n             9,\n             4,\n             9,\n             4,\n             6,\n             4,\n             4,\n             6,\n             7,\n             9,\n             4,\n             6,\n             7,\n             5,\n             5,\n             5,\n             7,\n             5,\n             6,\n             6,\n             7,\n             6,\n             7,\n             7,\n             6,\n             5]},\n   [4615, 0]],\n  ['all registers full', {'regs': [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2]}, [43, 0]],\n  ['large range correction',\n   {'regs': [24, 25, 26, 27, 24, 25, 26, 27, 24, 25, 26, 27, 24, 25, 26, 27]},\n   [403802870, 0]],\n  ['mixed m=32 with zeros',\n   {'regs': [0,\n             0,\n             0,\n             1,\n             2,\n             1,\n             2,\n             4,\n             3,\n             3,\n             4,\n             4,\n             3,\n             4,\n             4,\n             3,\n             4,\n             1,\n             4,\n             3,\n             3,\n             3,\n             2,\n             2,\n             3,\n             3,\n             1,\n             4,\n             2,\n             3,\n             3,\n             1]},\n   [83, 3]],\n  ['dense m=16', {'regs': [5, 4, 5, 3, 4, 7, 7, 5, 5, 3, 6, 7, 3, 5, 7, 6]}, [240, 0]],\n  ['all ones no empty register',\n   {'regs': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]},\n   [22, 0]],\n  ['exactly one empty register',\n   {'regs': [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]},\n   [44, 1]]],\n [['sparse m=16', {'regs': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 1, 3, 5, 1]}, [8, 10]],\n  ['dense m=32',\n   {'regs': [4,\n             2,\n             4,\n             4,\n             5,\n             5,\n             4,\n             3,\n             6,\n             2,\n             5,\n             2,\n             2,\n             5,\n             4,\n             4,\n             3,\n             6,\n             5,\n             6,\n             6,\n             5,\n             4,\n             5,\n             6,\n             4,\n             2,\n             5,\n             4,\n             2,\n             5,\n             3]},\n   [255, 0]],\n  ['dense m=64',\n   {'regs': [7,\n             7,\n             7,\n             4,\n             7,\n             6,\n             3,\n             3,\n             6,\n             4,\n             4,\n             8,\n             8,\n             7,\n             8,\n             4,\n             8,\n             8,\n             8,\n             6,\n             4,\n             5,\n             5,\n             8,\n             8,\n             5,\n             4,\n             4,\n             4,\n             7,\n             6,\n             5,\n             8,\n             7,\n             3,\n             5,\n             3,\n             8,\n             3,\n             4,\n             3,\n             8,\n             5,\n             3,\n             4,\n             3,\n             8,\n             3,\n             7,\n             5,\n             7,\n             3,\n             7,\n             8,\n             6,\n             6,\n             4,\n             3,\n             6,\n             3,\n             7,\n             3,\n             5,\n             7]},\n   [1031, 0]],\n  ['m=128 formula alpha',\n   {'regs': [6,\n             8,\n             8,\n             6,\n             7,\n             5,\n             8,\n             4,\n             6,\n             4,\n             4,\n             8,\n             6,\n             7,\n             8,\n             6,\n             7,\n             7,\n             7,\n             4,\n             7,\n             6,\n             7,\n             8,\n             5,\n             9,\n             9,\n             8,\n             4,\n             9,\n             5,\n             7,\n             6,\n             8,\n             7,\n             8,\n             4,\n             4,\n             7,\n             9,\n             8,\n             7,\n             6,\n             6,\n             4,\n             8,\n             8,\n             4,\n             5,\n             4,\n             7,\n             6,\n             5,\n             4,\n             7,\n             5,\n             5,\n             5,\n             6,\n             5,\n             5,\n             8,\n             6,\n             5,\n             9,\n             4,\n             4,\n             7,\n             7,\n             8,\n             4,\n             7,\n             4,\n             8,\n             5,\n             6,\n             8,\n             7,\n             8,\n             9,\n             7,\n             9,\n             9,\n             7,\n             8,\n             4,\n             5,\n             8,\n             6,\n             4,\n             7,\n             7,\n             7,\n             4,\n             5,\n             8,\n             9,\n             8,\n             6,\n             8,\n             5,\n             8,\n             8,\n             7,\n             5,\n             9,\n             4,\n             4,\n             7,\n             9,\n             7,\n             5,\n             8,\n             7,\n             5,\n             5,\n             6,\n             5,\n             7,\n             7,\n             7,\n             7,\n             5,\n             6,\n             4,\n             8,\n             5,\n             7]},\n   [4454, 0]],\n  ['all registers full', {'regs': [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3]}, [86, 0]],\n  ['large range correction',\n   {'regs': [25, 26, 27, 24, 25, 26, 27, 24, 25, 26, 27, 24, 25, 26, 27, 24]},\n   [403802870, 0]],\n  ['mixed m=32 with zeros',\n   {'regs': [0,\n             0,\n             0,\n             3,\n             1,\n             2,\n             1,\n             2,\n             1,\n             1,\n             2,\n             1,\n             4,\n             2,\n             2,\n             3,\n             2,\n             3,\n             1,\n             2,\n             2,\n             4,\n             3,\n             3,\n             2,\n             3,\n             3,\n             2,\n             4,\n             2,\n             3,\n             2]},\n   [76, 3]],\n  ['dense m=16', {'regs': [6, 5, 7, 7, 7, 7, 3, 7, 5, 7, 7, 6, 3, 6, 3, 3]}, [259, 0]],\n  ['all ones no empty register',\n   {'regs': [1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1,\n             1]},\n   [45, 0]],\n  ['exactly one empty register',\n   {'regs': [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]},\n   [44, 1]]]]\nfor label, args, expected in cases[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 with stipulated constants and pre-hashed or explicitly hashed inputs; it is not a production implementation and makes no claim of conformance to any library or paper beyond the stated contract. 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-probabilistic_sketches-hll-estimate-harmonic-mean","generated_at":"2026-09-29T14:48:43.368131+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Distinct-count dashboards and query planners rely on the bias corrections of the HyperLogLog estimator at both small and large cardinalities.","repair":"Sum 2^-r over all registers, including empty ones.","root_cause":"Zero registers are excluded from the harmonic sum.","sha256":"1625a9e24ec23aeccdc2b4cc6ff9e6689bdb121e2a176b4055c8c52b6d6b97f6","title":"HyperLogLog cardinality estimate: harmonic sum skips empty registers · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":40.818,"exit_code":1,"observations":[{"actual":[8,10],"check":"sparse m=16","expected":[8,10],"passed":true},{"actual":[1,0],"check":"dense m=32","expected":[247,0],"passed":false},{"actual":[1,0],"check":"dense m=64","expected":[1249,0],"passed":false},{"actual":[1,0],"check":"m=128 formula alpha","expected":[4107,0],"passed":false},{"actual":[3,0],"check":"all registers full","expected":[43,0],"passed":false},{"actual":[0,0],"check":"large range correction","expected":[403802870,0],"passed":false},{"actual":[76,3],"check":"mixed m=32 with zeros","expected":[76,3],"passed":true},{"actual":[0,0],"check":"dense m=16","expected":[206,0],"passed":false},{"actual":[11,0],"check":"all ones no empty register","expected":[45,0],"passed":false},{"actual":[44,1],"check":"exactly one empty register","expected":[44,1],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"sparse m=16\", \"actual\": [8, 10], \"expected\": [8, 10], \"passed\": true}, {\"check\": \"dense m=32\", \"actual\": [1, 0], \"expected\": [247, 0], \"passed\": false}, {\"check\": \"dense m=64\", \"actual\": [1, 0], \"expected\": [1249, 0], \"passed\": false}, {\"check\": \"m=128 formula alpha\", \"actual\": [1, 0], \"expected\": [4107, 0], \"passed\": false}, {\"check\": \"all registers full\", \"actual\": [3, 0], \"expected\": [43, 0], \"passed\": false}, {\"check\": \"large range correction\", \"actual\": [0, 0], \"expected\": [403802870, 0], \"passed\": false}, {\"check\": \"mixed m=32 with zeros\", \"actual\": [76, 3], \"expected\": [76, 3], \"passed\": true}, {\"check\": \"dense m=16\", \"actual\": [0, 0], \"expected\": [206, 0], \"passed\": false}, {\"check\": \"all ones no empty register\", \"actual\": [11, 0], \"expected\": [45, 0], \"passed\": false}, {\"check\": \"exactly one empty register\", \"actual\": [44, 1], \"expected\": [44, 1], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":41.994,"exit_code":1,"observations":[{"actual":[73,10],"check":"sparse m=16","expected":[8,10],"passed":false},{"actual":[247,0],"check":"dense m=32","expected":[247,0],"passed":true},{"actual":[1249,0],"check":"dense m=64","expected":[1249,0],"passed":true},{"actual":[4107,0],"check":"m=128 formula alpha","expected":[4107,0],"passed":true},{"actual":[43,0],"check":"all registers full","expected":[43,0],"passed":true},{"actual":[403802870,0],"check":"large range correction","expected":[403802870,0],"passed":true},{"actual":[98,3],"check":"mixed m=32 with zeros","expected":[76,3],"passed":false},{"actual":[206,0],"check":"dense m=16","expected":[206,0],"passed":true},{"actual":[45,0],"check":"all ones no empty register","expected":[45,0],"passed":true},{"actual":[44,1],"check":"exactly one empty register","expected":[44,1],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"sparse m=16\", \"actual\": [73, 10], \"expected\": [8, 10], \"passed\": false}, {\"check\": \"dense m=32\", \"actual\": [247, 0], \"expected\": [247, 0], \"passed\": true}, {\"check\": \"dense m=64\", \"actual\": [1249, 0], \"expected\": [1249, 0], \"passed\": true}, {\"check\": \"m=128 formula alpha\", \"actual\": [4107, 0], \"expected\": [4107, 0], \"passed\": true}, {\"check\": \"all registers full\", \"actual\": [43, 0], \"expected\": [43, 0], \"passed\": true}, {\"check\": \"large range correction\", \"actual\": [403802870, 0], \"expected\": [403802870, 0], \"passed\": true}, {\"check\": \"mixed m=32 with zeros\", \"actual\": [98, 3], \"expected\": [76, 3], \"passed\": false}, {\"check\": \"dense m=16\", \"actual\": [206, 0], \"expected\": [206, 0], \"passed\": true}, {\"check\": \"all ones no empty register\", \"actual\": [45, 0], \"expected\": [45, 0], \"passed\": true}, {\"check\": \"exactly one empty register\", \"actual\": [44, 1], \"expected\": [44, 1], \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":41.238,"exit_code":0,"observations":[{"actual":[8,10],"check":"sparse m=16","expected":[8,10],"passed":true},{"actual":[247,0],"check":"dense m=32","expected":[247,0],"passed":true},{"actual":[1249,0],"check":"dense m=64","expected":[1249,0],"passed":true},{"actual":[4107,0],"check":"m=128 formula alpha","expected":[4107,0],"passed":true},{"actual":[43,0],"check":"all registers full","expected":[43,0],"passed":true},{"actual":[403802870,0],"check":"large range correction","expected":[403802870,0],"passed":true},{"actual":[76,3],"check":"mixed m=32 with zeros","expected":[76,3],"passed":true},{"actual":[206,0],"check":"dense m=16","expected":[206,0],"passed":true},{"actual":[45,0],"check":"all ones no empty register","expected":[45,0],"passed":true},{"actual":[44,1],"check":"exactly one empty register","expected":[44,1],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"sparse m=16\", \"actual\": [8, 10], \"expected\": [8, 10], \"passed\": true}, {\"check\": \"dense m=32\", \"actual\": [247, 0], \"expected\": [247, 0], \"passed\": true}, {\"check\": \"dense m=64\", \"actual\": [1249, 0], \"expected\": [1249, 0], \"passed\": true}, {\"check\": \"m=128 formula alpha\", \"actual\": [4107, 0], \"expected\": [4107, 0], \"passed\": true}, {\"check\": \"all registers full\", \"actual\": [43, 0], \"expected\": [43, 0], \"passed\": true}, {\"check\": \"large range correction\", \"actual\": [403802870, 0], \"expected\": [403802870, 0], \"passed\": true}, {\"check\": \"mixed m=32 with zeros\", \"actual\": [76, 3], \"expected\": [76, 3], \"passed\": true}, {\"check\": \"dense m=16\", \"actual\": [206, 0], \"expected\": [206, 0], \"passed\": true}, {\"check\": \"all ones no empty register\", \"actual\": [45, 0], \"expected\": [45, 0], \"passed\": true}, {\"check\": \"exactly one empty register\", \"actual\": [44, 1], \"expected\": [44, 1], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}