{"abstract":"Sign bit contaminates the exponent field.","category":"Floating-point arithmetic","checks":10,"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.","evaluation_group":"s3-float-decode","failed_approach":"Assigning zero exponent to all negatives destroys negative infinity.","family":"s3-floating_point_arithmetic-decode-exponent-mask","id":"FA-15846","implementations":{"attempt":{"sha256":"ead6344deb7f1ac0c6969554d74c26062236d3a04f93338a29e329ee1a188f33","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nimport struct\nN = 1\nobservations = []\ndef solve(bits):\n    sign = -1 if bits >> 63 else 1\n    exp = (bits >> 52) if not bits >> 63 else 0\n    fraction = bits & ((1 << 52)-1)\n    if exp == 2047:\n        kind = 'nan' if fraction else 'infinity'\n        quiet = bool(fraction & (1 << 51)) if fraction else None\n        payload = fraction & ((1 << 51)-1) if fraction else None\n        return [sign, kind, None, None, quiet, payload]\n    kind = 'zero' if exp == 0 and fraction == 0 else 'subnormal' if exp == 0 else 'normal'\n    unbiased = exp-1023 if exp else -1022\n    significand = fraction | (1 << 52) if exp else fraction\n    return [sign, kind, unbiased, significand, None, None]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('positive zero', solve(0), [1,'zero',-1022,0,None,None])\ncheck('negative zero', solve(1<<63), [-1,'zero',-1022,0,None,None])\ncheck('tiny subnormal', solve(N), [1,'subnormal',-1022,N,None,None])\ncheck('negative subnormal', solve((1<<63)|N), [-1,'subnormal',-1022,N,None,None])\ncheck('normal exact power', solve((1023+N)<<52), [1,'normal',N,1<<52,None,None])\ncheck('normal fraction', solve((1023<<52)|N), [1,'normal',0,(1<<52)|N,None,None])\ncheck('positive infinity', solve(2047<<52), [1,'infinity',None,None,None,None])\ncheck('negative infinity', solve((1<<63)|(2047<<52)), [-1,'infinity',None,None,None,None])\ncheck('quiet payload', solve((2047<<52)|(1<<51)|N), [1,'nan',None,None,True,N])\ncheck('signaling payload', solve((2047<<52)|N), [1,'nan',None,None,False,N])\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"broken":{"sha256":"83453319a413464d921ca3e828ff79e316f94442ffd85d6470593095f155e405","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nimport struct\nN = 1\nobservations = []\ndef solve(bits):\n    sign = -1 if bits >> 63 else 1\n    exp = bits >> 52\n    fraction = bits & ((1 << 52)-1)\n    if exp == 2047:\n        kind = 'nan' if fraction else 'infinity'\n        quiet = bool(fraction & (1 << 51)) if fraction else None\n        payload = fraction & ((1 << 51)-1) if fraction else None\n        return [sign, kind, None, None, quiet, payload]\n    kind = 'zero' if exp == 0 and fraction == 0 else 'subnormal' if exp == 0 else 'normal'\n    unbiased = exp-1023 if exp else -1022\n    significand = fraction | (1 << 52) if exp else fraction\n    return [sign, kind, unbiased, significand, None, None]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('positive zero', solve(0), [1,'zero',-1022,0,None,None])\ncheck('negative zero', solve(1<<63), [-1,'zero',-1022,0,None,None])\ncheck('tiny subnormal', solve(N), [1,'subnormal',-1022,N,None,None])\ncheck('negative subnormal', solve((1<<63)|N), [-1,'subnormal',-1022,N,None,None])\ncheck('normal exact power', solve((1023+N)<<52), [1,'normal',N,1<<52,None,None])\ncheck('normal fraction', solve((1023<<52)|N), [1,'normal',0,(1<<52)|N,None,None])\ncheck('positive infinity', solve(2047<<52), [1,'infinity',None,None,None,None])\ncheck('negative infinity', solve((1<<63)|(2047<<52)), [-1,'infinity',None,None,None,None])\ncheck('quiet payload', solve((2047<<52)|(1<<51)|N), [1,'nan',None,None,True,N])\ncheck('signaling payload', solve((2047<<52)|N), [1,'nan',None,None,False,N])\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"fixed":{"sha256":"ade469eac871c68aa636078841755720c4f4167ad2c11862b5cbea2f94e013a1","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nimport struct\nN = 1\nobservations = []\ndef solve(bits):\n    sign = -1 if bits >> 63 else 1\n    exp = (bits >> 52) & 2047\n    fraction = bits & ((1 << 52)-1)\n    if exp == 2047:\n        kind = 'nan' if fraction else 'infinity'\n        quiet = bool(fraction & (1 << 51)) if fraction else None\n        payload = fraction & ((1 << 51)-1) if fraction else None\n        return [sign, kind, None, None, quiet, payload]\n    kind = 'zero' if exp == 0 and fraction == 0 else 'subnormal' if exp == 0 else 'normal'\n    unbiased = exp-1023 if exp else -1022\n    significand = fraction | (1 << 52) if exp else fraction\n    return [sign, kind, unbiased, significand, None, None]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('positive zero', solve(0), [1,'zero',-1022,0,None,None])\ncheck('negative zero', solve(1<<63), [-1,'zero',-1022,0,None,None])\ncheck('tiny subnormal', solve(N), [1,'subnormal',-1022,N,None,None])\ncheck('negative subnormal', solve((1<<63)|N), [-1,'subnormal',-1022,N,None,None])\ncheck('normal exact power', solve((1023+N)<<52), [1,'normal',N,1<<52,None,None])\ncheck('normal fraction', solve((1023<<52)|N), [1,'normal',0,(1<<52)|N,None,None])\ncheck('positive infinity', solve(2047<<52), [1,'infinity',None,None,None,None])\ncheck('negative infinity', solve((1<<63)|(2047<<52)), [-1,'infinity',None,None,None,None])\ncheck('quiet payload', solve((2047<<52)|(1<<51)|N), [1,'nan',None,None,True,N])\ncheck('signaling payload', solve((2047<<52)|N), [1,'nan',None,None,False,N])\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"}},"limitations":"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.","method":"Deterministic executable model with adversarial boundary fixtures.","provenance":{"created_by":"Failure Map","dependencies":"Python standard library","family":"s3-floating_point_arithmetic-decode-exponent-mask","generated_at":"2026-09-29T14:39:30.817013+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"An offline floating representation model isolates a reproducible arithmetic fault.","repair":"Mask the exponent independently of sign.","root_cause":"The sign bit is not removed before interpreting the exponent.","sha256":"290aa8aec986279f9f8025c7c931916fe63017c8b02245c3bcb5c1ec367ae324","title":"Sign bit contaminates the exponent field · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":39.343,"exit_code":1,"observations":[{"actual":[1,"zero",-1022,0,null,null],"check":"positive zero","expected":[1,"zero",-1022,0,null,null],"passed":true},{"actual":[-1,"zero",-1022,0,null,null],"check":"negative zero","expected":[-1,"zero",-1022,0,null,null],"passed":true},{"actual":[1,"subnormal",-1022,1,null,null],"check":"tiny subnormal","expected":[1,"subnormal",-1022,1,null,null],"passed":true},{"actual":[-1,"subnormal",-1022,1,null,null],"check":"negative subnormal","expected":[-1,"subnormal",-1022,1,null,null],"passed":true},{"actual":[1,"normal",1,4503599627370496,null,null],"check":"normal exact power","expected":[1,"normal",1,4503599627370496,null,null],"passed":true},{"actual":[1,"normal",0,4503599627370497,null,null],"check":"normal fraction","expected":[1,"normal",0,4503599627370497,null,null],"passed":true},{"actual":[1,"infinity",null,null,null,null],"check":"positive infinity","expected":[1,"infinity",null,null,null,null],"passed":true},{"actual":[-1,"zero",-1022,0,null,null],"check":"negative infinity","expected":[-1,"infinity",null,null,null,null],"passed":false},{"actual":[1,"nan",null,null,true,1],"check":"quiet payload","expected":[1,"nan",null,null,true,1],"passed":true},{"actual":[1,"nan",null,null,false,1],"check":"signaling payload","expected":[1,"nan",null,null,false,1],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"positive zero\", \"actual\": [1, \"zero\", -1022, 0, null, null], \"expected\": [1, \"zero\", -1022, 0, null, null], \"passed\": true}, {\"check\": \"negative zero\", \"actual\": [-1, \"zero\", -1022, 0, null, null], \"expected\": [-1, \"zero\", -1022, 0, null, null], \"passed\": true}, {\"check\": \"tiny subnormal\", \"actual\": [1, \"subnormal\", -1022, 1, null, null], \"expected\": [1, \"subnormal\", -1022, 1, null, null], \"passed\": true}, {\"check\": \"negative subnormal\", \"actual\": [-1, \"subnormal\", -1022, 1, null, null], \"expected\": [-1, \"subnormal\", -1022, 1, null, null], \"passed\": true}, {\"check\": \"normal exact power\", \"actual\": [1, \"normal\", 1, 4503599627370496, null, null], \"expected\": [1, \"normal\", 1, 4503599627370496, null, null], \"passed\": true}, {\"check\": \"normal fraction\", \"actual\": [1, \"normal\", 0, 4503599627370497, null, null], \"expected\": [1, \"normal\", 0, 4503599627370497, null, null], \"passed\": true}, {\"check\": \"positive infinity\", \"actual\": [1, \"infinity\", null, null, null, null], \"expected\": [1, \"infinity\", null, null, null, null], \"passed\": true}, {\"check\": \"negative infinity\", \"actual\": [-1, \"zero\", -1022, 0, null, null], \"expected\": [-1, \"infinity\", null, null, null, null], \"passed\": false}, {\"check\": \"quiet payload\", \"actual\": [1, \"nan\", null, null, true, 1], \"expected\": [1, \"nan\", null, null, true, 1], \"passed\": true}, {\"check\": \"signaling payload\", \"actual\": [1, \"nan\", null, null, false, 1], \"expected\": [1, \"nan\", null, null, false, 1], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":41.037,"exit_code":1,"observations":[{"actual":[1,"zero",-1022,0,null,null],"check":"positive zero","expected":[1,"zero",-1022,0,null,null],"passed":true},{"actual":[-1,"normal",1025,4503599627370496,null,null],"check":"negative zero","expected":[-1,"zero",-1022,0,null,null],"passed":false},{"actual":[1,"subnormal",-1022,1,null,null],"check":"tiny subnormal","expected":[1,"subnormal",-1022,1,null,null],"passed":true},{"actual":[-1,"normal",1025,4503599627370497,null,null],"check":"negative subnormal","expected":[-1,"subnormal",-1022,1,null,null],"passed":false},{"actual":[1,"normal",1,4503599627370496,null,null],"check":"normal exact power","expected":[1,"normal",1,4503599627370496,null,null],"passed":true},{"actual":[1,"normal",0,4503599627370497,null,null],"check":"normal fraction","expected":[1,"normal",0,4503599627370497,null,null],"passed":true},{"actual":[1,"infinity",null,null,null,null],"check":"positive infinity","expected":[1,"infinity",null,null,null,null],"passed":true},{"actual":[-1,"normal",3072,4503599627370496,null,null],"check":"negative infinity","expected":[-1,"infinity",null,null,null,null],"passed":false},{"actual":[1,"nan",null,null,true,1],"check":"quiet payload","expected":[1,"nan",null,null,true,1],"passed":true},{"actual":[1,"nan",null,null,false,1],"check":"signaling payload","expected":[1,"nan",null,null,false,1],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"positive zero\", \"actual\": [1, \"zero\", -1022, 0, null, null], \"expected\": [1, \"zero\", -1022, 0, null, null], \"passed\": true}, {\"check\": \"negative zero\", \"actual\": [-1, \"normal\", 1025, 4503599627370496, null, null], \"expected\": [-1, \"zero\", -1022, 0, null, null], \"passed\": false}, {\"check\": \"tiny subnormal\", \"actual\": [1, \"subnormal\", -1022, 1, null, null], \"expected\": [1, \"subnormal\", -1022, 1, null, null], \"passed\": true}, {\"check\": \"negative subnormal\", \"actual\": [-1, \"normal\", 1025, 4503599627370497, null, null], \"expected\": [-1, \"subnormal\", -1022, 1, null, null], \"passed\": false}, {\"check\": \"normal exact power\", \"actual\": [1, \"normal\", 1, 4503599627370496, null, null], \"expected\": [1, \"normal\", 1, 4503599627370496, null, null], \"passed\": true}, {\"check\": \"normal fraction\", \"actual\": [1, \"normal\", 0, 4503599627370497, null, null], \"expected\": [1, \"normal\", 0, 4503599627370497, null, null], \"passed\": true}, {\"check\": \"positive infinity\", \"actual\": [1, \"infinity\", null, null, null, null], \"expected\": [1, \"infinity\", null, null, null, null], \"passed\": true}, {\"check\": \"negative infinity\", \"actual\": [-1, \"normal\", 3072, 4503599627370496, null, null], \"expected\": [-1, \"infinity\", null, null, null, null], \"passed\": false}, {\"check\": \"quiet payload\", \"actual\": [1, \"nan\", null, null, true, 1], \"expected\": [1, \"nan\", null, null, true, 1], \"passed\": true}, {\"check\": \"signaling payload\", \"actual\": [1, \"nan\", null, null, false, 1], \"expected\": [1, \"nan\", null, null, false, 1], \"passed\": true}], \"passed\": false}\n"},"fixed":{"elapsed_ms":42.341,"exit_code":0,"observations":[{"actual":[1,"zero",-1022,0,null,null],"check":"positive zero","expected":[1,"zero",-1022,0,null,null],"passed":true},{"actual":[-1,"zero",-1022,0,null,null],"check":"negative zero","expected":[-1,"zero",-1022,0,null,null],"passed":true},{"actual":[1,"subnormal",-1022,1,null,null],"check":"tiny subnormal","expected":[1,"subnormal",-1022,1,null,null],"passed":true},{"actual":[-1,"subnormal",-1022,1,null,null],"check":"negative subnormal","expected":[-1,"subnormal",-1022,1,null,null],"passed":true},{"actual":[1,"normal",1,4503599627370496,null,null],"check":"normal exact power","expected":[1,"normal",1,4503599627370496,null,null],"passed":true},{"actual":[1,"normal",0,4503599627370497,null,null],"check":"normal fraction","expected":[1,"normal",0,4503599627370497,null,null],"passed":true},{"actual":[1,"infinity",null,null,null,null],"check":"positive infinity","expected":[1,"infinity",null,null,null,null],"passed":true},{"actual":[-1,"infinity",null,null,null,null],"check":"negative infinity","expected":[-1,"infinity",null,null,null,null],"passed":true},{"actual":[1,"nan",null,null,true,1],"check":"quiet payload","expected":[1,"nan",null,null,true,1],"passed":true},{"actual":[1,"nan",null,null,false,1],"check":"signaling payload","expected":[1,"nan",null,null,false,1],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"positive zero\", \"actual\": [1, \"zero\", -1022, 0, null, null], \"expected\": [1, \"zero\", -1022, 0, null, null], \"passed\": true}, {\"check\": \"negative zero\", \"actual\": [-1, \"zero\", -1022, 0, null, null], \"expected\": [-1, \"zero\", -1022, 0, null, null], \"passed\": true}, {\"check\": \"tiny subnormal\", \"actual\": [1, \"subnormal\", -1022, 1, null, null], \"expected\": [1, \"subnormal\", -1022, 1, null, null], \"passed\": true}, {\"check\": \"negative subnormal\", \"actual\": [-1, \"subnormal\", -1022, 1, null, null], \"expected\": [-1, \"subnormal\", -1022, 1, null, null], \"passed\": true}, {\"check\": \"normal exact power\", \"actual\": [1, \"normal\", 1, 4503599627370496, null, null], \"expected\": [1, \"normal\", 1, 4503599627370496, null, null], \"passed\": true}, {\"check\": \"normal fraction\", \"actual\": [1, \"normal\", 0, 4503599627370497, null, null], \"expected\": [1, \"normal\", 0, 4503599627370497, null, null], \"passed\": true}, {\"check\": \"positive infinity\", \"actual\": [1, \"infinity\", null, null, null, null], \"expected\": [1, \"infinity\", null, null, null, null], \"passed\": true}, {\"check\": \"negative infinity\", \"actual\": [-1, \"infinity\", null, null, null, null], \"expected\": [-1, \"infinity\", null, null, null, null], \"passed\": true}, {\"check\": \"quiet payload\", \"actual\": [1, \"nan\", null, null, true, 1], \"expected\": [1, \"nan\", null, null, true, 1], \"passed\": true}, {\"check\": \"signaling payload\", \"actual\": [1, \"nan\", null, null, false, 1], \"expected\": [1, \"nan\", null, null, false, 1], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}