How does EOS ensure contracts are deterministic? If WASM is used doesn't that mean developer can write non-deterministic contracts which break the network?
Update
I understand the properties of a pure function, given some input return the same output. This question is about how is determinism enforced? e.g. Are WASM op codes checked? or some other technique etc.