CSE 635 -- Asynchronous Systems
Fall 1999
Ideas for Term Projects
Below is a list of possible term projects for CSE 635. If you have any
questions, please let me know in class or send me email. Note that some
of these projects may already be accounted for.
Specification & Verification Projects
-
IPv6 (next-generation IP) protocols -- many new and interesting protocols have
been defined for IPv6. For example, ICMPv6 is the Internet Control Message
Protocol of IPv6. ICMPv6 performs a number of functions including Path MTU
Discovery (maximum transmission unit) and Multicast Group Membership
Maintenance. ICMPv6 described in various RFCs (Request for Comments). See me
or giri for URLs and other possible
projects in this area.
-
Security protocols such as those for electronic cash, digital signatures,
and secure coin flipping -- see the book "Applied Cryptography" or Prof.
Phil Lewis.
-
Smart cards -- another kind of security protocol.
-
USB (Universal Serial Bus) protocol. Two-person project.
See shiyong for URLs.
-
Specify and verify some computer-controlled aspect of a late-model automobile;
see the University of Michigan Automotive
Research Center for ideas.
-
Specify and verify medical device software; for example, the Clinical Neutron Therapy System.
-
Communications protocol of your choice.
-
Set up a project with a local company!
Programming Projects
-
C++ code generator for the PAC (Process Algebra Compiler).
-
Add Statecharts to Concurrency Factory's GUI.
-
Implement Xinxin Liu's local model checking algorithm in the Concurrency
Workbench.
-
Implement a model checker generator in XSB.
-
Add partial-order reduction to XSB-based model checker.
Algorithmic Design Projects
-
Design an incremental model checking algorithm.
-
Design a randomized model checking algorithm (hard!).
-
Determine lower bound on computational complexity of model checking (hard!).