NOT Book details Notes on Theory of Distributed Systems by James Aspnes Categories Distributed systems