You could attempt to create a dynamic coefficient though, but the factors that need to go in the equation are external and cannot be detected by the network. There were proposals flying around that enables network to dynamically determine that coefficient by using a parallel distributed network that decides it. Could be done, but that kind of complex systems are prone to unforeseen consequences. I hope someone tries though, would be a good experiment.
EDIT: One of such proposals is
Encoin.
I don't want external information to be used.
The coefficient there (1 million in your example) can not be known. Putting a constant there won't make it better, since we don't know how the network, the energy industry and computing power will evolve.
To clarify, I didn't mean to use a coefficient or constant. I meant that exponents would be used. In the "1 million difficulty" example, I meant that 1,000,000:10 would be the ratio for the exponents (a difficulty change of 1 million fold would change the reward by 10 fold).
We don't need exact information about the energy/computers. Some inflation or deflation is just fine. This would just
reduce the deflation.
From an investor's standpoint, it's far worse, because any technological breakthrough in one of those areas can destroy the currency. If the currency is to remain pure and predictable, Bitcoin's way of doing it is probably the best.
A technological breakthrough is something that I didn't consider.
However, if it is using something like the 1,000,000:10 ratio, then it would need to be a MAJOR technological breakthrough to destroy the currency.
In the 1,000:000:10 example, a 64 fold increase in mining rate would double the rate of coin production.