FAILURE MAP
← Case archive

FA-14131 / Numerical aggregation / Open access

Frequency cosine squared: Squared norms are added instead of multiplied. · case 01

The reduction disagrees with its explicit aggregation oracle.

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

ROOT CAUSE

Squared norms are added instead of multiplied.

VERIFIED REPAIR

Preserve the frequency cosine squared contract at the identified reduction decision.

Unsuccessful approach: Using only the larger norm breaks independent scale invariance.

Case contract

Treat samples as frequency vectors over nominal integer labels. Return squared cosine dot**2/(sum count_a**2 * sum count_b**2) as exact Fraction string. A zero norm on either side returns None.

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(a, b):
    ca,cb=Counter(a),Counter(b)
    keys=set(ca)|set(cb)
    dot=sum(ca[k]*cb[k] for k in keys)
    na=sum(v*v for v in ca.values())
    nb=sum(v*v for v in cb.values())
    return str(Fraction(dot*dot,na+nb)) if na and nb else None
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('regression 1', solve(*([1, 1, 2], [1, 2, 2])), '16/25')
check('regression 2', solve(*([1, 2], [1, 2])), '1')
check('regression 3', solve(*([], [])), None)
check('regression 4', solve(*([0], [1])), '0')
check('regression 5', solve(*([1, 1, 1, 2], [1, 2])), '4/5')
check('regression 6', solve(*([-1, 0, 0], [0, 0, 1, 1])), '2/5')
check('regression 7', solve(*([2, 2], [])), None)
check("variable cosine concentration",solve([0]*N+[1],[0]),str(Fraction(N*N,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 18/516/25Failed
regression 211Passed
regression 3NoneNonePassed
regression 400Passed
regression 54/34/5Failed
regression 616/132/5Failed
regression 7NoneNonePassed
variable cosine concentration1/31/2Failed

SHA-256 / f5d214f5f366d5e37c912265c5b537546564690df6abd7f52c0b20924ee12ab1

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(a, b):
    ca,cb=Counter(a),Counter(b)
    keys=set(ca)|set(cb)
    dot=sum(ca[k]*cb[k] for k in keys)
    na=sum(v*v for v in ca.values())
    nb=sum(v*v for v in cb.values())
    return str(Fraction(dot*dot,max(na,nb)**2)) if na and nb else None
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('regression 1', solve(*([1, 1, 2], [1, 2, 2])), '16/25')
check('regression 2', solve(*([1, 2], [1, 2])), '1')
check('regression 3', solve(*([], [])), None)
check('regression 4', solve(*([0], [1])), '0')
check('regression 5', solve(*([1, 1, 1, 2], [1, 2])), '4/5')
check('regression 6', solve(*([-1, 0, 0], [0, 0, 1, 1])), '2/5')
check('regression 7', solve(*([2, 2], [])), None)
check("variable cosine concentration",solve([0]*N+[1],[0]),str(Fraction(N*N,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 116/2516/25Passed
regression 211Passed
regression 3NoneNonePassed
regression 400Passed
regression 54/254/5Failed
regression 61/42/5Failed
regression 7NoneNonePassed
variable cosine concentration1/41/2Failed

SHA-256 / 9313bb3a2cc641d671b44caa79fde58f2de000a4d364192d1267e933c4eb40f2

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(a, b):
    ca,cb=Counter(a),Counter(b)
    keys=set(ca)|set(cb)
    dot=sum(ca[k]*cb[k] for k in keys)
    na=sum(v*v for v in ca.values())
    nb=sum(v*v for v in cb.values())
    return str(Fraction(dot*dot,na*nb)) if na and nb else None
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('regression 1', solve(*([1, 1, 2], [1, 2, 2])), '16/25')
check('regression 2', solve(*([1, 2], [1, 2])), '1')
check('regression 3', solve(*([], [])), None)
check('regression 4', solve(*([0], [1])), '0')
check('regression 5', solve(*([1, 1, 1, 2], [1, 2])), '4/5')
check('regression 6', solve(*([-1, 0, 0], [0, 0, 1, 1])), '2/5')
check('regression 7', solve(*([2, 2], [])), None)
check("variable cosine concentration",solve([0]*N+[1],[0]),str(Fraction(N*N,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 116/2516/25Passed
regression 211Passed
regression 3NoneNonePassed
regression 400Passed
regression 54/54/5Passed
regression 62/52/5Passed
regression 7NoneNonePassed
variable cosine concentration1/21/2Passed

SHA-256 / 15037d025e834f16d75cb1853d682a3dbb64d80828dd074813a99eb78afcb9d1

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:13.759048+00:00.

Case digest / 5d7b26bc9a6d3cf2bd275d8a34282ff266e35306f0e81510ce3e36d95f76b52b