{"abstract":"Power increment reflects an invalid base into the real domain.","category":"Floating-point arithmetic","checks":7,"contract":"Evaluate (1+x)**y without first rounding a small increment into unity. Domain requires x>-1; y is finite, and fixtures have finite results. Finite results are rendered to eleven significant decimal digits; modeled domain violations and arithmetic errors are explicit strings.","evaluation_group":"s3-float-power1p","failed_approach":"The attempted local correction if x<=-1: return 'nan' still violates the explicit regression fixtures.","family":"s3-floating_point_arithmetic-power1p-invalid-base-reflection","id":"FA-16976","implementations":{"attempt":{"sha256":"536e52d76772ebdc03da2b0bd81c66a30cce322d7d5d1be5cf201bb3eaadeac8","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nimport struct\ndef render(x):\n    if math.isnan(x): return 'nan'\n    if math.isinf(x): return '-infinity' if x<0 else '+infinity'\n    return format(x,'.11g')\n\nN = 1\nobservations = []\ndef solve(x,y):\n    try:\n        if x<=-1: return 'nan'\n        if y==0 or x==0: return '1'\n        exponent=y*math.log1p(x)\n        result=math.exp(exponent)\n        return render(result)\n    except (ValueError, OverflowError, ZeroDivisionError, TypeError):\n        return \"arithmetic-error\"\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('tiny amplified', solve(N*2.0**-60,2.0**60), render(math.exp(N)))\ncheck('negative amplified', solve(-N*2.0**-60,2.0**60), render(math.exp(-N)))\ncheck('normal', solve(1.0,float(N)), render(2.0**N))\ncheck('negative power', solve(1.0,-float(N)), render(2.0**(-N)))\ncheck('zero exponent', solve(0.5,0.0), \"1\")\ncheck('zero increment', solve(0.0,float(N)), \"1\")\ncheck('invalid base', solve(-2.0,float(N)), \"domain\")\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":"0b7853b1e7fe435bca7503af63eaa87a5b6ce0ebaf8a542786ca0b0208f2db0c","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nimport struct\ndef render(x):\n    if math.isnan(x): return 'nan'\n    if math.isinf(x): return '-infinity' if x<0 else '+infinity'\n    return format(x,'.11g')\n\nN = 1\nobservations = []\ndef solve(x,y):\n    try:\n        if x<=-1: x=abs(x)\n        if y==0 or x==0: return '1'\n        exponent=y*math.log1p(x)\n        result=math.exp(exponent)\n        return render(result)\n    except (ValueError, OverflowError, ZeroDivisionError, TypeError):\n        return \"arithmetic-error\"\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('tiny amplified', solve(N*2.0**-60,2.0**60), render(math.exp(N)))\ncheck('negative amplified', solve(-N*2.0**-60,2.0**60), render(math.exp(-N)))\ncheck('normal', solve(1.0,float(N)), render(2.0**N))\ncheck('negative power', solve(1.0,-float(N)), render(2.0**(-N)))\ncheck('zero exponent', solve(0.5,0.0), \"1\")\ncheck('zero increment', solve(0.0,float(N)), \"1\")\ncheck('invalid base', solve(-2.0,float(N)), \"domain\")\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":"c4b47d9a689e667e8fe276dbfd388973a6af1c5fd37c142044212b14d63fbbf6","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nimport struct\ndef render(x):\n    if math.isnan(x): return 'nan'\n    if math.isinf(x): return '-infinity' if x<0 else '+infinity'\n    return format(x,'.11g')\n\nN = 1\nobservations = []\ndef solve(x,y):\n    try:\n        if x<=-1: return 'domain'\n        if y==0 or x==0: return '1'\n        exponent=y*math.log1p(x)\n        result=math.exp(exponent)\n        return render(result)\n    except (ValueError, OverflowError, ZeroDivisionError, TypeError):\n        return \"arithmetic-error\"\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\ncheck('tiny amplified', solve(N*2.0**-60,2.0**60), render(math.exp(N)))\ncheck('negative amplified', solve(-N*2.0**-60,2.0**60), render(math.exp(-N)))\ncheck('normal', solve(1.0,float(N)), render(2.0**N))\ncheck('negative power', solve(1.0,-float(N)), render(2.0**(-N)))\ncheck('zero exponent', solve(0.5,0.0), \"1\")\ncheck('zero increment', solve(0.0,float(N)), \"1\")\ncheck('invalid base', solve(-2.0,float(N)), \"domain\")\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-power1p-invalid-base-reflection","generated_at":"2026-09-29T14:39:41.663974+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":"Apply the contract at this fault site using if x<=-1: return 'domain'.","root_cause":"Power increment reflects an invalid base into the real domain. The faulty expression is if x<=-1: x=abs(x).","sha256":"4ab1509f9e2e0fe355cd8d53ac8d825176a56c1b084ae9a4e37d52a0cfdee09a","title":"Power increment reflects an invalid base into the real domain · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":42.664,"exit_code":1,"observations":[{"actual":"2.7182818285","check":"tiny amplified","expected":"2.7182818285","passed":true},{"actual":"0.36787944117","check":"negative amplified","expected":"0.36787944117","passed":true},{"actual":"2","check":"normal","expected":"2","passed":true},{"actual":"0.5","check":"negative power","expected":"0.5","passed":true},{"actual":"1","check":"zero exponent","expected":"1","passed":true},{"actual":"1","check":"zero increment","expected":"1","passed":true},{"actual":"nan","check":"invalid base","expected":"domain","passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"tiny amplified\", \"actual\": \"2.7182818285\", \"expected\": \"2.7182818285\", \"passed\": true}, {\"check\": \"negative amplified\", \"actual\": \"0.36787944117\", \"expected\": \"0.36787944117\", \"passed\": true}, {\"check\": \"normal\", \"actual\": \"2\", \"expected\": \"2\", \"passed\": true}, {\"check\": \"negative power\", \"actual\": \"0.5\", \"expected\": \"0.5\", \"passed\": true}, {\"check\": \"zero exponent\", \"actual\": \"1\", \"expected\": \"1\", \"passed\": true}, {\"check\": \"zero increment\", \"actual\": \"1\", \"expected\": \"1\", \"passed\": true}, {\"check\": \"invalid base\", \"actual\": \"nan\", \"expected\": \"domain\", \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":43.932,"exit_code":1,"observations":[{"actual":"2.7182818285","check":"tiny amplified","expected":"2.7182818285","passed":true},{"actual":"0.36787944117","check":"negative amplified","expected":"0.36787944117","passed":true},{"actual":"2","check":"normal","expected":"2","passed":true},{"actual":"0.5","check":"negative power","expected":"0.5","passed":true},{"actual":"1","check":"zero exponent","expected":"1","passed":true},{"actual":"1","check":"zero increment","expected":"1","passed":true},{"actual":"3","check":"invalid base","expected":"domain","passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"tiny amplified\", \"actual\": \"2.7182818285\", \"expected\": \"2.7182818285\", \"passed\": true}, {\"check\": \"negative amplified\", \"actual\": \"0.36787944117\", \"expected\": \"0.36787944117\", \"passed\": true}, {\"check\": \"normal\", \"actual\": \"2\", \"expected\": \"2\", \"passed\": true}, {\"check\": \"negative power\", \"actual\": \"0.5\", \"expected\": \"0.5\", \"passed\": true}, {\"check\": \"zero exponent\", \"actual\": \"1\", \"expected\": \"1\", \"passed\": true}, {\"check\": \"zero increment\", \"actual\": \"1\", \"expected\": \"1\", \"passed\": true}, {\"check\": \"invalid base\", \"actual\": \"3\", \"expected\": \"domain\", \"passed\": false}], \"passed\": false}\n"},"fixed":{"elapsed_ms":42.344,"exit_code":0,"observations":[{"actual":"2.7182818285","check":"tiny amplified","expected":"2.7182818285","passed":true},{"actual":"0.36787944117","check":"negative amplified","expected":"0.36787944117","passed":true},{"actual":"2","check":"normal","expected":"2","passed":true},{"actual":"0.5","check":"negative power","expected":"0.5","passed":true},{"actual":"1","check":"zero exponent","expected":"1","passed":true},{"actual":"1","check":"zero increment","expected":"1","passed":true},{"actual":"domain","check":"invalid base","expected":"domain","passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"tiny amplified\", \"actual\": \"2.7182818285\", \"expected\": \"2.7182818285\", \"passed\": true}, {\"check\": \"negative amplified\", \"actual\": \"0.36787944117\", \"expected\": \"0.36787944117\", \"passed\": true}, {\"check\": \"normal\", \"actual\": \"2\", \"expected\": \"2\", \"passed\": true}, {\"check\": \"negative power\", \"actual\": \"0.5\", \"expected\": \"0.5\", \"passed\": true}, {\"check\": \"zero exponent\", \"actual\": \"1\", \"expected\": \"1\", \"passed\": true}, {\"check\": \"zero increment\", \"actual\": \"1\", \"expected\": \"1\", \"passed\": true}, {\"check\": \"invalid base\", \"actual\": \"domain\", \"expected\": \"domain\", \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}