Valid inputs transform one state into a defined next state.
LET’S PICTURE IT
A shared game board changes only through moves that follow the same rules.
SEE IT FOR YOURSELF
Receive, check and share across independent nodesStep 1 / 4
A node receives a proposed transaction or block-related message. Receipt is not the same as accepting its claims.
A node receives a proposed transaction or block-related message. Receipt is not the same as accepting its claims.The node checks the relevant authorization and protocol rules. Popularity does not make an invalid state transition valid.Valid candidate data can propagate to peers. Connections and timing differ, so there is no perfect simultaneous worldwide view.Peers validate under the same protocol rules. This illustration is about verification and propagation, not a complete proof-of-stake consensus algorithm.
Animated local teaching model. No wallet, RPC or live blockchain data. Some labels and hashes are abbreviated for readability.
Start from a known state
Execution uses an existing state and relevant block/transaction context. The same input can behave differently when the starting state differs.
Apply validity checks
Signature, nonce, fee and other transaction rules are checked under the active protocol. Invalid transactions are not accepted simply because their desired final state looks plausible.
Execute under deterministic rules
The EVM and surrounding processing produce state effects, gas outcomes and receipts. Every validating client must agree on those results for the same valid context.
Compare resulting commitments
A proposed block’s claimed results must match the transition. Consensus chooses valid history under its rules rather than voting incorrect execution into correctness.
Map the protocol concept
prior state + valid block context
→ specified processing
→ next state + receipts + commitments
A conceptual model. Exact fields, limits and processing rules must be checked against the intended network fork.
QUICK CHECK · NO PRESSURE
Can a consensus vote make an invalid arithmetic result valid under unchanged rules?
Execution validity still requires the defined transition.