30th January 2024

17:45 UTC

Workshop host:

In this video, Dominik Schmidt and Bobbin Threadbare get into the details of how Polygon Miden works. After covering the purpose of VMs and zkVMs in general, Bobbin gives deeper explanations related to Miden's design and programs. He also answers the questions from ZK HACK IV audience. Dominik then provides a walkthrough of how Miden transactions are state transitions of single accounts, and how the transaction kernel is a program executing transactions inside the Miden VM.

Video summary

In this third session, Dominik Schmidt and Bobbin Threadbare from Polygon embarked on an in-depth exploration of the inner workings of Polygon Miden, offering the ZK Hack IV audience a comprehensive look into the Miden VM and the Miden Transaction Kernel. Their presentation served as a concrete example of a real-world program operating within a ZKVM environment, providing valuable insights into the practical implementation of ZK tech.

Bobbin kicked off the workshop by touching on the distinctions between VMs, including comparisons with ZKVMs, a topic that had been previously explored by RISC Zero in the previous session. He then delved into the Miden VM itself, covering how it executes programs and generates execution proofs while running them. Bobbin also spent some time on the design specifics of the Miden VM and provided an overview of how programs are structured using the MASM language, offering attendees a deeper understanding of its operational mechanics. Moving on, he redefined what transactions mean in the context of Miden, discussing how they are utilized in the rollup. He also explored concepts such as accounts and nodes within the Miden architecture, laying the groundwork for a more detailed exploration of the transaction kernel.

But before that the Q&A segment was again a moment of rich exchanges with the audience, covering a wide array of topics, such as performance comparisons, the ability to execute invalid operations, proof generation for transactions, or how to ensure the integrity of state changes. These discussions not only shed further light on the intricacies of Miden, but also offered broader insights into its role within the overarching ZK ecosystem.

In the final segment of the workshop, Dominik insisted on the primary objective of the Miden Transaction Kernel, which is to validate state changes – a pivotal function within the rollup system. He dissected the design of the transaction kernel, offering insights into its inputs, outputs, and the various phases or sections comprising the program. Furthermore, Dominik complemented his theoretical explanations with illustrative code snippets, enabling attendees to concretely grasp the operational functioning of the Miden Transaction Kernel and its role in facilitating secure, efficient and private state transitions.