2,165 research outputs found
Refinement Checking for Multirate Hybrid ZIA
A hybrid system is a dynamical system with both discrete and continuous
components. In order to study the modeling and verification aspects of hybrid
system, in this paper we first introduce a specification approach combining
interface automata, initialized multirate hybrid automata and Z language, which
is named MZIA. Meanwhile we propose a refinement relation on MZIAs. Then we
give an algorithm for checking refinement relation between MZIAs with finite
domain and demonstrate the correctness of the algorithm.Comment: 11pages, 3figure
The Refinement Calculus of Reactive Systems
The Refinement Calculus of Reactive Systems (RCRS) is a compositional formal
framework for modeling and reasoning about reactive systems. RCRS provides a
language which allows to describe atomic components as symbolic transition
systems or QLTL formulas, and composite components formed using three primitive
composition operators: serial, parallel, and feedback. The semantics of the
language is given in terms of monotonic property transformers, an extension to
reactive systems of monotonic predicate transformers, which have been used to
give compositional semantics to sequential programs. RCRS allows to specify
both safety and liveness properties. It also allows to model input-output
systems which are both non-deterministic and non-input-receptive (i.e., which
may reject some inputs at some points in time), and can thus be seen as a
behavioral type system. RCRS provides a set of techniques for symbolic
computer-aided reasoning, including compositional static analysis and
verification. RCRS comes with a publicly available implementation which
includes a complete formalization of the RCRS theory in the Isabelle proof
assistant
Efficient Coalgebraic Partition Refinement
We present a generic partition refinement algorithm that quotients
coalgebraic systems by behavioural equivalence, an important task in reactive
verification; coalgebraic generality implies in particular that we cover not
only classical relational systems but also various forms of weighted systems.
Under assumptions on the type functor that allow representing its finite
coalgebras in terms of nodes and edges, our algorithm runs in time
where and are the numbers of nodes and
edges, respectively. Instances of our generic algorithm thus match the runtime
of the best known algorithms for unlabelled transition systems, Markov chains,
and deterministic automata (with fixed alphabets), and improve the best known
algorithms for Segala systems
Verification Artifacts in Cooperative Verification: Survey and Unifying Component Framework
The goal of cooperative verification is to combine verification approaches in
such a way that they work together to verify a system model. In particular,
cooperative verifiers provide exchangeable information (verification artifacts)
to other verifiers or consume such information from other verifiers with the
goal of increasing the overall effectiveness and efficiency of the verification
process. This paper first gives an overview over approaches for leveraging
strengths of different techniques, algorithms, and tools in order to increase
the power and abilities of the state of the art in software verification.
Second, we specifically outline cooperative verification approaches and discuss
their employed verification artifacts. We formalize all artifacts in a uniform
way, thereby fixing their semantics and providing verifiers with a precise
meaning of the exchanged information.Comment: 22 pages, 12 figure
Towards Compositional Feedback in Non-Deterministic and Non-Input-Receptive Systems
Feedback is an essential composition operator in many classes of reactive and
other systems. This paper studies feedback in the context of compositional
theories with refinement. Such theories allow to reason about systems on a
component-by-component basis, and to characterize substitutability as a
refinement relation. Although compositional theories of feedback do exist, they
are limited either to deterministic systems (functions) or input-receptive
systems (total relations). In this work we propose a compositional theory of
feedback which applies to non-deterministic and non-input-receptive systems
(e.g., partial relations). To achieve this, we use the semantic frameworks of
predicate and property transformers, and relations with fail and unknown
values. We show how to define instantaneous feedback for stateless systems and
feedback with unit delay for stateful systems. Both operations preserve the
refinement relation, and both can be applied to non-deterministic and
non-input-receptive systems
Interface Building for Software by Modular Three-Valued Abstraction Refinement
Verification of software systems is a very hard problem due to the large size
of program state-space. The traditional techniques (like model checking) do not
scale; since they include the whole state-space by inlining the library
function codes. Current research avoids these problem by creating a lightweight
representation of the library in form of an "interface graph" (call sequence
graph). In this paper we introduce a new algorithm to compute a safe,
permissive interface graph for C-type functions. In this modular analysis, each
function transition is summarized following three-valued abstraction semantics.
There are two kinds of abstraction used here. The global abstraction contains
predicates over global variables only; however the local abstraction inside
each function may also contain the local variables. The abstract summary needs
refinement to guarantee safety and permissiveness. We have implemented the
algorithms in TICC tool and compared this algorithm with some related interface
generation algorithms. We also discuss the application of interface as an
offline test-suite. We create an interface from the model program
(specification) and the interface will act as a test-suite for the new
implementation-under-test (IUT)
PAWS: A Tool for the Analysis of Weighted Systems
PAWS is a tool to analyse the behaviour of weighted automata and conditional
transition systems. At its core PAWS is based on a generic implementation of
algorithms for checking language equivalence in weighted automata and
bisimulation in conditional transition systems. This architecture allows for
the use of arbitrary user-defined semirings. New semirings can be generated
during run-time and the user can rely on numerous automatisation techniques to
create new semiring structures for PAWS' algorithms. Basic semirings such as
distributive complete lattices and fields of fractions can be defined by
specifying few parameters, more exotic semirings can be generated from other
semirings or defined from scratch using a built-in semiring generator. In the
most general case, users can define new semirings by programming (in C#) the
base operations of the semiring and a procedure to solve linear equations and
use their newly generated semiring in the analysis tools that PAWS offers.Comment: In Proceedings QAPL 2017, arXiv:1707.0366
A process-algebraic semantics for generalised nonblocking.
Generalised nonblocking is a weak liveness property to express the ability of a system to terminate under given preconditions. This paper studies the notions of equivalence and refinement that preserve generalised nonblocking and proposes a semantic model that characterises generalised nonblocking equivalence. The model can be constructed from the transition structure of an automaton, and has a finite representation for every finite-state automaton. It is used to construct a unique automaton representation for all generalised nonblocking equivalent automata. This gives rise to effective decision procedures to verify generalised nonblocking equivalence and refinement, and to a method to simplify automata while preserving generalised nonblocking equivalence. The results of this paper provide for better understanding of nonblocking in a compositional framework, with possible applications in compositional verification
A survey on formal specification and verification of separation kernels
Separation kernels are fundamental software of safety and security-critical
systems, which provide to their hosted applications spatial and temporal
separation as well as controlled information flows among partitions. The
application of separation kernels in critical domain demands the correctness of
the kernel by formal verification. To the best of our knowledge, there is no
survey paper on this topic. This paper presents an overview of formal
specification and verification of separation kernels. We first present the
background including the concept of separation kernel and the comparisons among
different kernels. Then, we survey the state of the art on this topic since
2000. Finally, we summarize research work by detailed comparison and
discussion
Model Checking of Statechart Models: Survey and Research Directions
We survey existing approaches to the formal verification of statecharts using
model checking. Although the semantics and subset of statecharts used in each
approach varies considerably, along with the model checkers and their
specification languages, most approaches rely on translating the hierarchical
structure into the flat representation of the input language of the model
checker. This makes model checking difficult to scale to industrial models, as
the state space grows exponentially with flattening. We look at current
approaches to model checking hierarchical structures and find that their
semantics is significantly different from statecharts. We propose to address
the problem of state space explosion using a combination of techniques, which
are proposed as directions for further research
- âŠ