FA-11516 / Static analysis soundness / Open access
A definition kills its own incoming operand use · case 01
A definition kills its own incoming operand use.
ROOT CAUSE
The backward transfer removes definitions after inserting uses.
VERIFIED REPAIR
Kill outgoing definitions first, then generate all incoming uses.
Unsuccessful approach: Removing the kill entirely preserves overwritten values that have no incoming use.
Case contract
Return sorted live-in variables for one instruction: uses union (live-out minus definitions). Uses occur before this instruction writes definitions.
Why this case matters
A deterministic offline analysis model exposing a specific soundness or precision boundary; it does not implement a complete language analyzer.
1 / The failure
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(out, defs, uses):
return sorted((set(out)|set(uses))-set(defs))
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
x='v'+str(N)
check('read modify write',solve([],[x],[x]),[x])
check('overwrite dead incoming',solve([x],[x],[]),[])
check('independent use',solve([],[x],['a']),['a'])
check('passthrough',solve([x],[],[]),[x])
check('empty instruction',solve([],[],[]),[])
check('other live value',solve(['a',x],[x],[x]),['a',x])
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 |
|---|---|---|---|
| read modify write | [] | ['v1'] | Failed |
| overwrite dead incoming | [] | [] | Passed |
| independent use | ['a'] | ['a'] | Passed |
| passthrough | ['v1'] | ['v1'] | Passed |
| empty instruction | [] | [] | Passed |
| other live value | ['a'] | ['a', 'v1'] | Failed |
SHA-256 / 6bd5e176f8264ed2210dcc8a9ca011aed93c23bbedec68c0c84387962a2e60f7
2 / The unsuccessful fix
Exit 1"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(out, defs, uses):
return sorted(set(out)|set(uses))
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
x='v'+str(N)
check('read modify write',solve([],[x],[x]),[x])
check('overwrite dead incoming',solve([x],[x],[]),[])
check('independent use',solve([],[x],['a']),['a'])
check('passthrough',solve([x],[],[]),[x])
check('empty instruction',solve([],[],[]),[])
check('other live value',solve(['a',x],[x],[x]),['a',x])
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 |
|---|---|---|---|
| read modify write | ['v1'] | ['v1'] | Passed |
| overwrite dead incoming | ['v1'] | [] | Failed |
| independent use | ['a'] | ['a'] | Passed |
| passthrough | ['v1'] | ['v1'] | Passed |
| empty instruction | [] | [] | Passed |
| other live value | ['a', 'v1'] | ['a', 'v1'] | Passed |
SHA-256 / ca5ad90226049afeb533a51a4d1ad46717abab1ad3559f3278146c4a60d73a64
3 / The verified repair
Exit 0"""Failure Map reference implementation. Python standard library only."""
import json
N = 1
observations = []
def solve(out, defs, uses):
return sorted(set(uses)|(set(out)-set(defs)))
def check(label, actual, expected):
observations.append({"check": label, "actual": actual, "expected": expected, "passed": actual == expected})
x='v'+str(N)
check('read modify write',solve([],[x],[x]),[x])
check('overwrite dead incoming',solve([x],[x],[]),[])
check('independent use',solve([],[x],['a']),['a'])
check('passthrough',solve([x],[],[]),[x])
check('empty instruction',solve([],[],[]),[])
check('other live value',solve(['a',x],[x],[x]),['a',x])
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 |
|---|---|---|---|
| read modify write | ['v1'] | ['v1'] | Passed |
| overwrite dead incoming | [] | [] | Passed |
| independent use | ['a'] | ['a'] | Passed |
| passthrough | ['v1'] | ['v1'] | Passed |
| empty instruction | [] | [] | Passed |
| other live value | ['a', 'v1'] | ['a', 'v1'] | Passed |
SHA-256 / 706addde3a8ff682e6478b8fbdc49a825979709bd488df103d023e4b54dd7859
Verification & scope
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:38:48.643333+00:00.
Case digest / 800cdcf6815b6030d3d7e0ab3b3ce4266d6878f407cc1259d408b7f8a4643883