A formula for decreasing term assurance is: $$ V_0 = V_k \times \left(\frac{1-(1+r)^{-n}}{1-(1+r)^{-(n-k)}}\right) $$ where $r$ is the annual rate of interest, $V_0$ is the sum assured at time $t=0$ and $V_k$ is the sum assured at time $t=k$. The formula is normally used to obtain the original sum assured (ie $V_0)$ when the sum assured $V_k$ at time $t=k$ is known and when $r$ is known.
However, if $V_0, V_k, n, k$ are all known, is it possible to determine the annual rate of interest $r$?
As $0< r <1$ initially I thought I could use the negative binomial theorem to rearrange the original expression: $$ (1 + r)^{-n} = 1 - nr + \frac{1}{2}n(n+1)r^2 - \frac{1}{6}n(n+1)(n+2)r^3 + $$ If I let $L = \frac{V_0}{V_k}$ and if I let $m = n-k$, then the original expression is: \begin{eqnarray*} L &=& \frac{1-(1+r)^{-n}}{1-(1+r)^{-m}} \iff L - L(1+r)^{-m} &=& 1-(1+r)^{-n} \end{eqnarray*}
After substituting in expressions for $(1+r)^{-n}$ and $(1+r)^{-m}$ and then some simple tidying up I obtain the expression: $$ L\left(mr - \frac{1}{2}m(m+1)r^2 + \cdots \right) = \left(nr - \frac{1}{2}n(n+1)r^2 + \cdots\right) $$ or equivalently $$ \left(nr - \frac{1}{2}n(n+1)r^2 + \cdots\right) - L\left(mr - \frac{1}{2}m(m+1)r^2 + \cdots \right) = 0 $$ By grouping terms in the same power of $r$: $$ r(n-Lm) - \frac{1}{2}r^2\Big(n(n+1) -Lm(m+1)\Big) + \frac{1}{6}r^3\Big( n(n+1)(n+2) - Lm(m+1)(m+2)\Big) - \cdots = 0 $$ As $r>0$, dividing through by $r$ yields $$ (n-Lm) - \frac{1}{2}r\Big(n(n+1) -Lm(m+1)\Big) + \frac{1}{6}r^2\Big( n(n+1)(n+2) - Lm(m+1)(m+2)\Big) -\cdots = 0 $$
I thought as an approximate answer I could ignore powers higher than $r^2$ and simply consider the above as a quadratic in $r$. However, this doesn't yield a real value fot $r$ as the discriminant is less than $0$.
My questions are:
Have I made a mistake in the above, or is the method a dead-end?
Is there an alternative mathematical technique that yields better results?
Obviously $r$ can be obtained by trial and error when dealing with a few cases. However, this approach is not practical when dealing with millions of cases. Is there perhaps an algorithmic method to obtain $r$, and if so what?