FAILURE MAP
← Case archive

FA-15851 / Floating-point arithmetic / Open access

The hidden leading bit is read from encoded exponent · case 01

The hidden leading bit is read from encoded exponent.

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

ROOT CAUSE

The extracted field overlaps the exponent.

VERIFIED REPAIR

Extract precisely the stored fraction.

Unsuccessful approach: Removing the quiet bit from every fraction corrupts NaNs.

Case contract

Decode an unsigned 64-bit IEEE binary64 encoding into sign, kind, unbiased exponent, integer significand, quiet flag and payload. Nonfinite fields use null; zero and subnormal exponents are -1022.

Why this case matters

An offline floating representation model isolates a reproducible arithmetic fault.

1 / The failure

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json
import math
import struct
N = 1
observations = []
def solve(bits):
    sign = -1 if bits >> 63 else 1
    exp = (bits >> 52) & 2047
    fraction = bits & ((1 << 53)-1)
    if exp == 2047:
        kind = 'nan' if fraction else 'infinity'
        quiet = bool(fraction & (1 << 51)) if fraction else None
        payload = fraction & ((1 << 51)-1) if fraction else None
        return [sign, kind, None, None, quiet, payload]
    kind = 'zero' if exp == 0 and fraction == 0 else 'subnormal' if exp == 0 else 'normal'
    unbiased = exp-1023 if exp else -1022
    significand = fraction | (1 << 52) if exp else fraction
    return [sign, kind, unbiased, significand, None, None]
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('positive zero', solve(0), [1,'zero',-1022,0,None,None])
check('negative zero', solve(1<<63), [-1,'zero',-1022,0,None,None])
check('tiny subnormal', solve(N), [1,'subnormal',-1022,N,None,None])
check('negative subnormal', solve((1<<63)|N), [-1,'subnormal',-1022,N,None,None])
check('normal exact power', solve((1023+N)<<52), [1,'normal',N,1<<52,None,None])
check('normal fraction', solve((1023<<52)|N), [1,'normal',0,(1<<52)|N,None,None])
check('positive infinity', solve(2047<<52), [1,'infinity',None,None,None,None])
check('negative infinity', solve((1<<63)|(2047<<52)), [-1,'infinity',None,None,None,None])
check('quiet payload', solve((2047<<52)|(1<<51)|N), [1,'nan',None,None,True,N])
check('signaling payload', solve((2047<<52)|N), [1,'nan',None,None,False,N])
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
positive zero[1, 'zero', -1022, 0, None, None][1, 'zero', -1022, 0, None, None]Passed
negative zero[-1, 'zero', -1022, 0, None, None][-1, 'zero', -1022, 0, None, None]Passed
tiny subnormal[1, 'subnormal', -1022, 1, None, None][1, 'subnormal', -1022, 1, None, None]Passed
negative subnormal[-1, 'subnormal', -1022, 1, None, None][-1, 'subnormal', -1022, 1, None, None]Passed
normal exact power[1, 'normal', 1, 4503599627370496, None, None][1, 'normal', 1, 4503599627370496, None, None]Passed
normal fraction[1, 'normal', 0, 4503599627370497, None, None][1, 'normal', 0, 4503599627370497, None, None]Passed
positive infinity[1, 'nan', None, None, False, 0][1, 'infinity', None, None, None, None]Failed
negative infinity[-1, 'nan', None, None, False, 0][-1, 'infinity', None, None, None, None]Failed
quiet payload[1, 'nan', None, None, True, 1][1, 'nan', None, None, True, 1]Passed
signaling payload[1, 'nan', None, None, False, 1][1, 'nan', None, None, False, 1]Passed

SHA-256 / f3251a7fd07ea5cb9fc019c67c2dad4c5244e6e1ef10edc3cf4fed84b2f84001

2 / The unsuccessful fix

Exit 1
"""Failure Map reference implementation. Python standard library only."""
import json
import math
import struct
N = 1
observations = []
def solve(bits):
    sign = -1 if bits >> 63 else 1
    exp = (bits >> 52) & 2047
    fraction = bits % (1 << 51)
    if exp == 2047:
        kind = 'nan' if fraction else 'infinity'
        quiet = bool(fraction & (1 << 51)) if fraction else None
        payload = fraction & ((1 << 51)-1) if fraction else None
        return [sign, kind, None, None, quiet, payload]
    kind = 'zero' if exp == 0 and fraction == 0 else 'subnormal' if exp == 0 else 'normal'
    unbiased = exp-1023 if exp else -1022
    significand = fraction | (1 << 52) if exp else fraction
    return [sign, kind, unbiased, significand, None, None]
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('positive zero', solve(0), [1,'zero',-1022,0,None,None])
check('negative zero', solve(1<<63), [-1,'zero',-1022,0,None,None])
check('tiny subnormal', solve(N), [1,'subnormal',-1022,N,None,None])
check('negative subnormal', solve((1<<63)|N), [-1,'subnormal',-1022,N,None,None])
check('normal exact power', solve((1023+N)<<52), [1,'normal',N,1<<52,None,None])
check('normal fraction', solve((1023<<52)|N), [1,'normal',0,(1<<52)|N,None,None])
check('positive infinity', solve(2047<<52), [1,'infinity',None,None,None,None])
check('negative infinity', solve((1<<63)|(2047<<52)), [-1,'infinity',None,None,None,None])
check('quiet payload', solve((2047<<52)|(1<<51)|N), [1,'nan',None,None,True,N])
check('signaling payload', solve((2047<<52)|N), [1,'nan',None,None,False,N])
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
positive zero[1, 'zero', -1022, 0, None, None][1, 'zero', -1022, 0, None, None]Passed
negative zero[-1, 'zero', -1022, 0, None, None][-1, 'zero', -1022, 0, None, None]Passed
tiny subnormal[1, 'subnormal', -1022, 1, None, None][1, 'subnormal', -1022, 1, None, None]Passed
negative subnormal[-1, 'subnormal', -1022, 1, None, None][-1, 'subnormal', -1022, 1, None, None]Passed
normal exact power[1, 'normal', 1, 4503599627370496, None, None][1, 'normal', 1, 4503599627370496, None, None]Passed
normal fraction[1, 'normal', 0, 4503599627370497, None, None][1, 'normal', 0, 4503599627370497, None, None]Passed
positive infinity[1, 'infinity', None, None, None, None][1, 'infinity', None, None, None, None]Passed
negative infinity[-1, 'infinity', None, None, None, None][-1, 'infinity', None, None, None, None]Passed
quiet payload[1, 'nan', None, None, False, 1][1, 'nan', None, None, True, 1]Failed
signaling payload[1, 'nan', None, None, False, 1][1, 'nan', None, None, False, 1]Passed

SHA-256 / 3e1d6687fb3449214b4b79fb4105b53ac58decac610d2ff977e091b74cdbd23d

3 / The verified repair

Exit 0
"""Failure Map reference implementation. Python standard library only."""
import json
import math
import struct
N = 1
observations = []
def solve(bits):
    sign = -1 if bits >> 63 else 1
    exp = (bits >> 52) & 2047
    fraction = bits & ((1 << 52)-1)
    if exp == 2047:
        kind = 'nan' if fraction else 'infinity'
        quiet = bool(fraction & (1 << 51)) if fraction else None
        payload = fraction & ((1 << 51)-1) if fraction else None
        return [sign, kind, None, None, quiet, payload]
    kind = 'zero' if exp == 0 and fraction == 0 else 'subnormal' if exp == 0 else 'normal'
    unbiased = exp-1023 if exp else -1022
    significand = fraction | (1 << 52) if exp else fraction
    return [sign, kind, unbiased, significand, None, None]
def check(label, actual, expected):
    observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
check('positive zero', solve(0), [1,'zero',-1022,0,None,None])
check('negative zero', solve(1<<63), [-1,'zero',-1022,0,None,None])
check('tiny subnormal', solve(N), [1,'subnormal',-1022,N,None,None])
check('negative subnormal', solve((1<<63)|N), [-1,'subnormal',-1022,N,None,None])
check('normal exact power', solve((1023+N)<<52), [1,'normal',N,1<<52,None,None])
check('normal fraction', solve((1023<<52)|N), [1,'normal',0,(1<<52)|N,None,None])
check('positive infinity', solve(2047<<52), [1,'infinity',None,None,None,None])
check('negative infinity', solve((1<<63)|(2047<<52)), [-1,'infinity',None,None,None,None])
check('quiet payload', solve((2047<<52)|(1<<51)|N), [1,'nan',None,None,True,N])
check('signaling payload', solve((2047<<52)|N), [1,'nan',None,None,False,N])
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
positive zero[1, 'zero', -1022, 0, None, None][1, 'zero', -1022, 0, None, None]Passed
negative zero[-1, 'zero', -1022, 0, None, None][-1, 'zero', -1022, 0, None, None]Passed
tiny subnormal[1, 'subnormal', -1022, 1, None, None][1, 'subnormal', -1022, 1, None, None]Passed
negative subnormal[-1, 'subnormal', -1022, 1, None, None][-1, 'subnormal', -1022, 1, None, None]Passed
normal exact power[1, 'normal', 1, 4503599627370496, None, None][1, 'normal', 1, 4503599627370496, None, None]Passed
normal fraction[1, 'normal', 0, 4503599627370497, None, None][1, 'normal', 0, 4503599627370497, None, None]Passed
positive infinity[1, 'infinity', None, None, None, None][1, 'infinity', None, None, None, None]Passed
negative infinity[-1, 'infinity', None, None, None, None][-1, 'infinity', None, None, None, None]Passed
quiet payload[1, 'nan', None, None, True, 1][1, 'nan', None, None, True, 1]Passed
signaling payload[1, 'nan', None, None, False, 1][1, 'nan', None, None, False, 1]Passed

SHA-256 / ade469eac871c68aa636078841755720c4f4167ad2c11862b5cbea2f94e013a1

Verification & scope

Controlled binary64 or explicitly stipulated miniature format; no hardware exception flags or platform floating environment are modeled. 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:30.817276+00:00.

Case digest / 0494bad43e4a7024e15568129e1fbee0fd866804cec5a074f8d554bb0b28248f