lifelib v0.15 Releases#
To update lifelib, run the following command:
>>> pip install lifelib --upgrade
If you’re using Anaconda, use the conda command instead:
>>> conda update lifelib
lifelib v0.15.0 (22 August 2026)#
New Library#
This release adds a new library, uklib.
uklib packages seven reference liability cash flow projection
models for the individual life insurance products sold in the United
Kingdom, plus the pension annuity, and, for each model, the product
specification and technical notes it was built from.
See the uklib page for more details.
The four protection models are Term_UK_A (guaranteed-premium term
assurance), CI_UK_S (critical illness cover), IP_UK_S (income
protection) and WOL_UK_S (whole of life). The two savings models
are WP_UK_A (with-profits) and ULB_UK_S (unit-linked investment
bond), and PA_UK_S is the pension annuity. The grid letters follow
the same convention as uslib: _A marks an annual projection
step and _S a monthly one, and all seven models project one model
point at a time.
The pension annuity is in the library because annuities are the
dominant liability of UK life insurers and the centrepiece of the
Solvency UK matching adjustment. The coverage otherwise differs in kind
from uslib’s, because the UK retail deferred annuity market is
negligible, while the pension annuity bought with a pension pot is the
product that matters.
uklib is shaped exactly like uslib. Each model projects
one product’s gross liability cash flows, such as premiums, claims,
surrenders, expenses and commission, on the product’s own processing
order and timing. None of the models discounts, so discounting,
reserving and capital are left to a layer that consumes the cash flows.
Every model has the same two Spaces: Data, which reads the input
files, and Projection, which is parameterized by point_id. The
inputs are CSV files kept outside the model folder so that they can be
edited or swapped in place.
Beside each model sit the documents it was built from:
product-spec.md, a representative product specification composed
from publicly available documentation of real products;
technical-notes.md, the liability cash flow model on paper, with
state variables, recursions, processing order and a numeric worked
example; model.md, how the model implements those notes; and
sources.md, every source cited. The tests ship inside the library
and run against your own copy: each model reproduces the worked example
in its technical notes, and tests/test_model_conventions_uk.py
asserts the shared model structure and Cells names across all seven
models.
Warning
uklib is in its draft stage, and its contents are subject to
change as development continues.
Warning
The uklib models are mechanics demonstrations, not pricing or
reserving results. The contractual elements are sourced, but every
decrement basis shipped with the library is a standardization
introduced for the reference implementation, because the CMI tables
that a UK insurer would actually use are restricted to Authorised
Users and cannot be redistributed. Nor is there any public premium
rate card, because UK protection and annuity pricing is quote-driven.
Replace both with company data before drawing any conclusion from the
numbers.
Changes#
The documents and docstrings in
uslibare updated. Product sources are now cited by source tag in the published documents, with the source details kept insources.md. Specification citations of the form[S1]are now plain bracketed text rather than links, which is the citation conventionuklibalso follows. None of theuslibmodels behaves differently.