@@ -143,16 +143,22 @@ Vote base fees will be removed entirely.
143
143
### Absolute Vote Credits
144
144
145
145
Instead of distributing rewards based on relative performance as we do today,
146
- each validator in the active validator set will have a maximum number of vote
147
- credits $M$ that they can earn in an epoch.
146
+ each validator in the active validator set will have a maximum number of inflationary
147
+ rewards that they are eligble for. To determine this we first define the maximum
148
+ stake weighted vote credits $M$ that they can earn in an epoch where they produce
149
+ $L$ leader slots. Here $s_i$ is the validator's stake, and $S$ is the total stake.
148
150
149
- $$ M = 16 \times 432000 = 6912000 $$
151
+ $$ M = 12 s_i \times 432000 + 4 L S $$
150
152
151
- Their rewards in each epoch will be based on the credits $c _ {i}$ they earn
152
- multiplied by their portion of the stake $s_i$ multiplied by the total inflation
153
- rewards available in the epoch $I$ .
153
+ The first term represents the maximum voting credits $3/4$ of the TVC credits
154
+ (16), and the second term is the maximum leader inclusion credits covered in the
155
+ following section .
154
156
155
- $$ R_i = I s_i \frac{c_i}{M} $$
157
+ Their rewards in each epoch will be based on the fraction of the stake weighted
158
+ credits $c_ {i}$ they actually earn relative to this maximum $M$ multiplied by the
159
+ total inflation rewards available in the epoch $I$.
160
+
161
+ $$ R_i = I \frac{c_i}{S M} $$
156
162
157
163
Any unearned sol rewards will be burned.
158
164
@@ -168,13 +174,28 @@ include in a timely manner. Each vote inclusion credit is awarded to the leader
168
174
and is worth 1/3 of the vote credits awarded to the validator that the vote belongs
169
175
to.
170
176
171
- As an example if a vote from a validator would earn 16 credits, 12 of those credits
172
- go to the voter and 4 go to the leader.
177
+ For example assume that a latency 1 vote comes in from voter $v$ to be included
178
+ in leader $l$'s block. $v$ will earn 12 credits based on their stake weight, and
179
+ $l$ will earn 4 credits based on $v$'s stake weight:
180
+
181
+ $c_v := c_v + 12 s_v$
182
+
183
+ $c_l := c_l + 4 s_v$
184
+
185
+ Note that this accounting matches the $M$ derived above, if $v$ votes perfectly
186
+ and includes everyones votes (including their own):
187
+
188
+ $$ c_v = 12 s_v \times 432000 + 4 L \sum_{i\in V} s_i = M $$
189
+
190
+ In order to implement this change, the vote program will track credits $c_v$ as
191
+ stake weighted totals.
173
192
174
193
### Vote transaction CU accounting
175
194
176
195
Vote transactions will no longer count towards the global CU limit in the block,
177
- they will have their own limit of one vote per validator per block.
196
+ they will have their own limit of one vote per validator per block. With SIMD-0218
197
+ IVC, there is no longer any benefit to including multiple old votes within a single
198
+ block, instead only the latest vote will be used.
178
199
179
200
### Validator set size
180
201
@@ -200,14 +221,18 @@ On the 3rd slot in each validator's sequence of 4 blocks, the timely vote credit
200
221
grace period will only last 1 block. Rewards for landing this vote in the second
201
222
slot will be reduced by 3/8 and follow the normal TVC accounting afterwards.
202
223
224
+ The reasoning behind this change to avoid scenarios where upcoming leaders bribe
225
+ the voter to delay this vote by 1 block in order for the leader to earn more inclusion
226
+ credits.
227
+
203
228
## New Terminology
204
229
205
230
1 . $V$ is the set of all validators
206
231
2 . $v \in V$ is a validator
207
232
3 . $s_v \in [ 0,1] $ is the stake fraction of validator $v$
208
- 4 . $c_v \in [ 0,1] $ is the vote credits of validator $v$
233
+ 4 . $c_v \in [ 0,1] $ is the stake weighted vote credits of validator $v$
209
234
5 . $S = \sum\limits_ {v \in V} s_v$ is the total cluster stake
210
- 6 . $C = \sum\limits_ {v \in V} c_v$ is the total cluster vote credits
235
+ 6 . $C = \sum\limits_ {v \in V} c_v$ is the total cluster stake weighted vote credits
211
236
7 . $I$ is the total inflation rewards issued in an epoch
212
237
8 . $T$ represents the total supply of SOL normalized to staked supply of sol
213
238
$S =1$ so if half of the SOL is staked then $T= 2$
0 commit comments