Distribution Reward State (Legacy) - Algorand Specifications

Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Algorand Specifications

The reward state consists of three 64-bit unsigned integers:

The reward state depends on:

These are defined as part of the Account State.

Informally, every ωrωr rounds, the rate RrRr is updated such that rewards given over the next ωrωr rounds will drain the incentive pool_, leaving it with the minimum balance bminbmin.

The rewards residue B∗rBr∗ is the amount of leftover rewards that should have been given in the previous round but could not be evenly divided among all reward units. The residue carries over into the rewards to be given in the next round.

The actual draining of the incentive pool account is described in the Validity and State Changes section.

More formally, let Z=Units(r)Z=Units(r).

Given a reward state (Tr,Rr,B∗r)(Tr,Rr,Br∗), the new reward state is (Tr+1,Rr+1,B∗r+1)(Tr+1,Rr+1,Br+1∗), where:

A valid block’s reward state matches the expected reward state.