Model checking infinite-state systems: generic and specific approaches
Abstract
Model checking is a fully-automatic formal verification method that has been extremely
successful in validating and verifying safety-critical systems in the past three
decades. In the past fifteen years, there has been a lot of work in extending many
model checking algorithms over finite-state systems to finitely representable infinitestate
systems. Unlike in the case of finite systems, decidability can easily become a
problem in the case of infinite-state model checking.
In this thesis, we present generic and specific techniques that can be used to derive
decidability with near-optimal computational complexity for various model checking
problems over infinite-state systems. Generic techniques and specific techniques primarily
differ in the way in which a decidability result is derived. Generic techniques is
a “top-down” approach wherein we start with a Turing-powerful formalismfor infinitestate
systems (in the sense of being able to generate the computation graphs of Turing
machines up to isomorphisms), and then impose semantic restrictions whereby the
desired model checking problem becomes decidable. In other words, to show that a
subclass of the infinite-state systems that is generated by this formalism is decidable
with respect to the model checking problem under consideration, we will simply have
to prove that this subclass satisfies the semantic restriction. On the other hand, specific
techniques is a “bottom-up” approach in the sense that we restrict to a non-Turing
powerful formalism of infinite-state systems at the outset. The main benefit of generic
techniques is that they can be used as algorithmic metatheorems, i.e., they can give
unified proofs of decidability of various model checking problems over infinite-state
systems. Specific techniques are more flexible in the sense they can be used to derive
decidability or optimal complexity when generic techniques fail.
In the first part of the thesis, we adopt word/tree automatic transition systems as
a generic formalism of infinite-state systems. Such formalisms can be used to generate
many interesting classes of infinite-state systems that have been considered in the
literature, e.g., the computation graphs of counter systems, Turing machines, pushdown
systems, prefix-recognizable systems, regular ground-tree rewrite systems, PAprocesses,
order-2 collapsible pushdown systems. Although the generality of these
formalisms make most interesting model checking problems (even safety) undecidable,
they are known to have nice closure and algorithmic properties. We use these
nice properties to obtain several algorithmic metatheorems over word/tree automatic
systems, e.g., for deriving decidability of various model checking problems including
recurrent reachability, and Linear Temporal Logic (LTL) with complex fairness constraints. These algorithmic metatheorems can be used to uniformly prove decidability
with optimal (or near-optimal) complexity of various model checking problems over
many classes of infinite-state systems that have been considered in the literature. In
fact, many of these decidability/complexity results were not previously known in the
literature.
In the second part of the thesis, we study various model checking problems over
subclasses of counter systems that were already known to be decidable. In particular,
we consider reversal-bounded counter systems (and their extensions with discrete
clocks), one-counter processes, and networks of one-counter processes. We shall derive
optimal complexity of various model checking problems including: model checking
LTL, EF-logic, and first-order logic with reachability relations (and restrictions
thereof). In most cases, we obtain a single/double exponential reduction in the previously
known upper bounds on the complexity of the problems.