91 |
Applications of lattice theory to model checkingKashyap, Sujatha 27 April 2015 (has links)
Society is increasingly dependent on the correct operation of concurrent and distributed software systems. Examples of such systems include computer networks, operating systems, telephone switches and flight control systems. Model checking is a useful tool for ensuring the correctness of such systems, because it is a fully automatic technique whose use does not require expert knowledge. Additionally, model checking allows for the production of error trails when a violation of a desired property is detected. Error trails are an invaluable debugging aid, because they provide the programmer with the sequence of events that lead to an error. Model checking typically operates by performing an exhaustive exploration of the state space of the program. Exhaustive state space exploration is not practical for industrial use in the verification of concurrent systems because of the well-known phenomenon of state space explosion caused by the exploration of all possible interleavings of concurrent events. However, the exploration of all possible interleavings is not always necessary for verification. In this dissertation, we show that results from lattice theory can be applied to ameliorate state space explosion due to concurrency, and to produce short error trails when an error is detected. We show that many CTL formulae exhibit lattice-theoretic structure that can be exploited to avoid exploring multiple interleavings of a set of concurrent events. We use this structural information to develop efficient model checking techniques for both implicit (partial order) and explicit (interleaving) models of the state space. For formulae that do not exhibit the required structure, we present a technique called predicate filtering, which uses a weaker property with the desired structural characteristics to obtain a reduced state space which can then be exhaustively explored. We also show that lattice theory can be used to obtain a path of shortest length to an error state, thereby producing short error trails that greatly ease the task of debugging. We provide experimental results from a wide range of examples, showing the effectiveness of our techniques at improving the efficiency of verifying and debugging concurrent and distributed systems. Our implementation is based on the popular model checker SPIN, and we compare our performance against the state-of-the-art state space reduction strategies implemented in SPIN. / text
|
92 |
Behavioral Verification of Small Networks of State-Machines Built with Arduino-like ProcessorsDelfani, Parisa Unknown Date
No description available.
|
93 |
Language Specific Analysis of State Machine Models of Reactive SystemsZurowska, KAROLINA 25 June 2014 (has links)
Model Driven Development (MDD) is a paradigm introduced to overcome the complexities of modern software
development. In MDD we use models as a primary artifact that is being developed, tested and refined,
with code being a result of code generation. Analysis and verification of models is an important
aspect of MDD paradigm, because they improve understanding of a developed system and enable discovery of
faults early in the development. Even though many analysis methods exist (e.g., model checking, proof
systems), they are not directly applicable in the context of industrial MDD tools such as
IBM Rational Software Architect Real Time Edition (IBM RSA RTE). One of the main reasons for this
inapplicability is the difference between modeling languages used in MDD tools (e.g. UML-RT language in IBM
RSA RTE) and languages used in existing tools. These differences require an implementation of a transformation
from a modeling language to an input language of a tool.
UML-RT as well as other industrial MMD models, cannot be easily translated, if the target languages do not
directly support key model features.
To address this problem we follow a research direction that deviates from the standard approaches and instead of bringing
MDD models to analysis tools, the approach brings analysis "closer" to MDD models. We introduce
analysis of UML-RT models dedicated to this modeling language.
To this end we use a formal internal representation of UML-RT models that preserves the important features of
these models, such as hierarchical structures of components, asynchronous communication and action code.
This provides us with formalized models using straightforward transformation. In addition, this approach
enables the use of MDD-specific abstractions aiming to reduce the size of the state space necessary. To this
end we introduce several MDD-specific types of abstractions for: data (using symbolic execution), structure
and behavior. The work also includes model checking algorithms, which use the modular nature of UML-RT models. The proposed approach is implemented in
a toolset that enables analysis directly of UML-RT models.
We show the results of experiments with UML-RT models developed in-house and obtained
from our industrial partner. / Thesis (Ph.D, Computing) -- Queen's University, 2014-06-24 17:58:05.973
|
94 |
Automatic Datapath Abstraction Of Pipelined CircuitsVlad, Ciubotariu 18 February 2011 (has links)
Pipelined circuits operate as an assembly line that starts processing new instructions while older ones
continue execution. Control properties specify the correct behaviour of the pipeline with respect to
how it handles the concurrency between instructions. Control properties stand out as one of the most
challenging aspects of pipelined circuit verification. Their verification depends on the datapath and
memories, which in practice account for the largest part of the state space of the circuit. To alleviate
the state explosion problem, abstraction of memories and datapath becomes mandatory. This thesis
provides a methodology for an efficient abstraction of the datapath under all possible control-visible
behaviours. For verification of control properties, the abstracted datapath is then substituted in place
of the original one and the control circuitry is left unchanged. With respect to control properties, the
abstraction is shown conservative by both language containment and simulation.
For verification of control properties, the pipeline datapath is represented by a network of registers,
unrestricted combinational datapath blocks and muxes. The values flowing through the datapath are
called parcels. The control is the state machine that steers the parcels through the network. As parcels
travel through the pipeline, they undergo transformations through the datapath blocks. The control-
visible results of these transformations fan-out into control variables which in turn influence the next
stage the parcels are transferred to by the control. The semantics of the datapath is formalized as a
labelled transition system called a parcel automaton. Parcel automata capture the set of all control
visible paths through the pipeline and are derived without the need of reachability analysis of the
original pipeline. Datapath abstraction is defined using familiar concepts such as language containment
or simulation. We have proved results that show that datapath abstraction leads to pipeline abstraction.
Our approach has been incorporated into a practical algorithm that yields directly the abstract parcel
automaton, bypassing the construction of the concrete parcel automaton. The algorithm uses a SAT
solver to generate incrementally all possible control visible behaviours of the pipeline datapath. Our
largest case study is a 32-bit two-wide superscalar OpenRISC microprocessor written in VHDL, where
it reduced the size of the implementation from 35k gates to 2k gates in less than 10 minutes while using
less than 52MB of memory.
|
95 |
Fully Automated Translation of BoxTalk to PromelaKajarekar, Tejas January 2011 (has links)
Telecommunication systems are structured to enable incremental growth, so that new telecommunication features can be added to the set of existing features. With the addition of more features, certain existing features may exhibit unpredictable behaviour. This is known as the feature interaction problem, and it is very old problem in telecommunication systems. Jackson and Zave have proposed a technology, Distributed Feature Composition (DFC) to manage the feature interaction problem. DFC is a pipe-and-filter-like architecture where features are "filters" and communication channels connecting features are "pipes".
DFC does not prescribe how features are specified or programmed. Instead, Zave and Jackson have developed BoxTalk, a call-abstraction, domain-specific, high-level programming language for programming features. BoxTalk is based on the DFC protocol and it uses macros to combine common sequences of read and write actions, thus simplifying the details of the DFC protocol in feature models. BoxTalk features must adhere to the DFC protocol in order to be plugged into a DFC architecture (i.e., features must be "DFC compliant"). We want to use model checking to check whether a feature is DFC compliant. We express DFC compliance using a set of properties expressed as linear temporal logic formulas.
To use the model checker SPIN, BoxTalk features must be translated into Promela. Our automatic verification process comprises three steps:
1. Explicate BoxTalk features by expanding macros and introducing implicit details.
2. Mechanically translate explicated BoxTalk features into Promela models.
3. Verify the Promela models of features using the SPIN model checker.
We present a case study of BoxTalk features, describing the original features and how they are explicated and translated into Promela by our software, and how they are proven to be DFC compliant.
|
96 |
A formal fault model for component based models of embedded systemsFischer, Marco January 2006 (has links)
Zugl.: Chemnitz, Techn. Univ., Diss., 2006
|
97 |
Automated validation and verification of railway specific components and systemsKinder, Sebastian January 2007 (has links)
Zugl.: Bremen, Univ., Diss., 2007
|
98 |
Consistency management of object-oriented behavioral models /Küster, Jochen M. January 2004 (has links)
University, Diss--Paderborn, 2004.
|
99 |
Mixed signal circuit verification using symbolic model checking techniquesJesser, Alexander January 2008 (has links)
Zugl.: Frankfurt (Main), Univ., Diss., 2008
|
100 |
Symbolische LTL-Verifikation von PetrinetzenSpranger, Jochen. Unknown Date (has links) (PDF)
Brandenburgische Techn. Universiẗat, Diss., 2001--Cottbus.
|
Page generated in 0.0839 seconds