Spearheading the future implementation of Weak Blocks (Intermediate Blocks) for BCH proof of work

Would be great if @Griffith could confirm the below:

I did the calcs, and the numbers in the table don’t line up. They are all directionally correct, but do not come close to the stated results in the lower k values. See new summary table below (based on Formula 4):

I’m thinking I’m doing something wrong here as the numbers do not have nearly the variance shown in the original here:

Regarding your Invalid UXTO spending spam problem, I’m not sure I can follow.

First off, Tailstorm implementation uses k=3 but I think one should set a higher value. 10 second sub-block interval seems about right. The first Parallel PoW paper has an optimization suggesting that k=51 maximizes consistency after 10 minutes, assuming strong block interval 10 seconds, worst case propagation delay of 2 seconds and an attacker with 1/3 hash power. See Table 2 In the AFT '22 paper for other combinations of assumptions.

[ Your server is complaining I’m posting too many links ]

I’m loosing you where you say that 15 weak blocks will be mined in parallel. Tailstorm is linear when possible and parallel when needed. Miners share their weak blocks asap. Miners extend the longest known chain of weak blocks. Mining 2 blocks in parallel requires the second block not yet being propagated. It’s typical to assume worst-case propagation delays of a couple of seconds. Now, 15 blocks in parallel require that

  • all 15 are mined by different miners
  • no miner learns about the other 14 blocks before mining his own weak block

15 blocks in 2 seconds, where the target interval of a single block is about 10 seconds is very unlikely.

Oh, I understand your concern.

What I meant is a scenario, right after summary block has been confirmed, where no weak blocks were mined yet.

So in this scenario, weak blocks can be temporarily mined in parallel when there is no fresh weak block (all previous weak blocks already belong to a summary), can’t they?

I do admit that this scenario seems more rare after your explanation.

I see that my response above was “flagged by the community” and thus greyed out. What is going on? Is this the “you are posting too many links” heuristic?

Uh, must be an automatic action because your account is too new and posting links maybe?

I wouldn’t worry about it.

1 Like

I see it grayed out too… not sure why flagged/auto flagged. But I can still view upon pressing the text.

K=1, T=75 still gets to a very incorrect number, though?

I brought this up in a chat I am in with the other paper co-authors. Our best guess is that we were using a slightly different parameterisation in the code that generated the table and failed to update the paper.

Rechecking, we are getting the same results as your table. This should be ok though. It does not change the point being made.

Fair enough. Perhaps the propagation impedance was higher, or otherwise, that leads to greater differences. The math is quite clear, though, that regardless of variables used (within bounds), Tailstorm is more effective.

@pkel @Griffith Is the paper here “Parallel Proof-of-Work with DAG-Style Voting & Targeted Reward Discounting” (I am coining as “NextGen TS” for now) the latest generally agreed-upon system for BU? If this is the latest, I want to take a deep dive into that now that TailStorm is largely understood.
(cc @ShadowOfHarbringer)

Thanks for the reminder, I will review it next.

It seems that TailStorm is not what I want since it changes the block reward. The block reward using TailStorm could be too random due to reward slashing (called “discount” in the paper) and to miners playing the algorithm for profit and it cannot be forseen just how much it will be played.

I will also publish a comparison between TailStorm and internal intermediate/sub blocks soon™.

I’m not sure this is game-able. Miners cannot earn more than the current block reward no matter what, though maybe some clever scheme to ensure more blocks. Doesn’t seem very likely though, particularly with orphan rate improvement. Actually is supposed to improve withholding. But also seems NextGen TS will further improve this. Will read the paper to learn more.

It’s absolutely gameable (not sure how precisely yet, but it is) for a simple reason.

You get slashed (discounted) for every block that is not mined in series but in parallel.

Bitcoin(Cash) has the advantage of being a battle tested algorithm that has been gamed for 14 years since inception, so we have real-life data to back it and we pretty much already know what can happen/will happen.

Such data does not exist for TailStorm, it will take several years to create it.

So it is pretty much absolutely certain that TailStorm would change the block reward and issuance. The question is how much - at this point impossible to predict.

The issue with this is that Bitcoin, without original issuance can be claimed to no longer be “Bitcoin” which is a very significant psychological/social cornerstone.

not the maximum per block – just the minimum. It is an incentive to improve selfish mining.

We changed the difficulty algorithm, we have 10-block finality – seems by the same logic those would make us not Bitcoin as well.
A reward scheme with the same fundamental principles seems to me like it would still be Bitcoin. And just because something was done originally, does not mean it is the best way forward. (this does not mean I am saying we 100% should change our current reward scheme). Bitcoin was meant to be improved (when it makes sense, of course).

Anyways – let’s both take a read of NextGen TS and see what that brings.

Significantly chainging the issuance is not part of the original contract of “Bitcoin”.

So even for me, this is too much. It could turn out that issuance will change by for example 10% as the result of mining parallel blocks.

This is not really acceptable.

It may seem this way to you, but it may not seem this way to hundreds of millions of different people.

I am not saying it makes sense, I am saying this is how it is with humans.

To be fair – the majority of crypto doesn’t care about “bitcoin.” As is clear with BTC and every other coin taking up 50% of total market cap. So the “hundreds of millions” is most likely not going to care.

Don’t get me wrong, I see where you’re coming from. The people suggesting us to change the name I think are misguided. Having Bitcoin in the name is important, particularly for the brand recognition. But the brand recognition is what hundreds of millions of people will care about, not as much the reward scheme as long as it remains non-inflationary. That is the critical part. If the inflation of supply is lower as a result of a new thing, I do not see where the negativity would come from.

Though rather than just us two, I would like to hear more opinions from others in this forum. Though, still want to finish reading NextGen TS first, then can go into further detail.

1 Like

why is this even hidden lol

I can more or less agree with this.

However, this does not change the stupid reality.

If an alternative solution can be found (and I am pretty sure it can), then I would like to avoid creating new “Bitcoin Civil War” over what is “Bitcoin” and what is not.

Having a solution that can work (and possibly can work even better) than TailStorm while not sacrificing the “Bitcoin” brand would be preferable.

@admins can we manually approve pkel’s posts?

1 Like