Bitcoin Forum
June 23, 2018, 08:11:10 PM
 News: Latest stable version of Bitcoin Core: 0.16.1  [Torrent]. (New!)
 Home Help Search Donate Login Register
 Pages: [1]
 Author Topic: [Math] Need an equation of block solving expectation  (Read 1057 times)
pent
Hero Member

Offline

Activity: 490
Merit: 500

 March 01, 2012, 01:11:04 PM

I see that one provided here is not correct: https://en.bitcoin.it/wiki/Difficulty#How_soon_might_I_expect_to_generate_a_block.3F

time = difficulty * 2**32 / hashrate

I suppose value expectation here is "difficulty * 2**32", but this equation provides incorrect solutions for current network values.

I was about to use formula for discrete finite random value: http://en.wikipedia.org/wiki/Expected_value

But the Bitcoin target is uint256, and i see no possible way to calculate it.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
pent
Hero Member

Offline

Activity: 490
Merit: 500

 March 01, 2012, 03:56:02 PM

Sorry guys, all is fine

M = D * 2**256 / (0xffff * 2**208) = D * 2**256 / 2**224 = D * 2**32

or

M = MaxTarget * 2**32 / Target
elrodvoss
Member

Offline

Activity: 85
Merit: 10

 June 22, 2012, 05:06:01 AM

I saw this and I was hoping that someone could help me figure out the math.

What I want to do in a excel file is enter in the Difficulty and Mhash/sec and give me the coins per day.

from that I should be able to add on any other figure, just need the basic math for difficulty/mhash.

elrodvoss
Member

Offline

Activity: 85
Merit: 10

 June 22, 2012, 05:13:18 AM

Think I answered my own question:

time = difficulty * 2**32 / hashrate

But what does 2**32 stand for?

i understand that when I enter it into excel it would be

=sum difficulty *2??32/hashrate

I don't understand what the 2**32 equals, but I assume that number is times the difficulty and then divided by the hashrate

nave
Donator
Full Member

Offline

Activity: 161
Merit: 100

 June 22, 2012, 05:32:10 AM

Think I answered my own question:

time = difficulty * 2**32 / hashrate

But what does 2**32 stand for?

i understand that when I enter it into excel it would be

=sum difficulty *2??32/hashrate

I don't understand what the 2**32 equals, but I assume that number is times the difficulty and then divided by the hashrate

It's 2 raised to the 32nd power. Or in excel 2^32, equal to 4 294 967 296.
Pieter Wuille
Legendary

Offline

Activity: 1050
Merit: 1005

 June 22, 2012, 11:42:39 AM

Difficulty 1 corresponds to a maxtarget 0x00000000FFFF0000000000000000000000000000000000000000000000000000, or a probability of 65535/2**48. Difficulty D corresponds to a probability of 65535/(D * 2^48).

aka sipa, core dev team

Tips and donations: 1KwDYMJMS4xq3ZEWYfdBRwYG2fHwhZsipa
Sukrim
Legendary

Offline

Activity: 2394
Merit: 1002

 June 22, 2012, 12:14:02 PM

Difficulty 1 corresponds to a maxtarget 0x00000000FFFF0000000000000000000000000000000000000000000000000000, or a probability of 65535/2**48. Difficulty D corresponds to a probability of 65535/(D * 2^48).
And 2^32 is a number very close to 65535/2^48, so it is often used in calculations that don't need to be 100% exact or where a few Satoshis more or less don't matter.

https://www.coinlend.org <-- automated lending at various exchanges. No fees(!).
Mail me at Bitmessage: BM-BbiHiVv5qh858ULsyRDtpRrG9WjXN3xf
 Pages: [1]