FAILURE MAP
← Case archive

FA-13956 / Numerical aggregation / Open access

Adjacent product block reduction: Negative neighboring products are discarded. · case 01

The reduction disagrees with its explicit aggregation oracle.

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

ROOT CAUSE

Negative neighboring products are discarded.

VERIFIED REPAIR

Preserve the adjacent product block reduction contract at the identified reduction decision.

Unsuccessful approach: Taking magnitudes prevents legitimate cancellation of signed products.

Case contract

Concatenate ordered integer blocks logically and sum products of neighboring observations. Empty blocks are identity; there is exactly one cross-boundary product between consecutive nonempty blocks.

Why this case matters

Exact bounded examples isolate a reduction defect without floating-point or external-service effects.

1 / The failure

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json
from fractions import Fraction
from collections import Counter, defaultdict
import math
import itertools
N = 1
observations = []
def solve(blocks):
    total=0
    last=None
    for block in blocks:
        if not block: continue
        total+=sum(max(0,a*b) for a,b in zip(block,block[1:]))
        if last is not None: total+=last*block[0]
        last=block[-1]
    return total
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('regression 1', solve(*([[1, 2], [3, 4]],)), 20)
check('regression 2', solve(*([[2], [], [-3], [5]],)), -21)
check('regression 3', solve(*([],)), 0)
check('regression 4', solve(*([[0, 4], [3, 0]],)), 12)
check('regression 5', solve(*([[-2, -1], [3, -4, 5]],)), -33)
check('regression 6', solve(*([[], [7], []],)), 0)
check('regression 7', solve(*([[2, 3, 4]],)), 18)
check("variable interblock product",solve([[N],[N+1]]),N*(N+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 12020Passed
regression 2-21-21Passed
regression 300Passed
regression 41212Passed
regression 5-1-33Failed
regression 600Passed
regression 71818Passed
variable interblock product22Passed

SHA-256 / f2ea3fed06a6252c98579ca3322d5abc9823491733fd5b3b3548cb8c88cd568f

2 / The unsuccessful fix

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json
from fractions import Fraction
from collections import Counter, defaultdict
import math
import itertools
N = 1
observations = []
def solve(blocks):
    total=0
    last=None
    for block in blocks:
        if not block: continue
        total+=sum(abs(a*b) for a,b in zip(block,block[1:]))
        if last is not None: total+=last*block[0]
        last=block[-1]
    return total
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('regression 1', solve(*([[1, 2], [3, 4]],)), 20)
check('regression 2', solve(*([[2], [], [-3], [5]],)), -21)
check('regression 3', solve(*([],)), 0)
check('regression 4', solve(*([[0, 4], [3, 0]],)), 12)
check('regression 5', solve(*([[-2, -1], [3, -4, 5]],)), -33)
check('regression 6', solve(*([[], [7], []],)), 0)
check('regression 7', solve(*([[2, 3, 4]],)), 18)
check("variable interblock product",solve([[N],[N+1]]),N*(N+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 12020Passed
regression 2-21-21Passed
regression 300Passed
regression 41212Passed
regression 531-33Failed
regression 600Passed
regression 71818Passed
variable interblock product22Passed

SHA-256 / f23860ae782f0efbee3387bf76eeb6024dccdfb3d1be6d0326bab5beca3427b8

3 / The verified repair

Exit 0
"""Failure Map reference implementation. Python standard library only."""
import json
from fractions import Fraction
from collections import Counter, defaultdict
import math
import itertools
N = 1
observations = []
def solve(blocks):
    total=0
    last=None
    for block in blocks:
        if not block: continue
        total+=sum(a*b for a,b in zip(block,block[1:]))
        if last is not None: total+=last*block[0]
        last=block[-1]
    return total
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('regression 1', solve(*([[1, 2], [3, 4]],)), 20)
check('regression 2', solve(*([[2], [], [-3], [5]],)), -21)
check('regression 3', solve(*([],)), 0)
check('regression 4', solve(*([[0, 4], [3, 0]],)), 12)
check('regression 5', solve(*([[-2, -1], [3, -4, 5]],)), -33)
check('regression 6', solve(*([[], [7], []],)), 0)
check('regression 7', solve(*([[2, 3, 4]],)), 18)
check("variable interblock product",solve([[N],[N+1]]),N*(N+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 12020Passed
regression 2-21-21Passed
regression 300Passed
regression 41212Passed
regression 5-33-33Passed
regression 600Passed
regression 71818Passed
variable interblock product22Passed

SHA-256 / 57613ef4fdd7ea759e8e79c19b3f78b846fe3c80a8c64f8eca1cbd31f91df0ea

Verification & scope

Small offline integer/rational inputs only; no performance, statistical inference, or production-library conformance claim. 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:39:12.219008+00:00.

Case digest / 281449935ecbcbf8f0b74494adee4bdfed93dd7b59f8fc41248424818818978a