FA-55091 / Astronomical coordinate conventions / Open access
Stokes linear basis: Cross-hand real correlation is missing the Stokes U factor of two · case 01
The adapter reports an incorrect linear u while other fields remain valid.
ROOT CAUSE
Cross-hand real correlation is missing the Stokes U factor of two. Faulty expression: d['re']
VERIFIED REPAIR
Preserve the declared model convention at this site: 2*d['re']
Unsuccessful approach: A partial convention repair still uses 2*d['im']
Case contract
Two real linear-feed correlations XX,YY and real/imaginary XY define stipulated Stokes I=XX+YY,Q=XX-YY,U=2re,V=-2im. Reversing feed labels negates Q and V, leaves I and U unchanged. Output rotated fields model only that feed swap. Output fields are defined by: intensity = d['xx']+d['yy']; linear_q = d['xx']-d['yy']; linear_u = 2*d['re']; circular_v = -2*d['im']; swapped_q = d['yy']-d['xx']; swapped_v = 2*d['im']
Why this case matters
Catalog, detector, sky-coordinate, and spectroscopy adapters must preserve the association between numeric coordinates and their declared reference conventions.
1 / The failure
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(d):
return {'intensity': d['xx']+d['yy'], 'linear_q': d['xx']-d['yy'], 'linear_u': d['re'], 'circular_v': -2*d['im'], 'swapped_q': d['yy']-d['xx'], 'swapped_v': 2*d['im']}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = {1: [({'xx': 8, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 11, 'linear_q': 5, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -5, 'swapped_v': 8}), ({'xx': 3, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 6, 'linear_q': 0, 'linear_u': 4, 'circular_v': -8, 'swapped_q': 0, 'swapped_v': 8}), ({'xx': 8, 'yy': 3, 're': 0, 'im': 0}, {'intensity': 11, 'linear_q': 5, 'linear_u': 0, 'circular_v': 0, 'swapped_q': -5, 'swapped_v': 0}), ({'xx': 1, 'yy': 12, 're': 2, 'im': 4}, {'intensity': 13, 'linear_q': -11, 'linear_u': 4, 'circular_v': -8, 'swapped_q': 11, 'swapped_v': 8}), ({'xx': 8, 'yy': 3, 're': -2, 'im': -3}, {'intensity': 11, 'linear_q': 5, 'linear_u': -4, 'circular_v': 6, 'swapped_q': -5, 'swapped_v': -6}), ({'xx': 0, 'yy': 0, 're': 2, 'im': 4}, {'intensity': 0, 'linear_q': 0, 'linear_u': 4, 'circular_v': -8, 'swapped_q': 0, 'swapped_v': 8})], 2: [({'xx': 9, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 12, 'linear_q': 6, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -6, 'swapped_v': 8}), ({'xx': 4, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 7, 'linear_q': 1, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -1, 'swapped_v': 8}), ({'xx': 9, 'yy': 3, 're': 0, 'im': 0}, {'intensity': 12, 'linear_q': 6, 'linear_u': 0, 'circular_v': 0, 'swapped_q': -6, 'swapped_v': 0}), ({'xx': 2, 'yy': 12, 're': 2, 'im': 4}, {'intensity': 14, 'linear_q': -10, 'linear_u': 4, 'circular_v': -8, 'swapped_q': 10, 'swapped_v': 8}), ({'xx': 9, 'yy': 3, 're': -2, 'im': -3}, {'intensity': 12, 'linear_q': 6, 'linear_u': -4, 'circular_v': 6, 'swapped_q': -6, 'swapped_v': -6}), ({'xx': 1, 'yy': 0, 're': 2, 'im': 4}, {'intensity': 1, 'linear_q': 1, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -1, 'swapped_v': 8})], 3: [({'xx': 10, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 13, 'linear_q': 7, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -7, 'swapped_v': 8}), ({'xx': 5, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 8, 'linear_q': 2, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -2, 'swapped_v': 8}), ({'xx': 10, 'yy': 3, 're': 0, 'im': 0}, {'intensity': 13, 'linear_q': 7, 'linear_u': 0, 'circular_v': 0, 'swapped_q': -7, 'swapped_v': 0}), ({'xx': 3, 'yy': 12, 're': 2, 'im': 4}, {'intensity': 15, 'linear_q': -9, 'linear_u': 4, 'circular_v': -8, 'swapped_q': 9, 'swapped_v': 8}), ({'xx': 10, 'yy': 3, 're': -2, 'im': -3}, {'intensity': 13, 'linear_q': 7, 'linear_u': -4, 'circular_v': 6, 'swapped_q': -7, 'swapped_v': -6}), ({'xx': 2, 'yy': 0, 're': 2, 'im': 4}, {'intensity': 2, 'linear_q': 2, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -2, 'swapped_v': 8})], 4: [({'xx': 11, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 14, 'linear_q': 8, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -8, 'swapped_v': 8}), ({'xx': 6, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 9, 'linear_q': 3, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -3, 'swapped_v': 8}), ({'xx': 11, 'yy': 3, 're': 0, 'im': 0}, {'intensity': 14, 'linear_q': 8, 'linear_u': 0, 'circular_v': 0, 'swapped_q': -8, 'swapped_v': 0}), ({'xx': 4, 'yy': 12, 're': 2, 'im': 4}, {'intensity': 16, 'linear_q': -8, 'linear_u': 4, 'circular_v': -8, 'swapped_q': 8, 'swapped_v': 8}), ({'xx': 11, 'yy': 3, 're': -2, 'im': -3}, {'intensity': 14, 'linear_q': 8, 'linear_u': -4, 'circular_v': 6, 'swapped_q': -8, 'swapped_v': -6}), ({'xx': 3, 'yy': 0, 're': 2, 'im': 4}, {'intensity': 3, 'linear_q': 3, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -3, 'swapped_v': 8})], 5: [({'xx': 12, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 15, 'linear_q': 9, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -9, 'swapped_v': 8}), ({'xx': 7, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 10, 'linear_q': 4, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -4, 'swapped_v': 8}), ({'xx': 12, 'yy': 3, 're': 0, 'im': 0}, {'intensity': 15, 'linear_q': 9, 'linear_u': 0, 'circular_v': 0, 'swapped_q': -9, 'swapped_v': 0}), ({'xx': 5, 'yy': 12, 're': 2, 'im': 4}, {'intensity': 17, 'linear_q': -7, 'linear_u': 4, 'circular_v': -8, 'swapped_q': 7, 'swapped_v': 8}), ({'xx': 12, 'yy': 3, 're': -2, 'im': -3}, {'intensity': 15, 'linear_q': 9, 'linear_u': -4, 'circular_v': 6, 'swapped_q': -9, 'swapped_v': -6}), ({'xx': 4, 'yy': 0, 're': 2, 'im': 4}, {'intensity': 4, 'linear_q': 4, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -4, 'swapped_v': 8})]}
for i, (record, expected) in enumerate(fixtures[N]):
check('astronomical fixture %s' % i, solve(record), 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 |
|---|---|---|---|
| astronomical fixture 0 | {'circular_v': -8, 'intensity': 11, 'linear_q': 5, 'linear_u': 2, 'swapped_q': -5, 'swapped_v': 8} | {'circular_v': -8, 'intensity': 11, 'linear_q': 5, 'linear_u': 4, 'swapped_q': -5, 'swapped_v': 8} | Failed |
| astronomical fixture 1 | {'circular_v': -8, 'intensity': 6, 'linear_q': 0, 'linear_u': 2, 'swapped_q': 0, 'swapped_v': 8} | {'circular_v': -8, 'intensity': 6, 'linear_q': 0, 'linear_u': 4, 'swapped_q': 0, 'swapped_v': 8} | Failed |
| astronomical fixture 2 | {'circular_v': 0, 'intensity': 11, 'linear_q': 5, 'linear_u': 0, 'swapped_q': -5, 'swapped_v': 0} | {'circular_v': 0, 'intensity': 11, 'linear_q': 5, 'linear_u': 0, 'swapped_q': -5, 'swapped_v': 0} | Passed |
| astronomical fixture 3 | {'circular_v': -8, 'intensity': 13, 'linear_q': -11, 'linear_u': 2, 'swapped_q': 11, 'swapped_v': 8} | {'circular_v': -8, 'intensity': 13, 'linear_q': -11, 'linear_u': 4, 'swapped_q': 11, 'swapped_v': 8} | Failed |
| astronomical fixture 4 | {'circular_v': 6, 'intensity': 11, 'linear_q': 5, 'linear_u': -2, 'swapped_q': -5, 'swapped_v': -6} | {'circular_v': 6, 'intensity': 11, 'linear_q': 5, 'linear_u': -4, 'swapped_q': -5, 'swapped_v': -6} | Failed |
| astronomical fixture 5 | {'circular_v': -8, 'intensity': 0, 'linear_q': 0, 'linear_u': 2, 'swapped_q': 0, 'swapped_v': 8} | {'circular_v': -8, 'intensity': 0, 'linear_q': 0, 'linear_u': 4, 'swapped_q': 0, 'swapped_v': 8} | Failed |
SHA-256 / 1c87731f9c159767c99e2fd1ac30145cb7e33fe91249bc76d14e997f2dc5e5ec
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(d):
return {'intensity': d['xx']+d['yy'], 'linear_q': d['xx']-d['yy'], 'linear_u': 2*d['im'], 'circular_v': -2*d['im'], 'swapped_q': d['yy']-d['xx'], 'swapped_v': 2*d['im']}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = {1: [({'xx': 8, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 11, 'linear_q': 5, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -5, 'swapped_v': 8}), ({'xx': 3, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 6, 'linear_q': 0, 'linear_u': 4, 'circular_v': -8, 'swapped_q': 0, 'swapped_v': 8}), ({'xx': 8, 'yy': 3, 're': 0, 'im': 0}, {'intensity': 11, 'linear_q': 5, 'linear_u': 0, 'circular_v': 0, 'swapped_q': -5, 'swapped_v': 0}), ({'xx': 1, 'yy': 12, 're': 2, 'im': 4}, {'intensity': 13, 'linear_q': -11, 'linear_u': 4, 'circular_v': -8, 'swapped_q': 11, 'swapped_v': 8}), ({'xx': 8, 'yy': 3, 're': -2, 'im': -3}, {'intensity': 11, 'linear_q': 5, 'linear_u': -4, 'circular_v': 6, 'swapped_q': -5, 'swapped_v': -6}), ({'xx': 0, 'yy': 0, 're': 2, 'im': 4}, {'intensity': 0, 'linear_q': 0, 'linear_u': 4, 'circular_v': -8, 'swapped_q': 0, 'swapped_v': 8})], 2: [({'xx': 9, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 12, 'linear_q': 6, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -6, 'swapped_v': 8}), ({'xx': 4, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 7, 'linear_q': 1, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -1, 'swapped_v': 8}), ({'xx': 9, 'yy': 3, 're': 0, 'im': 0}, {'intensity': 12, 'linear_q': 6, 'linear_u': 0, 'circular_v': 0, 'swapped_q': -6, 'swapped_v': 0}), ({'xx': 2, 'yy': 12, 're': 2, 'im': 4}, {'intensity': 14, 'linear_q': -10, 'linear_u': 4, 'circular_v': -8, 'swapped_q': 10, 'swapped_v': 8}), ({'xx': 9, 'yy': 3, 're': -2, 'im': -3}, {'intensity': 12, 'linear_q': 6, 'linear_u': -4, 'circular_v': 6, 'swapped_q': -6, 'swapped_v': -6}), ({'xx': 1, 'yy': 0, 're': 2, 'im': 4}, {'intensity': 1, 'linear_q': 1, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -1, 'swapped_v': 8})], 3: [({'xx': 10, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 13, 'linear_q': 7, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -7, 'swapped_v': 8}), ({'xx': 5, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 8, 'linear_q': 2, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -2, 'swapped_v': 8}), ({'xx': 10, 'yy': 3, 're': 0, 'im': 0}, {'intensity': 13, 'linear_q': 7, 'linear_u': 0, 'circular_v': 0, 'swapped_q': -7, 'swapped_v': 0}), ({'xx': 3, 'yy': 12, 're': 2, 'im': 4}, {'intensity': 15, 'linear_q': -9, 'linear_u': 4, 'circular_v': -8, 'swapped_q': 9, 'swapped_v': 8}), ({'xx': 10, 'yy': 3, 're': -2, 'im': -3}, {'intensity': 13, 'linear_q': 7, 'linear_u': -4, 'circular_v': 6, 'swapped_q': -7, 'swapped_v': -6}), ({'xx': 2, 'yy': 0, 're': 2, 'im': 4}, {'intensity': 2, 'linear_q': 2, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -2, 'swapped_v': 8})], 4: [({'xx': 11, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 14, 'linear_q': 8, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -8, 'swapped_v': 8}), ({'xx': 6, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 9, 'linear_q': 3, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -3, 'swapped_v': 8}), ({'xx': 11, 'yy': 3, 're': 0, 'im': 0}, {'intensity': 14, 'linear_q': 8, 'linear_u': 0, 'circular_v': 0, 'swapped_q': -8, 'swapped_v': 0}), ({'xx': 4, 'yy': 12, 're': 2, 'im': 4}, {'intensity': 16, 'linear_q': -8, 'linear_u': 4, 'circular_v': -8, 'swapped_q': 8, 'swapped_v': 8}), ({'xx': 11, 'yy': 3, 're': -2, 'im': -3}, {'intensity': 14, 'linear_q': 8, 'linear_u': -4, 'circular_v': 6, 'swapped_q': -8, 'swapped_v': -6}), ({'xx': 3, 'yy': 0, 're': 2, 'im': 4}, {'intensity': 3, 'linear_q': 3, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -3, 'swapped_v': 8})], 5: [({'xx': 12, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 15, 'linear_q': 9, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -9, 'swapped_v': 8}), ({'xx': 7, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 10, 'linear_q': 4, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -4, 'swapped_v': 8}), ({'xx': 12, 'yy': 3, 're': 0, 'im': 0}, {'intensity': 15, 'linear_q': 9, 'linear_u': 0, 'circular_v': 0, 'swapped_q': -9, 'swapped_v': 0}), ({'xx': 5, 'yy': 12, 're': 2, 'im': 4}, {'intensity': 17, 'linear_q': -7, 'linear_u': 4, 'circular_v': -8, 'swapped_q': 7, 'swapped_v': 8}), ({'xx': 12, 'yy': 3, 're': -2, 'im': -3}, {'intensity': 15, 'linear_q': 9, 'linear_u': -4, 'circular_v': 6, 'swapped_q': -9, 'swapped_v': -6}), ({'xx': 4, 'yy': 0, 're': 2, 'im': 4}, {'intensity': 4, 'linear_q': 4, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -4, 'swapped_v': 8})]}
for i, (record, expected) in enumerate(fixtures[N]):
check('astronomical fixture %s' % i, solve(record), 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 |
|---|---|---|---|
| astronomical fixture 0 | {'circular_v': -8, 'intensity': 11, 'linear_q': 5, 'linear_u': 8, 'swapped_q': -5, 'swapped_v': 8} | {'circular_v': -8, 'intensity': 11, 'linear_q': 5, 'linear_u': 4, 'swapped_q': -5, 'swapped_v': 8} | Failed |
| astronomical fixture 1 | {'circular_v': -8, 'intensity': 6, 'linear_q': 0, 'linear_u': 8, 'swapped_q': 0, 'swapped_v': 8} | {'circular_v': -8, 'intensity': 6, 'linear_q': 0, 'linear_u': 4, 'swapped_q': 0, 'swapped_v': 8} | Failed |
| astronomical fixture 2 | {'circular_v': 0, 'intensity': 11, 'linear_q': 5, 'linear_u': 0, 'swapped_q': -5, 'swapped_v': 0} | {'circular_v': 0, 'intensity': 11, 'linear_q': 5, 'linear_u': 0, 'swapped_q': -5, 'swapped_v': 0} | Passed |
| astronomical fixture 3 | {'circular_v': -8, 'intensity': 13, 'linear_q': -11, 'linear_u': 8, 'swapped_q': 11, 'swapped_v': 8} | {'circular_v': -8, 'intensity': 13, 'linear_q': -11, 'linear_u': 4, 'swapped_q': 11, 'swapped_v': 8} | Failed |
| astronomical fixture 4 | {'circular_v': 6, 'intensity': 11, 'linear_q': 5, 'linear_u': -6, 'swapped_q': -5, 'swapped_v': -6} | {'circular_v': 6, 'intensity': 11, 'linear_q': 5, 'linear_u': -4, 'swapped_q': -5, 'swapped_v': -6} | Failed |
| astronomical fixture 5 | {'circular_v': -8, 'intensity': 0, 'linear_q': 0, 'linear_u': 8, 'swapped_q': 0, 'swapped_v': 8} | {'circular_v': -8, 'intensity': 0, 'linear_q': 0, 'linear_u': 4, 'swapped_q': 0, 'swapped_v': 8} | Failed |
SHA-256 / 53191567efbe9c7f2be986650c280dd540661d79e09aafabf6850ee57fed1f25
3 / The verified repair
Exit 0"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(d):
return {'intensity': d['xx']+d['yy'], 'linear_q': d['xx']-d['yy'], 'linear_u': 2*d['re'], 'circular_v': -2*d['im'], 'swapped_q': d['yy']-d['xx'], 'swapped_v': 2*d['im']}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = {1: [({'xx': 8, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 11, 'linear_q': 5, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -5, 'swapped_v': 8}), ({'xx': 3, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 6, 'linear_q': 0, 'linear_u': 4, 'circular_v': -8, 'swapped_q': 0, 'swapped_v': 8}), ({'xx': 8, 'yy': 3, 're': 0, 'im': 0}, {'intensity': 11, 'linear_q': 5, 'linear_u': 0, 'circular_v': 0, 'swapped_q': -5, 'swapped_v': 0}), ({'xx': 1, 'yy': 12, 're': 2, 'im': 4}, {'intensity': 13, 'linear_q': -11, 'linear_u': 4, 'circular_v': -8, 'swapped_q': 11, 'swapped_v': 8}), ({'xx': 8, 'yy': 3, 're': -2, 'im': -3}, {'intensity': 11, 'linear_q': 5, 'linear_u': -4, 'circular_v': 6, 'swapped_q': -5, 'swapped_v': -6}), ({'xx': 0, 'yy': 0, 're': 2, 'im': 4}, {'intensity': 0, 'linear_q': 0, 'linear_u': 4, 'circular_v': -8, 'swapped_q': 0, 'swapped_v': 8})], 2: [({'xx': 9, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 12, 'linear_q': 6, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -6, 'swapped_v': 8}), ({'xx': 4, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 7, 'linear_q': 1, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -1, 'swapped_v': 8}), ({'xx': 9, 'yy': 3, 're': 0, 'im': 0}, {'intensity': 12, 'linear_q': 6, 'linear_u': 0, 'circular_v': 0, 'swapped_q': -6, 'swapped_v': 0}), ({'xx': 2, 'yy': 12, 're': 2, 'im': 4}, {'intensity': 14, 'linear_q': -10, 'linear_u': 4, 'circular_v': -8, 'swapped_q': 10, 'swapped_v': 8}), ({'xx': 9, 'yy': 3, 're': -2, 'im': -3}, {'intensity': 12, 'linear_q': 6, 'linear_u': -4, 'circular_v': 6, 'swapped_q': -6, 'swapped_v': -6}), ({'xx': 1, 'yy': 0, 're': 2, 'im': 4}, {'intensity': 1, 'linear_q': 1, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -1, 'swapped_v': 8})], 3: [({'xx': 10, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 13, 'linear_q': 7, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -7, 'swapped_v': 8}), ({'xx': 5, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 8, 'linear_q': 2, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -2, 'swapped_v': 8}), ({'xx': 10, 'yy': 3, 're': 0, 'im': 0}, {'intensity': 13, 'linear_q': 7, 'linear_u': 0, 'circular_v': 0, 'swapped_q': -7, 'swapped_v': 0}), ({'xx': 3, 'yy': 12, 're': 2, 'im': 4}, {'intensity': 15, 'linear_q': -9, 'linear_u': 4, 'circular_v': -8, 'swapped_q': 9, 'swapped_v': 8}), ({'xx': 10, 'yy': 3, 're': -2, 'im': -3}, {'intensity': 13, 'linear_q': 7, 'linear_u': -4, 'circular_v': 6, 'swapped_q': -7, 'swapped_v': -6}), ({'xx': 2, 'yy': 0, 're': 2, 'im': 4}, {'intensity': 2, 'linear_q': 2, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -2, 'swapped_v': 8})], 4: [({'xx': 11, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 14, 'linear_q': 8, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -8, 'swapped_v': 8}), ({'xx': 6, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 9, 'linear_q': 3, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -3, 'swapped_v': 8}), ({'xx': 11, 'yy': 3, 're': 0, 'im': 0}, {'intensity': 14, 'linear_q': 8, 'linear_u': 0, 'circular_v': 0, 'swapped_q': -8, 'swapped_v': 0}), ({'xx': 4, 'yy': 12, 're': 2, 'im': 4}, {'intensity': 16, 'linear_q': -8, 'linear_u': 4, 'circular_v': -8, 'swapped_q': 8, 'swapped_v': 8}), ({'xx': 11, 'yy': 3, 're': -2, 'im': -3}, {'intensity': 14, 'linear_q': 8, 'linear_u': -4, 'circular_v': 6, 'swapped_q': -8, 'swapped_v': -6}), ({'xx': 3, 'yy': 0, 're': 2, 'im': 4}, {'intensity': 3, 'linear_q': 3, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -3, 'swapped_v': 8})], 5: [({'xx': 12, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 15, 'linear_q': 9, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -9, 'swapped_v': 8}), ({'xx': 7, 'yy': 3, 're': 2, 'im': 4}, {'intensity': 10, 'linear_q': 4, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -4, 'swapped_v': 8}), ({'xx': 12, 'yy': 3, 're': 0, 'im': 0}, {'intensity': 15, 'linear_q': 9, 'linear_u': 0, 'circular_v': 0, 'swapped_q': -9, 'swapped_v': 0}), ({'xx': 5, 'yy': 12, 're': 2, 'im': 4}, {'intensity': 17, 'linear_q': -7, 'linear_u': 4, 'circular_v': -8, 'swapped_q': 7, 'swapped_v': 8}), ({'xx': 12, 'yy': 3, 're': -2, 'im': -3}, {'intensity': 15, 'linear_q': 9, 'linear_u': -4, 'circular_v': 6, 'swapped_q': -9, 'swapped_v': -6}), ({'xx': 4, 'yy': 0, 're': 2, 'im': 4}, {'intensity': 4, 'linear_q': 4, 'linear_u': 4, 'circular_v': -8, 'swapped_q': -4, 'swapped_v': 8})]}
for i, (record, expected) in enumerate(fixtures[N]):
check('astronomical fixture %s' % i, solve(record), 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 |
|---|---|---|---|
| astronomical fixture 0 | {'circular_v': -8, 'intensity': 11, 'linear_q': 5, 'linear_u': 4, 'swapped_q': -5, 'swapped_v': 8} | {'circular_v': -8, 'intensity': 11, 'linear_q': 5, 'linear_u': 4, 'swapped_q': -5, 'swapped_v': 8} | Passed |
| astronomical fixture 1 | {'circular_v': -8, 'intensity': 6, 'linear_q': 0, 'linear_u': 4, 'swapped_q': 0, 'swapped_v': 8} | {'circular_v': -8, 'intensity': 6, 'linear_q': 0, 'linear_u': 4, 'swapped_q': 0, 'swapped_v': 8} | Passed |
| astronomical fixture 2 | {'circular_v': 0, 'intensity': 11, 'linear_q': 5, 'linear_u': 0, 'swapped_q': -5, 'swapped_v': 0} | {'circular_v': 0, 'intensity': 11, 'linear_q': 5, 'linear_u': 0, 'swapped_q': -5, 'swapped_v': 0} | Passed |
| astronomical fixture 3 | {'circular_v': -8, 'intensity': 13, 'linear_q': -11, 'linear_u': 4, 'swapped_q': 11, 'swapped_v': 8} | {'circular_v': -8, 'intensity': 13, 'linear_q': -11, 'linear_u': 4, 'swapped_q': 11, 'swapped_v': 8} | Passed |
| astronomical fixture 4 | {'circular_v': 6, 'intensity': 11, 'linear_q': 5, 'linear_u': -4, 'swapped_q': -5, 'swapped_v': -6} | {'circular_v': 6, 'intensity': 11, 'linear_q': 5, 'linear_u': -4, 'swapped_q': -5, 'swapped_v': -6} | Passed |
| astronomical fixture 5 | {'circular_v': -8, 'intensity': 0, 'linear_q': 0, 'linear_u': 4, 'swapped_q': 0, 'swapped_v': 8} | {'circular_v': -8, 'intensity': 0, 'linear_q': 0, 'linear_u': 4, 'swapped_q': 0, 'swapped_v': 8} | Passed |
SHA-256 / 7389f6c9d6b147854338472232bfc9ade339399fc91c1ef50dd753147f632619
Verification & scope
Explicitly stipulated finite algebraic adapter; no standards conformance, physical accuracy, or production-library claim. Inputs are the documented finite valid model domain. 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:54.511057+00:00.
Case digest / 8763f18aad921550561e6e440da2d6ffbca80e68d78b6b0f3423e2063ea32868