Nominal risk-free rate = (1 + risk-free rate) x (1 + rate of inflation) - 1
Why is one being subtracted at the end?
When working with rates, you have to also work with the base.
So you have $100 (I'll use US currency because I have a US keyboard). If you have a real rate of return of 20% and an inflation rate of 5%, you can calculate the final value as
$100 * (1 + .2) * (1 + .05) = $126
Now you want to know your gain, so you subtract out the original $100.
$126 - $100 = $26
So $26 is how much the nominal value increased.
100% * $26 / $100 = 26%
Your example combined that into the same step. Your base is one, because you are working with rates. So you have to add one to each before multiplying and subtract one to get back to just a rate. You could also write that equation like
1 + i = (1 + r) * (1 + p)
But if you want to get back to the rate in the end, you can subtract the base (one) at the end.
i = (1 + r) * (1 + p) - 1
The other way to write it is as
i = r + p + r * p
But that may be harder to follow.
The base is always going to be one with rates, as they are ratios to the base. The ratio of the base to the base is one. E.g.
$100 / $100 = 1