FAILURE MAP
← Case archive

FA-40316 / Heap invariants / Open access

Heap slot recycling increments the existing generation rather than resetting it · case 01

The bounded handle generation certificate reports an incorrect recycle.

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

ROOT CAUSE

Heap slot recycling increments the existing generation rather than resetting it.

VERIFIED REPAIR

Derive recycle using [x[1]+1 for x in slots] under the stated bounded certificate contract.

Unsuccessful approach: The local patch uses [1 for x in slots] and still violates the stated relation.

Case contract

A heap handle is [slot,generation,owner]. A slot table stores [live,generation,payload]. A handle resolves only for matching owner, in-range slot, live slot, and exact generation. Inspect each supplied handle; return per-handle ownership, bounds, liveness, generation match, resolution, and next generation after recycling each slot. Missing resolution is None.

Why this case matters

This isolates an internal heap representation or priority-structure invariant using deterministic finite records.

1 / The failure

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(d):
    owner=d['owner']; slots=d['slots']; hs=d['handles']
    def bounds(h): return 0<=h[0]<len(slots)
    def live(h): return bounds(h) and slots[h[0]][0]
    def gen(h): return bounds(h) and slots[h[0]][1]==h[1]
    return {'owners': [h[2]==owner for h in hs],
    'bounds': [bounds(h) for h in hs],
    'live': [live(h) for h in hs],
    'generation': [gen(h) for h in hs],
    'resolved': [slots[h[0]][2] if h[2]==owner and live(h) and gen(h) else None for h in hs],
    'recycle': [x[1] for x in slots]}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
cases = [[({'owner': 2, 'slots': [], 'handles': [[0, 0, 2], [-1, 0, 2]]}, {'owners': [True, True], 'bounds': [False, False], 'live': [False, False], 'generation': [False, False], 'resolved': [None, None], 'recycle': []}), ({'owner': 2, 'slots': [[True, 0, 0]], 'handles': [[0, 0, 2], [0, 0, 1]]}, {'owners': [True, False], 'bounds': [True, True], 'live': [True, True], 'generation': [True, True], 'resolved': [0, None], 'recycle': [1]}), ({'owner': 2, 'slots': [[False, 3, 'x']], 'handles': [[0, 3, 2], [0, 2, 2]]}, {'owners': [True, True], 'bounds': [True, True], 'live': [False, False], 'generation': [True, False], 'resolved': [None, None], 'recycle': [4]}), ({'owner': 2, 'slots': [[True, 4, 'a'], [True, 8, 'b']], 'handles': [[0, 3, 2], [1, 8, 2], [1, 8, 3]]}, {'owners': [True, True, False], 'bounds': [True, True, True], 'live': [True, True, True], 'generation': [False, True, True], 'resolved': [None, 'b', None], 'recycle': [5, 9]}), ({'owner': 2, 'slots': [[True, 1, ''], [False, 2, 5]], 'handles': [[0, 1, 2], [1, 2, 2], [-1, 2, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, False, False], 'generation': [True, True, False], 'resolved': ['', None, None], 'recycle': [2, 3]}), ({'owner': 2, 'slots': [[True, 9, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [False, True, False], 'resolved': [None, 'z', None], 'recycle': [10]}), ({'owner': 2, 'slots': [[True, 10, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [True, False, False], 'resolved': ['z', None, None], 'recycle': [11]})], [({'owner': 2, 'slots': [], 'handles': [[0, 0, 2], [-1, 0, 2]]}, {'owners': [True, True], 'bounds': [False, False], 'live': [False, False], 'generation': [False, False], 'resolved': [None, None], 'recycle': []}), ({'owner': 2, 'slots': [[True, 0, 0]], 'handles': [[0, 0, 2], [0, 0, 1]]}, {'owners': [True, False], 'bounds': [True, True], 'live': [True, True], 'generation': [True, True], 'resolved': [0, None], 'recycle': [1]}), ({'owner': 2, 'slots': [[False, 3, 'x']], 'handles': [[0, 3, 2], [0, 2, 2]]}, {'owners': [True, True], 'bounds': [True, True], 'live': [False, False], 'generation': [True, False], 'resolved': [None, None], 'recycle': [4]}), ({'owner': 2, 'slots': [[True, 4, 'a'], [True, 8, 'b']], 'handles': [[0, 3, 2], [1, 8, 2], [1, 8, 3]]}, {'owners': [True, True, False], 'bounds': [True, True, True], 'live': [True, True, True], 'generation': [False, True, True], 'resolved': [None, 'b', None], 'recycle': [5, 9]}), ({'owner': 2, 'slots': [[True, 1, ''], [False, 2, 5]], 'handles': [[0, 1, 2], [1, 2, 2], [-1, 2, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, False, False], 'generation': [True, True, False], 'resolved': ['', None, None], 'recycle': [2, 3]}), ({'owner': 2, 'slots': [[True, 9, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [False, True, False], 'resolved': [None, 'z', None], 'recycle': [10]}), ({'owner': 2, 'slots': [[True, 11, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [False, False, False], 'resolved': [None, None, None], 'recycle': [12]})], [({'owner': 2, 'slots': [], 'handles': [[0, 0, 2], [-1, 0, 2]]}, {'owners': [True, True], 'bounds': [False, False], 'live': [False, False], 'generation': [False, False], 'resolved': [None, None], 'recycle': []}), ({'owner': 2, 'slots': [[True, 0, 0]], 'handles': [[0, 0, 2], [0, 0, 1]]}, {'owners': [True, False], 'bounds': [True, True], 'live': [True, True], 'generation': [True, True], 'resolved': [0, None], 'recycle': [1]}), ({'owner': 2, 'slots': [[False, 3, 'x']], 'handles': [[0, 3, 2], [0, 2, 2]]}, {'owners': [True, True], 'bounds': [True, True], 'live': [False, False], 'generation': [True, False], 'resolved': [None, None], 'recycle': [4]}), ({'owner': 2, 'slots': [[True, 4, 'a'], [True, 8, 'b']], 'handles': [[0, 3, 2], [1, 8, 2], [1, 8, 3]]}, {'owners': [True, True, False], 'bounds': [True, True, True], 'live': [True, True, True], 'generation': [False, True, True], 'resolved': [None, 'b', None], 'recycle': [5, 9]}), ({'owner': 2, 'slots': [[True, 1, ''], [False, 2, 5]], 'handles': [[0, 1, 2], [1, 2, 2], [-1, 2, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, False, False], 'generation': [True, True, False], 'resolved': ['', None, None], 'recycle': [2, 3]}), ({'owner': 2, 'slots': [[True, 9, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [False, True, False], 'resolved': [None, 'z', None], 'recycle': [10]}), ({'owner': 2, 'slots': [[True, 12, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [False, False, False], 'resolved': [None, None, None], 'recycle': [13]})], [({'owner': 2, 'slots': [], 'handles': [[0, 0, 2], [-1, 0, 2]]}, {'owners': [True, True], 'bounds': [False, False], 'live': [False, False], 'generation': [False, False], 'resolved': [None, None], 'recycle': []}), ({'owner': 2, 'slots': [[True, 0, 0]], 'handles': [[0, 0, 2], [0, 0, 1]]}, {'owners': [True, False], 'bounds': [True, True], 'live': [True, True], 'generation': [True, True], 'resolved': [0, None], 'recycle': [1]}), ({'owner': 2, 'slots': [[False, 3, 'x']], 'handles': [[0, 3, 2], [0, 2, 2]]}, {'owners': [True, True], 'bounds': [True, True], 'live': [False, False], 'generation': [True, False], 'resolved': [None, None], 'recycle': [4]}), ({'owner': 2, 'slots': [[True, 4, 'a'], [True, 8, 'b']], 'handles': [[0, 3, 2], [1, 8, 2], [1, 8, 3]]}, {'owners': [True, True, False], 'bounds': [True, True, True], 'live': [True, True, True], 'generation': [False, True, True], 'resolved': [None, 'b', None], 'recycle': [5, 9]}), ({'owner': 2, 'slots': [[True, 1, ''], [False, 2, 5]], 'handles': [[0, 1, 2], [1, 2, 2], [-1, 2, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, False, False], 'generation': [True, True, False], 'resolved': ['', None, None], 'recycle': [2, 3]}), ({'owner': 2, 'slots': [[True, 9, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [False, True, False], 'resolved': [None, 'z', None], 'recycle': [10]}), ({'owner': 2, 'slots': [[True, 13, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [False, False, False], 'resolved': [None, None, None], 'recycle': [14]})], [({'owner': 2, 'slots': [], 'handles': [[0, 0, 2], [-1, 0, 2]]}, {'owners': [True, True], 'bounds': [False, False], 'live': [False, False], 'generation': [False, False], 'resolved': [None, None], 'recycle': []}), ({'owner': 2, 'slots': [[True, 0, 0]], 'handles': [[0, 0, 2], [0, 0, 1]]}, {'owners': [True, False], 'bounds': [True, True], 'live': [True, True], 'generation': [True, True], 'resolved': [0, None], 'recycle': [1]}), ({'owner': 2, 'slots': [[False, 3, 'x']], 'handles': [[0, 3, 2], [0, 2, 2]]}, {'owners': [True, True], 'bounds': [True, True], 'live': [False, False], 'generation': [True, False], 'resolved': [None, None], 'recycle': [4]}), ({'owner': 2, 'slots': [[True, 4, 'a'], [True, 8, 'b']], 'handles': [[0, 3, 2], [1, 8, 2], [1, 8, 3]]}, {'owners': [True, True, False], 'bounds': [True, True, True], 'live': [True, True, True], 'generation': [False, True, True], 'resolved': [None, 'b', None], 'recycle': [5, 9]}), ({'owner': 2, 'slots': [[True, 1, ''], [False, 2, 5]], 'handles': [[0, 1, 2], [1, 2, 2], [-1, 2, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, False, False], 'generation': [True, True, False], 'resolved': ['', None, None], 'recycle': [2, 3]}), ({'owner': 2, 'slots': [[True, 9, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [False, True, False], 'resolved': [None, 'z', None], 'recycle': [10]}), ({'owner': 2, 'slots': [[True, 14, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [False, False, False], 'resolved': [None, None, None], 'recycle': [15]})]][N-1]
check('regression certificate 1', solve(cases[0][0]), cases[0][1])
check('regression certificate 2', solve(cases[1][0]), cases[1][1])
check('regression certificate 3', solve(cases[2][0]), cases[2][1])
check('regression certificate 4', solve(cases[3][0]), cases[3][1])
check('regression certificate 5', solve(cases[4][0]), cases[4][1])
check('regression certificate 6', solve(cases[5][0]), cases[5][1])
check('variant-dependent certificate', solve(cases[6][0]), cases[6][1])
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
regression certificate 1{'bounds': [False, False], 'generation': [False, False], 'live': [False, False], 'owners': [True, True], 'recycle': [], 'resolved': [None, None]}{'bounds': [False, False], 'generation': [False, False], 'live': [False, False], 'owners': [True, True], 'recycle': [], 'resolved': [None, None]}Passed
regression certificate 2{'bounds': [True, True], 'generation': [True, True], 'live': [True, True], 'owners': [True, False], 'recycle': [0], 'resolved': [0, None]}{'bounds': [True, True], 'generation': [True, True], 'live': [True, True], 'owners': [True, False], 'recycle': [1], 'resolved': [0, None]}Failed
regression certificate 3{'bounds': [True, True], 'generation': [True, False], 'live': [False, False], 'owners': [True, True], 'recycle': [3], 'resolved': [None, None]}{'bounds': [True, True], 'generation': [True, False], 'live': [False, False], 'owners': [True, True], 'recycle': [4], 'resolved': [None, None]}Failed
regression certificate 4{'bounds': [True, True, True], 'generation': [False, True, True], 'live': [True, True, True], 'owners': [True, True, False], 'recycle': [4, 8], 'resolved': [None, 'b', None]}{'bounds': [True, True, True], 'generation': [False, True, True], 'live': [True, True, True], 'owners': [True, True, False], 'recycle': [5, 9], 'resolved': [None, 'b', None]}Failed
regression certificate 5{'bounds': [True, True, False], 'generation': [True, True, False], 'live': [True, False, False], 'owners': [True, True, True], 'recycle': [1, 2], 'resolved': ['', None, None]}{'bounds': [True, True, False], 'generation': [True, True, False], 'live': [True, False, False], 'owners': [True, True, True], 'recycle': [2, 3], 'resolved': ['', None, None]}Failed
regression certificate 6{'bounds': [True, True, False], 'generation': [False, True, False], 'live': [True, True, False], 'owners': [True, True, True], 'recycle': [9], 'resolved': [None, 'z', None]}{'bounds': [True, True, False], 'generation': [False, True, False], 'live': [True, True, False], 'owners': [True, True, True], 'recycle': [10], 'resolved': [None, 'z', None]}Failed
variant-dependent certificate{'bounds': [True, True, False], 'generation': [True, False, False], 'live': [True, True, False], 'owners': [True, True, True], 'recycle': [10], 'resolved': ['z', None, None]}{'bounds': [True, True, False], 'generation': [True, False, False], 'live': [True, True, False], 'owners': [True, True, True], 'recycle': [11], 'resolved': ['z', None, None]}Failed

SHA-256 / 7caf98b4430e54dc020a416433f6076219d442210433da6245dc0e32045c1aa5

2 / The unsuccessful fix

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(d):
    owner=d['owner']; slots=d['slots']; hs=d['handles']
    def bounds(h): return 0<=h[0]<len(slots)
    def live(h): return bounds(h) and slots[h[0]][0]
    def gen(h): return bounds(h) and slots[h[0]][1]==h[1]
    return {'owners': [h[2]==owner for h in hs],
    'bounds': [bounds(h) for h in hs],
    'live': [live(h) for h in hs],
    'generation': [gen(h) for h in hs],
    'resolved': [slots[h[0]][2] if h[2]==owner and live(h) and gen(h) else None for h in hs],
    'recycle': [1 for x in slots]}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
cases = [[({'owner': 2, 'slots': [], 'handles': [[0, 0, 2], [-1, 0, 2]]}, {'owners': [True, True], 'bounds': [False, False], 'live': [False, False], 'generation': [False, False], 'resolved': [None, None], 'recycle': []}), ({'owner': 2, 'slots': [[True, 0, 0]], 'handles': [[0, 0, 2], [0, 0, 1]]}, {'owners': [True, False], 'bounds': [True, True], 'live': [True, True], 'generation': [True, True], 'resolved': [0, None], 'recycle': [1]}), ({'owner': 2, 'slots': [[False, 3, 'x']], 'handles': [[0, 3, 2], [0, 2, 2]]}, {'owners': [True, True], 'bounds': [True, True], 'live': [False, False], 'generation': [True, False], 'resolved': [None, None], 'recycle': [4]}), ({'owner': 2, 'slots': [[True, 4, 'a'], [True, 8, 'b']], 'handles': [[0, 3, 2], [1, 8, 2], [1, 8, 3]]}, {'owners': [True, True, False], 'bounds': [True, True, True], 'live': [True, True, True], 'generation': [False, True, True], 'resolved': [None, 'b', None], 'recycle': [5, 9]}), ({'owner': 2, 'slots': [[True, 1, ''], [False, 2, 5]], 'handles': [[0, 1, 2], [1, 2, 2], [-1, 2, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, False, False], 'generation': [True, True, False], 'resolved': ['', None, None], 'recycle': [2, 3]}), ({'owner': 2, 'slots': [[True, 9, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [False, True, False], 'resolved': [None, 'z', None], 'recycle': [10]}), ({'owner': 2, 'slots': [[True, 10, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [True, False, False], 'resolved': ['z', None, None], 'recycle': [11]})], [({'owner': 2, 'slots': [], 'handles': [[0, 0, 2], [-1, 0, 2]]}, {'owners': [True, True], 'bounds': [False, False], 'live': [False, False], 'generation': [False, False], 'resolved': [None, None], 'recycle': []}), ({'owner': 2, 'slots': [[True, 0, 0]], 'handles': [[0, 0, 2], [0, 0, 1]]}, {'owners': [True, False], 'bounds': [True, True], 'live': [True, True], 'generation': [True, True], 'resolved': [0, None], 'recycle': [1]}), ({'owner': 2, 'slots': [[False, 3, 'x']], 'handles': [[0, 3, 2], [0, 2, 2]]}, {'owners': [True, True], 'bounds': [True, True], 'live': [False, False], 'generation': [True, False], 'resolved': [None, None], 'recycle': [4]}), ({'owner': 2, 'slots': [[True, 4, 'a'], [True, 8, 'b']], 'handles': [[0, 3, 2], [1, 8, 2], [1, 8, 3]]}, {'owners': [True, True, False], 'bounds': [True, True, True], 'live': [True, True, True], 'generation': [False, True, True], 'resolved': [None, 'b', None], 'recycle': [5, 9]}), ({'owner': 2, 'slots': [[True, 1, ''], [False, 2, 5]], 'handles': [[0, 1, 2], [1, 2, 2], [-1, 2, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, False, False], 'generation': [True, True, False], 'resolved': ['', None, None], 'recycle': [2, 3]}), ({'owner': 2, 'slots': [[True, 9, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [False, True, False], 'resolved': [None, 'z', None], 'recycle': [10]}), ({'owner': 2, 'slots': [[True, 11, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [False, False, False], 'resolved': [None, None, None], 'recycle': [12]})], [({'owner': 2, 'slots': [], 'handles': [[0, 0, 2], [-1, 0, 2]]}, {'owners': [True, True], 'bounds': [False, False], 'live': [False, False], 'generation': [False, False], 'resolved': [None, None], 'recycle': []}), ({'owner': 2, 'slots': [[True, 0, 0]], 'handles': [[0, 0, 2], [0, 0, 1]]}, {'owners': [True, False], 'bounds': [True, True], 'live': [True, True], 'generation': [True, True], 'resolved': [0, None], 'recycle': [1]}), ({'owner': 2, 'slots': [[False, 3, 'x']], 'handles': [[0, 3, 2], [0, 2, 2]]}, {'owners': [True, True], 'bounds': [True, True], 'live': [False, False], 'generation': [True, False], 'resolved': [None, None], 'recycle': [4]}), ({'owner': 2, 'slots': [[True, 4, 'a'], [True, 8, 'b']], 'handles': [[0, 3, 2], [1, 8, 2], [1, 8, 3]]}, {'owners': [True, True, False], 'bounds': [True, True, True], 'live': [True, True, True], 'generation': [False, True, True], 'resolved': [None, 'b', None], 'recycle': [5, 9]}), ({'owner': 2, 'slots': [[True, 1, ''], [False, 2, 5]], 'handles': [[0, 1, 2], [1, 2, 2], [-1, 2, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, False, False], 'generation': [True, True, False], 'resolved': ['', None, None], 'recycle': [2, 3]}), ({'owner': 2, 'slots': [[True, 9, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [False, True, False], 'resolved': [None, 'z', None], 'recycle': [10]}), ({'owner': 2, 'slots': [[True, 12, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [False, False, False], 'resolved': [None, None, None], 'recycle': [13]})], [({'owner': 2, 'slots': [], 'handles': [[0, 0, 2], [-1, 0, 2]]}, {'owners': [True, True], 'bounds': [False, False], 'live': [False, False], 'generation': [False, False], 'resolved': [None, None], 'recycle': []}), ({'owner': 2, 'slots': [[True, 0, 0]], 'handles': [[0, 0, 2], [0, 0, 1]]}, {'owners': [True, False], 'bounds': [True, True], 'live': [True, True], 'generation': [True, True], 'resolved': [0, None], 'recycle': [1]}), ({'owner': 2, 'slots': [[False, 3, 'x']], 'handles': [[0, 3, 2], [0, 2, 2]]}, {'owners': [True, True], 'bounds': [True, True], 'live': [False, False], 'generation': [True, False], 'resolved': [None, None], 'recycle': [4]}), ({'owner': 2, 'slots': [[True, 4, 'a'], [True, 8, 'b']], 'handles': [[0, 3, 2], [1, 8, 2], [1, 8, 3]]}, {'owners': [True, True, False], 'bounds': [True, True, True], 'live': [True, True, True], 'generation': [False, True, True], 'resolved': [None, 'b', None], 'recycle': [5, 9]}), ({'owner': 2, 'slots': [[True, 1, ''], [False, 2, 5]], 'handles': [[0, 1, 2], [1, 2, 2], [-1, 2, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, False, False], 'generation': [True, True, False], 'resolved': ['', None, None], 'recycle': [2, 3]}), ({'owner': 2, 'slots': [[True, 9, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [False, True, False], 'resolved': [None, 'z', None], 'recycle': [10]}), ({'owner': 2, 'slots': [[True, 13, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [False, False, False], 'resolved': [None, None, None], 'recycle': [14]})], [({'owner': 2, 'slots': [], 'handles': [[0, 0, 2], [-1, 0, 2]]}, {'owners': [True, True], 'bounds': [False, False], 'live': [False, False], 'generation': [False, False], 'resolved': [None, None], 'recycle': []}), ({'owner': 2, 'slots': [[True, 0, 0]], 'handles': [[0, 0, 2], [0, 0, 1]]}, {'owners': [True, False], 'bounds': [True, True], 'live': [True, True], 'generation': [True, True], 'resolved': [0, None], 'recycle': [1]}), ({'owner': 2, 'slots': [[False, 3, 'x']], 'handles': [[0, 3, 2], [0, 2, 2]]}, {'owners': [True, True], 'bounds': [True, True], 'live': [False, False], 'generation': [True, False], 'resolved': [None, None], 'recycle': [4]}), ({'owner': 2, 'slots': [[True, 4, 'a'], [True, 8, 'b']], 'handles': [[0, 3, 2], [1, 8, 2], [1, 8, 3]]}, {'owners': [True, True, False], 'bounds': [True, True, True], 'live': [True, True, True], 'generation': [False, True, True], 'resolved': [None, 'b', None], 'recycle': [5, 9]}), ({'owner': 2, 'slots': [[True, 1, ''], [False, 2, 5]], 'handles': [[0, 1, 2], [1, 2, 2], [-1, 2, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, False, False], 'generation': [True, True, False], 'resolved': ['', None, None], 'recycle': [2, 3]}), ({'owner': 2, 'slots': [[True, 9, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [False, True, False], 'resolved': [None, 'z', None], 'recycle': [10]}), ({'owner': 2, 'slots': [[True, 14, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [False, False, False], 'resolved': [None, None, None], 'recycle': [15]})]][N-1]
check('regression certificate 1', solve(cases[0][0]), cases[0][1])
check('regression certificate 2', solve(cases[1][0]), cases[1][1])
check('regression certificate 3', solve(cases[2][0]), cases[2][1])
check('regression certificate 4', solve(cases[3][0]), cases[3][1])
check('regression certificate 5', solve(cases[4][0]), cases[4][1])
check('regression certificate 6', solve(cases[5][0]), cases[5][1])
check('variant-dependent certificate', solve(cases[6][0]), cases[6][1])
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
regression certificate 1{'bounds': [False, False], 'generation': [False, False], 'live': [False, False], 'owners': [True, True], 'recycle': [], 'resolved': [None, None]}{'bounds': [False, False], 'generation': [False, False], 'live': [False, False], 'owners': [True, True], 'recycle': [], 'resolved': [None, None]}Passed
regression certificate 2{'bounds': [True, True], 'generation': [True, True], 'live': [True, True], 'owners': [True, False], 'recycle': [1], 'resolved': [0, None]}{'bounds': [True, True], 'generation': [True, True], 'live': [True, True], 'owners': [True, False], 'recycle': [1], 'resolved': [0, None]}Passed
regression certificate 3{'bounds': [True, True], 'generation': [True, False], 'live': [False, False], 'owners': [True, True], 'recycle': [1], 'resolved': [None, None]}{'bounds': [True, True], 'generation': [True, False], 'live': [False, False], 'owners': [True, True], 'recycle': [4], 'resolved': [None, None]}Failed
regression certificate 4{'bounds': [True, True, True], 'generation': [False, True, True], 'live': [True, True, True], 'owners': [True, True, False], 'recycle': [1, 1], 'resolved': [None, 'b', None]}{'bounds': [True, True, True], 'generation': [False, True, True], 'live': [True, True, True], 'owners': [True, True, False], 'recycle': [5, 9], 'resolved': [None, 'b', None]}Failed
regression certificate 5{'bounds': [True, True, False], 'generation': [True, True, False], 'live': [True, False, False], 'owners': [True, True, True], 'recycle': [1, 1], 'resolved': ['', None, None]}{'bounds': [True, True, False], 'generation': [True, True, False], 'live': [True, False, False], 'owners': [True, True, True], 'recycle': [2, 3], 'resolved': ['', None, None]}Failed
regression certificate 6{'bounds': [True, True, False], 'generation': [False, True, False], 'live': [True, True, False], 'owners': [True, True, True], 'recycle': [1], 'resolved': [None, 'z', None]}{'bounds': [True, True, False], 'generation': [False, True, False], 'live': [True, True, False], 'owners': [True, True, True], 'recycle': [10], 'resolved': [None, 'z', None]}Failed
variant-dependent certificate{'bounds': [True, True, False], 'generation': [True, False, False], 'live': [True, True, False], 'owners': [True, True, True], 'recycle': [1], 'resolved': ['z', None, None]}{'bounds': [True, True, False], 'generation': [True, False, False], 'live': [True, True, False], 'owners': [True, True, True], 'recycle': [11], 'resolved': ['z', None, None]}Failed

SHA-256 / b2c1ca30dda85344c8d23267dfa987ad09543596512de47eb245958d7901a865

3 / The verified repair

Exit 0
"""Failure Map reference implementation. Python standard library only."""
import json

N = 1
observations = []
def solve(d):
    owner=d['owner']; slots=d['slots']; hs=d['handles']
    def bounds(h): return 0<=h[0]<len(slots)
    def live(h): return bounds(h) and slots[h[0]][0]
    def gen(h): return bounds(h) and slots[h[0]][1]==h[1]
    return {'owners': [h[2]==owner for h in hs],
    'bounds': [bounds(h) for h in hs],
    'live': [live(h) for h in hs],
    'generation': [gen(h) for h in hs],
    'resolved': [slots[h[0]][2] if h[2]==owner and live(h) and gen(h) else None for h in hs],
    'recycle': [x[1]+1 for x in slots]}
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
cases = [[({'owner': 2, 'slots': [], 'handles': [[0, 0, 2], [-1, 0, 2]]}, {'owners': [True, True], 'bounds': [False, False], 'live': [False, False], 'generation': [False, False], 'resolved': [None, None], 'recycle': []}), ({'owner': 2, 'slots': [[True, 0, 0]], 'handles': [[0, 0, 2], [0, 0, 1]]}, {'owners': [True, False], 'bounds': [True, True], 'live': [True, True], 'generation': [True, True], 'resolved': [0, None], 'recycle': [1]}), ({'owner': 2, 'slots': [[False, 3, 'x']], 'handles': [[0, 3, 2], [0, 2, 2]]}, {'owners': [True, True], 'bounds': [True, True], 'live': [False, False], 'generation': [True, False], 'resolved': [None, None], 'recycle': [4]}), ({'owner': 2, 'slots': [[True, 4, 'a'], [True, 8, 'b']], 'handles': [[0, 3, 2], [1, 8, 2], [1, 8, 3]]}, {'owners': [True, True, False], 'bounds': [True, True, True], 'live': [True, True, True], 'generation': [False, True, True], 'resolved': [None, 'b', None], 'recycle': [5, 9]}), ({'owner': 2, 'slots': [[True, 1, ''], [False, 2, 5]], 'handles': [[0, 1, 2], [1, 2, 2], [-1, 2, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, False, False], 'generation': [True, True, False], 'resolved': ['', None, None], 'recycle': [2, 3]}), ({'owner': 2, 'slots': [[True, 9, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [False, True, False], 'resolved': [None, 'z', None], 'recycle': [10]}), ({'owner': 2, 'slots': [[True, 10, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [True, False, False], 'resolved': ['z', None, None], 'recycle': [11]})], [({'owner': 2, 'slots': [], 'handles': [[0, 0, 2], [-1, 0, 2]]}, {'owners': [True, True], 'bounds': [False, False], 'live': [False, False], 'generation': [False, False], 'resolved': [None, None], 'recycle': []}), ({'owner': 2, 'slots': [[True, 0, 0]], 'handles': [[0, 0, 2], [0, 0, 1]]}, {'owners': [True, False], 'bounds': [True, True], 'live': [True, True], 'generation': [True, True], 'resolved': [0, None], 'recycle': [1]}), ({'owner': 2, 'slots': [[False, 3, 'x']], 'handles': [[0, 3, 2], [0, 2, 2]]}, {'owners': [True, True], 'bounds': [True, True], 'live': [False, False], 'generation': [True, False], 'resolved': [None, None], 'recycle': [4]}), ({'owner': 2, 'slots': [[True, 4, 'a'], [True, 8, 'b']], 'handles': [[0, 3, 2], [1, 8, 2], [1, 8, 3]]}, {'owners': [True, True, False], 'bounds': [True, True, True], 'live': [True, True, True], 'generation': [False, True, True], 'resolved': [None, 'b', None], 'recycle': [5, 9]}), ({'owner': 2, 'slots': [[True, 1, ''], [False, 2, 5]], 'handles': [[0, 1, 2], [1, 2, 2], [-1, 2, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, False, False], 'generation': [True, True, False], 'resolved': ['', None, None], 'recycle': [2, 3]}), ({'owner': 2, 'slots': [[True, 9, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [False, True, False], 'resolved': [None, 'z', None], 'recycle': [10]}), ({'owner': 2, 'slots': [[True, 11, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [False, False, False], 'resolved': [None, None, None], 'recycle': [12]})], [({'owner': 2, 'slots': [], 'handles': [[0, 0, 2], [-1, 0, 2]]}, {'owners': [True, True], 'bounds': [False, False], 'live': [False, False], 'generation': [False, False], 'resolved': [None, None], 'recycle': []}), ({'owner': 2, 'slots': [[True, 0, 0]], 'handles': [[0, 0, 2], [0, 0, 1]]}, {'owners': [True, False], 'bounds': [True, True], 'live': [True, True], 'generation': [True, True], 'resolved': [0, None], 'recycle': [1]}), ({'owner': 2, 'slots': [[False, 3, 'x']], 'handles': [[0, 3, 2], [0, 2, 2]]}, {'owners': [True, True], 'bounds': [True, True], 'live': [False, False], 'generation': [True, False], 'resolved': [None, None], 'recycle': [4]}), ({'owner': 2, 'slots': [[True, 4, 'a'], [True, 8, 'b']], 'handles': [[0, 3, 2], [1, 8, 2], [1, 8, 3]]}, {'owners': [True, True, False], 'bounds': [True, True, True], 'live': [True, True, True], 'generation': [False, True, True], 'resolved': [None, 'b', None], 'recycle': [5, 9]}), ({'owner': 2, 'slots': [[True, 1, ''], [False, 2, 5]], 'handles': [[0, 1, 2], [1, 2, 2], [-1, 2, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, False, False], 'generation': [True, True, False], 'resolved': ['', None, None], 'recycle': [2, 3]}), ({'owner': 2, 'slots': [[True, 9, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [False, True, False], 'resolved': [None, 'z', None], 'recycle': [10]}), ({'owner': 2, 'slots': [[True, 12, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [False, False, False], 'resolved': [None, None, None], 'recycle': [13]})], [({'owner': 2, 'slots': [], 'handles': [[0, 0, 2], [-1, 0, 2]]}, {'owners': [True, True], 'bounds': [False, False], 'live': [False, False], 'generation': [False, False], 'resolved': [None, None], 'recycle': []}), ({'owner': 2, 'slots': [[True, 0, 0]], 'handles': [[0, 0, 2], [0, 0, 1]]}, {'owners': [True, False], 'bounds': [True, True], 'live': [True, True], 'generation': [True, True], 'resolved': [0, None], 'recycle': [1]}), ({'owner': 2, 'slots': [[False, 3, 'x']], 'handles': [[0, 3, 2], [0, 2, 2]]}, {'owners': [True, True], 'bounds': [True, True], 'live': [False, False], 'generation': [True, False], 'resolved': [None, None], 'recycle': [4]}), ({'owner': 2, 'slots': [[True, 4, 'a'], [True, 8, 'b']], 'handles': [[0, 3, 2], [1, 8, 2], [1, 8, 3]]}, {'owners': [True, True, False], 'bounds': [True, True, True], 'live': [True, True, True], 'generation': [False, True, True], 'resolved': [None, 'b', None], 'recycle': [5, 9]}), ({'owner': 2, 'slots': [[True, 1, ''], [False, 2, 5]], 'handles': [[0, 1, 2], [1, 2, 2], [-1, 2, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, False, False], 'generation': [True, True, False], 'resolved': ['', None, None], 'recycle': [2, 3]}), ({'owner': 2, 'slots': [[True, 9, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [False, True, False], 'resolved': [None, 'z', None], 'recycle': [10]}), ({'owner': 2, 'slots': [[True, 13, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [False, False, False], 'resolved': [None, None, None], 'recycle': [14]})], [({'owner': 2, 'slots': [], 'handles': [[0, 0, 2], [-1, 0, 2]]}, {'owners': [True, True], 'bounds': [False, False], 'live': [False, False], 'generation': [False, False], 'resolved': [None, None], 'recycle': []}), ({'owner': 2, 'slots': [[True, 0, 0]], 'handles': [[0, 0, 2], [0, 0, 1]]}, {'owners': [True, False], 'bounds': [True, True], 'live': [True, True], 'generation': [True, True], 'resolved': [0, None], 'recycle': [1]}), ({'owner': 2, 'slots': [[False, 3, 'x']], 'handles': [[0, 3, 2], [0, 2, 2]]}, {'owners': [True, True], 'bounds': [True, True], 'live': [False, False], 'generation': [True, False], 'resolved': [None, None], 'recycle': [4]}), ({'owner': 2, 'slots': [[True, 4, 'a'], [True, 8, 'b']], 'handles': [[0, 3, 2], [1, 8, 2], [1, 8, 3]]}, {'owners': [True, True, False], 'bounds': [True, True, True], 'live': [True, True, True], 'generation': [False, True, True], 'resolved': [None, 'b', None], 'recycle': [5, 9]}), ({'owner': 2, 'slots': [[True, 1, ''], [False, 2, 5]], 'handles': [[0, 1, 2], [1, 2, 2], [-1, 2, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, False, False], 'generation': [True, True, False], 'resolved': ['', None, None], 'recycle': [2, 3]}), ({'owner': 2, 'slots': [[True, 9, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [False, True, False], 'resolved': [None, 'z', None], 'recycle': [10]}), ({'owner': 2, 'slots': [[True, 14, 'z']], 'handles': [[0, 10, 2], [0, 9, 2], [1, 9, 2]]}, {'owners': [True, True, True], 'bounds': [True, True, False], 'live': [True, True, False], 'generation': [False, False, False], 'resolved': [None, None, None], 'recycle': [15]})]][N-1]
check('regression certificate 1', solve(cases[0][0]), cases[0][1])
check('regression certificate 2', solve(cases[1][0]), cases[1][1])
check('regression certificate 3', solve(cases[2][0]), cases[2][1])
check('regression certificate 4', solve(cases[3][0]), cases[3][1])
check('regression certificate 5', solve(cases[4][0]), cases[4][1])
check('regression certificate 6', solve(cases[5][0]), cases[5][1])
check('variant-dependent certificate', solve(cases[6][0]), cases[6][1])
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
Boundary fixtureActualExpectedOutcome
regression certificate 1{'bounds': [False, False], 'generation': [False, False], 'live': [False, False], 'owners': [True, True], 'recycle': [], 'resolved': [None, None]}{'bounds': [False, False], 'generation': [False, False], 'live': [False, False], 'owners': [True, True], 'recycle': [], 'resolved': [None, None]}Passed
regression certificate 2{'bounds': [True, True], 'generation': [True, True], 'live': [True, True], 'owners': [True, False], 'recycle': [1], 'resolved': [0, None]}{'bounds': [True, True], 'generation': [True, True], 'live': [True, True], 'owners': [True, False], 'recycle': [1], 'resolved': [0, None]}Passed
regression certificate 3{'bounds': [True, True], 'generation': [True, False], 'live': [False, False], 'owners': [True, True], 'recycle': [4], 'resolved': [None, None]}{'bounds': [True, True], 'generation': [True, False], 'live': [False, False], 'owners': [True, True], 'recycle': [4], 'resolved': [None, None]}Passed
regression certificate 4{'bounds': [True, True, True], 'generation': [False, True, True], 'live': [True, True, True], 'owners': [True, True, False], 'recycle': [5, 9], 'resolved': [None, 'b', None]}{'bounds': [True, True, True], 'generation': [False, True, True], 'live': [True, True, True], 'owners': [True, True, False], 'recycle': [5, 9], 'resolved': [None, 'b', None]}Passed
regression certificate 5{'bounds': [True, True, False], 'generation': [True, True, False], 'live': [True, False, False], 'owners': [True, True, True], 'recycle': [2, 3], 'resolved': ['', None, None]}{'bounds': [True, True, False], 'generation': [True, True, False], 'live': [True, False, False], 'owners': [True, True, True], 'recycle': [2, 3], 'resolved': ['', None, None]}Passed
regression certificate 6{'bounds': [True, True, False], 'generation': [False, True, False], 'live': [True, True, False], 'owners': [True, True, True], 'recycle': [10], 'resolved': [None, 'z', None]}{'bounds': [True, True, False], 'generation': [False, True, False], 'live': [True, True, False], 'owners': [True, True, True], 'recycle': [10], 'resolved': [None, 'z', None]}Passed
variant-dependent certificate{'bounds': [True, True, False], 'generation': [True, False, False], 'live': [True, True, False], 'owners': [True, True, True], 'recycle': [11], 'resolved': ['z', None, None]}{'bounds': [True, True, False], 'generation': [True, False, False], 'live': [True, True, False], 'owners': [True, True, True], 'recycle': [11], 'resolved': ['z', None, None]}Passed

SHA-256 / 39ac14f3ffef6da6f47c3b627ecb03771420814dff20551fd301461ffc5d8c62

Verification & scope

A stipulated offline diagnostic model; it does not implement a production allocator, concurrency protocol, or complete heap library. This reproducer isolates one failure mechanism. Results cover the supplied fixtures. Variants within a family share a test contract and should remain grouped when constructing evaluation splits. Related mechanisms with a shared evaluation_group must also remain together; these controlled models are not independent production incidents.

Observations recorded using Python 3.12.14 at 2026-09-29T14:43:29.942491+00:00.

Case digest / 834ab3593fa75934fc91fff81497b9449b814cce580bb9ad519c73411304a733