Specifying systems : the TLA+ language and tools for hardware and software engineers - Lamport, Leslie. (Addison-Wesley, 2003)