Skip navigation
The Australian National University

Student research opportunities

A Formal Semantics for a micro VM

Project Code: CECS_967

This project is available at the following levels:
Honours, Summer Scholar, Masters, PhD

Keywords:

theory,formal methods,virtual machine

Supervisors:

Dr Michael Norrish
Professor Steve Blackburn

Outline:

This project is to develop a formal (mathematical) description of aspects of the micro Virtual Machine that is being developed in the Computer Systems group. The virtual machine will soon have at least one prototype implementation, but we also want to describe its functionality mathematically.

This will have two benefits:


  • Implementors of the virtual machine will have a solid specification of exactly what they must do
  • Important functional properties of implementations may be verifiable. For example, type safety: stating that it is impossible for a well-behaved machine to have a type error when it executes.

Goals of this project

Depending on the research background of the student, and the time-scale, we will choose an aspect of the virtual machine to specify (examples would include: the dynamic behaviour of the bytecode instructions, the static type system, and the VM’s concurrency primitives). We would specify this sub-system in logic (almost certainly using the HOL4 theorem-proving system), and then


  • prove whatever theorems about the system were appropriate; and/or
  • demonstrate that the specification could be implemented (naïvely, perhaps) by programming in SML, or even HOL4’s own “functional language”.

Links

The HOL4 theorem-proving system

Contact:



Updated:  5 September 2013 / Responsible Officer:  JavaScript must be enabled to display this email address. / Page Contact:  JavaScript must be enabled to display this email address.