TY - GEN
T1 - What triggers a behavior?
AU - Kupferman, Oma
AU - Lustig, Yoad
PY - 2007
Y1 - 2007
N2 - We introduce and study trigger querying. Given a model M and a temporal behavior &phi, trigger querying is the problem of finding the set of scenarios that trigger φ in M. That is, if a computation of M has a prefix that follows the scenario, then its suffix satisfies &phi. Trigger querying enables one to find, for example, given a program with a function f, the scenarios that lead to calling f with some parameter value, or to find, given a hardware design with signal err, the scenarios after which the signal err ought to be eventually raised. We formalize trigger querying using the temporal operator & (triggers), which is the most useful operator in modern industrial specification languages. A regular expression r triggers an LTL formula &phi in a system M, denoted M |= r & &phi, if for every computation π of M and index i ≥ 0, if the prefix of π up to position i is a word in the language of r, then the suffix of π from position i satisfies &phi. The solution to the trigger query M |=? & &phi is the maximal regular expression that triggers &phi in M. Trigger querying is useful for studying systems, and it significantly extends the practicality of traditional query checking [6]. Indeed, in traditional query checking, solutions are restricted to prepositional assertions about states of the systems, whereas in our setting the solutions are temporal scenarios. We show that the solution to a trigger query M |=? &phi &phi is regular, and can be computed in polynomial space. Unfortunately, the polynomial-space complexity is in the size of M. Consequently, we also study partial trigger querying, which returns a (non empty) subset of the solution, and is more feasible. Other extensions we study are observable trigger querying, where the partial solution has to refer only to a subset of the atomic propositions, constrained trigger querying, where in addition to M and &phi, the user provides a regular constraint c and the solution is the set of scenarios respecting c that trigger &phi in M, and relevant trigger querying, which excludes vacuous triggers - scenarios that are not induced by a prefix of a computation of M. Trigger querying can be viewed as the problem of finding sufficient conditions for a behavior &phi in M. We also consider the dual problem, of finding necessary conditions to &phi, and show that it can be solved in space complexity that is only logarithmic in M.
AB - We introduce and study trigger querying. Given a model M and a temporal behavior &phi, trigger querying is the problem of finding the set of scenarios that trigger φ in M. That is, if a computation of M has a prefix that follows the scenario, then its suffix satisfies &phi. Trigger querying enables one to find, for example, given a program with a function f, the scenarios that lead to calling f with some parameter value, or to find, given a hardware design with signal err, the scenarios after which the signal err ought to be eventually raised. We formalize trigger querying using the temporal operator & (triggers), which is the most useful operator in modern industrial specification languages. A regular expression r triggers an LTL formula &phi in a system M, denoted M |= r & &phi, if for every computation π of M and index i ≥ 0, if the prefix of π up to position i is a word in the language of r, then the suffix of π from position i satisfies &phi. The solution to the trigger query M |=? & &phi is the maximal regular expression that triggers &phi in M. Trigger querying is useful for studying systems, and it significantly extends the practicality of traditional query checking [6]. Indeed, in traditional query checking, solutions are restricted to prepositional assertions about states of the systems, whereas in our setting the solutions are temporal scenarios. We show that the solution to a trigger query M |=? &phi &phi is regular, and can be computed in polynomial space. Unfortunately, the polynomial-space complexity is in the size of M. Consequently, we also study partial trigger querying, which returns a (non empty) subset of the solution, and is more feasible. Other extensions we study are observable trigger querying, where the partial solution has to refer only to a subset of the atomic propositions, constrained trigger querying, where in addition to M and &phi, the user provides a regular constraint c and the solution is the set of scenarios respecting c that trigger &phi in M, and relevant trigger querying, which excludes vacuous triggers - scenarios that are not induced by a prefix of a computation of M. Trigger querying can be viewed as the problem of finding sufficient conditions for a behavior &phi in M. We also consider the dual problem, of finding necessary conditions to &phi, and show that it can be solved in space complexity that is only logarithmic in M.
UR - http://www.scopus.com/inward/record.url?scp=47349113181&partnerID=8YFLogxK
U2 - 10.1109/FAMCAD.2007.41
DO - 10.1109/FAMCAD.2007.41
M3 - ???researchoutput.researchoutputtypes.contributiontobookanthology.conference???
AN - SCOPUS:47349113181
SN - 0769530230
SN - 9780769530239
T3 - Proceedings - Formal Methods in Computer Aided Design, FMCAD 2007
SP - 146
EP - 153
BT - Proceedings - Formal Methods in Computer Aided Design, FMCAD 2007
T2 - Formal Methods in Computer Aided Design, FMCAD 2007
Y2 - 11 November 2007 through 14 November 2007
ER -