S, f, σ and τ: the four fields that make a frequency replayable by anyone.
Every frequency is defined by four fields, all published in full at launch.
- S, the state space
- The exact shape and bounds of the state the system carries between ticks.
- f, the step function
- The deterministic map from one state to the next, published as code at a stated commit.
- σ, the seed
- The integer initialising s₀. The same seed and the same f always give the same run.
- τ, the tick trigger
- What causes a step: a new block, an explicit public call, a wall-clock interval anchored to a block hash, or logged user input.
Where it is stored
The full specification (system, sound settings, liner notes and listenability bounds) is stored content-addressed and keyed by its keccak-256 hash. That hash, specHash, is written to the escrow registry in the launch transaction, next to provenanceHash and listenabilityHash. None of the three has a setter: if the stored document changes by a single byte, it no longer matches the record.
Checkpoints
Each tick records a checkpoint hash H_t on-chain through tick(id, H_t). A checkpoint is not a claim about the sound; it is a claim about the state, and it either matches your own replay or it does not. The hashes form a chain, so reproducing one H_t verifies every tick before it. See Verification and Replay.
Determinism
Any entropy a frequency consumes must come from a stated, replayable source. The reference models draw it from a PRNG seeded by σ, whose state is part of S. Wall-clock randomness is not admissible.