---
# System prepended metadata

title: BitRobot Emissions
tags: [bitrobot]

---

---
title: BitRobot Emissions
tags: bitrobot
---

# Emissions & Circulating Supply Model

## Overview

This document provides a mathematical definition of the BitRobot emissions model described [here](https://docs.google.com/spreadsheets/d/1xgWB7Z7pZE_DYL3E6_krAk0EY9xS1zQUdY5lSOyfh8M/edit?gid=1290723036#gid=1290723036):

- We use monthly time indexing rather than yearly to have a finer grained view of the emissions.
- Assume a linear vesting schedule for the team & consultants over 3 years.
- Specifies **fixed emissions** for an initial period
- Switches to **burn-adjusted emissions** from a configurable month

---

## Time Indexing

Define:

- Let $t \in \{0, 1, 2, \dots, T_{\text{max}} \}$ represent **months**, where $t = 0$ is the **TGE** (Token Generation Event)
- Let $S(t)$ be the **circulating supply** at the **end** of month $t$
- Let $E(t)$ be the **emissions** introduced during month $t$
- Let $V(t)$ be the **tokens vested** (unlocked) from the team/consultant allocation in month $t$
- Let $B(t)$ be the **tokens burned** during month $t$
- Let $T_{\text{burn}}$ be the **first month** in which burn-based emissions begin
- Let $F$ be the **burn-based emission factor**. This is a modeling assumption to understand difference scenarios of how token inflation may occur.

---

## Initial Allocation at TGE

- Total allocated at TGE:  
  $$
  A_{\text{total}} = 1,000,000,000 \text{ tokens}
  $$

- Team + Consultants allocation:
  $$
  A_{\text{team}} = a \cdot A_{\text{total}}, \quad \text{e.g., } a = 0.3 \Rightarrow A_{\text{team}} = 300,000,000
  $$

- The remainder is allocated to other buckets (liquidity, community, etc.), but only what’s vested enters circulating supply.

---

## Vesting Schedule

Assuming **linear monthly vesting over 3 years** (36 months):

$$
V(t) = \begin{cases}
\frac{A_{\text{team}}}{36}, & 0 \leq t < 36 \\
0, & \text{otherwise}
\end{cases}
$$

---

## Emissions Schedule

### Fixed Emissions (Months $0 \leq t < T_{\text{burn}}$)

Fixed emissions are according to a user-defined schedule:

$$
E(t) = E_{\text{fixed}}(t), \quad \text{for } t < T_{\text{burn}}
$$

Where $E_{\text{fixed}}(t)$ is manually defined per month.

> Example (in Excel Sheet):
> - Months 1–12: $\frac{100,000,000}{12}$
> - Months 13–24: $\frac{88,000,000}{12}$
> - Months 25–36: $\frac{60,000,000}{12}$
> - Months 37–48: $\frac{25,000,000}{12}$

---

### Burn-Based Emissions (Months $t \geq T_{\text{burn}}$)

Emissions are calculated based on burn from the **previous N months**:

Let the base factor be:

$$
B'(t) = \sum_{i=t-N}^{t-1} B(i)
$$

Then emissions are then:

$$
E(t) = F \cdot \frac{B'(t)}{N}
$$

Where:

- $F$ is a tunable scalar (e.g., 0.9), and $N$ is the lookback window size.
- This causes emissions to **scale with burn**, which is assumed to correlate with protocol usage and value capture.

---

## Circulating Supply

At each month $t$:

$$
S(t) = S(t-1) + V(t) + E(t) - B(t)
$$

With:

$$
S(0) = V(0)
$$

---

## Burn Trajectory Function

Burn is assumed to correlate with protocol usage. We can assume a **logarithmically increasing** function for simulation purposes, and adapt as needed.

$$
B(t) = b \cdot \log(1 + t), \quad b > 0
$$
