Theory of distributed and real-time computing: mathematical models, specification, algorithm and system design, performance and fault-tolerance analysis. Distributed data management, communication, synchronization. Languages and tools for abstract distributed prgramming. Hybrid (continuous/discrete) systems.