A discipline of multiprogramming programming theory for distributed applications - Misra, Jayadev (Monographs in computer science, 2001)