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

Ok but if we’re talking about feelings here, I think you may get the wrong feelings, since you deliberately choose a b_0 value too low in your example, that we will never choose in the real world. In my scheme it would be as in yours b_0 would be chosen by the community, who would probably not let it so low, if in practice we observed that (total stake)/(total pledge) was significantly under b0 for a significant period of time, as in your example. (Except if it was already as high as we can tolerate for Sybill resistance).

I think I might be starting to understand why really you introduced the “strange factor”, in the formula. Is it precisely so that the only existing Nash equilibrium are equal size equal-size k pool situation? Which would not have been the case with simply f(sigma, 0.1) = R *( sigma + a_0 * s ) ? ( Or maybe not, just guessing?)

1 Like

I don’t recall exactly how we came up with it, but in principle: yes. It was the easiest function we could come up with that had the property that all Nash equilibria had k pools of equal size (and offered Sybil protection on top of that).

We didn’t try to be complicated for the sake of being obscure :smiley:


Amazing discussion @pparent76 @Lars_Brunjes @AllisonFromm!
Really appreciate transparency with such high granularity, thank you!:pray:.


I get that, though I have to admit I have hard time understanding you seemingly have/had so few interest in exploring the design space starting with simple schemes, and that you still now seemingly don’t want to do it by yourself, except if I come with an irrefutable proof that there is something good to find there. Honestly when I first mentioned this scheme, which I qualified of “naive”, I was convinced that somebody would have replied “Of course we thought about it at early design stage, but then saw that we obviously cannot take it because of … which everyone will agree is a complete game killer” and I was just asking for this explanation not thinking a second, that seemingly nobody studied it before, and that this could become a serious proposal.

Anyways I just wanted to mention that your answers about the flaws I pointed out, did not convince me. And to me, whether there is a better scheme or not, this is anyway a complete game killer, enough to have me disengage fully from Cardano/ADA in the future (of course at a clever times), if the scheme is not changed (which seems probable now). And I’m very surprised you are happy with it, and seemingly suspending active research for a better model (other than reputation based).

But it is your obligation to prove that your scheme is at least as good as ours

And I just wanted to mention here that I’m not paid for anything there, so I do not have any obligations. I am here only trying to help, out of pure passion and benevolence, in you in your research and in your obligation to build a good product, by showing you attack vectors that seemingly you did not study yet, and promising schemes that seemingly you did not study yet, which could/should interest you if you’re looking for making the best choice possible. And I pointed at several times that if my help was not welcome I could leave without a problem.

Anyways I will redact in LaTeX a proof for the Nash equilibrium in my scheme, under a game model with realistic actions for the players in the real world, when I have time. I’ve got most of the things in mind, except if I missed an unexpected thing it will be possible. It might not be before a few weeks, and it will be some work, I’m not sure it is usefull to anything I that I do that, but I do not want to give the impression that it cannot be made, if it can.

On top of that I have to admit I don’t understand why you give so much importance to this Nash equilibrium story. Giving importance to ensuring that none gets more that 1/k of the ability to create blocks or too high σ/s ratio I get it. But scarifying so many things for a theoretical property , in a simplified game model…

Thank’s for reading, and thank’s for your replies! :slight_smile:


We did explore the design space and always made the scheme as easy as we could to achieve the properties we wanted. Every additional complication of the formula was done for a good reason. I did try to point out to you why your scheme won’t work, but this is difficult to do if we don’t first agree on which properties a scheme needs to have - hence my insistence on precision.

It’s the best one that has the properties we want that has come up so far.

I was talking about your obligations in a scientific discussion, it’s how science works. If you want to attack a scientific theory, nobody will take you seriously if you just complain. You are expected to come up with something better, at least as good as the existing theory, and (in the case of science) have to prove your point with data (or in the case of mathematics, with actual proofs). I am not implying that you should work for us for free. Just that this is how science works: In order to improve on an existing theory, you have to have good arguments for an alternative.

On a personal side, I am of course grateful for you investing so much of your personal time into this discussion. When I spoke about “obligations”, I was talking about obligations in scientific discourse.

I am looking forward to this. :smiley:

Well, it’s what makes IOHK and Cardano stand apart from our competition: We don’t just write whitepapers that may sound good, we actually use the full rigor of established scientific processes to motivate everything we do. I personally am very proud of this approach, and I am convinced it is the right one. There are too many scammers and charlatans in the crypto space, and using proper science and engineering is the only way to go, I believe.

The Nash Equilibrium is just a minimal bar each reasonable scheme has to pass. We are not claiming that our model is not simplified and that having the right Nash equilibria is enough, but it’s a well established first necessary step when trying to analyze and understand a given “game”. Refinements can always be made later.

A pleasure! :smiley:


Just to let you know that I did not give up, this is coming. I’ve redacted all of the proof on paper, and have typed most of it, which unfortunately takes a quite large amount of time, which sometimes is a bit annoying (1). But in the end I’ll be happy with this demonstration, since I’ve had no bad surprises, actually I only found some more elegant way to do some of the things, than I at initially thought. And everything seems to me as sound and reasonable, and to clearly prove what I claimed. I will probably post it here by the end of the week.

(1) That’s why I have to confess some of my last messages may sometimes have been written with some slightly pissed off notes, and I apologize for that, and thank you for staying cool with it.

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


@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.


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.


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.


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).


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.



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.


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.


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


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: