Skip to content

Commit 421e644

Browse files
rphairKtorZ
andauthoredJul 6, 2023
CIP-0007 | Adjust preamble and structure w.r.t CIP-0001 (cardano-foundation#537)
* cip7 update for new CIP standard * forgot to apply the new Authors: format * missed a single-element list (breaking into bullets) Co-authored-by: Matthias Benkort <[email protected]> * new Ledger RSS criteria; fill out into bullets with checkboxes Co-authored-by: Matthias Benkort <[email protected]> * checkboxes all through Plan to Active; RSS Ledger approval is part of Implementation, not Acceptance Co-authored-by: Matthias Benkort <[email protected]> --------- Co-authored-by: Matthias Benkort <[email protected]>
1 parent 5968378 commit 421e644

File tree

1 file changed

+32
-28
lines changed

1 file changed

+32
-28
lines changed
 

‎CIP-0007/README.md

+32-28
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,25 @@
11
---
22
CIP: 7
33
Title: Curve Pledge Benefit
4-
Authors: Shawn McMurdo <shawn_mcmurdo@yahoo.com>
5-
Discussions-To:
6-
Comments-Summary:
7-
Comments-URI:
4+
Authors:
5+
- Shawn McMurdo <shawn_mcmurdo@yahoo.com>
6+
Category: Ledger
87
Status: Proposed
9-
Type: Standards
108
Created: 2020-08-11
9+
Discussions:
10+
- https://github.com/cardano-foundation/CIPs/pull/12
11+
- https://forum.cardano.org/t/protocol-parameters-pledge-and-sybil-resistance/35100
12+
- https://github.com/input-output-hk/cardano-node/issues/1518
13+
Implementors: []
1114
License: Apache 2.0
12-
Post-History: https://forum.cardano.org/t/protocol-parameters-pledge-and-sybil-resistance/35100 and https://github.com/input-output-hk/cardano-node/issues/1518
1315
---
1416

15-
## Summary
16-
17-
Use a n-root curve instead of current linear a0 pledge benefit factor in the rewards equation.
18-
1917
## Abstract
2018

2119
Modifying the current rewards calculation equation by substituting a n-root curved relationship between pledge and pledge benefit rewards for the current linear relationship will better achieve the original design goal of incentivizing pledge to help prevent Sybil attacks.
2220
This also reduces the unfortunate side effect in the current equation that over rewards private pools which provide no additional security benefit.
2321

24-
## Motivation
22+
## Motivation: why is this CIP necessary?
2523

2624
There are two main reasons for changing the current linear a0 pledge benefit factor in the rewards equation.
2725

@@ -68,18 +66,7 @@ The curve_root is n in n-root. For example, 1 = linear, 2 = square root, 3 = cub
6866

6967
By making this modification to the rewards equation we introduce two new protocol parameters, crossover_factor and curve_root, that need to be set thoughtfully.
7068

71-
## Rationale
72-
73-
Using the n-root curve pledge benefit shows a much more reasonable distribution of pledge related rewards which will encourage meaningful pledges from more pool operators thus making the network more secure against Sybil attacks.
74-
It also provides higher rewards for higher pledge without disproportionately rewarding a very few private pool operators who provide no additional security value to the network.
75-
This modification maintains the general principles of the current rewards equation and does not introduce any hard limits.
76-
It improves the incentives that were originally designed to make them more meaningful for the majority of pool operators.
77-
78-
## Backward Compatibility
79-
80-
This proposal is backwards compatible with the current reward function by setting the curve_root parameter to 1.
81-
82-
## Test Cases
69+
### Test Cases
8370

8471
See rewards.php for some simple PHP code that allows you to try different values for crossover_factor and curve_root and compare the resulting rewards to the current equation.
8572
For usage, run "php -f rewards.php help".
@@ -121,13 +108,30 @@ Pledge Rewards Benefit Alt Rwd Alt Bnft
121108

122109
As you can see this gives meaningful pledge benefit rewards to pools pledging less than 1m ADA.
123110

124-
## Implementations
111+
## Rationale: how does this CIP achieve its goals?
125112

126-
If someone will show me where the current maxPool reward equation is implemented in the code, I could produce an implementation of this change as a pull request.
113+
Using the n-root curve pledge benefit shows a much more reasonable distribution of pledge related rewards which will encourage meaningful pledges from more pool operators thus making the network more secure against Sybil attacks.
114+
It also provides higher rewards for higher pledge without disproportionately rewarding a very few private pool operators who provide no additional security value to the network.
115+
This modification maintains the general principles of the current rewards equation and does not introduce any hard limits.
116+
It improves the incentives that were originally designed to make them more meaningful for the majority of pool operators.
127117

128-
## Copyright
118+
### Backward Compatibility
119+
120+
This proposal is backwards compatible with the current reward function by setting the curve_root parameter to 1.
121+
122+
## Path to Active
129123

130-
Copyright 2020 Shawn McMurdo
124+
### Acceptance Criteria
125+
126+
- [ ] The new equation is implemented in the ledger and enacted through a hard-fork.
127+
128+
### Implementation Plan
129+
130+
- [ ] Agreement by the Ledger team as defined in [CIP-0084](https://github.com/cardano-foundation/CIPs/tree/master/CIP-0084) under _Expectations for ledger CIPs_ including "expert opinion" on changes to rewards & incentives.
131+
132+
- [ ] Author has offered to produce an implementation of this change as a pull request if shown where the current maxPool reward equation is implemented in the code.
133+
134+
## Copyright
131135

132-
This CIP is licensed under the Apache-2.0 license.
136+
2020 Shawn McMurdo. This CIP is licensed under [Apache-2.0](https://www.apache.org/licenses/LICENSE-2.0).
133137

0 commit comments

Comments
 (0)
Please sign in to comment.