1. Define a model of distributed systems where messages can be passed both synchronously and asynchronously.
2. Define the causal order for the transitions of a system with synchronous communication. Define clocks for such systems, and give a distributed algorithm for computing a clock.
3. Why is it difficult to keep a synchronized system of physical clocks in distributed systems?