191 research outputs found
The earlier the better: a theory of timed actor interfaces
Programming embedded and cyber-physical systems requires attention not only to functional behavior and correctness, but also to non-functional aspects and specifically timing and performance. A structured, compositional, model-based approach based on stepwise refinement and abstraction techniques can support the development process, increase its quality and reduce development time through automation of synthesis, analysis or verification. Toward this, we introduce a theory of timed actors whose notion of refinement is based on the principle of worst-case design that permeates the world of performance-critical systems. This is in contrast with the classical behavioral and functional refinements based on restricting sets of behaviors. Our refinement allows time-deterministic abstractions to be made of time-non-deterministic systems, improving efficiency and reducing complexity of formal analysis. We show how our theory relates to, and can be used to reconcile existing time and performance models and their established theories
Synthesizing Finite-state Protocols from Scenarios and Requirements
Scenarios, or Message Sequence Charts, offer an intuitive way of describing
the desired behaviors of a distributed protocol. In this paper we propose a new
way of specifying finite-state protocols using scenarios: we show that it is
possible to automatically derive a distributed implementation from a set of
scenarios augmented with a set of safety and liveness requirements, provided
the given scenarios adequately \emph{cover} all the states of the desired
implementation. We first derive incomplete state machines from the given
scenarios, and then synthesis corresponds to completing the transition relation
of individual processes so that the global product meets the specified
requirements. This completion problem, in general, has the same complexity,
PSPACE, as the verification problem, but unlike the verification problem, is
NP-complete for a constant number of processes. We present two algorithms for
solving the completion problem, one based on a heuristic search in the space of
possible completions and one based on OBDD-based symbolic fixpoint computation.
We evaluate the proposed methodology for protocol specification and the
effectiveness of the synthesis algorithms using the classical alternating-bit
protocol.Comment: This is the working draft of a paper currently in submission.
(February 10, 2014
GPUVerify: A Verifier for GPU Kernels
We present a technique for verifying race- and divergence-freedom of GPU kernels that are written in mainstream ker-nel programming languages such as OpenCL and CUDA. Our approach is founded on a novel formal operational se-mantics for GPU programming termed synchronous, delayed visibility (SDV) semantics. The SDV semantics provides a precise definition of barrier divergence in GPU kernels and allows kernel verification to be reduced to analysis of a sequential program, thereby completely avoiding the need to reason about thread interleavings, and allowing existing modular techniques for program verification to be leveraged. We describe an efficient encoding for data race detection and propose a method for automatically inferring loop invari-ants required for verification. We have implemented these techniques as a practical verification tool, GPUVerify, which can be applied directly to OpenCL and CUDA source code. We evaluate GPUVerify with respect to a set of 163 kernels drawn from public and commercial sources. Our evaluation demonstrates that GPUVerify is capable of efficient, auto-matic verification of a large number of real-world kernels
Timed Multiparty Session Types
We propose a typing theory, based on multiparty session types, for modular verification of real-time choreographic interactions. To model real-time implementations, we introduce a simple calculus with delays and a decidable static proof system. The proof system ensures type safety and time-error freedom, namely processes respect the prescribed timing and causalities between interactions. A decidable condition on timed global types guarantees time-progress for validated processes with delays, and gives a sound and complete characterisation of a new class of CTAs with general topologies that enjoys progress and liveness
Efficient Emptiness Check for Timed B\"uchi Automata (Extended version)
The B\"uchi non-emptiness problem for timed automata refers to deciding if a
given automaton has an infinite non-Zeno run satisfying the B\"uchi accepting
condition. The standard solution to this problem involves adding an auxiliary
clock to take care of the non-Zenoness. In this paper, it is shown that this
simple transformation may sometimes result in an exponential blowup. A
construction avoiding this blowup is proposed. It is also shown that in many
cases, non-Zenoness can be ascertained without extra construction. An
on-the-fly algorithm for the non-emptiness problem, using non-Zenoness
construction only when required, is proposed. Experiments carried out with a
prototype implementation of the algorithm are reported.Comment: Published in the Special Issue on Computer Aided Verification - CAV
2010; Formal Methods in System Design, 201
The Complexity of Codiagnosability for Discrete Event and Timed Systems
In this paper we study the fault codiagnosis problem for discrete event
systems given by finite automata (FA) and timed systems given by timed automata
(TA). We provide a uniform characterization of codiagnosability for FA and TA
which extends the necessary and sufficient condition that characterizes
diagnosability. We also settle the complexity of the codiagnosability problems
both for FA and TA and show that codiagnosability is PSPACE-complete in both
cases. For FA this improves on the previously known bound (EXPTIME) and for TA
it is a new result. Finally we address the codiagnosis problem for TA under
bounded resources and show it is 2EXPTIME-complete.Comment: 24 pages
Structural Synthesis for GXW Specifications
We define the GXW fragment of linear temporal logic (LTL) as the basis for
synthesizing embedded control software for safety-critical applications. Since
GXW includes the use of a weak-until operator we are able to specify a number
of diverse programmable logic control (PLC) problems, which we have compiled
from industrial training sets. For GXW controller specifications, we develop a
novel approach for synthesizing a set of synchronously communicating
actor-based controllers. This synthesis algorithm proceeds by means of
recursing over the structure of GXW specifications, and generates a set of
dedicated and synchronously communicating sub-controllers according to the
formula structure. In a subsequent step, 2QBF constraint solving identifies and
tries to resolve potential conflicts between individual GXW specifications.
This structural approach to GXW synthesis supports traceability between
requirements and the generated control code as mandated by certification
regimes for safety-critical software. Synthesis for GXW specifications is in
PSPACE compared to 2EXPTIME-completeness of full-fledged LTL synthesis. Indeed
our experimental results suggest that GXW synthesis scales well to
industrial-sized control synthesis problems with 20 input and output ports and
beyond.Comment: The long (including appendix) version being reviewed by CAV'16
program committee. Compared to the submitted version, one author (out of her
wish) is moved to the Acknowledgement. (v2) Corrected typos. (v3) Add an
additional remark over environment assumption and easy corner case
Bounded Determinization of Timed Automata with Silent Transitions
Deterministic timed automata are strictly less expressive than their
non-deterministic counterparts, which are again less expressive than those with
silent transitions. As a consequence, timed automata are in general
non-determinizable. This is unfortunate since deterministic automata play a
major role in model-based testing, observability and implementability. However,
by bounding the length of the traces in the automaton, effective
determinization becomes possible. We propose a novel procedure for bounded
determinization of timed automata. The procedure unfolds the automata to
bounded trees, removes all silent transitions and determinizes via disjunction
of guards. The proposed algorithms are optimized to the bounded setting and
thus are more efficient and can handle a larger class of timed automata than
the general algorithms. The approach is implemented in a prototype tool and
evaluated on several examples. To our best knowledge, this is the first
implementation of this type of procedure for timed automata.Comment: 25 page
LTL Parameter Synthesis of Parametric Timed Automata
The parameter synthesis problem for parametric timed automata is undecidable
in general even for very simple reachability properties. In this paper we
introduce restrictions on parameter valuations under which the parameter
synthesis problem is decidable for LTL properties. The investigated bounded
integer parameter synthesis problem could be solved using an explicit
enumeration of all possible parameter valuations. We propose an alternative
symbolic zone-based method for this problem which results in a faster
computation. Our technique extends the ideas of the automata-based approach to
LTL model checking of timed automata. To justify the usefulness of our
approach, we provide experimental evaluation and compare our method with
explicit enumeration technique.Comment: 23 pages, extended versio
{VeSTA} : a Tool to Verify the Correct Integration of a Component in a Composite Timed System
International audienceVesta is a push-button tool for checking the correct integration of a component in an environment, for component-based timed systems. By correct integration, we mean that the local properties of the component are preserved when this component is merged into an environment. This correctness is checked by means of a so-called divergencesensitive and stability-respecting timed tau-simulation, ensuring the preservation of all linear timed properties expressed in the logical formalism Mitl (Metric Interval Temporal Logic), as well as strong non-zenoness and deadlock-freedom. The development of the tool was guided by the architecture of the Open-Kronos tool. This allows, as additional feature, an easy connection of the models considered in Vesta to the Open- Caesar verification platform, and to the Open-Kronos tool
- …
