An abstraction-refinement framework for trigger querying

Guy Avni, Orna Kupferman

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review


Trigger querying is the problem of finding, given a system M and an LTL formula φ, the set of scenarios that trigger φ in M; that is, the language L of finite computations of M such that all infinite computations that have a prefix in L continue with a suffix that satisfies φ. For example, the trigger query M |=? → Ferr asks for the set of scenarios after which err aught to eventually happen. Trigger querying thus significantly extends query checking, which seeks propositional solutions, and is an extremely useful methodology for system exploration and understanding. The weakness of trigger querying lies in the fact that the size of the solution is linear in the size of the system. For trigger querying to become feasible in practice, we must offer solutions to cope with systems of big, and possibly infinite, state spaces. In this paper we describe an abstraction-refinement framework for trigger querying. The general idea is to replace the reasoning about M by reasoning about an abstraction MA of M, and return to the user two languages, L l and L u , that under- and over-approximate L, respectively. We consider predicate abstraction, and the languages Ll and Lu are defined with respect to the set of predicates. The challenge in defining the approximating languages is that trigger querying does not have a clear polarity, and the definition of Ll and Lu has to combine the upper- and over-approximations of M. We describe an automata-theoretic approach for refining and reducing Lu \ L l . While refinement for model checking is lengthwise, in the sense that it is based on counterexamples, here we suggest both lengthwise and widthwise refinement, where the latter is based on cuts in an automaton for Lu \ Ll and thus can symbolically handle batches of counterexamples. We show that our framework is robust and can be applied also for classical query checking as well as variants and extensions of trigger querying.

Original languageEnglish
Title of host publicationStatic Analysis - 18th International Symposium, SAS 2011, Proceedings
Number of pages17
StatePublished - 2011
Externally publishedYes
Event18th International Static Analysis Symposium, SAS 2011 - Venice, Italy
Duration: 14 Sep 201016 Sep 2010

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume6887 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349


Conference18th International Static Analysis Symposium, SAS 2011

ASJC Scopus subject areas

  • Theoretical Computer Science
  • General Computer Science


Dive into the research topics of 'An abstraction-refinement framework for trigger querying'. Together they form a unique fingerprint.

Cite this