FA-67476 / Elevator dispatch scheduling / Open access
Idle car parking by zone: zone size rounding · case 01
An extra tiny zone appears at the top, or zones are too large when floors divide evenly.
ROOT CAUSE
Zone size is rounded down.
VERIFIED REPAIR
Round the zone size up.
Unsuccessful approach: Adding one to the floor quotient oversizes zones when floors divide evenly.
Case contract
The building is split into zones of ceil(floors/zones) floors; each zone base floor is a parking target. Up-peak adds an extra lobby target first (lobby gets two cars); down-peak orders the bases from the top down; otherwise bases ascend. Each target in order takes the nearest free car (ties to the lowest car id); leftover targets stay empty.
Why this case matters
Lift group controllers make these decisions many times per minute; a wrong answer strands passengers, wastes trips or overrides a safety rule.
1 / The failure
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(x):
n = x['floors']
k = x['zones']
size = n // k
bases = [z * size for z in range(k) if z * size < n]
if x['period'] == 'up-peak':
targets = [0] + bases
elif x['period'] == 'down-peak':
targets = sorted(bases, reverse=True)
else:
targets = bases
free = dict(x['cars'])
plan = {}
for t in targets:
if not free:
break
cid = min(free, key=lambda c: (abs(free[c] - t), c))
plan[cid] = t
del free[cid]
return plan
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('regression: ten floors in three zones', {'floors': 10, 'zones': 3, 'period': 'off-peak', 'cars': [['C1', 9], ['C2', 5], ['C3', 1]]}, {'C3': 0, 'C2': 4, 'C1': 8}), ('boundary: twelve floors in three zones', {'floors': 12, 'zones': 3, 'period': 'off-peak', 'cars': [['C1', 11], ['C2', 6], ['C3', 2]]}, {'C3': 0, 'C2': 4, 'C1': 8}), ('sampled regression 6', {'floors': 30, 'zones': 4, 'period': 'up-peak', 'cars': [['C5', 9], ['C2', 3], ['C4', 5], ['C3', 18]]}, {'C2': 0, 'C4': 0, 'C5': 8, 'C3': 16}), ('boundary: up-peak lobby pair', {'floors': 12, 'zones': 2, 'period': 'up-peak', 'cars': [['C1', 3], ['C2', 8], ['C3', 11]]}, {'C1': 0, 'C2': 0, 'C3': 6}), ('boundary: down-peak top first', {'floors': 20, 'zones': 4, 'period': 'down-peak', 'cars': [['C1', 16], ['C2', 13], ['C3', 2]]}, {'C1': 15, 'C2': 10, 'C3': 5}), ('sampled regression 1', {'floors': 8, 'zones': 3, 'period': 'off-peak', 'cars': [['C2', 3], ['C1', 7], ['C5', 4]]}, {'C2': 0, 'C5': 3, 'C1': 6}), ('sampled regression 4', {'floors': 27, 'zones': 2, 'period': 'down-peak', 'cars': [['C3', 14], ['C5', 10]]}, {'C3': 14, 'C5': 0}), ('sampled regression 7', {'floors': 14, 'zones': 3, 'period': 'down-peak', 'cars': [['C5', 13], ['C4', 0], ['C2', 11], ['C3', 5], ['C1', 11]]}, {'C1': 10, 'C3': 5, 'C4': 0})], [('regression: ten floors in three zones', {'floors': 10, 'zones': 3, 'period': 'off-peak', 'cars': [['C1', 9], ['C2', 5], ['C3', 1]]}, {'C3': 0, 'C2': 4, 'C1': 8}), ('boundary: up-peak lobby pair', {'floors': 12, 'zones': 2, 'period': 'up-peak', 'cars': [['C1', 3], ['C2', 8], ['C3', 11]]}, {'C1': 0, 'C2': 0, 'C3': 6}), ('sampled regression 24', {'floors': 8, 'zones': 3, 'period': 'up-peak', 'cars': [['C5', 4], ['C4', 6], ['C1', 0], ['C2', 1], ['C3', 2]]}, {'C1': 0, 'C2': 0, 'C3': 3, 'C4': 6}), ('control 14', {'floors': 8, 'zones': 4, 'period': 'off-peak', 'cars': [['C2', 1], ['C3', 4], ['C5', 1], ['C1', 1]]}, {'C1': 0, 'C2': 2, 'C3': 4, 'C5': 6}), ('boundary: down-peak top first', {'floors': 20, 'zones': 4, 'period': 'down-peak', 'cars': [['C1', 16], ['C2', 13], ['C3', 2]]}, {'C1': 15, 'C2': 10, 'C3': 5}), ('control 12', {'floors': 14, 'zones': 2, 'period': 'off-peak', 'cars': [['C3', 9], ['C5', 5]]}, {'C5': 0, 'C3': 7}), ('control 15', {'floors': 22, 'zones': 1, 'period': 'off-peak', 'cars': [['C5', 11]]}, {'C5': 0}), ('control 18', {'floors': 10, 'zones': 2, 'period': 'down-peak', 'cars': [['C4', 7], ['C2', 2], ['C1', 0], ['C5', 0], ['C3', 5]]}, {'C3': 5, 'C1': 0})], [('regression: ten floors in three zones', {'floors': 10, 'zones': 3, 'period': 'off-peak', 'cars': [['C1', 9], ['C2', 5], ['C3', 1]]}, {'C3': 0, 'C2': 4, 'C1': 8}), ('boundary: down-peak top first', {'floors': 20, 'zones': 4, 'period': 'down-peak', 'cars': [['C1', 16], ['C2', 13], ['C3', 2]]}, {'C1': 15, 'C2': 10, 'C3': 5}), ('sampled regression 37', {'floors': 9, 'zones': 2, 'period': 'down-peak', 'cars': [['C1', 3], ['C5', 8], ['C4', 7]]}, {'C1': 5, 'C4': 0}), ('control 46', {'floors': 12, 'zones': 2, 'period': 'down-peak', 'cars': [['C1', 7]]}, {'C1': 6}), ('boundary: equidistant cars listed out of order', {'floors': 10, 'zones': 1, 'period': 'off-peak', 'cars': [['C3', 2], ['C1', 2]]}, {'C1': 0}), ('control 23', {'floors': 8, 'zones': 4, 'period': 'down-peak', 'cars': [['C3', 5], ['C4', 7]]}, {'C3': 6, 'C4': 4}), ('sampled regression 26', {'floors': 9, 'zones': 2, 'period': 'down-peak', 'cars': [['C2', 1], ['C4', 8], ['C1', 0], ['C5', 8], ['C3', 6]]}, {'C3': 5, 'C1': 0}), ('control 29', {'floors': 30, 'zones': 3, 'period': 'down-peak', 'cars': [['C3', 28], ['C5', 0], ['C2', 17], ['C4', 12], ['C1', 29]]}, {'C2': 20, 'C4': 10, 'C5': 0})], [('regression: ten floors in three zones', {'floors': 10, 'zones': 3, 'period': 'off-peak', 'cars': [['C1', 9], ['C2', 5], ['C3', 1]]}, {'C3': 0, 'C2': 4, 'C1': 8}), ('boundary: twelve floors in three zones', {'floors': 12, 'zones': 3, 'period': 'off-peak', 'cars': [['C1', 11], ['C2', 6], ['C3', 2]]}, {'C3': 0, 'C2': 4, 'C1': 8}), ('sampled regression 53', {'floors': 17, 'zones': 2, 'period': 'off-peak', 'cars': [['C2', 1], ['C5', 4]]}, {'C2': 0, 'C5': 9}), ('control 71', {'floors': 9, 'zones': 3, 'period': 'down-peak', 'cars': [['C1', 3], ['C3', 8], ['C2', 0], ['C4', 8], ['C5', 4]]}, {'C3': 6, 'C1': 3, 'C2': 0}), ('boundary: up-peak lobby pair', {'floors': 12, 'zones': 2, 'period': 'up-peak', 'cars': [['C1', 3], ['C2', 8], ['C3', 11]]}, {'C1': 0, 'C2': 0, 'C3': 6}), ('sampled regression 34', {'floors': 17, 'zones': 2, 'period': 'off-peak', 'cars': [['C5', 2], ['C2', 7], ['C1', 0]]}, {'C1': 0, 'C2': 9}), ('sampled regression 37', {'floors': 9, 'zones': 2, 'period': 'down-peak', 'cars': [['C1', 3], ['C5', 8], ['C4', 7]]}, {'C1': 5, 'C4': 0}), ('control 40', {'floors': 24, 'zones': 1, 'period': 'off-peak', 'cars': [['C4', 6]]}, {'C4': 0})], [('regression: ten floors in three zones', {'floors': 10, 'zones': 3, 'period': 'off-peak', 'cars': [['C1', 9], ['C2', 5], ['C3', 1]]}, {'C3': 0, 'C2': 4, 'C1': 8}), ('boundary: up-peak lobby pair', {'floors': 12, 'zones': 2, 'period': 'up-peak', 'cars': [['C1', 3], ['C2', 8], ['C3', 11]]}, {'C1': 0, 'C2': 0, 'C3': 6}), ('sampled regression 79', {'floors': 9, 'zones': 4, 'period': 'off-peak', 'cars': [['C5', 0], ['C3', 3], ['C4', 5], ['C1', 0]]}, {'C1': 0, 'C3': 3, 'C4': 6}), ('boundary: down-peak top first', {'floors': 20, 'zones': 4, 'period': 'down-peak', 'cars': [['C1', 16], ['C2', 13], ['C3', 2]]}, {'C1': 15, 'C2': 10, 'C3': 5}), ('boundary: equidistant cars listed out of order', {'floors': 10, 'zones': 1, 'period': 'off-peak', 'cars': [['C3', 2], ['C1', 2]]}, {'C1': 0}), ('control 45', {'floors': 9, 'zones': 1, 'period': 'off-peak', 'cars': [['C3', 6], ['C4', 1], ['C5', 0], ['C2', 1], ['C1', 7]]}, {'C5': 0}), ('sampled regression 48', {'floors': 16, 'zones': 3, 'period': 'up-peak', 'cars': [['C4', 9], ['C3', 7], ['C2', 14], ['C1', 7]]}, {'C1': 0, 'C3': 0, 'C4': 6, 'C2': 12}), ('control 51', {'floors': 18, 'zones': 4, 'period': 'off-peak', 'cars': [['C5', 11]]}, {'C5': 0})]]
for label, args, expected in fixtures[N-1]:
check(label, solve(args), expected)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| regression: ten floors in three zones | {'C1': 6, 'C2': 3, 'C3': 0} | {'C1': 8, 'C2': 4, 'C3': 0} | Failed |
| boundary: twelve floors in three zones | {'C1': 8, 'C2': 4, 'C3': 0} | {'C1': 8, 'C2': 4, 'C3': 0} | Passed |
| sampled regression 6 | {'C2': 0, 'C3': 14, 'C4': 0, 'C5': 7} | {'C2': 0, 'C3': 16, 'C4': 0, 'C5': 8} | Failed |
| boundary: up-peak lobby pair | {'C1': 0, 'C2': 0, 'C3': 6} | {'C1': 0, 'C2': 0, 'C3': 6} | Passed |
| boundary: down-peak top first | {'C1': 15, 'C2': 10, 'C3': 5} | {'C1': 15, 'C2': 10, 'C3': 5} | Passed |
| sampled regression 1 | {'C1': 4, 'C2': 0, 'C5': 2} | {'C1': 6, 'C2': 0, 'C5': 3} | Failed |
| sampled regression 4 | {'C3': 13, 'C5': 0} | {'C3': 14, 'C5': 0} | Failed |
| sampled regression 7 | {'C1': 8, 'C3': 4, 'C4': 0} | {'C1': 10, 'C3': 5, 'C4': 0} | Failed |
SHA-256 / 6654ce41d2804092ef7d87195ece61dace177bbb1fa3b1edd5f5fd56e2f8807d
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(x):
n = x['floors']
k = x['zones']
size = n // k + 1
bases = [z * size for z in range(k) if z * size < n]
if x['period'] == 'up-peak':
targets = [0] + bases
elif x['period'] == 'down-peak':
targets = sorted(bases, reverse=True)
else:
targets = bases
free = dict(x['cars'])
plan = {}
for t in targets:
if not free:
break
cid = min(free, key=lambda c: (abs(free[c] - t), c))
plan[cid] = t
del free[cid]
return plan
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('regression: ten floors in three zones', {'floors': 10, 'zones': 3, 'period': 'off-peak', 'cars': [['C1', 9], ['C2', 5], ['C3', 1]]}, {'C3': 0, 'C2': 4, 'C1': 8}), ('boundary: twelve floors in three zones', {'floors': 12, 'zones': 3, 'period': 'off-peak', 'cars': [['C1', 11], ['C2', 6], ['C3', 2]]}, {'C3': 0, 'C2': 4, 'C1': 8}), ('sampled regression 6', {'floors': 30, 'zones': 4, 'period': 'up-peak', 'cars': [['C5', 9], ['C2', 3], ['C4', 5], ['C3', 18]]}, {'C2': 0, 'C4': 0, 'C5': 8, 'C3': 16}), ('boundary: up-peak lobby pair', {'floors': 12, 'zones': 2, 'period': 'up-peak', 'cars': [['C1', 3], ['C2', 8], ['C3', 11]]}, {'C1': 0, 'C2': 0, 'C3': 6}), ('boundary: down-peak top first', {'floors': 20, 'zones': 4, 'period': 'down-peak', 'cars': [['C1', 16], ['C2', 13], ['C3', 2]]}, {'C1': 15, 'C2': 10, 'C3': 5}), ('sampled regression 1', {'floors': 8, 'zones': 3, 'period': 'off-peak', 'cars': [['C2', 3], ['C1', 7], ['C5', 4]]}, {'C2': 0, 'C5': 3, 'C1': 6}), ('sampled regression 4', {'floors': 27, 'zones': 2, 'period': 'down-peak', 'cars': [['C3', 14], ['C5', 10]]}, {'C3': 14, 'C5': 0}), ('sampled regression 7', {'floors': 14, 'zones': 3, 'period': 'down-peak', 'cars': [['C5', 13], ['C4', 0], ['C2', 11], ['C3', 5], ['C1', 11]]}, {'C1': 10, 'C3': 5, 'C4': 0})], [('regression: ten floors in three zones', {'floors': 10, 'zones': 3, 'period': 'off-peak', 'cars': [['C1', 9], ['C2', 5], ['C3', 1]]}, {'C3': 0, 'C2': 4, 'C1': 8}), ('boundary: up-peak lobby pair', {'floors': 12, 'zones': 2, 'period': 'up-peak', 'cars': [['C1', 3], ['C2', 8], ['C3', 11]]}, {'C1': 0, 'C2': 0, 'C3': 6}), ('sampled regression 24', {'floors': 8, 'zones': 3, 'period': 'up-peak', 'cars': [['C5', 4], ['C4', 6], ['C1', 0], ['C2', 1], ['C3', 2]]}, {'C1': 0, 'C2': 0, 'C3': 3, 'C4': 6}), ('control 14', {'floors': 8, 'zones': 4, 'period': 'off-peak', 'cars': [['C2', 1], ['C3', 4], ['C5', 1], ['C1', 1]]}, {'C1': 0, 'C2': 2, 'C3': 4, 'C5': 6}), ('boundary: down-peak top first', {'floors': 20, 'zones': 4, 'period': 'down-peak', 'cars': [['C1', 16], ['C2', 13], ['C3', 2]]}, {'C1': 15, 'C2': 10, 'C3': 5}), ('control 12', {'floors': 14, 'zones': 2, 'period': 'off-peak', 'cars': [['C3', 9], ['C5', 5]]}, {'C5': 0, 'C3': 7}), ('control 15', {'floors': 22, 'zones': 1, 'period': 'off-peak', 'cars': [['C5', 11]]}, {'C5': 0}), ('control 18', {'floors': 10, 'zones': 2, 'period': 'down-peak', 'cars': [['C4', 7], ['C2', 2], ['C1', 0], ['C5', 0], ['C3', 5]]}, {'C3': 5, 'C1': 0})], [('regression: ten floors in three zones', {'floors': 10, 'zones': 3, 'period': 'off-peak', 'cars': [['C1', 9], ['C2', 5], ['C3', 1]]}, {'C3': 0, 'C2': 4, 'C1': 8}), ('boundary: down-peak top first', {'floors': 20, 'zones': 4, 'period': 'down-peak', 'cars': [['C1', 16], ['C2', 13], ['C3', 2]]}, {'C1': 15, 'C2': 10, 'C3': 5}), ('sampled regression 37', {'floors': 9, 'zones': 2, 'period': 'down-peak', 'cars': [['C1', 3], ['C5', 8], ['C4', 7]]}, {'C1': 5, 'C4': 0}), ('control 46', {'floors': 12, 'zones': 2, 'period': 'down-peak', 'cars': [['C1', 7]]}, {'C1': 6}), ('boundary: equidistant cars listed out of order', {'floors': 10, 'zones': 1, 'period': 'off-peak', 'cars': [['C3', 2], ['C1', 2]]}, {'C1': 0}), ('control 23', {'floors': 8, 'zones': 4, 'period': 'down-peak', 'cars': [['C3', 5], ['C4', 7]]}, {'C3': 6, 'C4': 4}), ('sampled regression 26', {'floors': 9, 'zones': 2, 'period': 'down-peak', 'cars': [['C2', 1], ['C4', 8], ['C1', 0], ['C5', 8], ['C3', 6]]}, {'C3': 5, 'C1': 0}), ('control 29', {'floors': 30, 'zones': 3, 'period': 'down-peak', 'cars': [['C3', 28], ['C5', 0], ['C2', 17], ['C4', 12], ['C1', 29]]}, {'C2': 20, 'C4': 10, 'C5': 0})], [('regression: ten floors in three zones', {'floors': 10, 'zones': 3, 'period': 'off-peak', 'cars': [['C1', 9], ['C2', 5], ['C3', 1]]}, {'C3': 0, 'C2': 4, 'C1': 8}), ('boundary: twelve floors in three zones', {'floors': 12, 'zones': 3, 'period': 'off-peak', 'cars': [['C1', 11], ['C2', 6], ['C3', 2]]}, {'C3': 0, 'C2': 4, 'C1': 8}), ('sampled regression 53', {'floors': 17, 'zones': 2, 'period': 'off-peak', 'cars': [['C2', 1], ['C5', 4]]}, {'C2': 0, 'C5': 9}), ('control 71', {'floors': 9, 'zones': 3, 'period': 'down-peak', 'cars': [['C1', 3], ['C3', 8], ['C2', 0], ['C4', 8], ['C5', 4]]}, {'C3': 6, 'C1': 3, 'C2': 0}), ('boundary: up-peak lobby pair', {'floors': 12, 'zones': 2, 'period': 'up-peak', 'cars': [['C1', 3], ['C2', 8], ['C3', 11]]}, {'C1': 0, 'C2': 0, 'C3': 6}), ('sampled regression 34', {'floors': 17, 'zones': 2, 'period': 'off-peak', 'cars': [['C5', 2], ['C2', 7], ['C1', 0]]}, {'C1': 0, 'C2': 9}), ('sampled regression 37', {'floors': 9, 'zones': 2, 'period': 'down-peak', 'cars': [['C1', 3], ['C5', 8], ['C4', 7]]}, {'C1': 5, 'C4': 0}), ('control 40', {'floors': 24, 'zones': 1, 'period': 'off-peak', 'cars': [['C4', 6]]}, {'C4': 0})], [('regression: ten floors in three zones', {'floors': 10, 'zones': 3, 'period': 'off-peak', 'cars': [['C1', 9], ['C2', 5], ['C3', 1]]}, {'C3': 0, 'C2': 4, 'C1': 8}), ('boundary: up-peak lobby pair', {'floors': 12, 'zones': 2, 'period': 'up-peak', 'cars': [['C1', 3], ['C2', 8], ['C3', 11]]}, {'C1': 0, 'C2': 0, 'C3': 6}), ('sampled regression 79', {'floors': 9, 'zones': 4, 'period': 'off-peak', 'cars': [['C5', 0], ['C3', 3], ['C4', 5], ['C1', 0]]}, {'C1': 0, 'C3': 3, 'C4': 6}), ('boundary: down-peak top first', {'floors': 20, 'zones': 4, 'period': 'down-peak', 'cars': [['C1', 16], ['C2', 13], ['C3', 2]]}, {'C1': 15, 'C2': 10, 'C3': 5}), ('boundary: equidistant cars listed out of order', {'floors': 10, 'zones': 1, 'period': 'off-peak', 'cars': [['C3', 2], ['C1', 2]]}, {'C1': 0}), ('control 45', {'floors': 9, 'zones': 1, 'period': 'off-peak', 'cars': [['C3', 6], ['C4', 1], ['C5', 0], ['C2', 1], ['C1', 7]]}, {'C5': 0}), ('sampled regression 48', {'floors': 16, 'zones': 3, 'period': 'up-peak', 'cars': [['C4', 9], ['C3', 7], ['C2', 14], ['C1', 7]]}, {'C1': 0, 'C3': 0, 'C4': 6, 'C2': 12}), ('control 51', {'floors': 18, 'zones': 4, 'period': 'off-peak', 'cars': [['C5', 11]]}, {'C5': 0})]]
for label, args, expected in fixtures[N-1]:
check(label, solve(args), expected)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| regression: ten floors in three zones | {'C1': 8, 'C2': 4, 'C3': 0} | {'C1': 8, 'C2': 4, 'C3': 0} | Passed |
| boundary: twelve floors in three zones | {'C1': 10, 'C2': 5, 'C3': 0} | {'C1': 8, 'C2': 4, 'C3': 0} | Failed |
| sampled regression 6 | {'C2': 0, 'C3': 16, 'C4': 0, 'C5': 8} | {'C2': 0, 'C3': 16, 'C4': 0, 'C5': 8} | Passed |
| boundary: up-peak lobby pair | {'C1': 0, 'C2': 0, 'C3': 7} | {'C1': 0, 'C2': 0, 'C3': 6} | Failed |
| boundary: down-peak top first | {'C1': 18, 'C2': 12, 'C3': 6} | {'C1': 15, 'C2': 10, 'C3': 5} | Failed |
| sampled regression 1 | {'C1': 6, 'C2': 0, 'C5': 3} | {'C1': 6, 'C2': 0, 'C5': 3} | Passed |
| sampled regression 4 | {'C3': 14, 'C5': 0} | {'C3': 14, 'C5': 0} | Passed |
| sampled regression 7 | {'C1': 10, 'C3': 5, 'C4': 0} | {'C1': 10, 'C3': 5, 'C4': 0} | Passed |
SHA-256 / 4fc0a667f29e6a76e242e10d9e66a48d19949417377fc3abd184b4ef52a470d6
3 / The verified repair
Exit 0"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(x):
n = x['floors']
k = x['zones']
size = -(-n // k)
bases = [z * size for z in range(k) if z * size < n]
if x['period'] == 'up-peak':
targets = [0] + bases
elif x['period'] == 'down-peak':
targets = sorted(bases, reverse=True)
else:
targets = bases
free = dict(x['cars'])
plan = {}
for t in targets:
if not free:
break
cid = min(free, key=lambda c: (abs(free[c] - t), c))
plan[cid] = t
del free[cid]
return plan
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = [[('regression: ten floors in three zones', {'floors': 10, 'zones': 3, 'period': 'off-peak', 'cars': [['C1', 9], ['C2', 5], ['C3', 1]]}, {'C3': 0, 'C2': 4, 'C1': 8}), ('boundary: twelve floors in three zones', {'floors': 12, 'zones': 3, 'period': 'off-peak', 'cars': [['C1', 11], ['C2', 6], ['C3', 2]]}, {'C3': 0, 'C2': 4, 'C1': 8}), ('sampled regression 6', {'floors': 30, 'zones': 4, 'period': 'up-peak', 'cars': [['C5', 9], ['C2', 3], ['C4', 5], ['C3', 18]]}, {'C2': 0, 'C4': 0, 'C5': 8, 'C3': 16}), ('boundary: up-peak lobby pair', {'floors': 12, 'zones': 2, 'period': 'up-peak', 'cars': [['C1', 3], ['C2', 8], ['C3', 11]]}, {'C1': 0, 'C2': 0, 'C3': 6}), ('boundary: down-peak top first', {'floors': 20, 'zones': 4, 'period': 'down-peak', 'cars': [['C1', 16], ['C2', 13], ['C3', 2]]}, {'C1': 15, 'C2': 10, 'C3': 5}), ('sampled regression 1', {'floors': 8, 'zones': 3, 'period': 'off-peak', 'cars': [['C2', 3], ['C1', 7], ['C5', 4]]}, {'C2': 0, 'C5': 3, 'C1': 6}), ('sampled regression 4', {'floors': 27, 'zones': 2, 'period': 'down-peak', 'cars': [['C3', 14], ['C5', 10]]}, {'C3': 14, 'C5': 0}), ('sampled regression 7', {'floors': 14, 'zones': 3, 'period': 'down-peak', 'cars': [['C5', 13], ['C4', 0], ['C2', 11], ['C3', 5], ['C1', 11]]}, {'C1': 10, 'C3': 5, 'C4': 0})], [('regression: ten floors in three zones', {'floors': 10, 'zones': 3, 'period': 'off-peak', 'cars': [['C1', 9], ['C2', 5], ['C3', 1]]}, {'C3': 0, 'C2': 4, 'C1': 8}), ('boundary: up-peak lobby pair', {'floors': 12, 'zones': 2, 'period': 'up-peak', 'cars': [['C1', 3], ['C2', 8], ['C3', 11]]}, {'C1': 0, 'C2': 0, 'C3': 6}), ('sampled regression 24', {'floors': 8, 'zones': 3, 'period': 'up-peak', 'cars': [['C5', 4], ['C4', 6], ['C1', 0], ['C2', 1], ['C3', 2]]}, {'C1': 0, 'C2': 0, 'C3': 3, 'C4': 6}), ('control 14', {'floors': 8, 'zones': 4, 'period': 'off-peak', 'cars': [['C2', 1], ['C3', 4], ['C5', 1], ['C1', 1]]}, {'C1': 0, 'C2': 2, 'C3': 4, 'C5': 6}), ('boundary: down-peak top first', {'floors': 20, 'zones': 4, 'period': 'down-peak', 'cars': [['C1', 16], ['C2', 13], ['C3', 2]]}, {'C1': 15, 'C2': 10, 'C3': 5}), ('control 12', {'floors': 14, 'zones': 2, 'period': 'off-peak', 'cars': [['C3', 9], ['C5', 5]]}, {'C5': 0, 'C3': 7}), ('control 15', {'floors': 22, 'zones': 1, 'period': 'off-peak', 'cars': [['C5', 11]]}, {'C5': 0}), ('control 18', {'floors': 10, 'zones': 2, 'period': 'down-peak', 'cars': [['C4', 7], ['C2', 2], ['C1', 0], ['C5', 0], ['C3', 5]]}, {'C3': 5, 'C1': 0})], [('regression: ten floors in three zones', {'floors': 10, 'zones': 3, 'period': 'off-peak', 'cars': [['C1', 9], ['C2', 5], ['C3', 1]]}, {'C3': 0, 'C2': 4, 'C1': 8}), ('boundary: down-peak top first', {'floors': 20, 'zones': 4, 'period': 'down-peak', 'cars': [['C1', 16], ['C2', 13], ['C3', 2]]}, {'C1': 15, 'C2': 10, 'C3': 5}), ('sampled regression 37', {'floors': 9, 'zones': 2, 'period': 'down-peak', 'cars': [['C1', 3], ['C5', 8], ['C4', 7]]}, {'C1': 5, 'C4': 0}), ('control 46', {'floors': 12, 'zones': 2, 'period': 'down-peak', 'cars': [['C1', 7]]}, {'C1': 6}), ('boundary: equidistant cars listed out of order', {'floors': 10, 'zones': 1, 'period': 'off-peak', 'cars': [['C3', 2], ['C1', 2]]}, {'C1': 0}), ('control 23', {'floors': 8, 'zones': 4, 'period': 'down-peak', 'cars': [['C3', 5], ['C4', 7]]}, {'C3': 6, 'C4': 4}), ('sampled regression 26', {'floors': 9, 'zones': 2, 'period': 'down-peak', 'cars': [['C2', 1], ['C4', 8], ['C1', 0], ['C5', 8], ['C3', 6]]}, {'C3': 5, 'C1': 0}), ('control 29', {'floors': 30, 'zones': 3, 'period': 'down-peak', 'cars': [['C3', 28], ['C5', 0], ['C2', 17], ['C4', 12], ['C1', 29]]}, {'C2': 20, 'C4': 10, 'C5': 0})], [('regression: ten floors in three zones', {'floors': 10, 'zones': 3, 'period': 'off-peak', 'cars': [['C1', 9], ['C2', 5], ['C3', 1]]}, {'C3': 0, 'C2': 4, 'C1': 8}), ('boundary: twelve floors in three zones', {'floors': 12, 'zones': 3, 'period': 'off-peak', 'cars': [['C1', 11], ['C2', 6], ['C3', 2]]}, {'C3': 0, 'C2': 4, 'C1': 8}), ('sampled regression 53', {'floors': 17, 'zones': 2, 'period': 'off-peak', 'cars': [['C2', 1], ['C5', 4]]}, {'C2': 0, 'C5': 9}), ('control 71', {'floors': 9, 'zones': 3, 'period': 'down-peak', 'cars': [['C1', 3], ['C3', 8], ['C2', 0], ['C4', 8], ['C5', 4]]}, {'C3': 6, 'C1': 3, 'C2': 0}), ('boundary: up-peak lobby pair', {'floors': 12, 'zones': 2, 'period': 'up-peak', 'cars': [['C1', 3], ['C2', 8], ['C3', 11]]}, {'C1': 0, 'C2': 0, 'C3': 6}), ('sampled regression 34', {'floors': 17, 'zones': 2, 'period': 'off-peak', 'cars': [['C5', 2], ['C2', 7], ['C1', 0]]}, {'C1': 0, 'C2': 9}), ('sampled regression 37', {'floors': 9, 'zones': 2, 'period': 'down-peak', 'cars': [['C1', 3], ['C5', 8], ['C4', 7]]}, {'C1': 5, 'C4': 0}), ('control 40', {'floors': 24, 'zones': 1, 'period': 'off-peak', 'cars': [['C4', 6]]}, {'C4': 0})], [('regression: ten floors in three zones', {'floors': 10, 'zones': 3, 'period': 'off-peak', 'cars': [['C1', 9], ['C2', 5], ['C3', 1]]}, {'C3': 0, 'C2': 4, 'C1': 8}), ('boundary: up-peak lobby pair', {'floors': 12, 'zones': 2, 'period': 'up-peak', 'cars': [['C1', 3], ['C2', 8], ['C3', 11]]}, {'C1': 0, 'C2': 0, 'C3': 6}), ('sampled regression 79', {'floors': 9, 'zones': 4, 'period': 'off-peak', 'cars': [['C5', 0], ['C3', 3], ['C4', 5], ['C1', 0]]}, {'C1': 0, 'C3': 3, 'C4': 6}), ('boundary: down-peak top first', {'floors': 20, 'zones': 4, 'period': 'down-peak', 'cars': [['C1', 16], ['C2', 13], ['C3', 2]]}, {'C1': 15, 'C2': 10, 'C3': 5}), ('boundary: equidistant cars listed out of order', {'floors': 10, 'zones': 1, 'period': 'off-peak', 'cars': [['C3', 2], ['C1', 2]]}, {'C1': 0}), ('control 45', {'floors': 9, 'zones': 1, 'period': 'off-peak', 'cars': [['C3', 6], ['C4', 1], ['C5', 0], ['C2', 1], ['C1', 7]]}, {'C5': 0}), ('sampled regression 48', {'floors': 16, 'zones': 3, 'period': 'up-peak', 'cars': [['C4', 9], ['C3', 7], ['C2', 14], ['C1', 7]]}, {'C1': 0, 'C3': 0, 'C4': 6, 'C2': 12}), ('control 51', {'floors': 18, 'zones': 4, 'period': 'off-peak', 'cars': [['C5', 11]]}, {'C5': 0})]]
for label, args, expected in fixtures[N-1]:
check(label, solve(args), expected)
print(json.dumps({"observations": observations, "passed": all(x["passed"] for x in observations)}, ensure_ascii=False))
raise SystemExit(0 if all(x["passed"] for x in observations) else 1)
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| regression: ten floors in three zones | {'C1': 8, 'C2': 4, 'C3': 0} | {'C1': 8, 'C2': 4, 'C3': 0} | Passed |
| boundary: twelve floors in three zones | {'C1': 8, 'C2': 4, 'C3': 0} | {'C1': 8, 'C2': 4, 'C3': 0} | Passed |
| sampled regression 6 | {'C2': 0, 'C3': 16, 'C4': 0, 'C5': 8} | {'C2': 0, 'C3': 16, 'C4': 0, 'C5': 8} | Passed |
| boundary: up-peak lobby pair | {'C1': 0, 'C2': 0, 'C3': 6} | {'C1': 0, 'C2': 0, 'C3': 6} | Passed |
| boundary: down-peak top first | {'C1': 15, 'C2': 10, 'C3': 5} | {'C1': 15, 'C2': 10, 'C3': 5} | Passed |
| sampled regression 1 | {'C1': 6, 'C2': 0, 'C5': 3} | {'C1': 6, 'C2': 0, 'C5': 3} | Passed |
| sampled regression 4 | {'C3': 14, 'C5': 0} | {'C3': 14, 'C5': 0} | Passed |
| sampled regression 7 | {'C1': 10, 'C3': 5, 'C4': 0} | {'C1': 10, 'C3': 5, 'C4': 0} | Passed |
SHA-256 / 08db166686723713c06ce5361206d59c95d71004f98eec2bd97bd3bc35a42b13
Verification & scope
Stipulated toy lift-control contract for a bounded teaching model; it makes no claim of conformance to any lift code or vendor dispatcher and omits real safety cases. 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:47:53.246053+00:00.
Case digest / 9f7feb04c5a8a872c3e549daa8ab2ab14e2bf3292b517d0c5c7ecc1364f962fa