ethereumproject / ECIPs

The Ethereum Classic Improvement Proposal
55 stars 47 forks source link

ECIP-1017 ETC monetary policy and emission schedule #15

Open arvicco opened 7 years ago

arvicco commented 7 years ago

Some thoughts on ETC Monetary Policy, copied from https://ethereumclassic.github.io/assets/Ethereum_Classic_-_The_New_Original_Innovator.pdf

Platform token aligns economic incentives of users, miners and investors Current Ethereum monetary policy undefined (unlimited token inflation) ETH policy is supposed to change with a transition to PoS unpredictably Lack of token scarcity does not support long-term investor confidence ETC transition to a long-term PoW necessitates monetary policy decision ETC commitment to a specific monetary policy: provide certainty to the market boost investor confidence creates competitive differentiator to ETH with its undefined policies Fixing ETC Monetary Policy - Options:

Keep unlimited token inflation forever, like current ETH

Pros: keeps the status quo, encourages token spending Cons: long-term monetization uncertain, not a good store of value/investment Fixed final supply with Bitcoin-like reward cut-offs (halvings)

Pros: experimentally proven to work for BTC, sustainable token monetization due to scarcity Cons: changes existing inflationary parameters, disruptive “halving” events Fixed final supply with exponential reward adjustments (per epoch)

Pros: no disruptive “halvings”, sustainable token monetization due to scarcity Cons: changes existing inflationary parameters


Slack:@snaproll (sorry, can't find you on Github) started exploring ETC supply model here: https://docs.google.com/presentation/d/1jWTiJr7FmGjTyNj80-OapxDOiRGKVwmlkQ63LOnPO24/

arvicco commented 7 years ago

Log of 2016-10-28 Monetary Policy discussion from Slack#development: https://docs.google.com/document/d/1jVM3iN1ClVrDjZ4AcJRAQyn24B1NN6Y5_X5IpLrT9Ss

mikeyb commented 7 years ago

Currently a Pull Request for ECIP-1017.

Reading through the details and will add my comments/concerns as necessary.

realcodywburns commented 7 years ago

I am adding a reference to this issue on the published ecip, I plan to close the issue, if there is no objection, on block 3,277,945.

snaproII commented 7 years ago

Thesis uploaded to GitHub for easier retrieval, if needed:

https://github.com/snaproII/Crypto/blob/master/ECIP-1017/Thesis.md

snaproII commented 7 years ago

London Presentation slides uploaded to GitHub for easier retrieval, if needed:

https://github.com/snaproII/Crypto/blob/master/ECIP-1017/London_Presentation.md

sorpaas commented 7 years ago

ECIP-1017 has been accepted. Maybe we can close this issue?

rtkaczyk commented 6 years ago

The document should clarify how to calculate the rewards with regard to rounding down. Especially it should clearly define what constitutes a single rounded-down reward, and where rounding should be deferred.

In its current form, it may lead to different interpretations and implementations that may result in a network split in further eras. See these issues for details: https://github.com/ethereumproject/go-ethereum/issues/352 https://github.com/paritytech/parity/issues/6523

whilei commented 6 years ago

cc/ @snaproII

Here's my proposal for addressing these two possible discrepancies -- at least a place to start discussion from:

Full disclosure: this is how it's currently implemented in geth classic. I'm not advocating these methods because I'm lazy and don't want to change, nor because I think I'm particularly right... they just seem to make the most sense to me, of course pending further counterarguments ;)

TODO:

rtkaczyk commented 6 years ago

Block winner reward bonus for including uncle(s) should use looping

I think it's an implementation detail that should not be suggested in the document. Whether it's looping, addition, or multiplication it's all fine as long it's clear that the single uncle reward is already a rounded down integer.

a winning block with 2 uncles would get a proportionally higher per-uncle reward than a block with just one uncle.

This is certainly a good reason to formalise those rewards as such.

It should also be clarified that the dividend (block reward) in division by 32 should be rounded down prior to the division.