FA-55296 / Astronomical coordinate conventions / Open access
Astrometric parallax calibration: Parallax zero-point color term uses absolute rather than reference color · case 01
The adapter reports an incorrect zero point while other fields remain valid.
ROOT CAUSE
Parallax zero-point color term uses absolute rather than reference color. Faulty expression: d['z']+d['k']*d['color']
VERIFIED REPAIR
Preserve the declared model convention at this site: d['z']+d['k']*(d['color']-d['ref'])
Unsuccessful approach: A partial convention repair still uses d['z']-d['k']*(d['color']-d['ref'])
Case contract
Stipulated calibration: catalog parallax pi contains additive global zero point z and color slope k*(color-ref). Corrected parallax subtracts both; calibration variances vz and vk are independent. Unknown distances are outside this model. Negative corrected parallaxes remain measurements. Output fields are defined by: corrected_parallax = d['pi']-d['z']-d['k']*(d['color']-d['ref']); zero_point = d['z']+d['k']*(d['color']-d['ref']); calibrated_variance = d['var']+d['vz']+(d['color']-d['ref'])**2*d['vk']; color_sensitivity = -d['k']; zero_point_variance = d['vz']+(d['color']-d['ref'])**2*d['vk']; uncalibrated_roundtrip = d['pi']
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 {'corrected_parallax': d['pi']-d['z']-d['k']*(d['color']-d['ref']), 'zero_point': d['z']+d['k']*d['color'], 'calibrated_variance': d['var']+d['vz']+(d['color']-d['ref'])**2*d['vk'], 'color_sensitivity': -d['k'], 'zero_point_variance': d['vz']+(d['color']-d['ref'])**2*d['vk'], 'uncalibrated_roundtrip': d['pi']}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = {1: [({'pi': 8, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 0, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 8}), ({'pi': 8, 'z': 2, 'k': 3, 'color': 2, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 6, 'zero_point': 2, 'calibrated_variance': 7, 'color_sensitivity': -3, 'zero_point_variance': 2, 'uncalibrated_roundtrip': 8}), ({'pi': 8, 'z': 0, 'k': 0, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 8, 'zero_point': 0, 'calibrated_variance': 11, 'color_sensitivity': 0, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 8}), ({'pi': -9, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': -17, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': -9}), ({'pi': 8, 'z': -2, 'k': 3, 'color': 1, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 13, 'zero_point': -5, 'calibrated_variance': 8, 'color_sensitivity': -3, 'zero_point_variance': 3, 'uncalibrated_roundtrip': 8}), ({'pi': 8, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 0, 'vk': 0}, {'corrected_parallax': 0, 'zero_point': 8, 'calibrated_variance': 5, 'color_sensitivity': -3, 'zero_point_variance': 0, 'uncalibrated_roundtrip': 8})], 2: [({'pi': 9, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 1, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 9}), ({'pi': 9, 'z': 2, 'k': 3, 'color': 2, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 7, 'zero_point': 2, 'calibrated_variance': 7, 'color_sensitivity': -3, 'zero_point_variance': 2, 'uncalibrated_roundtrip': 9}), ({'pi': 9, 'z': 0, 'k': 0, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 9, 'zero_point': 0, 'calibrated_variance': 11, 'color_sensitivity': 0, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 9}), ({'pi': -8, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': -16, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': -8}), ({'pi': 9, 'z': -2, 'k': 3, 'color': 1, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 14, 'zero_point': -5, 'calibrated_variance': 8, 'color_sensitivity': -3, 'zero_point_variance': 3, 'uncalibrated_roundtrip': 9}), ({'pi': 9, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 0, 'vk': 0}, {'corrected_parallax': 1, 'zero_point': 8, 'calibrated_variance': 5, 'color_sensitivity': -3, 'zero_point_variance': 0, 'uncalibrated_roundtrip': 9})], 3: [({'pi': 10, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 2, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 10}), ({'pi': 10, 'z': 2, 'k': 3, 'color': 2, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 8, 'zero_point': 2, 'calibrated_variance': 7, 'color_sensitivity': -3, 'zero_point_variance': 2, 'uncalibrated_roundtrip': 10}), ({'pi': 10, 'z': 0, 'k': 0, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 10, 'zero_point': 0, 'calibrated_variance': 11, 'color_sensitivity': 0, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 10}), ({'pi': -7, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': -15, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': -7}), ({'pi': 10, 'z': -2, 'k': 3, 'color': 1, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 15, 'zero_point': -5, 'calibrated_variance': 8, 'color_sensitivity': -3, 'zero_point_variance': 3, 'uncalibrated_roundtrip': 10}), ({'pi': 10, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 0, 'vk': 0}, {'corrected_parallax': 2, 'zero_point': 8, 'calibrated_variance': 5, 'color_sensitivity': -3, 'zero_point_variance': 0, 'uncalibrated_roundtrip': 10})], 4: [({'pi': 11, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 3, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 11}), ({'pi': 11, 'z': 2, 'k': 3, 'color': 2, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 9, 'zero_point': 2, 'calibrated_variance': 7, 'color_sensitivity': -3, 'zero_point_variance': 2, 'uncalibrated_roundtrip': 11}), ({'pi': 11, 'z': 0, 'k': 0, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 11, 'zero_point': 0, 'calibrated_variance': 11, 'color_sensitivity': 0, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 11}), ({'pi': -6, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': -14, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': -6}), ({'pi': 11, 'z': -2, 'k': 3, 'color': 1, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 16, 'zero_point': -5, 'calibrated_variance': 8, 'color_sensitivity': -3, 'zero_point_variance': 3, 'uncalibrated_roundtrip': 11}), ({'pi': 11, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 0, 'vk': 0}, {'corrected_parallax': 3, 'zero_point': 8, 'calibrated_variance': 5, 'color_sensitivity': -3, 'zero_point_variance': 0, 'uncalibrated_roundtrip': 11})], 5: [({'pi': 12, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 4, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 12}), ({'pi': 12, 'z': 2, 'k': 3, 'color': 2, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 10, 'zero_point': 2, 'calibrated_variance': 7, 'color_sensitivity': -3, 'zero_point_variance': 2, 'uncalibrated_roundtrip': 12}), ({'pi': 12, 'z': 0, 'k': 0, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 12, 'zero_point': 0, 'calibrated_variance': 11, 'color_sensitivity': 0, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 12}), ({'pi': -5, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': -13, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': -5}), ({'pi': 12, 'z': -2, 'k': 3, 'color': 1, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 17, 'zero_point': -5, 'calibrated_variance': 8, 'color_sensitivity': -3, 'zero_point_variance': 3, 'uncalibrated_roundtrip': 12}), ({'pi': 12, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 0, 'vk': 0}, {'corrected_parallax': 4, 'zero_point': 8, 'calibrated_variance': 5, 'color_sensitivity': -3, 'zero_point_variance': 0, 'uncalibrated_roundtrip': 12})]}
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 | {'calibrated_variance': 11, 'color_sensitivity': -3, 'corrected_parallax': 0, 'uncalibrated_roundtrip': 8, 'zero_point': 14, 'zero_point_variance': 6} | {'calibrated_variance': 11, 'color_sensitivity': -3, 'corrected_parallax': 0, 'uncalibrated_roundtrip': 8, 'zero_point': 8, 'zero_point_variance': 6} | Failed |
| astronomical fixture 1 | {'calibrated_variance': 7, 'color_sensitivity': -3, 'corrected_parallax': 6, 'uncalibrated_roundtrip': 8, 'zero_point': 8, 'zero_point_variance': 2} | {'calibrated_variance': 7, 'color_sensitivity': -3, 'corrected_parallax': 6, 'uncalibrated_roundtrip': 8, 'zero_point': 2, 'zero_point_variance': 2} | Failed |
| astronomical fixture 2 | {'calibrated_variance': 11, 'color_sensitivity': 0, 'corrected_parallax': 8, 'uncalibrated_roundtrip': 8, 'zero_point': 0, 'zero_point_variance': 6} | {'calibrated_variance': 11, 'color_sensitivity': 0, 'corrected_parallax': 8, 'uncalibrated_roundtrip': 8, 'zero_point': 0, 'zero_point_variance': 6} | Passed |
| astronomical fixture 3 | {'calibrated_variance': 11, 'color_sensitivity': -3, 'corrected_parallax': -17, 'uncalibrated_roundtrip': -9, 'zero_point': 14, 'zero_point_variance': 6} | {'calibrated_variance': 11, 'color_sensitivity': -3, 'corrected_parallax': -17, 'uncalibrated_roundtrip': -9, 'zero_point': 8, 'zero_point_variance': 6} | Failed |
| astronomical fixture 4 | {'calibrated_variance': 8, 'color_sensitivity': -3, 'corrected_parallax': 13, 'uncalibrated_roundtrip': 8, 'zero_point': 1, 'zero_point_variance': 3} | {'calibrated_variance': 8, 'color_sensitivity': -3, 'corrected_parallax': 13, 'uncalibrated_roundtrip': 8, 'zero_point': -5, 'zero_point_variance': 3} | Failed |
| astronomical fixture 5 | {'calibrated_variance': 5, 'color_sensitivity': -3, 'corrected_parallax': 0, 'uncalibrated_roundtrip': 8, 'zero_point': 14, 'zero_point_variance': 0} | {'calibrated_variance': 5, 'color_sensitivity': -3, 'corrected_parallax': 0, 'uncalibrated_roundtrip': 8, 'zero_point': 8, 'zero_point_variance': 0} | Failed |
SHA-256 / 83901422d364a3941d08841f20dcb8857c0d9c2a2590b3f3df07aebc4e60546e
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(d):
return {'corrected_parallax': d['pi']-d['z']-d['k']*(d['color']-d['ref']), 'zero_point': d['z']-d['k']*(d['color']-d['ref']), 'calibrated_variance': d['var']+d['vz']+(d['color']-d['ref'])**2*d['vk'], 'color_sensitivity': -d['k'], 'zero_point_variance': d['vz']+(d['color']-d['ref'])**2*d['vk'], 'uncalibrated_roundtrip': d['pi']}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = {1: [({'pi': 8, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 0, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 8}), ({'pi': 8, 'z': 2, 'k': 3, 'color': 2, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 6, 'zero_point': 2, 'calibrated_variance': 7, 'color_sensitivity': -3, 'zero_point_variance': 2, 'uncalibrated_roundtrip': 8}), ({'pi': 8, 'z': 0, 'k': 0, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 8, 'zero_point': 0, 'calibrated_variance': 11, 'color_sensitivity': 0, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 8}), ({'pi': -9, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': -17, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': -9}), ({'pi': 8, 'z': -2, 'k': 3, 'color': 1, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 13, 'zero_point': -5, 'calibrated_variance': 8, 'color_sensitivity': -3, 'zero_point_variance': 3, 'uncalibrated_roundtrip': 8}), ({'pi': 8, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 0, 'vk': 0}, {'corrected_parallax': 0, 'zero_point': 8, 'calibrated_variance': 5, 'color_sensitivity': -3, 'zero_point_variance': 0, 'uncalibrated_roundtrip': 8})], 2: [({'pi': 9, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 1, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 9}), ({'pi': 9, 'z': 2, 'k': 3, 'color': 2, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 7, 'zero_point': 2, 'calibrated_variance': 7, 'color_sensitivity': -3, 'zero_point_variance': 2, 'uncalibrated_roundtrip': 9}), ({'pi': 9, 'z': 0, 'k': 0, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 9, 'zero_point': 0, 'calibrated_variance': 11, 'color_sensitivity': 0, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 9}), ({'pi': -8, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': -16, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': -8}), ({'pi': 9, 'z': -2, 'k': 3, 'color': 1, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 14, 'zero_point': -5, 'calibrated_variance': 8, 'color_sensitivity': -3, 'zero_point_variance': 3, 'uncalibrated_roundtrip': 9}), ({'pi': 9, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 0, 'vk': 0}, {'corrected_parallax': 1, 'zero_point': 8, 'calibrated_variance': 5, 'color_sensitivity': -3, 'zero_point_variance': 0, 'uncalibrated_roundtrip': 9})], 3: [({'pi': 10, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 2, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 10}), ({'pi': 10, 'z': 2, 'k': 3, 'color': 2, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 8, 'zero_point': 2, 'calibrated_variance': 7, 'color_sensitivity': -3, 'zero_point_variance': 2, 'uncalibrated_roundtrip': 10}), ({'pi': 10, 'z': 0, 'k': 0, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 10, 'zero_point': 0, 'calibrated_variance': 11, 'color_sensitivity': 0, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 10}), ({'pi': -7, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': -15, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': -7}), ({'pi': 10, 'z': -2, 'k': 3, 'color': 1, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 15, 'zero_point': -5, 'calibrated_variance': 8, 'color_sensitivity': -3, 'zero_point_variance': 3, 'uncalibrated_roundtrip': 10}), ({'pi': 10, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 0, 'vk': 0}, {'corrected_parallax': 2, 'zero_point': 8, 'calibrated_variance': 5, 'color_sensitivity': -3, 'zero_point_variance': 0, 'uncalibrated_roundtrip': 10})], 4: [({'pi': 11, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 3, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 11}), ({'pi': 11, 'z': 2, 'k': 3, 'color': 2, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 9, 'zero_point': 2, 'calibrated_variance': 7, 'color_sensitivity': -3, 'zero_point_variance': 2, 'uncalibrated_roundtrip': 11}), ({'pi': 11, 'z': 0, 'k': 0, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 11, 'zero_point': 0, 'calibrated_variance': 11, 'color_sensitivity': 0, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 11}), ({'pi': -6, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': -14, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': -6}), ({'pi': 11, 'z': -2, 'k': 3, 'color': 1, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 16, 'zero_point': -5, 'calibrated_variance': 8, 'color_sensitivity': -3, 'zero_point_variance': 3, 'uncalibrated_roundtrip': 11}), ({'pi': 11, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 0, 'vk': 0}, {'corrected_parallax': 3, 'zero_point': 8, 'calibrated_variance': 5, 'color_sensitivity': -3, 'zero_point_variance': 0, 'uncalibrated_roundtrip': 11})], 5: [({'pi': 12, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 4, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 12}), ({'pi': 12, 'z': 2, 'k': 3, 'color': 2, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 10, 'zero_point': 2, 'calibrated_variance': 7, 'color_sensitivity': -3, 'zero_point_variance': 2, 'uncalibrated_roundtrip': 12}), ({'pi': 12, 'z': 0, 'k': 0, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 12, 'zero_point': 0, 'calibrated_variance': 11, 'color_sensitivity': 0, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 12}), ({'pi': -5, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': -13, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': -5}), ({'pi': 12, 'z': -2, 'k': 3, 'color': 1, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 17, 'zero_point': -5, 'calibrated_variance': 8, 'color_sensitivity': -3, 'zero_point_variance': 3, 'uncalibrated_roundtrip': 12}), ({'pi': 12, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 0, 'vk': 0}, {'corrected_parallax': 4, 'zero_point': 8, 'calibrated_variance': 5, 'color_sensitivity': -3, 'zero_point_variance': 0, 'uncalibrated_roundtrip': 12})]}
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 | {'calibrated_variance': 11, 'color_sensitivity': -3, 'corrected_parallax': 0, 'uncalibrated_roundtrip': 8, 'zero_point': -4, 'zero_point_variance': 6} | {'calibrated_variance': 11, 'color_sensitivity': -3, 'corrected_parallax': 0, 'uncalibrated_roundtrip': 8, 'zero_point': 8, 'zero_point_variance': 6} | Failed |
| astronomical fixture 1 | {'calibrated_variance': 7, 'color_sensitivity': -3, 'corrected_parallax': 6, 'uncalibrated_roundtrip': 8, 'zero_point': 2, 'zero_point_variance': 2} | {'calibrated_variance': 7, 'color_sensitivity': -3, 'corrected_parallax': 6, 'uncalibrated_roundtrip': 8, 'zero_point': 2, 'zero_point_variance': 2} | Passed |
| astronomical fixture 2 | {'calibrated_variance': 11, 'color_sensitivity': 0, 'corrected_parallax': 8, 'uncalibrated_roundtrip': 8, 'zero_point': 0, 'zero_point_variance': 6} | {'calibrated_variance': 11, 'color_sensitivity': 0, 'corrected_parallax': 8, 'uncalibrated_roundtrip': 8, 'zero_point': 0, 'zero_point_variance': 6} | Passed |
| astronomical fixture 3 | {'calibrated_variance': 11, 'color_sensitivity': -3, 'corrected_parallax': -17, 'uncalibrated_roundtrip': -9, 'zero_point': -4, 'zero_point_variance': 6} | {'calibrated_variance': 11, 'color_sensitivity': -3, 'corrected_parallax': -17, 'uncalibrated_roundtrip': -9, 'zero_point': 8, 'zero_point_variance': 6} | Failed |
| astronomical fixture 4 | {'calibrated_variance': 8, 'color_sensitivity': -3, 'corrected_parallax': 13, 'uncalibrated_roundtrip': 8, 'zero_point': 1, 'zero_point_variance': 3} | {'calibrated_variance': 8, 'color_sensitivity': -3, 'corrected_parallax': 13, 'uncalibrated_roundtrip': 8, 'zero_point': -5, 'zero_point_variance': 3} | Failed |
| astronomical fixture 5 | {'calibrated_variance': 5, 'color_sensitivity': -3, 'corrected_parallax': 0, 'uncalibrated_roundtrip': 8, 'zero_point': -4, 'zero_point_variance': 0} | {'calibrated_variance': 5, 'color_sensitivity': -3, 'corrected_parallax': 0, 'uncalibrated_roundtrip': 8, 'zero_point': 8, 'zero_point_variance': 0} | Failed |
SHA-256 / f69b4b703e7e521c2ce186bb3c4519d3ee257ad8d4f1d2b54a9c3ca0f553cc24
3 / The verified repair
Exit 0"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(d):
return {'corrected_parallax': d['pi']-d['z']-d['k']*(d['color']-d['ref']), 'zero_point': d['z']+d['k']*(d['color']-d['ref']), 'calibrated_variance': d['var']+d['vz']+(d['color']-d['ref'])**2*d['vk'], 'color_sensitivity': -d['k'], 'zero_point_variance': d['vz']+(d['color']-d['ref'])**2*d['vk'], 'uncalibrated_roundtrip': d['pi']}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = {1: [({'pi': 8, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 0, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 8}), ({'pi': 8, 'z': 2, 'k': 3, 'color': 2, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 6, 'zero_point': 2, 'calibrated_variance': 7, 'color_sensitivity': -3, 'zero_point_variance': 2, 'uncalibrated_roundtrip': 8}), ({'pi': 8, 'z': 0, 'k': 0, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 8, 'zero_point': 0, 'calibrated_variance': 11, 'color_sensitivity': 0, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 8}), ({'pi': -9, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': -17, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': -9}), ({'pi': 8, 'z': -2, 'k': 3, 'color': 1, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 13, 'zero_point': -5, 'calibrated_variance': 8, 'color_sensitivity': -3, 'zero_point_variance': 3, 'uncalibrated_roundtrip': 8}), ({'pi': 8, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 0, 'vk': 0}, {'corrected_parallax': 0, 'zero_point': 8, 'calibrated_variance': 5, 'color_sensitivity': -3, 'zero_point_variance': 0, 'uncalibrated_roundtrip': 8})], 2: [({'pi': 9, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 1, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 9}), ({'pi': 9, 'z': 2, 'k': 3, 'color': 2, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 7, 'zero_point': 2, 'calibrated_variance': 7, 'color_sensitivity': -3, 'zero_point_variance': 2, 'uncalibrated_roundtrip': 9}), ({'pi': 9, 'z': 0, 'k': 0, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 9, 'zero_point': 0, 'calibrated_variance': 11, 'color_sensitivity': 0, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 9}), ({'pi': -8, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': -16, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': -8}), ({'pi': 9, 'z': -2, 'k': 3, 'color': 1, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 14, 'zero_point': -5, 'calibrated_variance': 8, 'color_sensitivity': -3, 'zero_point_variance': 3, 'uncalibrated_roundtrip': 9}), ({'pi': 9, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 0, 'vk': 0}, {'corrected_parallax': 1, 'zero_point': 8, 'calibrated_variance': 5, 'color_sensitivity': -3, 'zero_point_variance': 0, 'uncalibrated_roundtrip': 9})], 3: [({'pi': 10, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 2, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 10}), ({'pi': 10, 'z': 2, 'k': 3, 'color': 2, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 8, 'zero_point': 2, 'calibrated_variance': 7, 'color_sensitivity': -3, 'zero_point_variance': 2, 'uncalibrated_roundtrip': 10}), ({'pi': 10, 'z': 0, 'k': 0, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 10, 'zero_point': 0, 'calibrated_variance': 11, 'color_sensitivity': 0, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 10}), ({'pi': -7, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': -15, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': -7}), ({'pi': 10, 'z': -2, 'k': 3, 'color': 1, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 15, 'zero_point': -5, 'calibrated_variance': 8, 'color_sensitivity': -3, 'zero_point_variance': 3, 'uncalibrated_roundtrip': 10}), ({'pi': 10, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 0, 'vk': 0}, {'corrected_parallax': 2, 'zero_point': 8, 'calibrated_variance': 5, 'color_sensitivity': -3, 'zero_point_variance': 0, 'uncalibrated_roundtrip': 10})], 4: [({'pi': 11, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 3, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 11}), ({'pi': 11, 'z': 2, 'k': 3, 'color': 2, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 9, 'zero_point': 2, 'calibrated_variance': 7, 'color_sensitivity': -3, 'zero_point_variance': 2, 'uncalibrated_roundtrip': 11}), ({'pi': 11, 'z': 0, 'k': 0, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 11, 'zero_point': 0, 'calibrated_variance': 11, 'color_sensitivity': 0, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 11}), ({'pi': -6, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': -14, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': -6}), ({'pi': 11, 'z': -2, 'k': 3, 'color': 1, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 16, 'zero_point': -5, 'calibrated_variance': 8, 'color_sensitivity': -3, 'zero_point_variance': 3, 'uncalibrated_roundtrip': 11}), ({'pi': 11, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 0, 'vk': 0}, {'corrected_parallax': 3, 'zero_point': 8, 'calibrated_variance': 5, 'color_sensitivity': -3, 'zero_point_variance': 0, 'uncalibrated_roundtrip': 11})], 5: [({'pi': 12, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 4, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 12}), ({'pi': 12, 'z': 2, 'k': 3, 'color': 2, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 10, 'zero_point': 2, 'calibrated_variance': 7, 'color_sensitivity': -3, 'zero_point_variance': 2, 'uncalibrated_roundtrip': 12}), ({'pi': 12, 'z': 0, 'k': 0, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 12, 'zero_point': 0, 'calibrated_variance': 11, 'color_sensitivity': 0, 'zero_point_variance': 6, 'uncalibrated_roundtrip': 12}), ({'pi': -5, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': -13, 'zero_point': 8, 'calibrated_variance': 11, 'color_sensitivity': -3, 'zero_point_variance': 6, 'uncalibrated_roundtrip': -5}), ({'pi': 12, 'z': -2, 'k': 3, 'color': 1, 'ref': 2, 'var': 5, 'vz': 2, 'vk': 1}, {'corrected_parallax': 17, 'zero_point': -5, 'calibrated_variance': 8, 'color_sensitivity': -3, 'zero_point_variance': 3, 'uncalibrated_roundtrip': 12}), ({'pi': 12, 'z': 2, 'k': 3, 'color': 4, 'ref': 2, 'var': 5, 'vz': 0, 'vk': 0}, {'corrected_parallax': 4, 'zero_point': 8, 'calibrated_variance': 5, 'color_sensitivity': -3, 'zero_point_variance': 0, 'uncalibrated_roundtrip': 12})]}
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 | {'calibrated_variance': 11, 'color_sensitivity': -3, 'corrected_parallax': 0, 'uncalibrated_roundtrip': 8, 'zero_point': 8, 'zero_point_variance': 6} | {'calibrated_variance': 11, 'color_sensitivity': -3, 'corrected_parallax': 0, 'uncalibrated_roundtrip': 8, 'zero_point': 8, 'zero_point_variance': 6} | Passed |
| astronomical fixture 1 | {'calibrated_variance': 7, 'color_sensitivity': -3, 'corrected_parallax': 6, 'uncalibrated_roundtrip': 8, 'zero_point': 2, 'zero_point_variance': 2} | {'calibrated_variance': 7, 'color_sensitivity': -3, 'corrected_parallax': 6, 'uncalibrated_roundtrip': 8, 'zero_point': 2, 'zero_point_variance': 2} | Passed |
| astronomical fixture 2 | {'calibrated_variance': 11, 'color_sensitivity': 0, 'corrected_parallax': 8, 'uncalibrated_roundtrip': 8, 'zero_point': 0, 'zero_point_variance': 6} | {'calibrated_variance': 11, 'color_sensitivity': 0, 'corrected_parallax': 8, 'uncalibrated_roundtrip': 8, 'zero_point': 0, 'zero_point_variance': 6} | Passed |
| astronomical fixture 3 | {'calibrated_variance': 11, 'color_sensitivity': -3, 'corrected_parallax': -17, 'uncalibrated_roundtrip': -9, 'zero_point': 8, 'zero_point_variance': 6} | {'calibrated_variance': 11, 'color_sensitivity': -3, 'corrected_parallax': -17, 'uncalibrated_roundtrip': -9, 'zero_point': 8, 'zero_point_variance': 6} | Passed |
| astronomical fixture 4 | {'calibrated_variance': 8, 'color_sensitivity': -3, 'corrected_parallax': 13, 'uncalibrated_roundtrip': 8, 'zero_point': -5, 'zero_point_variance': 3} | {'calibrated_variance': 8, 'color_sensitivity': -3, 'corrected_parallax': 13, 'uncalibrated_roundtrip': 8, 'zero_point': -5, 'zero_point_variance': 3} | Passed |
| astronomical fixture 5 | {'calibrated_variance': 5, 'color_sensitivity': -3, 'corrected_parallax': 0, 'uncalibrated_roundtrip': 8, 'zero_point': 8, 'zero_point_variance': 0} | {'calibrated_variance': 5, 'color_sensitivity': -3, 'corrected_parallax': 0, 'uncalibrated_roundtrip': 8, 'zero_point': 8, 'zero_point_variance': 0} | Passed |
SHA-256 / ea359a3abb25091310faf5bcf4af99852b17ae9c9bfd3db49ed4ccffc8e04db3
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:56.561686+00:00.
Case digest / e56f15beb5d1a9eb19746c2ada003ea66c803ccdc7f5ea32ef1b1d8472610ea5