●В каждой задаче на ренты и страховки мы пишем длинную сумму: дисконт умножить на вероятность дожития, и так по всем годам до 100. Утомительно. А что, если один раз «упаковать» дисконт и дожитие в одно число для каждого возраста — и дальше считать ренту простым делением? Эти числа и есть коммутационные функции \(D_x\), \(N_x\), \(M_x\).
Базовый «кирпич» — \(D_x = v^x l_x\): дисконт-множитель \(v^x\) за \(x\) лет, умноженный на число доживших до возраста \(x\). То есть \(D_x\) сразу несёт в себе и «деньги дешевеют», и «доживших всё меньше». Сложив \(D\) по возрастам, получаем \(N_x\) — и тогда пожизненная рента это просто \(\ddot a_x = N_x/D_x\). Длинная сумма свернулась в одно деление.

Рисуем три кривые по возрасту \(x\): дисконт \(v^x\) (синяя, плавно падает), доля доживших \(l_x/l_0\) (зелёная, долго держится у единицы и обрушивается к старости) и их произведение \(D_x/l_0\) (красная). Видно: \(D_x\) в молодости почти повторяет дисконт, а к старости прижимается к нулю, потому что доживших всё меньше — один множитель вобрал в себя оба эффекта. Слайдер — ставка \(i\): выше ставка — круче падает дисконт и вся красная кривая. Покрутить: python viz.py --interactive.
✍️ Разберём на числах
Возьмём \(i = 4\%\) (\(v = 1/1{,}04 = 0{,}9615\)). При \(x = 60\): \(l_{60} = 86316\), \(v^{60} = 0{,}09506\), значит \(D_{60} = 0{,}09506 \cdot 86316 = 8205{,}2\). Сложив все \(D\) от 60 до 100, получим \(N_{60} = 115179\). Тогда \(\ddot a_{60} = N_{60}/D_{60} = 115179/8205{,}2 = 14{,}04\) — ровно то значение ренты, что в таблице. (Все числа проверены python по Актуарным иллюстративным таблицам ЦБ РФ 2016.)
📐 Формула
\(D_x = v^x l_x\), \(\;N_x = \sum_{y=x}^{\omega} D_y\), \(\;M_x = \sum_{y=x}^{\omega-1} v^{y+1} d_y\), где \(v = 1/(1+i)\), \(l_x\) — число доживших, \(d_y = l_y - l_{y+1}\) — число умерших, \(\omega\) — предельный возраст. Готовые отношения: \(\ddot a_x = N_x/D_x\), \(\;A_x = M_x/D_x\).