Hans Moog Profile picture
Hacker, futurist and tech enthusiast interested in distributed systems and the nature of existence.

Jul 15, 2021, 10 tweets

@alexxxxx85 @dennisnagpal1 @SenfdaTzu The upcoming protocol changes are the "outcome of research". They are conceptually very simple and well understood and aim at making the protocol less complex and more robust - so no, they don't need to go through an extensive period of research.

It was pretty obvious early ...

@alexxxxx85 @dennisnagpal1 @SenfdaTzu ... on, that some of the concepts of multiverse were extremely promising. Accordingly, last August we decided to reimplement the whole ledger state to be prepared for an eventual switch of consensus mechanisms down the line.

At the same time, we tried to maintain as much of ...

@alexxxxx85 @dennisnagpal1 @SenfdaTzu ... the original FPC/FCOB version as possible (simply to not jump the gun and jeopardize the success of coordicide).

In that process, the two versions (Multiverse / FPC) were converging more and more until they eventually became one and the same thing where FPC/FCOB acts as ...

@alexxxxx85 @dennisnagpal1 @SenfdaTzu ... a metastability breaking mechanism for Multiverse.

The combination of the two approaches allowed us to get rid of the biggest concern (metastable states) while maintaining the simplicity and robustness of Multiverse.

In the process of coding the prototype, we realized ...

@alexxxxx85 @dennisnagpal1 @SenfdaTzu ... that the FCOB part of FPC is really not very elegant. It doesn't just add a lot of ugly complexity to the code which costs us a huge amount of TPS but it also slows down confirmations by 4-5 seconds.

While testing the devnet we came across an edge case in the FCOB part ...

@alexxxxx85 @dennisnagpal1 @SenfdaTzu ... of FPC that caused some issues for nodes in rare situations. It was a consequence of combining Multiverse with FPC/FCOB which was originally never intended.

It would have been pretty easy to fix these issues by slightly modifying the FPC statements to include rejected ...

@alexxxxx85 @dennisnagpal1 @SenfdaTzu ... Branches as well, but considering that we wanted to actually get rid of FCOB anyway, we decided to not waste time into fixing something that we wanted to ultimately remove.

Instead we decided to switch to a new version of FPC (called "FPC on a set") which we developed in ...

@alexxxxx85 @dennisnagpal1 @SenfdaTzu ... parallel and which is tailored to Multiverse. It still uses a decentralized source of randomness to break metastable states but it applies the random threshold at a different step in the protocol.

The new and updated version of the prototype that should hopefully be ...

@alexxxxx85 @dennisnagpal1 @SenfdaTzu ... ready in a few weeks will not only solve the named problem but it will also massively boost the finalization speed of transactions and be MUCH simpler and easier to understand and reason about.

There is still room for some minor optimizations but with this next update we ...

@alexxxxx85 @dennisnagpal1 @SenfdaTzu ... are already very very close to our ultimate goal.

Share this Scrolly Tale with your friends.

A Scrolly Tale is a new way to read Twitter threads with a more visually immersive experience.
Discover more beautiful Scrolly Tales like this.

Keep scrolling