Systematic Construction of Correct Systems

Our group focuses on the systematic approaches to design, implementation, and verification
of secure and correct systems. Our main research areas are:

Trusted Platforms

Do you trust your laptop? Your mobile phone? How about the controller
running the brakes in your car? We investigate security properties of systems
that split computing platforms into a secure and a non-secure environments.

Parameterized Systems

Synthesize one small system, and scale it to a correct system of any size.
When the system is too large for tools to handle, we reduce it to a small one and check that instead.

Synthesis

Certain aspects of a system are easy to implement, others are easy to synthesize.
We automatically synthesize correct systems using methods like interpolation and abstraction.

Testing

In automatic test case generation we try to take advantage of existing models
created within the software development process. These models range from simple
design models to formal models which are proven to satisfy the specification and
requirements. We research methods to derive test cases automatically to check
if the actual implementation conforms to the model and/or its properties.