A generic transducer-based approach to modelling and verifying infinite systems
Computers have become so complex today that the likelihood of subtle errors is greater than ever before. Moreover, since
computerised systems are ubiquitous (e.g. planes, railways, and nuclear power plants), the impact of such errors will certainly
be far-reaching. In the past such errors have resulted in a loss of time, money, and even human lives. The development of
(fully-automatic) model checking technologies --- pioneered by the recent ACM Turing Award winners Clarke, Emerson, and Sifakis
--- has been so influential in minimising the likelihood of subtle errors that model checking has been adopted by major companies
including IBM, Intel, Motorola, and NASA. Despite its success, model checking suffers from the inherent state-explosion problem,
which remains difficult today even though a substantial progress has been made in the past two decades.
The past fifteen years have seen an increasing level of awareness amongst researchers that modelling computerised systems as infinite-state systems is not only more suitable, but might also help circumvent the notorious state-explosion problem. Such a modelling approach views the parameters that cause the state-explosion problem as potentially unbounded or infinite. These include the sizes of arrays, stacks, queues, integer or real valued variables, discrete-time or real-time clocks, and the number of processes in distributed protocols. Instead of the state-explosion problem, such abstractions as infinite-state systems yield undecidability in general. The field of infinite-state model checking aims to develop tools and techniques to deal with this problem. Broadly speaking, approaches to infinite-state model checking can be classified as follows:
1. Restrictions to decidable formalisms.
2. General (undecidable) formalisms with the aid of decidable semantic restrictions or semi-algorithms
Most research in infinite-state model checking thus far adopts only one of these approaches without seriously considering the other. Moreover, little has been done to see the connections between these two approaches. This is unfortunate since both approaches have their own disadvantages that can be considerably minimised only by considering both approaches in parallel. The project proposes a particular hybrid approach taking into account the two aforementioned approaches simultaneously. The goal is to systematically develop generic tools and techniques for infinite-state model checking aiming for both sound theoretical foundations and practical applicability. This project focuses on general formalisms that are inspired by various notions of finite-state transducers, as they are known to be clean, expressive, and most amenable to theoretical analysis.
This project is funded by EPSRC Postdoctoral Fellowship in Theoretical Computer Science.