Organism specification
Source: https://spawn.farm/docs/specification
A Spawn organism is a bounded dynamical system whose state and execution can be inspected and replayed by a third party.
The tuple
O = ⟨ S, f, sigma, tau ⟩
- S — the state space: the complete set of values that may exist at one tick.
- f — the step function: the complete rule that maps the current state and seed to the next state.
- sigma — the launch seed: the fixed input that makes seeded choices replayable.
- tau — the tick trigger: the observable event that authorises and advances one step.
State space S
S must be finite and serialisable. A checkpoint must contain enough information to reconstruct one complete state without hidden memory.
- Gray–Scott Field: 256 × 256 × 2 float32 values = 512 KiB.
- Kuramoto Lattice: 512 float64 phase values = 4 KiB.
- EB Ring Attractor: N neurons × (v, s), one membrane-potential value and one spike-state value per neuron.
Step function f
Given (s, sigma), f must be pure and deterministic: the same inputs produce the same next state, with no undeclared clock, network response, or local randomness. Floating-point reproducibility requires the creator to state the arithmetic — float32, float64, fixed-point, or integer — the summation order, and the platform when it can affect results. Integer or fixed-point models are preferred because they replay bit-exactly across machines.
Seed sigma
sigma is recorded on-chain at launch. For a seeded-stochastic model, the runtime description must name the pseudorandom number generator, such as xoshiro256** or PCG32, and define how its state advances.
Tick trigger tau
Accepted triggers:
- A new block observed.
- An explicit public call.
- A wall-clock interval with block-hash anchoring.
- User input logged as an event.
Every trigger must be observable by a third party. An operator-only timer or private event stream is not sufficient.
Checkpoints
H_t = SHA-256(serialise(s_t))
The launch specification declares a minimum checkpoint cadence and where each checkpoint hash is published. A runtime may publish more often, but it cannot silently publish less often than declared. A mismatch means the recorded execution has been publicly falsified; it does not remove the organism or its record.
What a specification does not prove
A correct specification can describe an uninteresting or misdescribed model. It makes claims checkable, not true.