-
Notifications
You must be signed in to change notification settings - Fork 1k
Stepped Curve Primitive #9556
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Stepped Curve Primitive #9556
Conversation
…-inflation-schedule
We must ensure that whatever lands in the code cannot eventually drop validator rewards so low that our security collapses. Amusingly, the halvings plus selfish mining shall eventually kill bitcoin this way. See On the instability of Bitcoin without the block reward by Miles Carlsten, Harry Kalodner, Matt Weinberg, and Arvind Narayanan. I've not looked at the specifics here, but internally Jonas showed us several schemes that all retain security, and those should find their way into his proposals, if they did not do so already. Around this, our security would be a function of self stake and rewards vs total ecosystem market cap[1], so "retain security" does NOT mean that validators would even bother to keep validating in every corner case. That's another more human question, but one would could probably be ignored for code changes. [1] Under current analysis, maybe imho the total ecosystem market cap could be softened somewhat, but self stake and rewards looks fundemental, even if kinda apples plus oranges there. |
I'm more just acting as the unopinionated hand for OpenGov here, but I believe there's another ref coming in soon that puts the inclusion of Jonas' suggested changes up for vote. This ref is expected to pass as well afaik. This code here is just generic stepped curve math, but it does include the ability to add LBs, which could help with the aforementioned issues. |
This reverts commit d31f0c1.
Multiple step types display the asymptotic property, rename for clarity.
This PR adds a stepped curve primitive in anticipation of Ref 1710. Though it's usefulness will likely extend beyond that.