From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp3.osuosl.org (smtp3.osuosl.org [IPv6:2605:bc80:3010::136]) by lists.linuxfoundation.org (Postfix) with ESMTP id 35BF3C002D for ; 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 ; 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 ; 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 ; 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 ; 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: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvfedrudeiledgheejucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucenucfjughrpeffhffvuffkgggtugesghdtreertd dtjeenucfhrhhomheprfgvthgvrhcuvfhougguuceophgvthgvsehpvghtvghrthhouggu rdhorhhgqeenucggtffrrghtthgvrhhnpeeigfeugeejgeetgfdtudeftedthfffveelve fgudefveeuvdegudffteefgffftdenucffohhmrghinhepphgvthgvrhhtohguugdrohhr ghdpthifihhtthgvrhdrtghomhdpsghithhinhhfohgthhgrrhhtshdrtghomhdpphhrih hntggvthhonhdrvgguuhdpghgvthhmohhnvghrohdrohhrghdprhgvugguihhtrdgtohhm pdifihhkihhpvgguihgrrdhorhhgpdhlohgtrghlmhhonhgvrhhordgtohdpphdvphhooh hlrdhiohdprghrtghhihhvvgdrohhrghdptghoihhnghgvtghkohdrtghomhenucevlhhu shhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehushgvrhesphgvth gvrhhtohguugdrohhrgh X-ME-Proxy: Feedback-ID: i525146e8:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA for ; 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 To: bitcoin-dev@lists.linuxfoundation.org Message-ID: 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 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-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.
# Contents {:.no_toc} 0. TOC {:toc}
## 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--