FA-55121 / Astronomical coordinate conventions / Open access
Interferometer baseline reversal: Complex baseline conjugation is mistaken for negation · case 01
The adapter reports an incorrect visibility while other fields remain valid.
ROOT CAUSE
Complex baseline conjugation is mistaken for negation. Faulty expression: [-d['re'],-d['im']]
VERIFIED REPAIR
Preserve the declared model convention at this site: [d['re'],-d['im']]
Unsuccessful approach: A partial convention repair still uses [d['re'],d['im']]
Case contract
A visibility row reversed from antenna a,b to b,a must negate its uvw vector, conjugate complex visibility, transpose cross-hand labels, negate geometric delay, and exchange antenna-based phases. The real-valued weight is attached to a sample, not to antenna order. Output fields are defined by: antennas = [d['b'],d['a']]; uvw = [-x for x in d['uvw']]; visibility = [d['re'],-d['im']]; polarization = d['pol'][::-1]; geometric_delay = -d['delay']; phase_difference = d['pa']-d['pb']
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 {'antennas': [d['b'],d['a']], 'uvw': [-x for x in d['uvw']], 'visibility': [-d['re'],-d['im']], 'polarization': d['pol'][::-1], 'geometric_delay': -d['delay'], 'phase_difference': d['pa']-d['pb']}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = {1: [({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 7, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [7, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [0, 0, 0], 're': 7, 'im': 0, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [0, 0, 0], 'visibility': [7, 0], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 7, 'im': 3, 'pol': 'YX', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [7, -3], 'polarization': 'XY', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 7, 'im': 3, 'pol': 'XX', 'delay': 8, 'pa': 0, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [7, -3], 'polarization': 'XX', 'geometric_delay': -8, 'phase_difference': -9}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 7, 'im': 3, 'pol': 'YY', 'delay': -4, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [7, -3], 'polarization': 'YY', 'geometric_delay': 4, 'phase_difference': -7}), ({'a': 8, 'b': 1, 'uvw': [2, -3, 4], 're': 7, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 0}, {'antennas': [1, 8], 'uvw': [-2, 3, -4], 'visibility': [7, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7})], 2: [({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 8, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [8, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [0, 0, 0], 're': 8, 'im': 0, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [0, 0, 0], 'visibility': [8, 0], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 8, 'im': 3, 'pol': 'YX', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [8, -3], 'polarization': 'XY', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 8, 'im': 3, 'pol': 'XX', 'delay': 8, 'pa': 0, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [8, -3], 'polarization': 'XX', 'geometric_delay': -8, 'phase_difference': -9}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 8, 'im': 3, 'pol': 'YY', 'delay': -4, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [8, -3], 'polarization': 'YY', 'geometric_delay': 4, 'phase_difference': -7}), ({'a': 8, 'b': 1, 'uvw': [2, -3, 4], 're': 8, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 0}, {'antennas': [1, 8], 'uvw': [-2, 3, -4], 'visibility': [8, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7})], 3: [({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 9, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [9, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [0, 0, 0], 're': 9, 'im': 0, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [0, 0, 0], 'visibility': [9, 0], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 9, 'im': 3, 'pol': 'YX', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [9, -3], 'polarization': 'XY', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 9, 'im': 3, 'pol': 'XX', 'delay': 8, 'pa': 0, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [9, -3], 'polarization': 'XX', 'geometric_delay': -8, 'phase_difference': -9}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 9, 'im': 3, 'pol': 'YY', 'delay': -4, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [9, -3], 'polarization': 'YY', 'geometric_delay': 4, 'phase_difference': -7}), ({'a': 8, 'b': 1, 'uvw': [2, -3, 4], 're': 9, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 0}, {'antennas': [1, 8], 'uvw': [-2, 3, -4], 'visibility': [9, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7})], 4: [({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 10, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [10, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [0, 0, 0], 're': 10, 'im': 0, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [0, 0, 0], 'visibility': [10, 0], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 10, 'im': 3, 'pol': 'YX', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [10, -3], 'polarization': 'XY', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 10, 'im': 3, 'pol': 'XX', 'delay': 8, 'pa': 0, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [10, -3], 'polarization': 'XX', 'geometric_delay': -8, 'phase_difference': -9}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 10, 'im': 3, 'pol': 'YY', 'delay': -4, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [10, -3], 'polarization': 'YY', 'geometric_delay': 4, 'phase_difference': -7}), ({'a': 8, 'b': 1, 'uvw': [2, -3, 4], 're': 10, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 0}, {'antennas': [1, 8], 'uvw': [-2, 3, -4], 'visibility': [10, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7})], 5: [({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 11, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [11, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [0, 0, 0], 're': 11, 'im': 0, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [0, 0, 0], 'visibility': [11, 0], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 11, 'im': 3, 'pol': 'YX', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [11, -3], 'polarization': 'XY', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 11, 'im': 3, 'pol': 'XX', 'delay': 8, 'pa': 0, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [11, -3], 'polarization': 'XX', 'geometric_delay': -8, 'phase_difference': -9}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 11, 'im': 3, 'pol': 'YY', 'delay': -4, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [11, -3], 'polarization': 'YY', 'geometric_delay': 4, 'phase_difference': -7}), ({'a': 8, 'b': 1, 'uvw': [2, -3, 4], 're': 11, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 0}, {'antennas': [1, 8], 'uvw': [-2, 3, -4], 'visibility': [11, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7})]}
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 | {'antennas': [5, 2], 'geometric_delay': -8, 'phase_difference': -7, 'polarization': 'YX', 'uvw': [-2, 3, -4], 'visibility': [-7, -3]} | {'antennas': [5, 2], 'geometric_delay': -8, 'phase_difference': -7, 'polarization': 'YX', 'uvw': [-2, 3, -4], 'visibility': [7, -3]} | Failed |
| astronomical fixture 1 | {'antennas': [5, 2], 'geometric_delay': -8, 'phase_difference': -7, 'polarization': 'YX', 'uvw': [0, 0, 0], 'visibility': [-7, 0]} | {'antennas': [5, 2], 'geometric_delay': -8, 'phase_difference': -7, 'polarization': 'YX', 'uvw': [0, 0, 0], 'visibility': [7, 0]} | Failed |
| astronomical fixture 2 | {'antennas': [5, 2], 'geometric_delay': -8, 'phase_difference': -7, 'polarization': 'XY', 'uvw': [-2, 3, -4], 'visibility': [-7, -3]} | {'antennas': [5, 2], 'geometric_delay': -8, 'phase_difference': -7, 'polarization': 'XY', 'uvw': [-2, 3, -4], 'visibility': [7, -3]} | Failed |
| astronomical fixture 3 | {'antennas': [5, 2], 'geometric_delay': -8, 'phase_difference': -9, 'polarization': 'XX', 'uvw': [-2, 3, -4], 'visibility': [-7, -3]} | {'antennas': [5, 2], 'geometric_delay': -8, 'phase_difference': -9, 'polarization': 'XX', 'uvw': [-2, 3, -4], 'visibility': [7, -3]} | Failed |
| astronomical fixture 4 | {'antennas': [5, 2], 'geometric_delay': 4, 'phase_difference': -7, 'polarization': 'YY', 'uvw': [-2, 3, -4], 'visibility': [-7, -3]} | {'antennas': [5, 2], 'geometric_delay': 4, 'phase_difference': -7, 'polarization': 'YY', 'uvw': [-2, 3, -4], 'visibility': [7, -3]} | Failed |
| astronomical fixture 5 | {'antennas': [1, 8], 'geometric_delay': -8, 'phase_difference': -7, 'polarization': 'YX', 'uvw': [-2, 3, -4], 'visibility': [-7, -3]} | {'antennas': [1, 8], 'geometric_delay': -8, 'phase_difference': -7, 'polarization': 'YX', 'uvw': [-2, 3, -4], 'visibility': [7, -3]} | Failed |
SHA-256 / 21aacd24df8de8513a3b06afed7f2cea9dc8638ffe8b11f25c520ea405234445
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(d):
return {'antennas': [d['b'],d['a']], 'uvw': [-x for x in d['uvw']], 'visibility': [d['re'],d['im']], 'polarization': d['pol'][::-1], 'geometric_delay': -d['delay'], 'phase_difference': d['pa']-d['pb']}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = {1: [({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 7, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [7, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [0, 0, 0], 're': 7, 'im': 0, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [0, 0, 0], 'visibility': [7, 0], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 7, 'im': 3, 'pol': 'YX', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [7, -3], 'polarization': 'XY', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 7, 'im': 3, 'pol': 'XX', 'delay': 8, 'pa': 0, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [7, -3], 'polarization': 'XX', 'geometric_delay': -8, 'phase_difference': -9}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 7, 'im': 3, 'pol': 'YY', 'delay': -4, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [7, -3], 'polarization': 'YY', 'geometric_delay': 4, 'phase_difference': -7}), ({'a': 8, 'b': 1, 'uvw': [2, -3, 4], 're': 7, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 0}, {'antennas': [1, 8], 'uvw': [-2, 3, -4], 'visibility': [7, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7})], 2: [({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 8, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [8, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [0, 0, 0], 're': 8, 'im': 0, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [0, 0, 0], 'visibility': [8, 0], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 8, 'im': 3, 'pol': 'YX', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [8, -3], 'polarization': 'XY', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 8, 'im': 3, 'pol': 'XX', 'delay': 8, 'pa': 0, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [8, -3], 'polarization': 'XX', 'geometric_delay': -8, 'phase_difference': -9}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 8, 'im': 3, 'pol': 'YY', 'delay': -4, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [8, -3], 'polarization': 'YY', 'geometric_delay': 4, 'phase_difference': -7}), ({'a': 8, 'b': 1, 'uvw': [2, -3, 4], 're': 8, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 0}, {'antennas': [1, 8], 'uvw': [-2, 3, -4], 'visibility': [8, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7})], 3: [({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 9, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [9, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [0, 0, 0], 're': 9, 'im': 0, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [0, 0, 0], 'visibility': [9, 0], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 9, 'im': 3, 'pol': 'YX', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [9, -3], 'polarization': 'XY', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 9, 'im': 3, 'pol': 'XX', 'delay': 8, 'pa': 0, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [9, -3], 'polarization': 'XX', 'geometric_delay': -8, 'phase_difference': -9}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 9, 'im': 3, 'pol': 'YY', 'delay': -4, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [9, -3], 'polarization': 'YY', 'geometric_delay': 4, 'phase_difference': -7}), ({'a': 8, 'b': 1, 'uvw': [2, -3, 4], 're': 9, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 0}, {'antennas': [1, 8], 'uvw': [-2, 3, -4], 'visibility': [9, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7})], 4: [({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 10, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [10, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [0, 0, 0], 're': 10, 'im': 0, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [0, 0, 0], 'visibility': [10, 0], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 10, 'im': 3, 'pol': 'YX', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [10, -3], 'polarization': 'XY', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 10, 'im': 3, 'pol': 'XX', 'delay': 8, 'pa': 0, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [10, -3], 'polarization': 'XX', 'geometric_delay': -8, 'phase_difference': -9}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 10, 'im': 3, 'pol': 'YY', 'delay': -4, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [10, -3], 'polarization': 'YY', 'geometric_delay': 4, 'phase_difference': -7}), ({'a': 8, 'b': 1, 'uvw': [2, -3, 4], 're': 10, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 0}, {'antennas': [1, 8], 'uvw': [-2, 3, -4], 'visibility': [10, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7})], 5: [({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 11, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [11, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [0, 0, 0], 're': 11, 'im': 0, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [0, 0, 0], 'visibility': [11, 0], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 11, 'im': 3, 'pol': 'YX', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [11, -3], 'polarization': 'XY', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 11, 'im': 3, 'pol': 'XX', 'delay': 8, 'pa': 0, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [11, -3], 'polarization': 'XX', 'geometric_delay': -8, 'phase_difference': -9}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 11, 'im': 3, 'pol': 'YY', 'delay': -4, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [11, -3], 'polarization': 'YY', 'geometric_delay': 4, 'phase_difference': -7}), ({'a': 8, 'b': 1, 'uvw': [2, -3, 4], 're': 11, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 0}, {'antennas': [1, 8], 'uvw': [-2, 3, -4], 'visibility': [11, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7})]}
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 | {'antennas': [5, 2], 'geometric_delay': -8, 'phase_difference': -7, 'polarization': 'YX', 'uvw': [-2, 3, -4], 'visibility': [7, 3]} | {'antennas': [5, 2], 'geometric_delay': -8, 'phase_difference': -7, 'polarization': 'YX', 'uvw': [-2, 3, -4], 'visibility': [7, -3]} | Failed |
| astronomical fixture 1 | {'antennas': [5, 2], 'geometric_delay': -8, 'phase_difference': -7, 'polarization': 'YX', 'uvw': [0, 0, 0], 'visibility': [7, 0]} | {'antennas': [5, 2], 'geometric_delay': -8, 'phase_difference': -7, 'polarization': 'YX', 'uvw': [0, 0, 0], 'visibility': [7, 0]} | Passed |
| astronomical fixture 2 | {'antennas': [5, 2], 'geometric_delay': -8, 'phase_difference': -7, 'polarization': 'XY', 'uvw': [-2, 3, -4], 'visibility': [7, 3]} | {'antennas': [5, 2], 'geometric_delay': -8, 'phase_difference': -7, 'polarization': 'XY', 'uvw': [-2, 3, -4], 'visibility': [7, -3]} | Failed |
| astronomical fixture 3 | {'antennas': [5, 2], 'geometric_delay': -8, 'phase_difference': -9, 'polarization': 'XX', 'uvw': [-2, 3, -4], 'visibility': [7, 3]} | {'antennas': [5, 2], 'geometric_delay': -8, 'phase_difference': -9, 'polarization': 'XX', 'uvw': [-2, 3, -4], 'visibility': [7, -3]} | Failed |
| astronomical fixture 4 | {'antennas': [5, 2], 'geometric_delay': 4, 'phase_difference': -7, 'polarization': 'YY', 'uvw': [-2, 3, -4], 'visibility': [7, 3]} | {'antennas': [5, 2], 'geometric_delay': 4, 'phase_difference': -7, 'polarization': 'YY', 'uvw': [-2, 3, -4], 'visibility': [7, -3]} | Failed |
| astronomical fixture 5 | {'antennas': [1, 8], 'geometric_delay': -8, 'phase_difference': -7, 'polarization': 'YX', 'uvw': [-2, 3, -4], 'visibility': [7, 3]} | {'antennas': [1, 8], 'geometric_delay': -8, 'phase_difference': -7, 'polarization': 'YX', 'uvw': [-2, 3, -4], 'visibility': [7, -3]} | Failed |
SHA-256 / 7bfebe397264a5ed225871a3a9da52c69f9b4438c9ce77309574b69658c2a93b
3 / The verified repair
Exit 0"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(d):
return {'antennas': [d['b'],d['a']], 'uvw': [-x for x in d['uvw']], 'visibility': [d['re'],-d['im']], 'polarization': d['pol'][::-1], 'geometric_delay': -d['delay'], 'phase_difference': d['pa']-d['pb']}
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
fixtures = {1: [({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 7, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [7, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [0, 0, 0], 're': 7, 'im': 0, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [0, 0, 0], 'visibility': [7, 0], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 7, 'im': 3, 'pol': 'YX', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [7, -3], 'polarization': 'XY', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 7, 'im': 3, 'pol': 'XX', 'delay': 8, 'pa': 0, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [7, -3], 'polarization': 'XX', 'geometric_delay': -8, 'phase_difference': -9}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 7, 'im': 3, 'pol': 'YY', 'delay': -4, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [7, -3], 'polarization': 'YY', 'geometric_delay': 4, 'phase_difference': -7}), ({'a': 8, 'b': 1, 'uvw': [2, -3, 4], 're': 7, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 0}, {'antennas': [1, 8], 'uvw': [-2, 3, -4], 'visibility': [7, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7})], 2: [({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 8, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [8, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [0, 0, 0], 're': 8, 'im': 0, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [0, 0, 0], 'visibility': [8, 0], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 8, 'im': 3, 'pol': 'YX', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [8, -3], 'polarization': 'XY', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 8, 'im': 3, 'pol': 'XX', 'delay': 8, 'pa': 0, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [8, -3], 'polarization': 'XX', 'geometric_delay': -8, 'phase_difference': -9}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 8, 'im': 3, 'pol': 'YY', 'delay': -4, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [8, -3], 'polarization': 'YY', 'geometric_delay': 4, 'phase_difference': -7}), ({'a': 8, 'b': 1, 'uvw': [2, -3, 4], 're': 8, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 0}, {'antennas': [1, 8], 'uvw': [-2, 3, -4], 'visibility': [8, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7})], 3: [({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 9, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [9, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [0, 0, 0], 're': 9, 'im': 0, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [0, 0, 0], 'visibility': [9, 0], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 9, 'im': 3, 'pol': 'YX', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [9, -3], 'polarization': 'XY', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 9, 'im': 3, 'pol': 'XX', 'delay': 8, 'pa': 0, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [9, -3], 'polarization': 'XX', 'geometric_delay': -8, 'phase_difference': -9}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 9, 'im': 3, 'pol': 'YY', 'delay': -4, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [9, -3], 'polarization': 'YY', 'geometric_delay': 4, 'phase_difference': -7}), ({'a': 8, 'b': 1, 'uvw': [2, -3, 4], 're': 9, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 0}, {'antennas': [1, 8], 'uvw': [-2, 3, -4], 'visibility': [9, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7})], 4: [({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 10, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [10, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [0, 0, 0], 're': 10, 'im': 0, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [0, 0, 0], 'visibility': [10, 0], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 10, 'im': 3, 'pol': 'YX', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [10, -3], 'polarization': 'XY', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 10, 'im': 3, 'pol': 'XX', 'delay': 8, 'pa': 0, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [10, -3], 'polarization': 'XX', 'geometric_delay': -8, 'phase_difference': -9}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 10, 'im': 3, 'pol': 'YY', 'delay': -4, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [10, -3], 'polarization': 'YY', 'geometric_delay': 4, 'phase_difference': -7}), ({'a': 8, 'b': 1, 'uvw': [2, -3, 4], 're': 10, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 0}, {'antennas': [1, 8], 'uvw': [-2, 3, -4], 'visibility': [10, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7})], 5: [({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 11, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [11, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [0, 0, 0], 're': 11, 'im': 0, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [0, 0, 0], 'visibility': [11, 0], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 11, 'im': 3, 'pol': 'YX', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [11, -3], 'polarization': 'XY', 'geometric_delay': -8, 'phase_difference': -7}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 11, 'im': 3, 'pol': 'XX', 'delay': 8, 'pa': 0, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [11, -3], 'polarization': 'XX', 'geometric_delay': -8, 'phase_difference': -9}), ({'a': 2, 'b': 5, 'uvw': [2, -3, 4], 're': 11, 'im': 3, 'pol': 'YY', 'delay': -4, 'pa': 2, 'pb': 9, 'weight': 4}, {'antennas': [5, 2], 'uvw': [-2, 3, -4], 'visibility': [11, -3], 'polarization': 'YY', 'geometric_delay': 4, 'phase_difference': -7}), ({'a': 8, 'b': 1, 'uvw': [2, -3, 4], 're': 11, 'im': 3, 'pol': 'XY', 'delay': 8, 'pa': 2, 'pb': 9, 'weight': 0}, {'antennas': [1, 8], 'uvw': [-2, 3, -4], 'visibility': [11, -3], 'polarization': 'YX', 'geometric_delay': -8, 'phase_difference': -7})]}
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 | {'antennas': [5, 2], 'geometric_delay': -8, 'phase_difference': -7, 'polarization': 'YX', 'uvw': [-2, 3, -4], 'visibility': [7, -3]} | {'antennas': [5, 2], 'geometric_delay': -8, 'phase_difference': -7, 'polarization': 'YX', 'uvw': [-2, 3, -4], 'visibility': [7, -3]} | Passed |
| astronomical fixture 1 | {'antennas': [5, 2], 'geometric_delay': -8, 'phase_difference': -7, 'polarization': 'YX', 'uvw': [0, 0, 0], 'visibility': [7, 0]} | {'antennas': [5, 2], 'geometric_delay': -8, 'phase_difference': -7, 'polarization': 'YX', 'uvw': [0, 0, 0], 'visibility': [7, 0]} | Passed |
| astronomical fixture 2 | {'antennas': [5, 2], 'geometric_delay': -8, 'phase_difference': -7, 'polarization': 'XY', 'uvw': [-2, 3, -4], 'visibility': [7, -3]} | {'antennas': [5, 2], 'geometric_delay': -8, 'phase_difference': -7, 'polarization': 'XY', 'uvw': [-2, 3, -4], 'visibility': [7, -3]} | Passed |
| astronomical fixture 3 | {'antennas': [5, 2], 'geometric_delay': -8, 'phase_difference': -9, 'polarization': 'XX', 'uvw': [-2, 3, -4], 'visibility': [7, -3]} | {'antennas': [5, 2], 'geometric_delay': -8, 'phase_difference': -9, 'polarization': 'XX', 'uvw': [-2, 3, -4], 'visibility': [7, -3]} | Passed |
| astronomical fixture 4 | {'antennas': [5, 2], 'geometric_delay': 4, 'phase_difference': -7, 'polarization': 'YY', 'uvw': [-2, 3, -4], 'visibility': [7, -3]} | {'antennas': [5, 2], 'geometric_delay': 4, 'phase_difference': -7, 'polarization': 'YY', 'uvw': [-2, 3, -4], 'visibility': [7, -3]} | Passed |
| astronomical fixture 5 | {'antennas': [1, 8], 'geometric_delay': -8, 'phase_difference': -7, 'polarization': 'YX', 'uvw': [-2, 3, -4], 'visibility': [7, -3]} | {'antennas': [1, 8], 'geometric_delay': -8, 'phase_difference': -7, 'polarization': 'YX', 'uvw': [-2, 3, -4], 'visibility': [7, -3]} | Passed |
SHA-256 / d1c3623b73c852e486330e1004490cf31319ce09bb44fc5e9a4a0585defb8873
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.759607+00:00.
Case digest / 9fd1438344c06f597714ec37c64f742eca2b351bbfda623086d5c1cd2d96643f