Skip to content
This repository has been archived by the owner on Feb 21, 2024. It is now read-only.

Add a TOPOS section #18

Closed
wants to merge 2 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 0 additions & 9 deletions docs/learn/topos-ledger.md

This file was deleted.

44 changes: 44 additions & 0 deletions docs/learn/topos.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
---
sidebar_position: 3
---

# TOPOS

**TOPOS**—Topos XSP's **native asset**— is the first asset compatible with cross-subnet transactions.

:::info Future work
In future iterations, we plan to extend Topos XSP by allowing subnets to exchange transactions of any types (other assets or not based on asset transfers) and, as such, be free from relying on TOPOS for cross-subnet transactions.
:::

TOPOS's supply is managed by a special subnet: the Topos subnet.

## Topos Subnet

The **Topos subnet**—the first blockchain-based subnet developed with Topos Subnet DevKit—is built on top of a hybrid consensus composed of a NPoS-based block production mechanism that provides probabilistic finality and a finality gadget that enforces deterministic finality over a chain.

### Validators

Validators are key participants of the Topos subnet for they engage in both mechanisms of its hybrid consensus protocol:

- They produce new blocks
- They vote on the canonical chain

Validators are elected by nominators who bond their staked TOPOS to the validator candidates of their choice. Once elected, validators participate in block production and share their block rewards with their nominators. Validators behaving badly are punished and so are their nominators.

### Block Production

**BABE** is Topos subnet's block production mechanism. Validators get assigned slots—discrete units of time—during which they can propose a block. The slot assignation mechanism results from the total stake attributed to each validator and from [VRF-based randomness](https://wiki.polkadot.network/docs/learn-randomness).

:::tip
Refer to the [BABE paper](https://research.web3.foundation/en/latest/polkadot/block-production/Babe.html) for more details about the protocol.
:::

### Finality Gadget

The finality gadget—GRANDPA—is a partially synchronous BFT protocol, and as such is ensured to be correctly executed if $f<1/3$ of the voting power (the validators) is Byzantine.

:::tip
Refer to the [GRANDPA paper](https://github.com/w3f/consensus/blob/master/pdf/grandpa.pdf) for more details about the procotol.
:::

## Role In XSP