Arte SheetsLearn. Try. Understand.

Actuarial Life Contingencies & Demography

Gompertz-Makeham Force of Mortality and Survival _t p_x Formula

Compute Gompertz-Makeham force of mortality mu(x) = A + B * c^x and exact integrated t-year survival probability _t p_x = EXP(-A*t - (B * c^x / LN(c)) * (c^t - 1)).

Avoid constant-hazard survival bias by integrating exponential aging c^(x+s) exactly

Under the Gompertz-Makeham law of mortality (Gompertz 1825; Makeham 1860), adult instantaneous mortality hazard at age x >= 0 combines age-independent background risk A_mak >= 0 (accidents and acute external causes) with exponentially accelerating biological senescence B_gom * c_age^x (B_gom > 0, c_age > 1): mu(x) = A_mak + B_gom * POWER(c_age, x). Integrating mu(x + s) from s = 0 to t yields exact t-year survival probability _t p_x = EXP(-A_mak * t - (B_gom * POWER(c_age, x) / LN(c_age)) * (POWER(c_age, t) - 1))!

Test why naive constant-hazard EXP(-t * mu(x)) dangerously underprices term life insurance: with A_mak = 0.0005 (B2), B_gom = 0.00005 (B3), c_age = 1.09 (B4), age x = 50 (B5), and horizon t = 10 years (B6), current force of mortality is mu(50) = 0.0005 + 0.003718 = 0.004218. Naive constant-hazard EXP(-10 * 0.004218) = 0.9587 implies only a 4.13% 10-year death probability, whereas exact Gompertz-Makeham integration accumulates H = 0.063991 for _10 p_50 = 0.9380 and 10-year mortality _10 q_50 = 0.0620 (6.20% — 50% higher cumulative mortality than constant-hazard!).

Life Contingency Metric (x=50, t=10, c=1.09)FormulaVerified Output
Current Force of Mortality mu(50)A_mak + B_gom * c_age^x0.004218 / yr
Naive Constant-Hazard SurvivalEXP(-t * mu(50)) (Biased High!)0.9587 (q = 4.13%)
Exact Gompertz-Makeham _10 p_50EXP(-A*t - (B*c^x / LN(c))*(c^t - 1))0.9380
Exact 10-Year Mortality _10 q_501 - _10 p_500.0620 (6.20%)

Exact Integrated Gompertz-Makeham t-Year Survival Probability _t p_x Formula

Validate A_mak >= 0, B_gom > 0, aging base c_age > 1, age x >= 0, and horizon t >= 0.

=LET(a_mk, B2, b_gm, B3, c_ag, B4, x_ag, B5, t_hr, B6, IF(OR(a_mk < 0, b_gm <= 0, c_ag <= 1, x_ag < 0, t_hr < 0), "Invalid Mortality Input", LET(h_int, a_mk * t_hr + (b_gm * POWER(c_ag, x_ag) / LN(c_ag)) * (POWER(c_ag, t_hr) - 1), ROUND(EXP(-h_int), 4))))

Instantaneous Force of Mortality mu(x) and t-Year Death Probability _t q_x Formula

Report instantaneous hazard mu(x) to 6 decimals alongside multi-year death probability 1 - _t p_x.

=IF(OR(B2 < 0, B3 <= 0, B4 <= 1, B5 < 0), "Invalid Mortality Input", ROUND(B2 + B3 * POWER(B4, B5), 6))

Try the example

Use the original values or change them to test your understanding.

Further reading