Abstract
A counterexample to the satisfaction of a linear property $$\psi $$ in a system $${\mathcal {S}}$$ is an infinite computation of $${\mathcal {S}}$$ that violates $$\psi $$ . When $$\psi $$ is a safety property, a counterexample to its satisfaction need not be infinite. Rather, it is a bad-prefix for $$\psi $$ : a finite word all whose extensions violate $$\psi $$ . The existence of finite counterexamples is very helpful in practice. Liveness properties do not have bad-prefixes and thus do not have finite counterexamples. We extend the notion of finite counterexamples to non-safety properties. We study counterable languages—ones that have at least one bad-prefix. Thus, a language is counterable iff it is not liveness. Three natural problems arise: (1) given a language, decide whether it is counterable, (2) study the length of minimal bad-prefixes for counterable languages, and (3) develop algorithms for detecting bad-prefixes for counterable languages. We solve the problems for languages given by means of LTL formulas or nondeterministic Buchi automata. In particular, our EXPSPACE-completeness proof for the problem of deciding whether a given LTL formula is counterable, and hence also for deciding liveness, settles a long-standing open problem. In addition, we make finite counterexamples more relevant and helpful by introducing two variants of the traditional definition of bad-prefixes. The first adds a probabilistic component to the definition. There, a prefix is bad if almost all its extensions violate the property. The second makes it relative to the system. There, a prefix is bad if all its extensions in the system violate the property. We also study the combination of the probabilistic and relative variants. Our framework suggests new variants also for safety and liveness languages. We solve the above three problems for the different variants. Interestingly, the probabilistic variant not only increases the chances to return finite counterexamples, but also makes the solution of the three problems exponentially easier.
Highlights
In model checking, we verify that a system meets a desired property by checking that a mathematical model of the system meets a formal specification that describes the property
We show that in order to find a K-prob-bad-prefix for an linear temporal logic (LTL) formula, we can carefully proceed according to the syntax of the formula and do exponentially better than an algorithm that translates the formulas to automata
We cannot hope to obtain a PSPACE algorithm by translating LTL formulas to NBWs, unless the structure of the latter is analyzed to a level in which it essentially follows the structure of the LTL formula
Summary
We verify that a system meets a desired property by checking that a mathematical model of the system meets a formal specification that describes the property. While in deciding safety the exponential succinctness of LTL with respect to NBWs does not make the problem more complex, in deciding liveness it makes the problem exponentially more complex This phenomenon is reflected in the solutions to the problems about the length and the detection of bad-prefixes. We study the theoretical properties of the probabilistic setting and show that an ω-regular language L is prob-counterable iff the probability of a random word to be in L is less than 1. From a practical point of view, we show that the probabilistic setting increases our chances to return finite counterexamples, and makes the solution of our three basic problems easier: deciding prob-counterability and K-prob-counterability for LTL formulas is exponentially easier than deciding counterability and K-counterability! Due to lack of space, detailed proofs can be found in the full version, in the authors’ home pages
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.