16,398 research outputs found
Tutorial: Software Model Checking
Abstract. Model Checking is an automated technique for the systematic exploration ofu the state space of a state transition system. The first part of the tutorial provides an introduction to the basic concepts of model checking, including BDDand SAT-based symbolic model checking, partial order reduction, abstraction, and compositional verification. Model Checking has been applied sucessfully to hardware in the past. However, software has become the most complex part of safety ciritcal systems. The second part of the tutorial covers tools that use Model Checking to formally verify computer software
Applying Formal Methods to Networking: Theory, Techniques and Applications
Despite its great importance, modern network infrastructure is remarkable for
the lack of rigor in its engineering. The Internet which began as a research
experiment was never designed to handle the users and applications it hosts
today. The lack of formalization of the Internet architecture meant limited
abstractions and modularity, especially for the control and management planes,
thus requiring for every new need a new protocol built from scratch. This led
to an unwieldy ossified Internet architecture resistant to any attempts at
formal verification, and an Internet culture where expediency and pragmatism
are favored over formal correctness. Fortunately, recent work in the space of
clean slate Internet design---especially, the software defined networking (SDN)
paradigm---offers the Internet community another chance to develop the right
kind of architecture and abstractions. This has also led to a great resurgence
in interest of applying formal methods to specification, verification, and
synthesis of networking protocols and applications. In this paper, we present a
self-contained tutorial of the formidable amount of work that has been done in
formal methods, and present a survey of its applications to networking.Comment: 30 pages, submitted to IEEE Communications Surveys and Tutorial
Creating R Packages: A Tutorial
This tutorial gives a practical introduction to creating R packages. We discuss how object oriented programming and S formulas can be used to give R code the usual look and feel, how to start a package from a collection of R functions, and how to test the code once the package has been created. As running example we use functions for standard linear regression analysis which are developed from scratch
Introduction to Iltis: An Interactive, Web-Based System for Teaching Logic
Logic is a foundation for many modern areas of computer science. In
artificial intelligence, as a basis of database query languages, as well as in
formal software and hardware verification --- modelling scenarios using logical
formalisms and inferring new knowledge are important skills for going-to-be
computer scientists. The Iltis project aims at providing a web-based,
interactive system that supports teaching logical methods. In particular the
system shall (a) support to learn to model knowledge and to infer new knowledge
using propositional logic, modal logic and first-order logic, and (b) provide
immediate feedback and support to students. This article presents a
prototypical system that currently supports the above tasks for propositional
logic. First impressions on its use in a second year logic course for computer
science students are reported
Modeling and Verification of Agent based Adaptive Traffic Signal using Symbolic Model Verifier
This paper addresses the issue of modeling and verification of a Multi Agent
System (MAS) scenario. We have considered an agent based adaptive traffic
signal system. The system monitors the smooth flow of traffic at intersection
of two road segment. After describing how the adaptive traffic signal system
can efficiently be used and showing its advantages over traffic signals with
predetermined periods, we have shown how we can transform this scenario into
Finite State Machine (FSM). Once the system is transformed into a FSM, we have
verified the specifications specified in Computational Tree Logic(CTL) using
NuSMV as a model checking tool. Simulation results obtained from NuSMV showed
us whether the system satisfied the specifications or not. It has also showed
us the state where the system specification does not hold. Using which we
traced back our system to find the source, leading to the specification
violation. Finally, we again verified the modified system with NuSMV for its
specifications.Comment: 13 pages, 6 figures, Submitted to International Journal of Computer
Application (IJCA
Two Decades of Maude
This paper is a tribute to José Meseguer, from the rest of us in the Maude team, reviewing the past, the present, and the future of the language and system with which we have been working for around two decades under his leadership. After reviewing the origins and the language's main features, we present the latest additions to the language and some features currently under development. This paper is not an introduction to Maude, and some familiarity with it and with rewriting logic are indeed assumed.Universidad de Málaga. Campus de Excelencia Internacional AndalucÃa Tech
- …