FA-63347 / Actuarial life tables / Member archive
Life table survivors from mortality rates: The terminal rate of one is rejected · case 02
Every properly closed table is reported as invalid.
Case contract
Input q (per 100000, last must be 100000 else 'open table'; any outside [0,100000] -> 'invalid q') and radix (<=0 -> 'invalid radix'). l_0 = radix; l_{k+1} = l_k*(1-q_k) rounded half-up at every age; d_k = l_k - l_{k+1}. Return [l, d].
Why this case matters
Life-table arithmetic compounds across ages, so one misplaced index or assumption shifts every downstream value.
One recorded failure
Sample boundary fixtureThis sample comes from the broken implementation of a controlled reproducer.
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| closed table 0 | "invalid q" | [[73425, 72526, 71503, 70373, 69117, 67704, 66144, 64408, 62491, 60401, 0], [899, 1023, 1130, 1256, 1413, 1560, 1736, 1917, 2090, 60401]] | Failed |
MEMBER ARCHIVE
The complete case is available to members.
This record includes three runnable implementations, regression fixtures, execution results, and source hashes.
Member access is invitation-based. Sign in with your invited account to inspect the sources.
Sign in to the archive ↗