22

https://bitcoin.stackexchange.com/a/3908/659 says:

Luckily, you'll only have to wait five minutes on average for a block to be found (blocks are one every ten minutes, so the expected delay until the next block is five minutes).

Upon reading it, I instantly felt that this was incorrect, and that the expected time until the next block is always 10 minutes (assuming the network hash rate matches the current difficulty).

If the blocks were generated exactly every 10 minutes, than it would be true that the expected time would be 5 minutes, but they're not.

So what's the real expected time? Please make a plausible argument for why it is so.

1 Answer 1

19

10 minutes. Assuming, as you say, that the current network hashrate matches the difficulty - otherwise it is proportionally higher or lower.

Block finding is a Poisson process. The rate parameter λ is chosen so that 2016 blocks on average are found every 2 weeks, and since in such a process the expected number of events is proportional to the time span, it means λ is 1/(10 minutes).

The time until the next event (the next block found in our case) follows the exponential distribution with mean 1/λ, which is 10 minutes. This distribution is memoryless - the amount of time spent waiting for a block has no effect on the amount of time left to wait. When a block is found the expected time until the next block is 10 minutes (which is intuitive), and it is also 10 minutes at any other time.

If blocks arrived once every 10 minutes like clockwork, the expected time until the next block at a random point would be indeed 5 minutes - but then we wouldn't have to worry about expectations, we'd know exactly when the next block will be found.

In the future, the decreased generation reward might cause the total hashrate to fluctuate as transaction fees accumulate, causing reduced variability in block finding times, and reduced expected waiting time.

13
  • 4
    Pick any random point in time. The average time from that time to the next found block is 10 minutes. Also the average time from that time back to the previous block is also 10 minutes. Also, the average time from the previous block to the following block is also 10 minutes! Try to get your intuition to accept that! Jun 7, 2012 at 8:40
  • 4
    @DavidSchwartz: That's wrong. The average time from the last block to the next block is 20 minutes, and follows the negative binomial distribution. There's no escaping the additivity of expectation. Jun 7, 2012 at 8:51
  • 4
    Meni is right! This is not a contradiction because the 10 minute average block time is averaged over blocks. Whereas if you pick a random time, you're averaging over time. Averaging over blocks, every block interval is equally weighted. Averaging over time, longer block intervals get a higher weight (because they span more time) and hence the average is higher. Jun 7, 2012 at 9:26
  • 2
    So can we say that the expected time between blocks is 10 minutes, but the expected time between the previous and the next block (right now) is 20 minutes, because 'right now' is likely to be a bigger than average gap between blocks? It's certainly counter-intuitive if that's the case. Jun 7, 2012 at 9:49
  • 8
    @ChrisMoore: Your last comment and David's last comments are correct. It's like the problem with 2 buses, one with 10 passengers and one with 20. If you ask a random bus driver how many passengers were on his bus you get 15 on average, but if you ask a random passenger how many passengers were on his bus you get 16.67 on average. Jun 7, 2012 at 9:54

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.