Recently Bitcoin ABC announced that they're moving ahead with the Grasberg DAA algorithm for Bitcoin Cash. There are many things I'd like to criticize about the proposal, including that it's not a proposal but a threat in a game of chicken, and many have done so already.
Yet there's one very important thing I feel haven't gotten the attention it deserves, and that's the claim that correcting the historical drift would strengthen the sound money (or hard money) properties of Bitcoin Cash.
As I'll explain, I believe that correcting the historical drift will be detrimental for the sound money value proposition as it makes arbitrary changes to the emission schedule.
In Bitcoin Cash we want the time to be around 10 minutes between blocks. We can't have it always be exactly 10 minutes, but on average this is what we'd like.
The problem is that the hashrate of Bitcoin has been rising a lot since it's invention and the algorithm couldn't correct for that, so the average time between blocks is closer to 9 min 30 sec instead of the targeted 10 min. Since new coins are created with each block this means that the predicted emission schedule has been shifted, and more new coins than initially predicted have been created.
This is "drift" and the idea of drift correction is to make the time between blocks be 10 minutes on average.
But there's a subtle, but important, detail here. Do you:
Correct the drift going forward, so starting from the upgrade date all future blocks will have an average time of 10 minutes.
Correct the historical drift, so starting from the total lifetime of Bitcoin Cash all blocks have an average time of 10 minutes.
We cannot do both so we must choose one. This is the key technical issue that's currently dividing the community.
In the last DAA dev meeting one of the reasons Amauary gave for choosing to correct the historical drift was that the new DAA algorithm had to choose a reference point, and he didn't like it to be an arbitrary block so the only choice would be the genesis block.
This is a completely invalid reason and it's purely an implementation detail that nobody except a developer with OCD might get annoyed over. It's like arguing for black screws over silver screws inside an engine because you find them prettier. It does not matter.
(There are technical reasons to choose the block before the upgrade as the reference point, which is why all other DAA proposals did just that, but I won't get into them here.)
The other claim that it would improve the sound money property demands a longer answer, but first what is sound money?
If you google "properties of money" you might find this infographic:
It says that money should be fungible, durable, portable, divisible, acceptable, uniform and limited in supply. The only thing that matters in the DAA context is that money should be limited in supply, which means that a relatively constant supply of money should ensure that values remain relatively constant.
It means that money should avoid the trap that fiat easily falls into, where banks print tons of money to inflate the supply. The money supply should be fairly constant and resistant to change.
This is also something that Amaury said in the dev meeting, that we must under no circumstances alter the emission schedule of Bitcoin Cash. This is absolutely something I agree with and a vital part of sound money is that nobody can change the money supply or the emission rate.
It's why gold has been the prototype of sound money for centuries. Despite a lot of efforts by alchemists nobody managed to create gold. The only way to get new gold is to find it in the earth and dig it up, which is naturally constrained by nature.
The gold supply is literary set in stone.
It would be great if we had a time machine so we could go back and replace Satoshi's DAA, which is also the cause for most of the drift, with a better one. This is the only way we could truly fix the historical drift.
But sadly we cannot. So Grasberg does the next best thing, it tries to compensate for the drift by introducing even more drift! It slows down blocks by about 12.5% for five years, meaning we'll have 11 min 25 sec average blocks until 2025 and after that it goes back to 10 minute average again.
If you think that sounds arbitrary you're right. Grasberg includes completely arbitrary parameters, which Amaury cited as a reason to reject the other DAA proposals. The difference is that Grasberg changes the parameters of the all-important emission schedule that will affect all users of Bitcoin Cash, while the alternatives makes a choice with no consequence for any user.
Why couldn't we compensate for the drift during a 100 year period instead of 5 years? Why not 10 years? Hell, why couldn't we do it all in one year, rip the band-aid and get it over with?
Make no mistake, while we may call it a "drift correction", a "drift reparation" or a "drift compensation" it's really an arbitrary change to the emission schedule, and this in turn has direct consequence on the supply of Bitcoin Cash.
The only non-arbitrary choice is to simply ignore the historical drift.
(The real purpose of the DAA change is to reduce the gameability of the algorithm, where miners are able to abuse the algorithm for profit and to the detriment of all users.)
I think it's important to understand how large drift we're talking about here.
According to Jonathan Toomim in Dec 2020 there will be 1.3% more coins in circulation than a perfectly average 10 minute blocks would have produced. If we would activate ASERT (which does not compensate for historical drift) this will be lowered to 0.6% in 2025, but will in 2025 be 0% with Grasberg (and unchanged after that since none of them drift).
So with Grasberg we will have 11 min 25 blocks for 5 years, to correct a 0.6% drift.
While Amaury wanted to send a message that Bitcoin Cash is sound money, and that we'll never change the emission schedule, what image would we really be sending?
We would be signaling that we find arbitrary changes to the emission schedule acceptable and that we're fine with changing supposedly untouchable parameters of Bitcoin Cash, for a measly 0.6%.
People will start to wonder, what will they change next? Alter the 21 million coin limit? Move Satoshi's coins? Or perhaps reassign a part of the miner reward to the benevolent dictator himself?
It seems pretty clear to me that messing with the emission schedule like this weakens our image as hard and unchangeable money.
Compensating for the historical drift has never been mentioned before Grasberg, despite months and years of DAA research, simply because nobody cared that the historical average time between blocks isn't exactly 10 minutes. People have realized that we cannot change the past and what's important is the time between blocks going forward.
Amaury thinks he has sound money figured out, but his proposal would hurt the sound money quality, not improve it. Nobody should be able to manipulate the supply or creation rate of sound money, yet Grasberg would do exactly this.
If you really want Bitcoin Cash to be sound money, you should reject Grasberg.
I apologize for not adding timestamps to some of the things Amaury said in the DAA meeting, I don't have time to listen to it again just to add them to my references.
I also must thank the ABC team for so conclusively prove that they do suffer from the Not Invented Here Syndrome with their Grasberg proposal. I did kind-of predict it in an earlier article of mine, but I didn't expect it to be so egregious.