diff --git a/conf.py b/conf.py
index 99d2778e7..24b0476b9 100644
--- a/conf.py
+++ b/conf.py
@@ -54,7 +54,7 @@
# -- Myst parser configuration -----------------------------------------------
# Auto-generate header anchors for md headings
-myst_heading_anchors = 5
+myst_heading_anchors = 6
# Enable colon_fence for better markdown compatibility
# https://myst.tools/docs/mystjs/syntax-overview#directives
diff --git a/docs/explanations/tokens.md b/docs/explanations/tokens.md
index b6722de7e..451a39f2a 100644
--- a/docs/explanations/tokens.md
+++ b/docs/explanations/tokens.md
@@ -183,8 +183,8 @@ distribution options are summarized below:
| ------ | ----------- | -------- | ------ |
| Manual Minting | Authorized users/groups can create new tokens until `maxSupply` is reached | On-demand minting | - Requires proper configuration to enable
- Minting actions may be logged or controlled via permissions |
| Programmed Distribution | A fixed number of tokens are automatically minted to designated identities at a specific timestamp | *On Jan 1, 2047, allocate `X` tokens to the provided identity* | - Automates token release at known times
- Useful for predictable, one-time or recurring events at fixed timestamps |
-| Perpetual Distribution | Scheduled release of tokens based on blocks or time intervals | *Emit 100 tokens every 20 blocks*, or *Halve the emission every year* | - Offers ongoing, dynamic token emission patterns.
- Supports variable rates (e.g., linear, steps).
- Configurable to trigger automatically or require manual "release" actions. |
-
+| [Perpetual Distribution](#perpetual-distribution-options) | Scheduled release of tokens based on blocks or time intervals | *Emit 100 tokens every 20 blocks*, or *Halve the emission every year* | - Offers ongoing, dynamic token emission patterns.
- Supports variable rates (e.g., linear, steps).
- Configurable to trigger automatically or require manual "release" actions. |
+
Dash Platform also supports three options to control the destination for newly minted tokens:
| Option | Description | Notes |
@@ -193,6 +193,203 @@ Dash Platform also supports three options to control the destination for newly m
| **Fixed Destination** | Newly minted tokens are always directed to one predetermined (fixed) identity. | - Ensures a strict, predictable allocation.
- No choice at the time of minting once configured. |
| **Combination / Exclusive** | These two approaches can be used exclusively (only one rule active) or combined for more granular control. | - In a combined setup, some mints could go to a fixed address while others go to a chosen address. |
+##### Perpetual Distribution Options
+
+A wide variety of emission patterns are provided to cover most common scenarios. The following table summarizes the options and links to further details.
+
+| Name | Description |
+| - | - |
+| [Fixed Amount](#fixed-amount) | Emits a constant number of tokens per period |
+| [Random](#random) | Emits a random amount between `min` and `max`, using a PRF |
+| [Step Decreasing Amount](#step-decreasing-amount) | Emits tokens that decrease in discrete steps at fixed intervals |
+| [Linear](#linear) | Linear growth/decay with integer or fractional precision |
+| [Polynomial](#polynomial) | Polynomial with integer or fractional exponents or coefficients |
+| [Exponential](#exponential) | Emits tokens following an exponential function |
+| [Logarithmic](#logarithmic) | Slows emission over time |
+| [Inverted Logarithmic](#inverted-logarithmic) | Slows emission over time |
+| [Stepwise](#stepwise) | Emits constant values within predefined steps |
+
+###### Fixed Amount
+
+Emits a constant (fixed) number of tokens for every period.
+
+- **Formula:** `f(x) = n`
+- **Use Case:**
+ - When a predictable, unchanging reward is desired.
+ - Simplicity and stable emissions.
+- **Example:** If `n = 5` tokens per block, then after 3 blocks the total emission is 15 tokens.
+
+###### Random
+
+Emits a random number of tokens within a specified range.
+
+- **Formula**: `f(x) ∈ [min, max]`
+ - Constraints:
+ - `min` must be ≤ `max`, otherwise the function is invalid.
+ - If `min == max`, this behaves like a [Fixed Amount](#fixed-amount) function with a constant emission.
+- **Description**
+ - This function selects a **random** token emission amount between `min` and `max`.
+ - The value is drawn **uniformly** between the bounds.
+ - The randomness uses a Pseudo Random Function (PRF) from x.
+- **Use Case**
+ - **Stochastic Rewards**: Introduces randomness into rewards to incentivize unpredictability.
+ - **Lottery-Based Systems**: Used for randomized emissions, such as block rewards with probabilistic payouts.
+- **Example**
+
+ Suppose a system emits **between 10 and 100 tokens per period**.
+
+ ```text
+ Random { min: 10, max: 100 }
+ ```
+
+ | Period (x) | Emitted Tokens (Random) |
+ |------------|------------------------|
+ | 1 | 27 |
+ | 2 | 94 |
+ | 3 | 63 |
+ | 4 | 12 |
+
+ - Each period, the function emits a **random number of tokens** between `min = 10` and `max = 100`.
+ - Over time, the **average reward trends toward the midpoint** `(min + max) / 2`.
+
+###### Step Decreasing Amount
+
+Emits tokens that decrease in discrete steps at fixed intervals.
+
+- **Formula:** `f(x) = n * (1 - (numerator / denominator))^((x - s) / step_count)`
+- **Description:** Reduces token emissions by a fixed percentage at regular intervals. Includes optional start offset and minimum emission floor.
+ - `step_count`: number of periods between each step
+ - `numerator` and `denominator`: the reduction factor per step
+ - `s`: optional start period offset (e.g., start block or time). If not provided, the contract creation start is used.
+ - `n`: initial token emission amount
+ - `min_value`: optional minimum emission value
+- **Use Case:** Reward systems with predictable decay—ideal for Bitcoin-style halvings or Dash-style gradual reductions
+- **Example:**
+ - Bitcoin: 50% reduction every 210,000 blocks
+ - Dash: ~7% reduction every 210,240 blocks
+
+###### Linear
+
+Emits tokens following a linear function that can increase or decrease over time with fractional precision.
+
+- **Formula:** `f(x) = (a * (x - s) / d) + b`
+
+- **Description:** Supports both integer and fractional slopes via `a / d` ratio. Enables precise reward schedules without floating-point rounding errors.
+ - Parameters
+ - `a`: slope numerator (positive = increase, negative = decrease)
+ - `d`: slope divisor (enables fractional precision)
+ - `s`: optional start period offset (defaults to contract creation)
+ - `b`: starting emission amount
+ - `min_value` / `max_value`: optional emission bounds
+ - Behavior
+ - If `a > 0`, emissions increase linearly over time
+ - If `a < 0`, emissions decrease linearly over time
+ - If `a = 0`, emissions remain constant at `b`
+
+- **Use Case:** Predictable inflation or deflation, gradual reward scaling, clamped emission schedules
+
+- **Example:**
+ - Increasing Linear Emission: `f(x) = (1 * (x - 0) / 1) + 10`
+ - Decreasing Linear Emission: `f(x) = (-2 * (x - 0) / 1) + 100`
+ - Delayed Start: `f(x) = (5 * (x - 10) / 1) + 50`
+ - Clamping Emissions: `f(x) = (2 * (x - 0) / 1) + 50`
+
+###### Polynomial
+
+A polynomial function using fixed-point arithmetic for fractional or integer exponents.
+
+- **Formula:**
+ `f(x) = (a * (x - s + o)^(m / n)) / d + b`
+
+- **Description:**
+ Emits tokens based on a polynomial curve, where the exponent is defined as a fraction (`m / n`). This enables a wide range of growth or decay behaviors—linear, quadratic, root-based, and more—using precise fixed-point logic.
+ Parameters:
+ - `a`: coefficient scaling the curve (positive for growth, negative for decay)
+ - `m` and `n`: exponent numerator and denominator, allowing fractional powers (e.g., `m = 1`, `n = 2` → square root)
+ - `d`: divisor to scale the result
+ - `s`: optional start period offset
+ - `o`: offset inside the exponent input
+ - `b`: amount added after the curve is computed
+ - `min_value` / `max_value`: optional boundaries to clamp emissions
+
+- **Use Case:**
+ - **Accelerating Growth:** Use `a > 0` and `m > 1` for quadratic/cubic growth
+ - **Diminishing Emissions:** Use `a < 0` and fractional exponents for decaying curves
+ - **Root-based Models:** Use `m = 1`, `n > 1` to slow down early growth
+ - **Flexibility:** Fine-tune emission behavior with high control over shape
+
+- **Example:**
+ - Increasing Polynomial Growth: `f(x) = (2 * (x - s + o)^2) / d + 10`
+ - Decreasing Polynomial Decay: `f(x) = (5 * (x - s + o)^(-1)) / d + 10`
+ - Inverted Growth → Decreasing Over Time: `f(x) = (-3 * (x - s + o)^2) / d + 50`
+ - Inverted Decay → Slowing Increase: `f(x) = (-10 * (x - s + o)^(-2)) / d + 50`
+
+###### Exponential
+
+Emits tokens following an exponential function.
+
+- **Formula:** `f(x) = a * e^(b * x) + c`
+- **Description:**
+ - `b` > 0 -> rapid growth
+ - `b` < 0 -> rapid decay
+- **Use Case:** Early contributor boosts or quick emission tapering
+- **Example:** f(x) = 100 * e^(-0.693 * x) + 5
+
+###### Logarithmic
+
+Logarithmic growth of token emissions.
+
+- **Formula:** `f(x) = a * log_b(x) + c`
+- **Description:** Growth slows as `x` increases
+- **Use Case:** Sustainable long-term emission tapering
+- **Example:** f(x) = 20 * log_2(x) + 5
+
+###### Inverted Logarithmic
+
+Emits tokens following an inverted logarithmic decay curve.
+
+- **Formula:**
+ `f(x) = (a * log(n / (m * (x - s + o)))) / d + b`
+
+- **Description:**
+ Emits a high number of tokens initially, with emissions decreasing rapidly at first, then slowing over time. Useful when early adoption or front-loaded incentives are desired.
+ Parameters:
+ - `a`: scaling factor for the log term
+ - `d`: divisor to scale the final result
+ - `m` and `n`: Control the logarithmic inversion
+ - `o`: offset applied inside the logarithm
+ - `s`: optional start period offset (defaults to contract creation time if not provided)
+ - `b`: offset added after scaling
+ - `min_value` / `max_value`: optional bounds to constrain emissions
+
+- **Use Case:**
+ - **Gradual Decay of Rewards**: Prioritize early users with higher emissions that reduce over time
+ - **Resource Draining / Controlled Burn**: Designed for token models where supply tapers gradually
+ - **Airdrops & Grants**: Rewards diminish for late claimants, encouraging early participation
+
+- **Example:**
+ - `f(x) = (1000 * log(5000 / (5 * (x - 1000)))) / 10 + 10`
+ - Sample outputs:
+
+ | Period (x) | Emission (f(x)) |
+ |------------|----------------|
+ | 1000 | 500 tokens |
+ | 1500 | 230 tokens |
+ | 2000 | 150 tokens |
+ | 5000 | 50 tokens |
+ | 10,000 | 20 tokens |
+ | 50,000 | 10 tokens |
+
+ - Starts high and decays gradually without hitting zero too fast
+
+###### Stepwise
+
+Emits tokens in fixed amounts for specific intervals.
+
+- **Description:** Emissions remain constant within each step
+- **Use Case:** Adjust rewards at specific milestones
+- **Example:** 100 tokens per block for first 1000 blocks, then 50 tokens thereafter
+
### Groups
Groups can be used to distribute token configuration and update authorization across multiple identities. Each group defines a set of member identities, the voting power of each member, and the required power threshold to authorize an action.