Mantle is a Bedrock component that serves as the operating system of Logos. It provides essential functionality that allows nodes to participate in Bedrock Services, as well as providing minimal operations to enable anybody to interact with Bedrock. It is also responsible for handling Logos notes, which are private-by-default fungible tokens.

Ledger and Notes

Mantle maintains a restricted ledger that provides a very limited execution environment and operations to support Bedrock Services, and is primarily concerned with fee payment for Mantle operations. This ledger keeps track of fungible assets known as notes, which are bound to their owners. Note transfer transactions are based on the UTXO model where a sender spends their note and creates an equivalent new note belonging to the recipient. A spent note can never be spent again.

Mantle notes are stored by Logos nodes in a dictionary mapping notes to their unique note identifiers. All Logos validators execute ledger transactions independently to ensure that the ledger state is updated correctly.

Mantle Operations

<aside> 💡

Zones remain a work in progress at this time.

</aside>

Mantle operations are the way Logos nodes and Zone executors interact with Mantle. These are submitted to Mantle in the form of a transaction, paid for by notes stored in Mantle. Zone executors and Sovereign Rollup sequencers use operations to post blob data from their Zone or Sovereign Rollup to LogosDA, as well as to inscribe data permanently onto a Logos block. Zones submit their own state transition proofs to Bedrock via similar Mantle operations.

Logos nodes use Mantle operations to indicate their participation in Bedrock Services, with Mantle providing a locking mechanism used to incentivise correct behaviour by Service participants. The operations supported by Mantle include staking notes for participation in Bedrock Services, paying rewards to compensate participants, and unstaking notes.

Mantle operations also allow for Zones to be created and updated. An update to the Zone state must be accompanied by a proof that the ledger was updated according to the Common Ledger rules, and another proof that the Zone data was updated in accordance with that Zone’s state transition function. The availability of the Zone data must also be verified so it can be recovered in case an executor or rollup operator attempts to withhold it.

Mantle also serves as a censorship resistant message delivery mechanism for Sovereign Rollups and Zones, allowing Zone executors and Sovereign Rollup sequencers to send information either to be recorded on the blockchain permanently, or only for temporary storage in the form of a blob. Bedrock can therefore be seen as a resilient and decentralised message passing infrastructure for Sovereign Rollups and Zones, either on-ledger (inscriptions) or through a cheap DA protocol (blobs) for large amounts of data. Blobs are discussed in more detail in the LogosDA section.

Mantle Channels

Mantle Channels are lightweight virtual chains overlaid on top of the Logos Blockchain. The purpose of Mantle channels is to immediately enforce the correct ordering of transactions from Sovereign Rollups and Zones. Mantle channels are permissioned, ordered logs of messages signed by the channel owner. They come in two types: inscriptions store the message data permanently on the ledger, while Blobs store only a commitment to the message data permanently. The actual message data is stored temporarily in LogosDA, just long enough for interested parties to fetch a copy for themselves.

Mantle channels ensure that their transactions will eventually be included on-chain in the correct order, regardless of how the Logos Blockchain may fork or reorganise. This allows new transactions that depend on earlier ones to be submitted immediately, without waiting for finality. An example with two channels is shown below

A diagram illustrating how two Mantle Channels are included in the Logos Blockchain.

A diagram illustrating how two Mantle Channels are included in the Logos Blockchain.

It is important to note that Mantle channels can only be relied on if the sequencer is trusted to act honestly. In the absence of this assumption, users must wait for the true blockchain finality - about 18 hours at the time of writing.