Supervisor: Nobuko Yoshida
In distributed systems, the correctness of concurrent programs or systems has been often classified using two terms: the safety and liveness properties. Intuitively a safety property asserts that nothing bad happens during execution of programs, while a liveness property asserts that something good eventually happens. It is well-known that the typing systems of the programming languages can offer a static verification technique to guarantee safety properties.
This project investigates and implements a type-checking system to guarantee not only safety but also liveness in concurrent mobile computing.
This project is built-on a recent study of liveness in mobile computing. During your project, you will be able to learn a powerful concurrent formalism called the pi-calculus . (Recently the pi-calculus is used to design a shipping server product, the XLang Scheduler in Microsoft BizTalk Server 2000 . Also the pi-calculus was introduced as a key formal model for XML in a major XML text book, Professional XML 2nd Edition, Wrox Press 2001).
Thus this project is very challenging and fun because you can learn both the pi-calculus (advanced theory) and type-checking (implementation).
Implementation of the type-checker.
Available from Nobuko Yoshida (yoshida@doc.ic.ac.uk).
http://www.doc.ic.ac.uk/~yoshida/
(click
secure information analysis and
typing systems for concurrent computation and programming
).
Calculi for Mobile Processes