About Consensus
The big idea that makes Patex possible is the Patex Rollup. We'll go through a brief explainer of how Patex Rollups work at a high level. Then we'll explain why Patex is built as an Patex Rollup and why we believe it's the best option for a system that addresses all of our design goals.
# Patex Rollups
Patex is an "Patex Rollup," which is basically just a fancy way of describing a blockchain that piggy-backs off of the security of another "parent" blockchain. Specifically, Patex Rollups take advantage of the consensus mechanism (like PoW or PoS) of their parent chain instead of providing their own. In Patex case this parent blockchain is Ethereum.
# Block storage
# Block production
Patex block production is primarily managed by a single party, called the "sequencer," which helps the network by providing the following services:
Providing transaction confirmations and state updates.
Constructing and executing L2 blocks.
Submitting user transactions to L1.
# Block execution
# Bridging assets between layers
Patex is designed so that users can send arbitrary messages between smart contracts on Patex and Ethereum. This makes it possible to transfer assets, including ERC20 tokens, between the two networks. The exact mechanism by which this communication occurs differs depending on the direction in which messages are being sent.
Patex uses this functionality in the Standard bridge to allow users to deposit assets (ERC20s and ETH) from Ethereum to Patex and also allow withdrawals of the same from Patex back to Ethereum. See the developer documentation and examples on details on the inner workings of the Standard bridge.
Moving from Ethereum to Patex
In Patex terminology, transactions going from Ethereum (L1) to Patex (L2) are called deposits, even if they do not have any assets attached to them.
Moving from Patex to Ethereum
# Fault proofs
In an Patex Rollup, state commitments are published to Ethereum without any direct proof of the validity of these commitments. Instead, these commitments are considered pending for a period of time (called the "challenge window"). If a proposed state commitment goes unchallenged for the duration of the challenge window (currently set to 7 days), then it is considered final. Once a commitment is considered final, smart contracts on Ethereum can safely accept withdrawal proofs about the state of Patex based on that commitment.
When a state commitment is challenged, it can be invalidated through a "fault proof" process. If the commitment is successfully challenged, then it is removed from the StateCommitmentChain
to eventually be replaced by another proposed commitment. It's important to note that a successful challenge does not roll back Patex itself, only the published commitments about the state of the chain. The ordering of transactions and the state of Patex is unchanged by a fault proof challenge.
The fault proof process is currently undergoing major redevelopment as a side-effect of the November 11th EVM Equivalence update.
Last updated