A state monad with temporal logic to reason about.