Tidal's randomness is seeded by cycle count, so resetCycles restarts the same random sequence
In TidalCycles, all random functions (rand, irand, choose, etc.) are seeded by the current cycle number. This means at a given cycle time, the ‘random’ value is always the same. Running resetCycles resets the cycle counter to 0, causing all random patterns to replay from their starting sequence. A subtle consequence: if two patterns both use rand, they draw from the same sequence and may correlate. To decorrelate them, offset one slightly: slow 1.001 rand gives different numbers than rand. This deterministic randomness enables reproducible performances and compositions.
Examples
resetCycles — restart random streams. d1 $ sound "clap*2" # speed (range 0.1 2 rand) # pan (slow 1.001 rand) — decorrelated speed and pan.
Assessment
Explain why two parameters both using rand may sound correlated. How do you fix this? What practical benefit does deterministic randomness provide for live performance?