Formal methods
Communicating Sequential Processes (CSP)
TLA+