Assumed conscious users: zachobront, gmhacker
Most auditors do that unconsciously
All contracts can be reduced to something of this sort. It's the actual invisible puzzle.
Think in terms of "Going from one state to another" when interacting with a contract
Think in terms of the "Reachability" of a bad state.
Follow this blog for more info: https://medium.com/@sm4rty/diagramming-smart-contract-for-security-auditing-sm4rty-33baa26a8574