summaryrefslogtreecommitdiff
path: root/9e/a2abed7ce0c87dff85f692d8779009688140d2
blob: 55bc08983b60256de983f1f032beb50f7f12c74c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
Return-Path: <user@petertodd.org>
Received: from smtp3.osuosl.org (smtp3.osuosl.org [IPv6:2605:bc80:3010::136])
 by lists.linuxfoundation.org (Postfix) with ESMTP id 35BF3C002D
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Sat,  9 Jul 2022 12:47:01 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by smtp3.osuosl.org (Postfix) with ESMTP id C569B60BD3
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Sat,  9 Jul 2022 12:47:00 +0000 (UTC)
DKIM-Filter: OpenDKIM Filter v2.11.0 smtp3.osuosl.org C569B60BD3
Authentication-Results: smtp3.osuosl.org;
 dkim=pass (2048-bit key, unprotected) header.d=petertodd.org
 header.i=@petertodd.org header.a=rsa-sha256 header.s=fm1 header.b=GDyolEJW; 
 dkim=pass (2048-bit key,
 unprotected) header.d=messagingengine.com header.i=@messagingengine.com
 header.a=rsa-sha256 header.s=fm3 header.b=fXJA9UUB
X-Virus-Scanned: amavisd-new at osuosl.org
X-Spam-Flag: NO
X-Spam-Score: -1.401
X-Spam-Level: 
X-Spam-Status: No, score=-1.401 tagged_above=-999 required=5
 tests=[BAYES_05=-0.5, DKIM_SIGNED=0.1, DKIM_VALID=-0.1,
 DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7,
 SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, URI_DOTEDU=0.001]
 autolearn=ham autolearn_force=no
Received: from smtp3.osuosl.org ([127.0.0.1])
 by localhost (smtp3.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id xz6SYW8RgWaS
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Sat,  9 Jul 2022 12:46:59 +0000 (UTC)
X-Greylist: domain auto-whitelisted by SQLgrey-1.8.0
DKIM-Filter: OpenDKIM Filter v2.11.0 smtp3.osuosl.org CF39A60B91
Received: from wout2-smtp.messagingengine.com (wout2-smtp.messagingengine.com
 [64.147.123.25])
 by smtp3.osuosl.org (Postfix) with ESMTPS id CF39A60B91
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Sat,  9 Jul 2022 12:46:58 +0000 (UTC)
Received: from compute2.internal (compute2.nyi.internal [10.202.2.46])
 by mailout.west.internal (Postfix) with ESMTP id E70293200657
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Sat,  9 Jul 2022 08:46:52 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163])
 by compute2.internal (MEProxy); Sat, 09 Jul 2022 08:46:53 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=petertodd.org;
 h=cc:content-type:date:date:from:from:in-reply-to:message-id
 :mime-version:reply-to:sender:subject:subject:to:to; s=fm1; t=
 1657370812; x=1657457212; bh=EA8LTdpnL/ktSkIF5KiQwG3ksKPcFFQtz2X
 PWMXV3V8=; b=GDyolEJWiye20IHickXOWWNQ8mPn1mVy+1kaC81yQElBZRnIDZP
 zljpKfYWtYQn0IaXpgxbok1ieP9p/tffyFybaun5rP5nlqwQV9gFIu4ItB/2qA8T
 QXkzOU/hbG+Rbhe1b98oK0GJ8/B7jAJe2xvKZn0yEhMAMkJxfZke+6c7Yg5lsoiU
 xSUcAfjcyreC0BjCviaNpf3vmhmO8/SpGDfmKkn5xS4p7OOsKQGIrucmPlualnKl
 vkmbc3qKxU5PdjH+OwEH4WpReq2+nsacDWeVSdckFnV5KNlZryHcR94H1OyTgppl
 2JArwzIxr6GptrWgYgq2l4noGVi68qXW57Q==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:date:date:feedback-id
 :feedback-id:from:from:in-reply-to:message-id:mime-version
 :reply-to:sender:subject:subject:to:to:x-me-proxy:x-me-proxy
 :x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t=1657370812; x=
 1657457212; bh=EA8LTdpnL/ktSkIF5KiQwG3ksKPcFFQtz2XPWMXV3V8=; b=f
 XJA9UUBmij9eBEwRRDoWou96KeHy8j7yFLB8l5yfjHk4lA8m/7ZL5mkxlKPAT8Cm
 ruffz4nAsjt8CpIDIEVmthZGcUkM8spB/NT6GYCLtVLZRQjlEsfACIXVPiacwFA4
 dPQ694cZxowY051/6mIEcPX06wq8DWBBxEp5v6ROsdNCjqz70lwVTNS5puK2pmvS
 /hQnXFYHlEKZhgBRUkMKm8Csrm9PFBMHBQy+0FdBhn3hvkMlxnLq/H9mflKXP8lQ
 CtOMy4631SBl0fzY3ydTzZfA8mlDDFFOAhLTxLFpQjs/0uDkv+iW4aCg0lobA/KL
 ISbquIxxlcPJzjF/Uxvzw==
X-ME-Sender: <xms:vHjJYulBXtyWIWjUMTwMIxjqmF1aO7gPjeqTeLdDcL4xidTCMOXsNw>
 <xme:vHjJYl2CG5wXu0cpj8CPlotGgNuihXAmYUfq2fQl48ZKTGiJ7rRG4LBqOwuN15TeK
 UBxxZbMmDLFei1GHC0>
X-ME-Received: <xmr:vHjJYspn8vmEmu5oc225M3CuUAlqXbkeIsaDnoxTsJSPM5wb7kzzU3npjb1PBwn2wgLaqXYCz2xzdYhmbN30b4WVHX6luryWzyS5Fw>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvfedrudeiledgheejucetufdoteggodetrfdotf
 fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
 uceurghilhhouhhtmecufedttdenucenucfjughrpeffhffvuffkgggtugesghdtreertd
 dtjeenucfhrhhomheprfgvthgvrhcuvfhougguuceophgvthgvsehpvghtvghrthhouggu
 rdhorhhgqeenucggtffrrghtthgvrhhnpeeigfeugeejgeetgfdtudeftedthfffveelve
 fgudefveeuvdegudffteefgffftdenucffohhmrghinhepphgvthgvrhhtohguugdrohhr
 ghdpthifihhtthgvrhdrtghomhdpsghithhinhhfohgthhgrrhhtshdrtghomhdpphhrih
 hntggvthhonhdrvgguuhdpghgvthhmohhnvghrohdrohhrghdprhgvugguihhtrdgtohhm
 pdifihhkihhpvgguihgrrdhorhhgpdhlohgtrghlmhhonhgvrhhordgtohdpphdvphhooh
 hlrdhiohdprghrtghhihhvvgdrohhrghdptghoihhnghgvtghkohdrtghomhenucevlhhu
 shhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehushgvrhesphgvth
 gvrhhtohguugdrohhrgh
X-ME-Proxy: <xmx:vHjJYikZkVT3iZYQz3OEFaRkLwika4qpR8mxDKWALdkHIEv6CzKrig>
 <xmx:vHjJYs1QclqL5muyjd2KjNp9MgigL_GOE055UqvIbzuq0Ud-rj3RcQ>
 <xmx:vHjJYpsxJ_vmeu-3ehLdbWal6cdE8fadDFEpkxLHq02NRPHP1wuY-g>
 <xmx:vHjJYtjDuD89Tc8vtzYwqFNaNRxiz90PDUqFLcHOEYqLj13onWvytg>
Feedback-ID: i525146e8:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA for
 <bitcoin-dev@lists.linuxfoundation.org>; Sat,
 9 Jul 2022 08:46:52 -0400 (EDT)
Received: by localhost (Postfix, from userid 1000)
 id 6D3065F87C; Sat,  9 Jul 2022 08:46:47 -0400 (EDT)
Date: Sat, 9 Jul 2022 08:46:47 -0400
From: Peter Todd <pete@petertodd.org>
To: bitcoin-dev@lists.linuxfoundation.org
Message-ID: <Ysl4t9K8lfxRSsNM@petertodd.org>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
 protocol="application/pgp-signature"; boundary="XWOrzVnQ6wQe3ua6"
Content-Disposition: inline
Subject: [bitcoin-dev] Surprisingly, Tail Emission Is Not Inflationary
X-BeenThere: bitcoin-dev@lists.linuxfoundation.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Bitcoin Protocol Discussion <bitcoin-dev.lists.linuxfoundation.org>
List-Unsubscribe: <https://lists.linuxfoundation.org/mailman/options/bitcoin-dev>, 
 <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=unsubscribe>
List-Archive: <http://lists.linuxfoundation.org/pipermail/bitcoin-dev/>
List-Post: <mailto:bitcoin-dev@lists.linuxfoundation.org>
List-Help: <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=help>
List-Subscribe: <https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev>, 
 <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=subscribe>
X-List-Received-Date: Sat, 09 Jul 2022 12:47:01 -0000


--XWOrzVnQ6wQe3ua6
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

New blog post:

https://petertodd.org/2022/surprisingly-tail-emission-is-not-inflationary

tl;dr: Due to lost coins, a tail emission/fixed reward actually results in a
stable money supply. Not an (monetarily) inflationary supply.

=2E..and for the purposes of reply/discussion, attached is the article itse=
lf in
markdown format:

---
layout: post
title:  "Surprisingly, Tail Emission Is Not Inflationary"
date:   2022-07-09
tags:
- bitcoin
- monero
---

At present, all notable proof-of-work currencies reward miners with both a =
block
reward, and transaction fees. With most currencies (including Bitcoin) phas=
ing
out block rewards over time. However in no currency have transaction fees
consistently been more than 5% to 10% of the total mining
reward[^fee-in-reward], with the exception of Ethereum, from June 2020 to A=
ug 2021.
To date no proof-of-work currency has ever operated solely on transaction
fees[^pow-tweet], and academic analysis has found that in this condition bl=
ock
generation is unstable.[^instability-without-block-reward] To paraphrase An=
drew
Poelstra, it's a scary phase change that no other coin has gone through.[^a=
poelstra-quote]

[^pow-tweet]: [I asked on Twitter](https://twitter.com/peterktodd/status/15=
43231264597090304) and no-one replied with counter-examples.

[^fee-in-reward]: [Average Fee Percentage in Total Block Reward](https://bi=
tinfocharts.com/comparison/fee_to_reward-btc-eth-bch-ltc-doge-xmr-bsv-dash-=
zec.html#alltime)

[^instability-without-block-reward]: [On the Instability of Bitcoin Without=
 the Block Reward](https://www.cs.princeton.edu/~arvindn/publications/minin=
g_CCS.pdf)

[^apoelstra-quote]: [From a panel at TABConf 2021](https://twitter.com/pete=
rktodd/status/1457066946898317316)

Monero has chosen to implement what they call [tail
emission](https://www.getmonero.org/resources/moneropedia/tail-emission.htm=
l):
a fixed reward per block that continues indefinitely. Dogecoin also has a f=
ixed
reward, which they widely - and incorrectly - refer to as an "abundant" sup=
ply[^dogecoin-abundant].

[^dogecoin-abundant]: Googling "dogecoin abundant" returns dozens of hits.

This article will show that a fixed block reward does **not** lead to an
abundant supply. In fact, due to the inevitability of lost coins, a fixed
reward converges to a **stable** monetary supply that is neither inflationa=
ry
nor deflationary, with the total supply proportional to rate of tail emissi=
on
and probability of coin loss.

Credit where credit is due: after writing the bulk of this article I found =
out
that Monero developer [smooth_xmr](https://www.reddit.com/user/smooth_xmr/)
also observed that tail emission results in a stable coin supply
[a few years ago](https://www.reddit.com/r/Monero/comments/4z0azk/maam_28_m=
onero_ask_anything_monday/d6sixyi/).
There's probably others too: it's a pretty obvious result.


<div markdown=3D"1" class=3D"post-toc">
# Contents
{:.no_toc}
0. TOC
{:toc}
</div>

## Modeling the Fixed-Reward Monetary Supply

Since the number of blocks is large, we can model the monetary supply as a
continuous function $$N(t)$$, where $$t$$ is a given moment in time. If the
block reward is fixed we can model the reward as a slope $$k$$ added to an
initial supply $$N_0$$:

$$
N(t) =3D N_0 + kt
$$

Of course, this isn't realistic as coins are constantly being lost due to
deaths, forgotten passphrases, boating accidents, etc. These losses are
independent: I'm not any more or less likely to forget my passphrase because
you recently lost your coins in a boating accident =E2=80=94 an accident I =
probably
don't even know happened. Since the number of individual coins (and their
owners) is large =E2=80=94 as with the number of blocks =E2=80=94 we can mo=
del this loss as
though it happens continuously.

Since coins can only be lost once, the *rate* of coin loss at time $$t$$ is
proportional to the total supply *at that moment* in time. So let's look at=
 the
*first derivative* of our fixed-reward coin supply:

$$
\frac{dN(t)}{dt} =3D k
$$

=2E..and subtract from it the lost coins, using $$\lambda$$ as our [coin lo=
ss
constant](https://en.wikipedia.org/wiki/Exponential_decay):

$$
\frac{dN(t)}{dt} =3D k - \lambda N(t)
$$

That's a first-order differential equation, which can be easily solved with
separation of variables to get:

$$
N(t) =3D \frac{k}{\lambda} - Ce^{-\lambda t}
$$

To remove the integration constant $$C$$, let's look at $$t =3D 0$$, where =
the
coin supply is $$N_0$$:

$$
\begin{align}
    N_0 &=3D \frac{k}{\lambda} - Ce^{-\lambda 0} =3D \frac{k}{\lambda} - C =
\\
      C &=3D \frac{k}{\lambda} - N_0
\end{align}
$$

Thus:

$$
\begin{align}
    N(t) &=3D \frac{k}{\lambda} - \left(\frac{k}{\lambda} - N_0 \right)e^{-=
\lambda t} \\
         &=3D \frac{k}{\lambda} + \left(N_0 - \frac{k}{\lambda} \right)e^{-=
\lambda t}
\end{align}
$$


## Long Term Coin Supply

It's easy to see that in the long run, the second half of the coin supply
equation goes to zero because $$\lim_{t \to \infty} e^{-\lambda t} =3D 0$$:

$$
\begin{align}
    \lim_{t \to \infty} N(t) &=3D \lim_{t \to \infty} \left[ \frac{k}{\lamb=
da} + \left(N_0 - \frac{k}{\lambda} \right)e^{-\lambda t} \right ] =3D \fra=
c{k}{\lambda} \\
                   N(\infty) &=3D \frac{k}{\lambda}
\end{align}
$$

An intuitive explanation for this result is that in the long run, the initi=
al
supply $$N_0$$ doesn't matter, because approximately all of those coins will
eventually be lost. Thus in the long run, the coin supply will converge tow=
ards
$$\frac{k}{\lambda}$$, the point where coins are created just as fast as th=
ey
are lost.


## Short Term Dynamics and Economic Considerations

Of course, the intuitive explanation for why supply converges to
$$\frac{k}{\lambda}$$, also tells us that supply must converge fairly slowl=
y:
if 1% of something is lost per year, after 100 years 37% of the initial sup=
ply
remains. It's not clear what the rate of lost coins actually is in a mature,
valuable, coin. But 1%/year is likely to be a good guess =E2=80=94 quite po=
ssibly less.

In the case of Monero, they've introduced tail emission at a point where it
represents a 0.9% apparent monetary inflation rate[^p2pool-tail]. Since the=
 number of
previously lost coins, and the current rate of coin loss, is
unknown[^unknowable] it's not possible to know exactly what the true moneta=
ry
inflation rate is right now. But regardless, the rate will only converge
towards zero going forward.

[^unknowable]: Being a privacy coin with [shielded amounts](https://localmo=
nero.co/blocks/richlist), it's not even possible to get an estimate of the =
total amount of XMR in active circulation.

[^p2pool-tail]: P2Pool operates [a page with real-time date figures](https:=
//p2pool.io/tail.html).

If an existing coin decides to implement tail emission as a means to fund
security, choosing an appropriate emission rate is simple: decide on the
maximum amount of inflation you are willing to have in the worst case, and =
set
the tail emission accordingly. In reality monetary inflation will be even l=
ower
on day zero due to lost coins, and in the long run, it will converge towards
zero.

The fact is, economic volatility dwarfs the effect of small amounts of
inflation. Even a 0.5% inflation rate over 50 years only leads to a 22% dro=
p.
Meanwhile at the time of writing, Bitcoin has dropped 36% in the past year,=
 and
gained 993% over the past 5 years. While this discussion is a nice excuse to
use some mildly interesting math, in the end it's totally pedantic.

## Could Bitcoin Add Tail Emission?

=2E..and why could Monero?

Adding tail emission to Bitcoin would be a hard fork: a incompatible rule
change that existing Bitcoin nodes would reject as invalid. While Monero was
able to get sufficiently broad consensus in the community to implement tail
emission, it's unclear at best if it would ever be possible to achieve that=
 for
the much larger[^btc-vs-xmr-market-cap] Bitcoin. Additionally, Monero has a
culture of frequent hard forks that simply does not exist in Bitcoin.

[^btc-vs-xmr-market-cap]: [As of writing](https://web.archive.org/web/20220=
708143920/https://www.coingecko.com/), the apparent market cap of Bitcoin i=
s $409 billion, almost 200x larger than Monero's $2.3 billion.

Ultimately, as long as a substantial fraction of the Bitcoin community cont=
inue
to run full nodes, the only way tail emission could ever be added to Bitcoi=
n is
by convincing that same community that it is a good idea.


## Footnotes

--XWOrzVnQ6wQe3ua6
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEE0RcYcKRzsEwFZ3N5Lly11TVRLzcFAmLJeLQACgkQLly11TVR
LzejwxAAqO+2/tb2B39yRNI+gje8YOZ0YEhUB3FWgzFibm+k9wy+PyGPoCNOLgBO
50+BG0aTFMuOrz6WUEDUF5TrBkSz39QSwMROBSThbVzXtcTXsCFXlI+UMu4g4B7u
Lk7Eh+N0xcw2IjupnpCS1UCKXMQ5J7KVuJSuluDRD2cR2SerFzFsFPefPR5+jehX
Gdu09ql04PScWlxoU9fSQxQmQarO7DAr1F3TInip3zNfq7IQAGr7+XiQyE4xynb6
6vAa29WmNOG0nQvOnHP5n7ERrDaPNScnPrI6OSbTjjg2XIjaL6G0iw27F4dBZSg0
hOOTvahQ25G7DQSxHDYDme7rZKQH0WEfea5cPBw8cKCdQDMOlyVYIuMZNWp5wGKM
6BA4VNBMQp4yIeDUNab0JpUUZ/5WYMf9SSKeuW4gdxsFZFCq5HbFYfKlvfcBIkEG
lxVzTO2AnrKw/8HaffsyLuk0ChYWIPyt5HEVZt9zGg+qeMvCxUbNqsdq2TTUxVqI
qd4UjfbtM6/X4boa/l4joIkw74GCe95Wzp/MoRFuK/Danz47Ivrk2GOb8bOBJzex
5Tze9PBkimnYNpE3QmFlmQlUZreercTmZJZ/OD0Jsg/SlIWrFzrGDDQA1cFgfLe8
OojgpPen4Mb4WKfHIUFDz5r4Jy491DjsB6zniYai0UQWDFV1jeU=
=CN/y
-----END PGP SIGNATURE-----

--XWOrzVnQ6wQe3ua6--