I took this course in the Fall of 2011 with Professor Nate Foster.


CS 6112 provides an introduction to the theoretical foundations of languages for concurrent programming. It presents general models (e.g., CSP, CCS, pi-calculus), their associated reasoning techniques, and topics such as coordination, fault-tolerance, mobility, security, and scalability. The course material will draw on both classic and recent papers. Although it is primarily aimed at graduate students in Computer Science, students from other fields and well-prepared undergraduates are welcome with the permission of the instructor.

— Course Website