Page actions
instrument implementation / implementation-contract
Life Table / Survival Probability Calculator implementation
A source-bound implementation contract for Life Table / Survival Probability Calculator; deployment and executable qualification remain separate.
Binding contract
This record describes what an executable surface must bind and validate. It does not claim that a public calculator, package, or production route is deployed.
- Record owner
- Guth Instruments
- Lifecycle
- verified-clean
- Evidence ID
- t7-109
- Effect
- Computation or source lookup only
Input and validation requirements
The specification does not define explicit validation for qx outside [0,1], and life expectancy becomes undefined when survivorship lx is zero. It also calls inputs rates while supplying a qx formula, creating a probability-versus-hazard convention hazard.
Required corrections
No binding erratum is attached to this unique-name record. Implementers must still preserve the declared units, domain, and failure behavior.
Inspectable interface fixture
The sample below is evidence for interface and validation tests, not a production implementation.
{
"inputs": {
"radix": 100000,
"start_age": 0,
"intervals": [
{
"age": 0,
"width_years": 1,
"qx": 0.01
},
{
"age": 1,
"width_years": 1,
"qx": 0.02
},
{
"age": 2,
"width_years": 1,
"qx": 0.03
},
{
"age": 3,
"width_years": 1,
"qx": 1
}
]
},
"expected_outputs": {
"survivorship_lx": {
"age_0": 100000,
"age_1": 99000,
"age_2": 97020,
"age_3": 94109.4,
"age_4": 0
},
"survival_probability_to_age_3": 0.941094,
"restricted_life_expectancy_at_age_0_years": 2.901294
},
"reference_data": {
"radix_l0": 100000,
"radix_source_convention": "widely tabulated standard value; standard actuarial life-table radix",
"qx_rows": [
{
"age": 0,
"width_years": 1,
"qx": 0.01,
"source_convention": "widely tabulated standard value; textbook illustrative life-table row"
},
{
"age": 1,
"width_years": 1,
"qx": 0.02,
"source_convention": "widely tabulated standard value; textbook illustrative life-table row"
},
{
"age": 2,
"width_years": 1,
"qx": 0.03,
"source_convention": "widely tabulated standard value; textbook illustrative life-table row"
},
{
"age": 3,
"width_years": 1,
"qx": 1,
"source_convention": "widely tabulated standard value; explicit mathematical horizon-closing boundary"
}
],
"person_years_method": "uniform distribution of deaths within each interval"
},
"working": "l0=100000. l1=100000×(1−0.01)=99000. l2=99000×(1−0.02)=97020. l3=97020×(1−0.03)=94109.4. l4=94109.4×(1−1)=0. Survival to age 3=l3/l0=94109.4/100000=0.941094. L0=1×(100000+99000)/2=99500. L1=1×(99000+97020)/2=98010. L2=1×(97020+94109.4)/2=95564.7. L3=1×(94109.4+0)/2=47054.7. T0=99500+98010+95564.7+47054.7=290129.4 person-years. e0=T0/l0=290129.4/100000=2.901294 years."
}Other records
Sources and evidence
These pointers bind the page to evidence. They do not grant authority or collapse verification into deployment.
VERIFIED_LEDGER.jsonevidence-tranche7/tranche7-results.json