FA-51936 / Raster memory layout / Open access
Nested Macrotiles: Microtile origin uses pixels as bytes or edge length as area · case 01
The returned physical layout descriptor disagrees with the declared buffer mapping at address.
ROOT CAUSE
Microtile origin uses pixels as bytes or edge length as area The faulty expression is p["base"]+macro_id*macro_pitch+micro_id*16+local_texel*p["b"].
VERIFIED REPAIR
Apply the stipulated layout rule at address: p["base"]+macro_id*macro_pitch+(micro_id*16+local_texel)*p["b"].
Unsuccessful approach: The attempted repair uses p["base"]+macro_id*macro_pitch+micro_id*4*p["b"]+local_texel*p["b"] and still violates the layout contract.
Case contract
An 8x8 macrotile contains four 4x4 microtiles in column-major order; texels within each microtile are row-major. Macrotiles are row-major and each macrotile has a configurable trailer. Return the named intermediate layout descriptor and final address fields; all quantities are integer byte offsets unless explicitly stated.
Why this case matters
Offline raster resource, upload, readback, and storage-layout regression model.
1 / The failure
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(p):
p = dict(p)
macro_columns = (p["w"]+7)//8
macro_x = p["x"]//8
macro_y = p["y"]//8
macro_id = macro_y*macro_columns+macro_x
micro_x = (p["x"]%8)//4
micro_y = (p["y"]%8)//4
micro_id = micro_x*2+micro_y
local_texel = (p["y"]%4)*4+p["x"]%4
macro_pitch = 64*p["b"]+p["trailer"]
address = p["base"]+macro_id*macro_pitch+micro_id*16+local_texel*p["b"]
return {'macro_columns': macro_columns, 'macro_x': macro_x, 'macro_y': macro_y, 'macro_id': macro_id, 'micro_x': micro_x, 'micro_y': micro_y, 'micro_id': micro_id, 'local_texel': local_texel, 'macro_pitch': macro_pitch, 'address': address}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
cases = {1: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 2, 'base': 11, 'trailer': 4}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 132, 'address': 11}), ({'w': 6, 'h': 4, 'x': 1, 'y': 2, 'b': 2, 'base': 11, 'trailer': 4}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 9, 'macro_pitch': 132, 'address': 29}), ({'w': 10, 'h': 8, 'x': 8, 'y': 6, 'b': 2, 'base': 11, 'trailer': 4}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 8, 'macro_pitch': 132, 'address': 191}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 2, 'base': 11, 'trailer': 4}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 1, 'micro_y': 1, 'micro_id': 3, 'local_texel': 15, 'macro_pitch': 132, 'address': 269}), ({'w': 18, 'h': 10, 'x': 16, 'y': 8, 'b': 2, 'base': 11, 'trailer': 4}, {'macro_columns': 3, 'macro_x': 2, 'macro_y': 1, 'macro_id': 5, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 132, 'address': 671}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 2, 'base': 11, 'trailer': 4}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 1, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 3, 'macro_pitch': 132, 'address': 181})], 2: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 3, 'base': 22, 'trailer': 5}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 197, 'address': 22}), ({'w': 7, 'h': 5, 'x': 1, 'y': 2, 'b': 3, 'base': 22, 'trailer': 5}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 9, 'macro_pitch': 197, 'address': 49}), ({'w': 11, 'h': 9, 'x': 8, 'y': 6, 'b': 3, 'base': 22, 'trailer': 5}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 8, 'macro_pitch': 197, 'address': 291}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 3, 'base': 22, 'trailer': 5}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 1, 'micro_y': 1, 'micro_id': 3, 'local_texel': 15, 'macro_pitch': 197, 'address': 408}), ({'w': 19, 'h': 11, 'x': 16, 'y': 8, 'b': 3, 'base': 22, 'trailer': 5}, {'macro_columns': 3, 'macro_x': 2, 'macro_y': 1, 'macro_id': 5, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 197, 'address': 1007}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 3, 'base': 22, 'trailer': 5}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 1, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 3, 'macro_pitch': 197, 'address': 276})], 3: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 4, 'base': 33, 'trailer': 6}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 262, 'address': 33}), ({'w': 8, 'h': 6, 'x': 1, 'y': 2, 'b': 4, 'base': 33, 'trailer': 6}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 9, 'macro_pitch': 262, 'address': 69}), ({'w': 12, 'h': 10, 'x': 8, 'y': 6, 'b': 4, 'base': 33, 'trailer': 6}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 8, 'macro_pitch': 262, 'address': 391}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 4, 'base': 33, 'trailer': 6}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 1, 'micro_y': 1, 'micro_id': 3, 'local_texel': 15, 'macro_pitch': 262, 'address': 547}), ({'w': 20, 'h': 12, 'x': 16, 'y': 8, 'b': 4, 'base': 33, 'trailer': 6}, {'macro_columns': 3, 'macro_x': 2, 'macro_y': 1, 'macro_id': 5, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 262, 'address': 1343}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 4, 'base': 33, 'trailer': 6}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 1, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 3, 'macro_pitch': 262, 'address': 371})], 4: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 5, 'base': 44, 'trailer': 7}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 327, 'address': 44}), ({'w': 9, 'h': 7, 'x': 1, 'y': 2, 'b': 5, 'base': 44, 'trailer': 7}, {'macro_columns': 2, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 9, 'macro_pitch': 327, 'address': 89}), ({'w': 13, 'h': 11, 'x': 8, 'y': 6, 'b': 5, 'base': 44, 'trailer': 7}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 8, 'macro_pitch': 327, 'address': 491}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 5, 'base': 44, 'trailer': 7}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 1, 'micro_y': 1, 'micro_id': 3, 'local_texel': 15, 'macro_pitch': 327, 'address': 686}), ({'w': 21, 'h': 13, 'x': 16, 'y': 8, 'b': 5, 'base': 44, 'trailer': 7}, {'macro_columns': 3, 'macro_x': 2, 'macro_y': 1, 'macro_id': 5, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 327, 'address': 1679}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 5, 'base': 44, 'trailer': 7}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 1, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 3, 'macro_pitch': 327, 'address': 466})], 5: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 6, 'base': 55, 'trailer': 8}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 392, 'address': 55}), ({'w': 10, 'h': 8, 'x': 1, 'y': 2, 'b': 6, 'base': 55, 'trailer': 8}, {'macro_columns': 2, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 9, 'macro_pitch': 392, 'address': 109}), ({'w': 14, 'h': 12, 'x': 8, 'y': 6, 'b': 6, 'base': 55, 'trailer': 8}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 8, 'macro_pitch': 392, 'address': 591}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 6, 'base': 55, 'trailer': 8}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 1, 'micro_y': 1, 'micro_id': 3, 'local_texel': 15, 'macro_pitch': 392, 'address': 825}), ({'w': 22, 'h': 14, 'x': 16, 'y': 8, 'b': 6, 'base': 55, 'trailer': 8}, {'macro_columns': 3, 'macro_x': 2, 'macro_y': 1, 'macro_id': 5, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 392, 'address': 2015}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 6, 'base': 55, 'trailer': 8}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 1, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 3, 'macro_pitch': 392, 'address': 561})]}
for i, (p, expected) in enumerate(cases[N]):
check("layout fixture " + str(i + 1), solve(p), 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 |
|---|---|---|---|
| layout fixture 1 | {'address': 11, 'local_texel': 0, 'macro_columns': 1, 'macro_id': 0, 'macro_pitch': 132, 'macro_x': 0, 'macro_y': 0, 'micro_id': 0, 'micro_x': 0, 'micro_y': 0} | {'address': 11, 'local_texel': 0, 'macro_columns': 1, 'macro_id': 0, 'macro_pitch': 132, 'macro_x': 0, 'macro_y': 0, 'micro_id': 0, 'micro_x': 0, 'micro_y': 0} | Passed |
| layout fixture 2 | {'address': 29, 'local_texel': 9, 'macro_columns': 1, 'macro_id': 0, 'macro_pitch': 132, 'macro_x': 0, 'macro_y': 0, 'micro_id': 0, 'micro_x': 0, 'micro_y': 0} | {'address': 29, 'local_texel': 9, 'macro_columns': 1, 'macro_id': 0, 'macro_pitch': 132, 'macro_x': 0, 'macro_y': 0, 'micro_id': 0, 'micro_x': 0, 'micro_y': 0} | Passed |
| layout fixture 3 | {'address': 175, 'local_texel': 8, 'macro_columns': 2, 'macro_id': 1, 'macro_pitch': 132, 'macro_x': 1, 'macro_y': 0, 'micro_id': 1, 'micro_x': 0, 'micro_y': 1} | {'address': 191, 'local_texel': 8, 'macro_columns': 2, 'macro_id': 1, 'macro_pitch': 132, 'macro_x': 1, 'macro_y': 0, 'micro_id': 1, 'micro_x': 0, 'micro_y': 1} | Failed |
| layout fixture 4 | {'address': 221, 'local_texel': 15, 'macro_columns': 2, 'macro_id': 1, 'macro_pitch': 132, 'macro_x': 1, 'macro_y': 0, 'micro_id': 3, 'micro_x': 1, 'micro_y': 1} | {'address': 269, 'local_texel': 15, 'macro_columns': 2, 'macro_id': 1, 'macro_pitch': 132, 'macro_x': 1, 'macro_y': 0, 'micro_id': 3, 'micro_x': 1, 'micro_y': 1} | Failed |
| layout fixture 5 | {'address': 671, 'local_texel': 0, 'macro_columns': 3, 'macro_id': 5, 'macro_pitch': 132, 'macro_x': 2, 'macro_y': 1, 'micro_id': 0, 'micro_x': 0, 'micro_y': 0} | {'address': 671, 'local_texel': 0, 'macro_columns': 3, 'macro_id': 5, 'macro_pitch': 132, 'macro_x': 2, 'macro_y': 1, 'micro_id': 0, 'micro_x': 0, 'micro_y': 0} | Passed |
| layout fixture 6 | {'address': 165, 'local_texel': 3, 'macro_columns': 1, 'macro_id': 1, 'macro_pitch': 132, 'macro_x': 0, 'macro_y': 1, 'micro_id': 1, 'micro_x': 0, 'micro_y': 1} | {'address': 181, 'local_texel': 3, 'macro_columns': 1, 'macro_id': 1, 'macro_pitch': 132, 'macro_x': 0, 'macro_y': 1, 'micro_id': 1, 'micro_x': 0, 'micro_y': 1} | Failed |
SHA-256 / 2a7aeb18396204d78cacc816c1c033db8ecf4b90a5c3437f4268e90e518b1741
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(p):
p = dict(p)
macro_columns = (p["w"]+7)//8
macro_x = p["x"]//8
macro_y = p["y"]//8
macro_id = macro_y*macro_columns+macro_x
micro_x = (p["x"]%8)//4
micro_y = (p["y"]%8)//4
micro_id = micro_x*2+micro_y
local_texel = (p["y"]%4)*4+p["x"]%4
macro_pitch = 64*p["b"]+p["trailer"]
address = p["base"]+macro_id*macro_pitch+micro_id*4*p["b"]+local_texel*p["b"]
return {'macro_columns': macro_columns, 'macro_x': macro_x, 'macro_y': macro_y, 'macro_id': macro_id, 'micro_x': micro_x, 'micro_y': micro_y, 'micro_id': micro_id, 'local_texel': local_texel, 'macro_pitch': macro_pitch, 'address': address}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
cases = {1: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 2, 'base': 11, 'trailer': 4}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 132, 'address': 11}), ({'w': 6, 'h': 4, 'x': 1, 'y': 2, 'b': 2, 'base': 11, 'trailer': 4}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 9, 'macro_pitch': 132, 'address': 29}), ({'w': 10, 'h': 8, 'x': 8, 'y': 6, 'b': 2, 'base': 11, 'trailer': 4}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 8, 'macro_pitch': 132, 'address': 191}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 2, 'base': 11, 'trailer': 4}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 1, 'micro_y': 1, 'micro_id': 3, 'local_texel': 15, 'macro_pitch': 132, 'address': 269}), ({'w': 18, 'h': 10, 'x': 16, 'y': 8, 'b': 2, 'base': 11, 'trailer': 4}, {'macro_columns': 3, 'macro_x': 2, 'macro_y': 1, 'macro_id': 5, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 132, 'address': 671}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 2, 'base': 11, 'trailer': 4}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 1, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 3, 'macro_pitch': 132, 'address': 181})], 2: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 3, 'base': 22, 'trailer': 5}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 197, 'address': 22}), ({'w': 7, 'h': 5, 'x': 1, 'y': 2, 'b': 3, 'base': 22, 'trailer': 5}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 9, 'macro_pitch': 197, 'address': 49}), ({'w': 11, 'h': 9, 'x': 8, 'y': 6, 'b': 3, 'base': 22, 'trailer': 5}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 8, 'macro_pitch': 197, 'address': 291}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 3, 'base': 22, 'trailer': 5}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 1, 'micro_y': 1, 'micro_id': 3, 'local_texel': 15, 'macro_pitch': 197, 'address': 408}), ({'w': 19, 'h': 11, 'x': 16, 'y': 8, 'b': 3, 'base': 22, 'trailer': 5}, {'macro_columns': 3, 'macro_x': 2, 'macro_y': 1, 'macro_id': 5, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 197, 'address': 1007}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 3, 'base': 22, 'trailer': 5}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 1, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 3, 'macro_pitch': 197, 'address': 276})], 3: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 4, 'base': 33, 'trailer': 6}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 262, 'address': 33}), ({'w': 8, 'h': 6, 'x': 1, 'y': 2, 'b': 4, 'base': 33, 'trailer': 6}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 9, 'macro_pitch': 262, 'address': 69}), ({'w': 12, 'h': 10, 'x': 8, 'y': 6, 'b': 4, 'base': 33, 'trailer': 6}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 8, 'macro_pitch': 262, 'address': 391}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 4, 'base': 33, 'trailer': 6}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 1, 'micro_y': 1, 'micro_id': 3, 'local_texel': 15, 'macro_pitch': 262, 'address': 547}), ({'w': 20, 'h': 12, 'x': 16, 'y': 8, 'b': 4, 'base': 33, 'trailer': 6}, {'macro_columns': 3, 'macro_x': 2, 'macro_y': 1, 'macro_id': 5, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 262, 'address': 1343}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 4, 'base': 33, 'trailer': 6}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 1, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 3, 'macro_pitch': 262, 'address': 371})], 4: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 5, 'base': 44, 'trailer': 7}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 327, 'address': 44}), ({'w': 9, 'h': 7, 'x': 1, 'y': 2, 'b': 5, 'base': 44, 'trailer': 7}, {'macro_columns': 2, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 9, 'macro_pitch': 327, 'address': 89}), ({'w': 13, 'h': 11, 'x': 8, 'y': 6, 'b': 5, 'base': 44, 'trailer': 7}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 8, 'macro_pitch': 327, 'address': 491}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 5, 'base': 44, 'trailer': 7}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 1, 'micro_y': 1, 'micro_id': 3, 'local_texel': 15, 'macro_pitch': 327, 'address': 686}), ({'w': 21, 'h': 13, 'x': 16, 'y': 8, 'b': 5, 'base': 44, 'trailer': 7}, {'macro_columns': 3, 'macro_x': 2, 'macro_y': 1, 'macro_id': 5, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 327, 'address': 1679}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 5, 'base': 44, 'trailer': 7}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 1, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 3, 'macro_pitch': 327, 'address': 466})], 5: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 6, 'base': 55, 'trailer': 8}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 392, 'address': 55}), ({'w': 10, 'h': 8, 'x': 1, 'y': 2, 'b': 6, 'base': 55, 'trailer': 8}, {'macro_columns': 2, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 9, 'macro_pitch': 392, 'address': 109}), ({'w': 14, 'h': 12, 'x': 8, 'y': 6, 'b': 6, 'base': 55, 'trailer': 8}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 8, 'macro_pitch': 392, 'address': 591}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 6, 'base': 55, 'trailer': 8}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 1, 'micro_y': 1, 'micro_id': 3, 'local_texel': 15, 'macro_pitch': 392, 'address': 825}), ({'w': 22, 'h': 14, 'x': 16, 'y': 8, 'b': 6, 'base': 55, 'trailer': 8}, {'macro_columns': 3, 'macro_x': 2, 'macro_y': 1, 'macro_id': 5, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 392, 'address': 2015}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 6, 'base': 55, 'trailer': 8}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 1, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 3, 'macro_pitch': 392, 'address': 561})]}
for i, (p, expected) in enumerate(cases[N]):
check("layout fixture " + str(i + 1), solve(p), 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 |
|---|---|---|---|
| layout fixture 1 | {'address': 11, 'local_texel': 0, 'macro_columns': 1, 'macro_id': 0, 'macro_pitch': 132, 'macro_x': 0, 'macro_y': 0, 'micro_id': 0, 'micro_x': 0, 'micro_y': 0} | {'address': 11, 'local_texel': 0, 'macro_columns': 1, 'macro_id': 0, 'macro_pitch': 132, 'macro_x': 0, 'macro_y': 0, 'micro_id': 0, 'micro_x': 0, 'micro_y': 0} | Passed |
| layout fixture 2 | {'address': 29, 'local_texel': 9, 'macro_columns': 1, 'macro_id': 0, 'macro_pitch': 132, 'macro_x': 0, 'macro_y': 0, 'micro_id': 0, 'micro_x': 0, 'micro_y': 0} | {'address': 29, 'local_texel': 9, 'macro_columns': 1, 'macro_id': 0, 'macro_pitch': 132, 'macro_x': 0, 'macro_y': 0, 'micro_id': 0, 'micro_x': 0, 'micro_y': 0} | Passed |
| layout fixture 3 | {'address': 167, 'local_texel': 8, 'macro_columns': 2, 'macro_id': 1, 'macro_pitch': 132, 'macro_x': 1, 'macro_y': 0, 'micro_id': 1, 'micro_x': 0, 'micro_y': 1} | {'address': 191, 'local_texel': 8, 'macro_columns': 2, 'macro_id': 1, 'macro_pitch': 132, 'macro_x': 1, 'macro_y': 0, 'micro_id': 1, 'micro_x': 0, 'micro_y': 1} | Failed |
| layout fixture 4 | {'address': 197, 'local_texel': 15, 'macro_columns': 2, 'macro_id': 1, 'macro_pitch': 132, 'macro_x': 1, 'macro_y': 0, 'micro_id': 3, 'micro_x': 1, 'micro_y': 1} | {'address': 269, 'local_texel': 15, 'macro_columns': 2, 'macro_id': 1, 'macro_pitch': 132, 'macro_x': 1, 'macro_y': 0, 'micro_id': 3, 'micro_x': 1, 'micro_y': 1} | Failed |
| layout fixture 5 | {'address': 671, 'local_texel': 0, 'macro_columns': 3, 'macro_id': 5, 'macro_pitch': 132, 'macro_x': 2, 'macro_y': 1, 'micro_id': 0, 'micro_x': 0, 'micro_y': 0} | {'address': 671, 'local_texel': 0, 'macro_columns': 3, 'macro_id': 5, 'macro_pitch': 132, 'macro_x': 2, 'macro_y': 1, 'micro_id': 0, 'micro_x': 0, 'micro_y': 0} | Passed |
| layout fixture 6 | {'address': 157, 'local_texel': 3, 'macro_columns': 1, 'macro_id': 1, 'macro_pitch': 132, 'macro_x': 0, 'macro_y': 1, 'micro_id': 1, 'micro_x': 0, 'micro_y': 1} | {'address': 181, 'local_texel': 3, 'macro_columns': 1, 'macro_id': 1, 'macro_pitch': 132, 'macro_x': 0, 'macro_y': 1, 'micro_id': 1, 'micro_x': 0, 'micro_y': 1} | Failed |
SHA-256 / e4b36b1107f14dc9f5dec13af9466e94ba644e5042bde42396a8ccd7850661e1
3 / The verified repair
Exit 0"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(p):
p = dict(p)
macro_columns = (p["w"]+7)//8
macro_x = p["x"]//8
macro_y = p["y"]//8
macro_id = macro_y*macro_columns+macro_x
micro_x = (p["x"]%8)//4
micro_y = (p["y"]%8)//4
micro_id = micro_x*2+micro_y
local_texel = (p["y"]%4)*4+p["x"]%4
macro_pitch = 64*p["b"]+p["trailer"]
address = p["base"]+macro_id*macro_pitch+(micro_id*16+local_texel)*p["b"]
return {'macro_columns': macro_columns, 'macro_x': macro_x, 'macro_y': macro_y, 'macro_id': macro_id, 'micro_x': micro_x, 'micro_y': micro_y, 'micro_id': micro_id, 'local_texel': local_texel, 'macro_pitch': macro_pitch, 'address': address}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
cases = {1: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 2, 'base': 11, 'trailer': 4}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 132, 'address': 11}), ({'w': 6, 'h': 4, 'x': 1, 'y': 2, 'b': 2, 'base': 11, 'trailer': 4}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 9, 'macro_pitch': 132, 'address': 29}), ({'w': 10, 'h': 8, 'x': 8, 'y': 6, 'b': 2, 'base': 11, 'trailer': 4}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 8, 'macro_pitch': 132, 'address': 191}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 2, 'base': 11, 'trailer': 4}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 1, 'micro_y': 1, 'micro_id': 3, 'local_texel': 15, 'macro_pitch': 132, 'address': 269}), ({'w': 18, 'h': 10, 'x': 16, 'y': 8, 'b': 2, 'base': 11, 'trailer': 4}, {'macro_columns': 3, 'macro_x': 2, 'macro_y': 1, 'macro_id': 5, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 132, 'address': 671}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 2, 'base': 11, 'trailer': 4}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 1, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 3, 'macro_pitch': 132, 'address': 181})], 2: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 3, 'base': 22, 'trailer': 5}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 197, 'address': 22}), ({'w': 7, 'h': 5, 'x': 1, 'y': 2, 'b': 3, 'base': 22, 'trailer': 5}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 9, 'macro_pitch': 197, 'address': 49}), ({'w': 11, 'h': 9, 'x': 8, 'y': 6, 'b': 3, 'base': 22, 'trailer': 5}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 8, 'macro_pitch': 197, 'address': 291}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 3, 'base': 22, 'trailer': 5}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 1, 'micro_y': 1, 'micro_id': 3, 'local_texel': 15, 'macro_pitch': 197, 'address': 408}), ({'w': 19, 'h': 11, 'x': 16, 'y': 8, 'b': 3, 'base': 22, 'trailer': 5}, {'macro_columns': 3, 'macro_x': 2, 'macro_y': 1, 'macro_id': 5, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 197, 'address': 1007}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 3, 'base': 22, 'trailer': 5}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 1, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 3, 'macro_pitch': 197, 'address': 276})], 3: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 4, 'base': 33, 'trailer': 6}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 262, 'address': 33}), ({'w': 8, 'h': 6, 'x': 1, 'y': 2, 'b': 4, 'base': 33, 'trailer': 6}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 9, 'macro_pitch': 262, 'address': 69}), ({'w': 12, 'h': 10, 'x': 8, 'y': 6, 'b': 4, 'base': 33, 'trailer': 6}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 8, 'macro_pitch': 262, 'address': 391}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 4, 'base': 33, 'trailer': 6}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 1, 'micro_y': 1, 'micro_id': 3, 'local_texel': 15, 'macro_pitch': 262, 'address': 547}), ({'w': 20, 'h': 12, 'x': 16, 'y': 8, 'b': 4, 'base': 33, 'trailer': 6}, {'macro_columns': 3, 'macro_x': 2, 'macro_y': 1, 'macro_id': 5, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 262, 'address': 1343}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 4, 'base': 33, 'trailer': 6}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 1, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 3, 'macro_pitch': 262, 'address': 371})], 4: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 5, 'base': 44, 'trailer': 7}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 327, 'address': 44}), ({'w': 9, 'h': 7, 'x': 1, 'y': 2, 'b': 5, 'base': 44, 'trailer': 7}, {'macro_columns': 2, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 9, 'macro_pitch': 327, 'address': 89}), ({'w': 13, 'h': 11, 'x': 8, 'y': 6, 'b': 5, 'base': 44, 'trailer': 7}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 8, 'macro_pitch': 327, 'address': 491}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 5, 'base': 44, 'trailer': 7}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 1, 'micro_y': 1, 'micro_id': 3, 'local_texel': 15, 'macro_pitch': 327, 'address': 686}), ({'w': 21, 'h': 13, 'x': 16, 'y': 8, 'b': 5, 'base': 44, 'trailer': 7}, {'macro_columns': 3, 'macro_x': 2, 'macro_y': 1, 'macro_id': 5, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 327, 'address': 1679}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 5, 'base': 44, 'trailer': 7}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 1, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 3, 'macro_pitch': 327, 'address': 466})], 5: [({'w': 1, 'h': 1, 'x': 0, 'y': 0, 'b': 6, 'base': 55, 'trailer': 8}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 392, 'address': 55}), ({'w': 10, 'h': 8, 'x': 1, 'y': 2, 'b': 6, 'base': 55, 'trailer': 8}, {'macro_columns': 2, 'macro_x': 0, 'macro_y': 0, 'macro_id': 0, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 9, 'macro_pitch': 392, 'address': 109}), ({'w': 14, 'h': 12, 'x': 8, 'y': 6, 'b': 6, 'base': 55, 'trailer': 8}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 8, 'macro_pitch': 392, 'address': 591}), ({'w': 16, 'h': 8, 'x': 15, 'y': 7, 'b': 6, 'base': 55, 'trailer': 8}, {'macro_columns': 2, 'macro_x': 1, 'macro_y': 0, 'macro_id': 1, 'micro_x': 1, 'micro_y': 1, 'micro_id': 3, 'local_texel': 15, 'macro_pitch': 392, 'address': 825}), ({'w': 22, 'h': 14, 'x': 16, 'y': 8, 'b': 6, 'base': 55, 'trailer': 8}, {'macro_columns': 3, 'macro_x': 2, 'macro_y': 1, 'macro_id': 5, 'micro_x': 0, 'micro_y': 0, 'micro_id': 0, 'local_texel': 0, 'macro_pitch': 392, 'address': 2015}), ({'w': 7, 'h': 13, 'x': 3, 'y': 12, 'b': 6, 'base': 55, 'trailer': 8}, {'macro_columns': 1, 'macro_x': 0, 'macro_y': 1, 'macro_id': 1, 'micro_x': 0, 'micro_y': 1, 'micro_id': 1, 'local_texel': 3, 'macro_pitch': 392, 'address': 561})]}
for i, (p, expected) in enumerate(cases[N]):
check("layout fixture " + str(i + 1), solve(p), 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 |
|---|---|---|---|
| layout fixture 1 | {'address': 11, 'local_texel': 0, 'macro_columns': 1, 'macro_id': 0, 'macro_pitch': 132, 'macro_x': 0, 'macro_y': 0, 'micro_id': 0, 'micro_x': 0, 'micro_y': 0} | {'address': 11, 'local_texel': 0, 'macro_columns': 1, 'macro_id': 0, 'macro_pitch': 132, 'macro_x': 0, 'macro_y': 0, 'micro_id': 0, 'micro_x': 0, 'micro_y': 0} | Passed |
| layout fixture 2 | {'address': 29, 'local_texel': 9, 'macro_columns': 1, 'macro_id': 0, 'macro_pitch': 132, 'macro_x': 0, 'macro_y': 0, 'micro_id': 0, 'micro_x': 0, 'micro_y': 0} | {'address': 29, 'local_texel': 9, 'macro_columns': 1, 'macro_id': 0, 'macro_pitch': 132, 'macro_x': 0, 'macro_y': 0, 'micro_id': 0, 'micro_x': 0, 'micro_y': 0} | Passed |
| layout fixture 3 | {'address': 191, 'local_texel': 8, 'macro_columns': 2, 'macro_id': 1, 'macro_pitch': 132, 'macro_x': 1, 'macro_y': 0, 'micro_id': 1, 'micro_x': 0, 'micro_y': 1} | {'address': 191, 'local_texel': 8, 'macro_columns': 2, 'macro_id': 1, 'macro_pitch': 132, 'macro_x': 1, 'macro_y': 0, 'micro_id': 1, 'micro_x': 0, 'micro_y': 1} | Passed |
| layout fixture 4 | {'address': 269, 'local_texel': 15, 'macro_columns': 2, 'macro_id': 1, 'macro_pitch': 132, 'macro_x': 1, 'macro_y': 0, 'micro_id': 3, 'micro_x': 1, 'micro_y': 1} | {'address': 269, 'local_texel': 15, 'macro_columns': 2, 'macro_id': 1, 'macro_pitch': 132, 'macro_x': 1, 'macro_y': 0, 'micro_id': 3, 'micro_x': 1, 'micro_y': 1} | Passed |
| layout fixture 5 | {'address': 671, 'local_texel': 0, 'macro_columns': 3, 'macro_id': 5, 'macro_pitch': 132, 'macro_x': 2, 'macro_y': 1, 'micro_id': 0, 'micro_x': 0, 'micro_y': 0} | {'address': 671, 'local_texel': 0, 'macro_columns': 3, 'macro_id': 5, 'macro_pitch': 132, 'macro_x': 2, 'macro_y': 1, 'micro_id': 0, 'micro_x': 0, 'micro_y': 0} | Passed |
| layout fixture 6 | {'address': 181, 'local_texel': 3, 'macro_columns': 1, 'macro_id': 1, 'macro_pitch': 132, 'macro_x': 0, 'macro_y': 1, 'micro_id': 1, 'micro_x': 0, 'micro_y': 1} | {'address': 181, 'local_texel': 3, 'macro_columns': 1, 'macro_id': 1, 'macro_pitch': 132, 'macro_x': 0, 'macro_y': 1, 'micro_id': 1, 'micro_x': 0, 'micro_y': 1} | Passed |
SHA-256 / fcfe43f249406e50ed8e9056f7c69d42dfc5e746743804eed4a239ea8753c21b
Verification & scope
Stipulated deterministic toy buffer layout; not a graphics API, codec, GPU vendor tiling specification, or hardware-conformance claim. Inputs satisfy the dimensions and bounds stated by the model. 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:45:23.927391+00:00.
Case digest / 0412da17db2220bf7b66a7dd660a2dfe69f6f75991d8f953d3b22154172ec688