21 research outputs found
Distributed Verification of Rare Properties using Importance Splitting Observers
Rare properties remain a challenge for statistical model checking (SMC) due
to the quadratic scaling of variance with rarity. We address this with a
variance reduction framework based on lightweight importance splitting
observers. These expose the model-property automaton to allow the construction
of score functions for high performance algorithms.
The confidence intervals defined for importance splitting make it appealing
for SMC, but optimising its performance in the standard way makes distribution
inefficient. We show how it is possible to achieve equivalently good results in
less time by distributing simpler algorithms. We first explore the challenges
posed by importance splitting and present an algorithm optimised for
distribution. We then define a specific bounded time logic that is compiled
into memory-efficient observers to monitor executions. Finally, we demonstrate
our framework on a number of challenging case studies
On the Complexity of Temporal-Logic Path Checking
Given a formula in a temporal logic such as LTL or MTL, a fundamental problem
is the complexity of evaluating the formula on a given finite word. For LTL,
the complexity of this task was recently shown to be in NC. In this paper, we
present an NC algorithm for MTL, a quantitative (or metric) extension of LTL,
and give an NCC algorithm for UTL, the unary fragment of LTL. At the time of
writing, MTL is the most expressive logic with an NC path-checking algorithm,
and UTL is the most expressive fragment of LTL with a more efficient
path-checking algorithm than for full LTL (subject to standard
complexity-theoretic assumptions). We then establish a connection between LTL
path checking and planar circuits, which we exploit to show that any further
progress in determining the precise complexity of LTL path checking would
immediately entail more efficient evaluation algorithms than are known for a
certain class of planar circuits. The connection further implies that the
complexity of LTL path checking depends on the Boolean connectives allowed:
adding Boolean exclusive or yields a temporal logic with P-complete
path-checking problem
Efficient Parallel Path Checking for Linear-Time Temporal Logic With Past and Bounds
Path checking, the special case of the model checking problem where the model
under consideration is a single path, plays an important role in monitoring,
testing, and verification. We prove that for linear-time temporal logic (LTL),
path checking can be efficiently parallelized. In addition to the core logic,
we consider the extensions of LTL with bounded-future (BLTL) and past-time
(LTL+Past) operators. Even though both extensions improve the succinctness of
the logic exponentially, path checking remains efficiently parallelizable: Our
algorithm for LTL, LTL+Past, and BLTL+Past is in AC^1(logDCFL) \subseteq NC
Recommended from our members
A survey on online monitoring approaches of computer-based systems
This report surveys forms of online data collection that are in current use (as well as being the subject of research to adapt them to changing technology and demands), and can be used as inputs to assessment of dependability and resilience, although they are not primarily meant for this use
Exploring behaviors of stochastic differential equation models of biological systems using change of measures
Stochastic Differential Equations (SDE) are often used to model the stochastic dynamics of biological systems. Unfortunately, rare but biologically interesting behaviors (e.g., oncogenesis) can be difficult to observe in stochastic models. Consequently, the analysis of behaviors of SDE models using numerical simulations can be challenging. We introduce a method for solving the following problem: given a SDE model and a high-level behavioral specification about the dynamics of the model, algorithmically decide whether the model satisfies the specification. While there are a number of techniques for addressing this problem for discrete-state stochastic models, the analysis of SDE and other continuous-state models has received less attention. Our proposed solution uses a combination of Bayesian sequential hypothesis testing, non-identically distributed samples, and Girsanov's theorem for change of measures to examine rare behaviors. We use our algorithm to analyze two SDE models of tumor dynamics. Our use of non-identically distributed samples sampling contributes to the state of the art in statistical verification and model checking of stochastic models by providing an effective means for exposing rare events in SDEs, while retaining the ability to compute bounds on the probability that those events occur
Monitoring temporal information flow
We present a framework for monitoring information flow in security-critical reactive systems, such as communication protocols, cell phone apps, document servers and web browsers. The secrecy requirements in such systems typically vary over time in response to the interaction with the environment. Standard notions of secrecy, like noninterference, must therefore be extended by specifying precisely when and under what conditions a particular event needs to remain secret. Our framework is based on the temporal logic SecLTL, which combines the standard temporal operators of linear-time temporal logic with the modal Hide operator for the specification of information flow properties. We present a first monitoring algorithm for SecLTL specifications, based on a translation of SecLTL formulas to alternating automata, and identify open research questions and directions for future work
Reactive Safety
The distinction between safety and liveness properties is a fundamental
classification with immediate implications on the feasibility and complexity of
various monitoring, model checking, and synthesis problems. In this paper, we
revisit the notion of safety for reactive systems, i.e., for systems whose
behavior is characterized by the interplay of uncontrolled environment inputs
and controlled system outputs. We show that reactive safety is a strictly
larger class of properties than standard safety. We provide algorithms for
checking if a property, given as a temporal formula or as a word or tree
automaton, is a reactive safety property and for translating such properties
into safety automata. Based on this construction, the standard verification and
synthesis algorithms for safety properties immediately extend to the larger
class of reactive safety.Comment: In Proceedings GandALF 2011, arXiv:1106.081
Path Checking for MTL and TPTL over Data Words
Metric temporal logic (MTL) and timed propositional temporal logic (TPTL) are
quantitative extensions of linear temporal logic, which are prominent and
widely used in the verification of real-timed systems. It was recently shown
that the path checking problem for MTL, when evaluated over finite timed words,
is in the parallel complexity class NC. In this paper, we derive precise
complexity results for the path-checking problem for MTL and TPTL when
evaluated over infinite data words over the non-negative integers. Such words
may be seen as the behaviours of one-counter machines. For this setting, we
give a complete analysis of the complexity of the path-checking problem
depending on the number of register variables and the encoding of constraint
numbers (unary or binary). As the two main results, we prove that the
path-checking problem for MTL is P-complete, whereas the path-checking problem
for TPTL is PSPACE-complete. The results yield the precise complexity of model
checking deterministic one-counter machines against formulae of MTL and TPTL
Optimized Temporal Monitors for SystemC
SystemC is a modeling language built as an extension of C++. Its growing popularity and the increasing complexity of designs have motivated research efforts aimed at the verification of SystemC models using assertion-based verification (ABV), where the designer asserts properties that capture the design intent in a formal language such as PSL or SVA. The model then can be verified against the properties using runtime or formal verification techniques. In this paper we focus on automated generation of runtime monitors from temporal properties. Our focus is on minimizing runtime overhead, rather than monitor size or monitor-generation time. We identify four issues in monitor generation: state minimization, alphabet representation, alphabet minimization, and monitor encoding. We conduct extensive experimentation and identify a combination of settings that offers the best performance in terms of runtime overhead