CS 267 Class Project

Selected Projects

There are a number of verification tools listed in the class webpage and we are going to discuss a number of verification techniques in class. As a class project you can either 1) apply an existing verification tool to programs or specifications in some domain where verification can be useful (and hopefully find some bugs), or 2) extend an existing verification tool or technique and demonstrate its applicability in some domain. Automated verification is an active area and there are lots of research opportunities for applying automated verification to new domains and extending existing techniques.

Automated verification typically has scalability problems and application of some verification tools may require manual translation, modeling or simplification. In some cases it may be possible to automate such steps (for example by writing a translator from the target language to the input language of one of the existing verification tools).

The first thing to do is to find an application domain. You have to figure this out as soon as possible. Please choose a topic that is related to your interests so that the project is fun for you!

You can do the project either individually or as part of a two-member team.

Project Deliverables

Project Suggestions

Here are some project suggestions. Talk to instructor for details.