# Simulation

Simulation functions with exact signatures, examples, and catalog metadata.

Canonical HTML: <https://determica.com/docs/category/simulation>

Build and run EVM programs. Resolve results and inspect their execution evidence.

- [assume_code](/docs/functions/assume_code.md) — Declares the exact EVM runtime bytecode supplied for one address in a PROGRAM's initial state.
- [assume_native_balance](/docs/functions/assume_native_balance.md) — Declares the exact native balance, in Wei, supplied for one address in a PROGRAM's initial state.
- [assume_no_code](/docs/functions/assume_no_code.md) — Declares that one address has no EVM runtime bytecode in a PROGRAM's initial state.
- [assume_nonce](/docs/functions/assume_nonce.md) — Declares the exact account nonce supplied for one address in a PROGRAM's initial state.
- [assume_storage](/docs/functions/assume_storage.md) — Declares the exact 32-byte value supplied for one contract storage slot in a PROGRAM's initial state.
- [call_context](/docs/functions/call_context.md) — Builds the EVM transaction context attached to one PROGRAM call step.
- [execute_call](/docs/functions/execute_call.md) — Builds one raw EVM call step for ordered, non-atomic PROGRAM execution.
- [execute_contract](/docs/functions/execute_contract.md) — Selects an ABI function, encodes its arguments, and builds one step for ordered, non-atomic PROGRAM execution.
- [execution_evidence](/docs/functions/execution_evidence.md) — Reads stored execution tables and returns their schema-versioned evidence projection.
- [observation_fact](/docs/functions/observation_fact.md) — Declares a human-readable label for an address without scheduling a READ.
- [observe](/docs/functions/observe.md) — Schedules one keyed READ at both the pre and terminal execution checkpoints.
- [observe_after_step](/docs/functions/observe_after_step.md) — Schedules one keyed READ at the checkpoint after a zero-based PROGRAM step.
- [program](/docs/functions/program.md) — Builds an ordered, non-atomic EVM PROGRAM that stops execution after its first unsuccessful step.
- [run](/docs/functions/run.md) — Executes candidate EVM programs sequentially against exact CLIENT state, then atomically publishes compact receipts and auditable local evidence. It never submits transactions or mutates the connected chain.
