I loved Itn and Cardano, but I may not love mainet because of a0!

Thanks to @Lars_Brunjes, @pparent76 and @AllisonFromm…very very interesting !!

2 Likes

@pparent76 @Lars_Brunjes Did you see this video? You are the stars!! Well done, and thanks again for teaching all of us who are following the discussion.

7 Likes

Hi Lars, I have a question to ask you, … here you say that in the long run the average will be the same. So if a pool is unlucky with the lottery and it is assigned fewer blocks than estimated, it will have a performance of less than 100% and will have a reduction in the rewards that would have been due to it, but when instead it is lucky and it will have a performance greater than 100% , how will he have higher rewards than he would have expected? Where do these extra ada come from?
Thanks !

+1 Fully agree.

Ok, I am trying to explain this as simple I can (very layman version).

We need to distinguish between the

  1. Leader schedule (that is used for measuring the performance of a pool i.e. determining pool rewards) and
  2. Reward calculations (called Maximal Reward Function how much would you get from the point 1.).

Firstly, In the leader schedule (permission to create a block) you can have some slight fluctuation i.e. could get more or less schedules (based on the VRF lottery) for an epoch than you should get based on your pool’s stakes.

But, it can have a very huge impact on pools. For example if your pool only should get 10 schedules in an epoch, missing 1 blocks means 90% perf only, while your pool should have 100 schedules and missing one, it’s only 99%. And the opposite is true. Meaning supposed to have 1 schedules in the epoch but having 2, meaning 200% performance (not really as to calculate a performance is quite tricky but for the sake of the simplicity is ok).

So, there are only max number of schedules (i.e. max nr. of allowed blocks) in an epoch, lets assume it’s 1000 and assume 10 pools have 10% stakes.

So, that means, pools can have ~100 schedules assigned, but in total it sums up only to 1000 max.
Even, more than one pool could be assigned to the same slot for creating block, but only one can win. So, where the 110% can come from is this. If you created 110 blocks of your 110 schedules instead of only 100 you should get based on your pool’s stake (cos of lottery) then the others only could get 890 max. Hope this makes sense where the >100% comes from.

I highly encourage you to read the following specs chapters to understand how these rewards and performance works.

  • Design Spec Chapter 4 and 5.
  • Reward Sharing Schemes for Stake Pools paper and
  • Ledger spec chapter 11.

Note: based on the ITN there was not any epoch in which all the total of number of blocks (max) were created (due to some other factors). Also, keep in mind that apparent performance is used for calculating the pool rewards.

2 Likes

Thanks a lot ILAP you have been very clear !!

Actually, I hadn’t yet. Thanks a lot for pointing it out! :smiley:

@Lars_Brunjes so here is the proof:

I’m taking a pause for a week, so take time to read it.

Keep in mind that:

  • There are probably typos and small mistake that does not threaten the overall
    validity of the proof, or existence of such a proof. It is obviously not in a “ready-to-publish” state.

  • But overall I’m quite confident the proof will be correct.

(but of course you may show something I did not see, that changes my views).

  • On the form I focused on going fast enough so as not to sacrifice too much
    time at first, so if some parts need more explanations or clarifications do not hesitate to ask.

  • I made the demonstration for the scheme implementing all the recommendations
    I made before: because I think it is better in practice, and because it also
    makes the demonstration easier. It does not mean that the demonstration is not
    possible in variations of this scheme, closer to what you did until now. For
    example I’m almost certain it is possible to adapt this demonstration for a
    model where pools can choose their fees individually, or where we do not
    modify the way to distribute rewards as explained in 1.2. But it would be way more
    complicated, both to write and understand (especially without being familiar
    with the demonstration in its simplest form first).

  • In order to gain time, and because I was tired, I did not yet explain the details on how to implement in practice the market choice for f in a reasonable way, but I have all the details in mind, and I will add a section explain this eventually. But it is not needed to understand and examine the validity of the proof for now.

2 Likes

Firm statement, but that’s ok.:slight_smile:

Anyway, I just read through quickly and I think I know where are some of the flaws and false assumptions etc, come from in your “paper”. Cardano Blockchain (which is a strict state machine) is built on Ouroboros Classic (Byron), BFT (Both) and Praos (Shelley) and you must fully understand them and also how they work and implemented, as rewards, calculations, and a lot of other things are integral part of them and you cannot state something which is independent or comes from some false assumptions.

So friendly advice, please get this paper submitted somewhere (but it needs huge revises I think etc. as an example you cannot state this or that is or is not a Nash equilibrium, there are strict mathematical theorems which can be used to proof it) accepted somewhere and the science community would decide whether it’s correct or not as I have no time to this (proof where the flaws, false assumptions etc. are and why), and really I do not want to be seem rude, but it was just a friendly advice, really.

So, if it is submitted and accepted (that means it is semantically and mathematically correct at least), then scientist will jump on it but until that, it is very far from any proof and you cannot state there are proof because you think so.

Also, the science is not about to be right (huge bias, law of authority etc. etc) but about to be wrong and if you eliminated all of the wrongs only then can think that you’re on the right track, what I cannot see there really (but I can be wrong as you or anybody else).

3 Likes

I know where are some of the flaws and false assumptions etc, come from in your “paper”. is Cardano Blockchain (which is a strict state machine) is built on Ouroboros Classic (Byron), BFT (Both) and Praos (Shelley) and you must fully understand them […] and you cannot state something which is independent

So much true that in their papers, they discuss extensively of Ouroboros mechanism, and it plays an important role in their proof. So much so that the word appear only twice: in the intro and the conclusion, just to mention it briefly.

So much so that @Lars_Brunjes did not even bother to point out that my proposal was incompatible with Ouroboros in any way, and let me redact this proof knowing exactly what theorem I was going to proove, without saying anything.

By the way really easy to say some general thing like that, without pointing to anything in particular (which I’ve been asking for weeks: explain me why this formula does not work), so that at the same time I cannot answer it (because you did not point to anything), but it also may give the impression that I indeed missed something which tears apart any interest of my proposal.

(By the way very similar argument to the many people telling me here at first “Basically every single one of your points here is answered within the recent Cardano Effect podcast on pledge.”, without pointing to anything specific, which now everyone knows was a fallacy since @Lars_Brunjes who was part of this podcast came here to discuss and pointed " It’s not something I can just pull out of my sleeve, I’ll have to think carefully about how to answer you" )

So friendly advice, please get this paper submitted somewhere

You know very well that I will never have the resources to do publish in a peer-review paper (especially because we’re more talking about engeneering choices for a specific crypto-currency than a general interest scientific topic here). So much so that even the official paper itself is only published on arxiv, which is not a peer reviewed, and in which there is almost no publish filter, so it is almost the same as if they published it on their website as I did. Anyway this paper would be so much specific paper to the Cardano design (as you said above), that it can only be review by peers from the Cardano community, so here we are, in the best place to do that, and I submit it here.

I’m sorry to point it out, but it really looks like, you are finding excuses to close your eyes here. Quite ironically I think, and I hope that the authors and developers themselves (and even the project leader) are more open-minded.

Also, the science is not about to be right

I can tell you the only thing I’ve been wanting here is for Cardano to be right, not to be right myself. Anyone that re-reads the chronology of my messages here will know it (and don’t forget this one). The first posts of this thread, and my other posts on other threads, where I asked so many times “Please show me WHY this formula is wrong, and the other is better” (and this was not politeness, or rhetoric, I really wanted someone to explain me that the chosen formula was better because of …, which would have been way more comfortable for me than scarifying so much time ). My confidence in this scheme has only grown over time with anyone’s inability to give reasonable explanation why the current formula is better.

Peace!

4 Likes

Stay confident in the machine @pparent76 your work has been picked up by Angelos and the team according to Charles - Feedback Loops. I would take it as sign of how furiously busy the scientific team is with Hydra, Goguen. I assume you’ll either get your formal rebuttal or incorporated eventually. My biggest learning from this thread is we need to find a way empower people, without asking for formal proofs… Maybe a monthly open seminar for maths minded experts and contributors to talk to the science team. Fresh air and sunshine.

2 Likes

By the way small revision correcting a small mistake:

Now I really need to take a break and leave this forum for few days, I will answer to comments and questions during next week-end.

2 Likes

Our paper has been undergone strict peer review and has been accepted for submission to IEEE EuroS&P 2020: https://www.ieee-security.org/TC/EuroSP2020/accepted.html

4 Likes

Our paper has been undergone strict peer review and has been accepted for submission to IEEE EuroS&P 2020 : https://www.ieee-security.org/TC/EuroSP2020/accepted.html

Ok great! Sorry I did not know about that. The point of my message was of course not to undermine your work in any way shape or form! :wink:

I would like to take the opportunity that we are making a pause, (while waiting for your feedback on the proof) to take a step back and to put things in perspective. And by the way congratulations for launching Shelley! :slight_smile:

When you are starting with the idea of pools and delegation you start with the formula:

f(σ)= R*σ

Now you soon realize that there are two things you want to improve with this formula:

  • 1-You want to limit/incentivise the amount of stake a pool has to less than 1/k, in order to counter the natural tendency to centralization and cost mutualization ( that you described in section 2.2 ). So that we have k pools and so that we have decentralization.

  • 2-You want the limit/incentivize sigma/s ratio of a pool under a certain threshold b0, in order to counter the possibility to perform Sybill attacks.

Now for each of these you have two possible strategies:

  • I- You chose a limit value for the parameter (k or b0) and you do a threshold effect so that if the value exceed the limit then you stop getting any supplementary rewards.

  • II- You don’t choose any value for the parameter (k or b0), but you give a certain amount of incentives so that competition leads to having sufficiently high/low values for these parameters.

Let me give and example of each of these strategy for each of the parameters:

  • I-1 Replace σ by min(σ,1/k), as we both did
  • I-2 Replace σ by min(σ,b0*s), as I did
  • II-2 Introduce a0 as you did
  • II-1 Replace “σ” by “1-(1-σ)^c0” c0 as constant, 1<=c0<∞

In II-1, f(σ)=R/c0*(1-(1-σ)^c0) would lead to Nash equilibrium with k equal-size pools where 1<=k<R/O, (O the operating costs) and k would increase with c0, and would be equal to 1 when c0 equals to 1.

Now the strategies I and II have both advantages and disadvantages:

  • I- has the advantage that we have very good control over the security parameters k and b0
    and the we know that we will never needlessly enter the “danger zone”.

  • But I- has the disadvantage that you need to choose carefully the parameters (and if needed update them) so that they don’t give constraints that are (or become) unreachable in the real world. (Especially because the operating costs varies a lot with the ADA/USD price).

  • II- Has the advantage to give a somewhat self-adaptative system where the parameters k and b0 adapt through competition, to the constraints of what’s possible in the real world.

  • II- Has the disadvantage that it’s very hard to predict the effect of the chosen value of a0 and c0 on the system. We never know if it gives sufficient incentives so that the b0 and k values are not “lazy values”, less optimal that what the system could really do if the some more strict values were imposed. And therefore it makes the system somewhat less secure.

  • II- By introducing highly non-linear, and hard to predict formulas, it often opens the gates for quite complex attacks/problems/side-effects that are hard to predict at first (e.g the cartel problem, unfairness).

But what surprises me a little bit, is that you chose inside the very same model two very different strategies when you were confronted to two almost identical problems.

If we’re going this way, we could for fun combine I-2 and II-I and take f(σ,s)=R/c0*min( (1-(1-σ)^c0) , bo*s) , It sounds reasonable to think that you may be able to demonstrate this scheme has all the theoretical properties needed ( Nash equilibrium + Sybill resistance, but don’t count on me to do it :wink: ). Would it make it a good scheme? Not so sure….

Now, you are getting better and far from your initial statements back on the days. But there is still some long road ahead of you. But also I see that you are trying to smish-smash your old false assumptions and statements as you are getting to understand it more and trying tohide forget those old mistakes, by focusIng on some well known and real one while trying to swipe away the old wrong omes as if they were not existed at all. Anyway, congrat really cos you seems are capable to evolve, but you need some more time to accepts these.

Now, you are getting better and far from your initial statements back on the days. But there is still some long road ahead of you. But also I see that you are trying to smish-smash your old false assumptions and statements as you are getting to understand it more and trying tohide forget those old mistakes, by focusIng on some well known and real one while trying to swipe away the old wrong omes as if they were not existed at all. Anyway, congrat really cos you seems are capable to evolve, but you need some more time to accepts these.

Thank’s but I’m not sure to know what you are precisely referring to here. Anyways of course I’m able to evolve an change my mind, when new facts/things happen to be known.

I did not know their paper was submitted for a conference and/or was peer-reviewed, @Lars_Brunjes pointed it, then of course I gladly admit it. And that’s great they did.

In my last message I share, as a sidenote, what seems to me as an interesting thought when putting things into a broader perspective. But I want to make it very clear, for everyone that I did not change my mind about anything concerning what scheme should be chosen, and/or on any points of the last checkpoint (and I don’t think I said anything that could make think so, but anyways). If anything what I said in the last message supports the point I’ve defended since the beginning. And I’m still waiting for @Lars_Brunjes and IOHK’s review on my proof, before we may possibly go any further. It does not mean that I can not or do not want to change my mind, on that, just that I would need to have good reasons to do so.

Peace!

Hi, just wanted to apologize for letting you wait for so long for a response and feedback to your proof. We are of course all very busy with Shelley these weeks, and on top of that, I also have to teach the current iteration of our Haskell course in “virtual” Mongolia (it’s an online course this time, due to Corona, but it’s still just as much work as the physical courses used to be).

We will discuss your proof at IOHK Research and come back to you as soon as possible.

Thanks again for the hard work you put into this!

Lars

2 Likes

Thank’s for your message!

No worries, It’s the summer and anyway I need to enjoy my vacations, so good to have a pause in this discussion!

On my side, I still need to make a post to explain why the answers you gave to the “flaws” I think I’ve found in your scheme, did not convince me.

And also to explain how you could calculate a f value in a market fashion in practice.

Pierre.

1 Like

This is a very long thread. At the risk of making it longer we now know that “Only 8 operators might be controlling 88% of the network” which would seem to evidence the Cartel risk mentioned above has now crystallised.

Does this fact alter the percieved need to make a delegation limit proportional to pledge? Or will we still end up with a power law distribution of network control even after that?

I am concerned that we increase K and the leading pools are going to simply add more pools and we end up in the same place.