6,583 research outputs found
A model checker for performance and dependability properties
Markov chains are widely used in the context of
performance and reliability evaluation of systems of various
nature. Model checking of such chains with respect to
a given (branching) temporal logic formula has been proposed
for both the discrete [8] and the continuous time setting
[1], [3]. In this short paper, we describe the prototype
model checker for discrete and continuous-time
Markov chains, where properties are expressed in appropriate
extensions of CTL.We illustrate the general benefits
of this approach and discuss the structure of the tool
Synthesizing Functional Reactive Programs
Functional Reactive Programming (FRP) is a paradigm that has simplified the
construction of reactive programs. There are many libraries that implement
incarnations of FRP, using abstractions such as Applicative, Monads, and
Arrows. However, finding a good control flow, that correctly manages state and
switches behaviors at the right times, still poses a major challenge to
developers. An attractive alternative is specifying the behavior instead of
programming it, as made possible by the recently developed logic: Temporal
Stream Logic (TSL). However, it has not been explored so far how Control Flow
Models (CFMs), as synthesized from TSL specifications, can be turned into
executable code that is compatible with libraries building on FRP. We bridge
this gap, by showing that CFMs are indeed a suitable formalism to be turned
into Applicative, Monadic, and Arrowized FRP. We demonstrate the effectiveness
of our translations on a real-world kitchen timer application, which we
translate to a desktop application using the Arrowized FRP library Yampa, a web
application using the Monadic threepenny-gui library, and to hardware using the
Applicative hardware description language ClaSH.Comment: arXiv admin note: text overlap with arXiv:1712.0024
Using formal methods in safety-critical interactive system design : from architecture-based approaches to tool-based development
10p.International audienceAlthough formal methods are increasingly used by researchers in HCI, their usage in actual interactive developments has not been put in practice. In this article, we describe our experience with a specific formal method -the B method- from two viewpoints. On the one hand, we demonstrate how it is possible to use formal methods on real development, from specification to actual code. Our case study concerns a real-time functional core. Doing so, we notice that some HCI concepts, such as architecture models, may have to be adapted or recreated. On the other hand, we show how it is possible to make formal methods easier to use by the way of a complete integration into HCI tools. We conclude in eliciting the lessons learned from this experience
Correct-by-Construction Approach for Self-Evolvable Robots
The paper presents a new formal way of modeling and designing reconfigurable
robots, in which case the robots are allowed to reconfigure not only
structurally but also functionally. We call such kind of robots
"self-evolvable", which have the potential to be more flexible to be used in a
wider range of tasks, in a wider range of environments, and with a wider range
of users. To accommodate such a concept, i.e., allowing a self-evovable robot
to be configured and reconfigured, we present a series of formal constructs,
e.g., structural reconfigurable grammar and functional reconfigurable grammar.
Furthermore, we present a correct-by-construction strategy, which, given the
description of a workspace, the formula specifying a task, and a set of
available modules, is capable of constructing during the design phase a robot
that is guaranteed to perform the task satisfactorily. We use a planar
multi-link manipulator as an example throughout the paper to demonstrate the
proposed modeling and designing procedures.Comment: The paper has 17 pages and 4 figure
A tool for model-checking Markov chains
Markov chains are widely used in the context of the performance and reliability modeling of various systems. Model checking of such chains with respect to a given (branching) temporal logic formula has been proposed for both discrete [34, 10] and continuous time settings [7, 12]. In this paper, we describe a prototype model checker for discrete and continuous-time Markov chains, the Erlangen-Twente Markov Chain Checker EÎMC2, where properties are expressed in appropriate extensions of CTL. We illustrate the general benefits of this approach and discuss the structure of the tool. Furthermore, we report on successful applications of the tool to some examples, highlighting lessons learned during the development and application of EÎMC2
Working Notes from the 1992 AAAI Workshop on Automating Software Design. Theme: Domain Specific Software Design
The goal of this workshop is to identify different architectural approaches to building domain-specific software design systems and to explore issues unique to domain-specific (vs. general-purpose) software design. Some general issues that cut across the particular software design domain include: (1) knowledge representation, acquisition, and maintenance; (2) specialized software design techniques; and (3) user interaction and user interface
Automatic Software Repair: a Bibliography
This article presents a survey on automatic software repair. Automatic
software repair consists of automatically finding a solution to software bugs
without human intervention. This article considers all kinds of repairs. First,
it discusses behavioral repair where test suites, contracts, models, and
crashing inputs are taken as oracle. Second, it discusses state repair, also
known as runtime repair or runtime recovery, with techniques such as checkpoint
and restart, reconfiguration, and invariant restoration. The uniqueness of this
article is that it spans the research communities that contribute to this body
of knowledge: software engineering, dependability, operating systems,
programming languages, and security. It provides a novel and structured
overview of the diversity of bug oracles and repair operators used in the
literature
- …