Skip to content
This repository has been archived by the owner on Oct 4, 2019. It is now read-only.

ECIP-1039: Monetary policy rounding specification #83

Merged
merged 3 commits into from
Nov 23, 2017
Merged

Conversation

whilei
Copy link
Contributor

@whilei whilei commented Nov 16, 2017

(Rendered)

Abstract

This ECIP proposes a precise specification for eventual rounding issues around
ECIP1017 Monetary Policy calculation, particularly around

  • block winner reward calculation
  • block winner reward for including uncles
  • block uncle miner reward for having uncles included in the winning block

The content of the proposal deals exclusively with reward calculation beginning with Era 2.

cc @rtkaczyk, @snaproII

Rel #15, ethereumproject/go-ethereum#352

sorpaas
sorpaas previously approved these changes Nov 16, 2017
Copy link
Contributor

@sorpaas sorpaas left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Also added the PR to Parity. Please help review that.

_eg._
```
blockWinnerReward = blockWinnerRewardAtEra(n) # Block winner reward rounds down once prior to division
uncleInclusionReward = floor(1/32 * blockWinnerReward) # Block uncle inclusion reward rounds down per uncle
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it's better to change this to blockWinnerReward / 32 and then define / as "floor divide" because this symbol is also used above. Besides, using 1/32 might cause confusion of whether the calculation is done in floating points.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changed in 537451d

shanejonas
shanejonas previously approved these changes Nov 16, 2017
@whilei whilei dismissed stale reviews from shanejonas and sorpaas via 537451d November 16, 2017 05:17
@rtkaczyk
Copy link

LGTM

@realcodywburns
Copy link
Contributor

realcodywburns commented Nov 16, 2017 via email

@whilei
Copy link
Contributor Author

whilei commented Nov 16, 2017

@rtkaczyk
Copy link

Also: mantis

@whilei
Copy link
Contributor Author

whilei commented Nov 22, 2017

Well it sounds like this is a go. Final call for criticism or refinements... t-minus 24 hours and I'll merge it.

@Dexaran
Copy link
Member

Dexaran commented Dec 17, 2017

Alright.

We have successfully implemented the monetary policy and it's the time for me to ask the question: what is the main goal of this fixed-supply monetary policy?

As I can see at the London presentation the main goal of this monetary policy is (1) to attract investors, (2) boost the price and increase a network effect of ETC chain thus boosting the adoption, (3) establish a MP which sets out to achieve "optimal total investment". Is it so or am I missing something?

@whilei
Copy link
Contributor Author

whilei commented Dec 18, 2017

@Dexaran I'm not sure what the goal of your question is.

There are a lot of resources available around informing the monetary policy specification and reasoning, which have been around for ~8 months, including and beyond that one presentation.

Or are you looking for a single thesis statement you can point specifically to for some reason? Or are you trying to begin a discussion about it?

@Dexaran
Copy link
Member

Dexaran commented Dec 18, 2017

I'm looking for a kind of single thesis explanation about it so that I can refer to. I'm asking here because I'm looking for an answer from those who decided to propose this changes.

As for me, it seems to be obvious that changing a monetary policy from "unlimited supply" to "capped supply" will cause a price increase. It's just a straight logic and a simple math.

The question is: what is the purpose of this? As for me it seems that the answers are (1) to attract investors and (2) increase network effect.

But I am not the one who proposed this changes. And now I'd like to know if I am missing the point or no.

I'm not looking for opportunity to start a discussion because this makes no sense. It is already implemented and I don't see any value in rolling it back. A simple answer would be sufficient.

@whilei
Copy link
Contributor Author

whilei commented Dec 18, 2017

Oh, OK. Then yea, I think you got the right idea. Supply, demand, value.

But as for "purpose," I think you might be better off thinking of "purposes," since the final policy was a result of a lot of people's input, compromises, and cooperative decision making. There are purposes, causes, and effects for stakeholders, gladhanders, theorists, enthusiasts, hobbyists, hecklers...

Nor am I the one who proposed the changes, but - and if I may go so far - I've heard @snaproll once say the purpose of his proposal was to "help find the best solution to an annoying problem so we can get the fuck on with our lives."

And if I've misquoted him, I'll gladly claim the sentiment instead for myself ;)

@snaproII
Copy link
Contributor

@whilei is pretty close. The goal for me was to "remove the variable, so we can re-focus on utility." That was the initial driver for attacking this problem. If the data/arguments suggested that keeping the original emission rates was just as good, I think everyone would have been fine with that. But it turned out 5M20 was better.

@snaproII
Copy link
Contributor

Also, @Dexaran, "removing the variable" also means to minimize hesitation and skepticism. The crypto space is full of scam coins with wacky emission rates, emission adjustments made on a whim, premines, and the most insane concept ever: coins with the majority of total emission being from the premine that then move/propose a move to Proof of Stake. This is all noise that creates complexity without any utility. By attempting to mirror bitcoin's emission rate, the most well known emission rate, the "variable" of Monetary Policy is removed from ETC, and we can re-focus on if this decentralized script crypto can actually change the world or not - we all think it is interesting, but there still is nothing created that you can point to and say "LOOK, LOOK! THATS THE SMART CONTRACT KILLER APP!"

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants