Infinite bullet research scales in effectiveness O(log log X), where X is the amount of rockets you have completed. This is rather unsatisfying.

* using big-O notation typical in algorithm analysis

Because the infinite research for bullet damage doubles in cost each iteration, if you continue researching bullet damage, you are essentially launching as many rockets as you have all game simply to progress one more step down the bullet damage chart. So, O(bullet upgrades) = O(log rockets) is obvious.

The only measure of how useful bullet upgrades is how quickly you can kill biters. Because the 40% damage increase applies to the base damage, not the upgraded damage, it quickly reaches a point where you need twice as many research upgrades as you already have to kill biters twice as fast. In other words, O(dead biters) = O(log bullet upgrades).

The result is that the return on bullet damage upgrade is O(log log rockets), which flattens out very quickly. Obviously you can make it go faster by adding more rockets, but unless you can double the number of rockets for each new upgrade, this is not a viable way of beating the asymptotic growth.

I suggest making it more in line with mining production, which is O(log rockets) in terms of effectiveness.