Skip to main content

LeaderFairness

Trait LeaderFairness 

Source
pub trait LeaderFairness { }
Expand description

Assumption (Leader fairness). The leader schedule selects the correct owner of ActiveCorrectDriver in infinitely many SingleLeader rounds.

The schedule is deterministic and identical at every validator: by LeaderEligibility, the leader of SingleLeader(n) is drawn by seeding a ChaCha8Rng with u64::from(n).rotate_left(32) + seed, where seed is the block height, and sampling the stake-weighted WeightedAliasIndex over ChainOwnership::owners. The assumption is therefore about the generator, not about the protocol: it holds if ChaCha8, over the round-indexed seed sequence, selects each positive weight infinitely often. An owner of weight 0 is never selected, and ChainOwnership::first_leader, if set, deterministically owns SingleLeader(0).

Implementorsยง