Bitcoin Forum
May 24, 2024, 03:47:44 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: [Math] Need an equation of block solving expectation  (Read 1154 times)
pent (OP)
Hero Member
*****
Offline Offline

Activity: 490
Merit: 500



View Profile
March 01, 2012, 01:11:04 PM
 #1

Please help to draw an equation of block solving expectation (in hashes) depending on current difficulty/tarrget.

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.
pent (OP)
Hero Member
*****
Offline Offline

Activity: 490
Merit: 500



View Profile
March 01, 2012, 03:56:02 PM
 #2

Sorry guys, all is fine Smiley

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

or

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

Activity: 87
Merit: 10


View Profile
June 22, 2012, 05:06:01 AM
 #3

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.

Thanks in advance

elrodvoss
Member
**
Offline Offline

Activity: 87
Merit: 10


View Profile
June 22, 2012, 05:13:18 AM
 #4

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 Offline

Activity: 162
Merit: 100



View Profile
June 22, 2012, 05:32:10 AM
 #5

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
*
qt
Offline Offline

Activity: 1072
Merit: 1174


View Profile WWW
June 22, 2012, 11:42:39 AM
 #6

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).

I do Bitcoin stuff.
Sukrim
Legendary
*
Offline Offline

Activity: 2618
Merit: 1006


View Profile
June 22, 2012, 12:14:02 PM
 #7

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.
https://www.bitfinex.com <-- Trade BTC for other currencies and vice versa.
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!