Title :
A Perfect Model for Bounded Verification
Author :
Esparza, Javier ; Ganty, Pierre ; Majumdar, Rupak
Author_Institution :
Inst. fur Inf., Tech. Univ. Munchen, Garching, Germany
Abstract :
A class of languages C is perfect if it is closed under Boolean operations and the emptiness problem is decidable. Perfect language classes are the basis for the automata-theoretic approach to model checking: a system is correct if the language generated by the system is disjoint from the language of bad traces. Regular languages are perfect, but because the disjointness problem for context-free languages is undecidable, no class containing them can be perfect. In practice, verification problems for language classes that are not perfect are often under-approximated by checking if the property holds for all behaviors of the system belonging to a fixed subset. A general way to specify a subset of behaviors is by using bounded languages. A class of languages C is perfect modulo bounded languages if it is closed under Boolean operations relative to every bounded language, and if the emptiness problem is decidable relative to every bounded language. We consider finding perfect classes of languages modulo bounded languages. We show that the class of languages accepted by multi-head pushdown automata are perfect modulo bounded languages, and characterize the complexities of decision problems. We also show that bounded languages form a maximal class for which perfection is obtained. We show that computations of several known models of systems, such as recursive multi-threaded programs, recursive counter machines, and communicating finite-state machines can be encoded as multi-head pushdown automata, giving uniform and optimal underapproximation algorithms modulo bounded languages.
Keywords :
Boolean algebra; C language; approximation theory; computational complexity; context-free languages; decidability; formal verification; pushdown automata; Boolean operations; C language; automata-theoretic approach; bounded verification; communicating finite-state machines; context-free languages; decidability; decision problem complexity; disjointness problem; emptiness problem; languages modulo bounded languages; model checking; multihead pushdown automata; perfect language classes; perfect model; perfect modulo bounded languages; recursive counter machines; recursive multithreaded programs; regular languages; underapproximation algorithms modulo bounded languages; Automata; Complexity theory; Computational modeling; Encoding; Magnetic heads; Personal digital assistants; Radiation detectors; algorithms; complexity; formal languages; underapproximation; verification;
Conference_Titel :
Logic in Computer Science (LICS), 2012 27th Annual IEEE Symposium on
Conference_Location :
Dubrovnik
Print_ISBN :
978-1-4673-2263-8
DOI :
10.1109/LICS.2012.39