Cálculo da recompensa de bloco na Babilônia
2 respostas
- votos
-
- 2019-10-28
Afórmulaexata usadana Babilôniapode serencontrada aqui:
https://gitlab.com/teezos/tezos/blob/mainnet/src/proto_005_psbabym1/lib_protocol/baking.ml#l190
Isso chega a:
((16 000 000 * (8 + 2 *e/32))/10)/(1 +p)
Masnote queestes são inteiro divisões,portanto,no seuexemplo:
8 + 2 * 26/32=8 + 52/32=8 + 1 =9
16 000 000 μꜩ * 9=144 000 000 μꜩ
144 000 000 μꜩ/10=14 400 000 μꜩ=14,4 ꜩ
Edit: Estefeedback é dogrupo TEZOS Desenvolvedores TG.Vocêpode veressaplanilhaparaentendermelhor o cálculo das recompensas debloco: https://files.fm/u/hb5eazkk
The exact formula used in Babylon can be found here:
https://gitlab.com/tezos/tezos/blob/mainnet/src/proto_005_PsBabyM1/lib_protocol/baking.ml#L190
This comes to:
((16 000 000 * (8 + 2 * e / 32)) / 10) / (1 + p)
But note that these are integer divisions, hence, in your example:
8 + 2 * 26 / 32 = 8 + 52 / 32 = 8 + 1 = 9
16 000 000 μꜩ * 9 = 144 000 000 μꜩ
144 000 000 μꜩ / 10 = 14 400 000 μꜩ = 14.4 ꜩ
Edit: This feedback is from the Tezos developers TG group. You can view this spreadsheet to better understand the calculation of block rewards: https://files.fm/u/hb5eazkk
-
Fórmula correta deve serCorrect formula ought to be
- 0
- 2019-10-28
- Arthur B
-
(16 000 000 * (256 + 2 *e))/(320 * (1 +p))(16 000 000 * (256 + 2 * e)) / (320 * (1 + p))
- 1
- 2019-10-28
- Arthur B
-
Obrigado!Vocêpoderia adicionarfontes/referência a alguma descriçãoe implementação?Thanks! Could you please add sources/reference to some description and implementation ?
- 0
- 2019-10-28
- Ezy
-
- 2019-10-28
Este é umbugna Babilônia causadopelo uso de uma divisãointeiraem um lugarerradoe seráfixadonapróximaproposta.
Porenquanto vocêpode usar a seguintefórmulapara calcular as recompensas:
Afórmula é:((16 000 000 * (8 + floor(2 * e / 32))) / 10) / (1 + p)
Maisinformações: https://twitter.com/iguerdune/status/1184095825296871425This is a bug in babylon caused by using an integer division in a wrong place and will be fixed in the next proposal.
For now you can use the following formula to calculate the rewards :
The formula is :((16 000 000 * (8 + floor(2 * e / 32))) / 10) / (1 + p)
More info : https://twitter.com/iguerDUNE/status/1184095825296871425-
Obrigado!Vocêpoderiaporfavorfornecerfontes?Contexto?Implementaçãoetc?Thanks! Could you please provide sources ? Context ? Implementation etc ?
- 0
- 2019-10-28
- Ezy
-
Este é realmente umbugna Babilônia.Não deve haver afunção do chão,maseles usaram uma divisãointeira que causouesse comportamento. Isso será corrigidonapróximaproposta.This is actually a bug in babylon. there should not be the floor function, but they used an integer division which has caused this behavior. This will be fixed in the next proposal.
- 0
- 2019-10-28
- FiFtHeLeMeNt
-
Sim,então seria ótimo se vocêpudesse contextualizar a respostae fornecermaisinformações,linksetcpara quetodospossamentenderYes so it would be great if you could contextualize the answer, and provide more infos, links etc so that everyone can understand
- 0
- 2019-10-28
- Ezy
-
Eufornecimaisinformações :)I provided more info :)
- 0
- 2019-10-28
- FiFtHeLeMeNt
-
Oi Estanão éinformação oficial.Seriapossível você se referir a documento oficial ouimplementaçãotalvez?Hi this is not official info. Would it be possible you refer to official doc or implementation maybe ?
- 0
- 2019-10-28
- Ezy
Parece haver umerrono cálculo da recompensa doblocona Babilônia.
Porexemplo,nobloco 664451 havia 26endossos.Assim,a recompensa deve ser
16 * (0.8 + 0.2 * 26 / 32) = 15.4 XTZ
(fonte ).Mas opadeirotem 14,4 xtz.Alguémpodeexplicar como a recompensa é realmente calculadae por que há uma discrepânciaentre o valoresperadoe a recompensa real?