Below is a proposal for reducing the penalty miners pay for larger block size by [I would argue] at least 6000%...
When miners produce simultaneous blocks at the end of the block chain, each peer individually chooses which block to trust. (In the absence of other considerations… peers usually trust the first block they see.)
This leads to the condition where miners are incentivized to produce the smallest block size (minimum number of transactions) to minimize propagation of their blocks.
Is it possible to mitigate this effects by establishing the rule that, when the block chain forks and there are 2 blocks at the same block height, miners always choose the block with the lowest hash (both blocks would obviously have hash below the target).
In the event that 2 blocks are solved nearly simultaneously, the outcome of which block is accepted by the majority of other miners will be deterministic based on their headers, not on network propagation. From the perspective of the miner who just found a solution, they needn’t worry about the size of their block or how quickly it propagates through the network. They simply hope it’s header is less than any other possible competing block.
Could this lead to miners continuing to mine at a given block height, even if a solution has been broadcast? No, because the moment they become aware of a solution, their effective target has just been raised. If miners collectively agree to accept only the lowest hash, there is no incentive to attempt to compete below the highest known block height.
In the event that 2 blocks (a1 and a2) are solved at height n and n+1 respectively, before block b1 fully propagates, it raises the potential conflict if b1 would have orphaned a1. This would be the case if the hash of b1
To calculated the expected reduction in block orphanage due to network propagation, let’s assume 20s propagation time with a block solution following an exponential distribution with a mean time of 300sec (5 min) [note: this is towards a worst case scenario].
Integration the exponential PDF from 290sec to 310sec results in an orphan probability of 2.45%, this would correspond to a propagation time of 20sec while a competitors propagation time is 0sec, clearly an unacceptable disadvantage for miners.
However, let’s calculate the probability of the above scenario, where b1 and a1 are found simultaneously, but a2 is found while both are still propagating through the network. For sake of simplicity, let’s assume that a1 has negligible propagation time. With the whole network working on a2, the probability of a2 being solved in the first 20sec is 6.45%. Therefore the probability of both of these events occurring simultaneously is 0.158%.
To further refine this, let’s assume that block a1 actually propagates through the network at a linear speed, so only part of the network is working on a solution to extend a1 [the linear propagation rate is probably a bad assumption, I’m just schmooing lambda of the exponential distribution, but this would overestimate the probability of a2 being found]. Using linear propagation to half the network, then being overtaken by b1, the probability of a2 being solved before b1 fully propagates is 1.65%, which results in an orphan rate for b1 of less than 0.05%.
This would mitigate the effect of block size on orphanage by 6000%
(I’m a physicist, not a computer scientist, I hope this makes sense, and furthermore I hope this is a viable solution to the tx/sec limit being imposed by miners!)…