15,737 research outputs found
Modeling and Analyzing Adaptive User-Centric Systems in Real-Time Maude
Pervasive user-centric applications are systems which are meant to sense the
presence, mood, and intentions of users in order to optimize user comfort and
performance. Building such applications requires not only state-of-the art
techniques from artificial intelligence but also sound software engineering
methods for facilitating modular design, runtime adaptation and verification of
critical system requirements.
In this paper we focus on high-level design and analysis, and use the
algebraic rewriting language Real-Time Maude for specifying applications in a
real-time setting. We propose a generic component-based approach for modeling
pervasive user-centric systems and we show how to analyze and prove crucial
properties of the system architecture through model checking and simulation.
For proving time-dependent properties we use Metric Temporal Logic (MTL) and
present analysis algorithms for model checking two subclasses of MTL formulas:
time-bounded response and time-bounded safety MTL formulas. The underlying idea
is to extend the Real-Time Maude model with suitable clocks, to transform the
MTL formulas into LTL formulas over the extended specification, and then to use
the LTL model checker of Maude. It is shown that these analyses are sound and
complete for maximal time sampling. The approach is illustrated by a simple
adaptive advertising scenario in which an adaptive advertisement display can
react to actions of the users in front of the display.Comment: In Proceedings RTRTS 2010, arXiv:1009.398
A Rewriting Logic Approach to Stochastic and Spatial Constraint System Specification and Verification
This paper addresses the issue of specifying, simulating, and verifying
reactive systems in rewriting logic. It presents an executable semantics for
probabilistic, timed, and spatial concurrent constraint programming ---here
called stochastic and spatial concurrent constraint systems (SSCC)--- in the
rewriting logic semantic framework. The approach is based on an enhanced and
generalized model of concurrent constraint programming (CCP) where
computational hierarchical spaces can be assigned to belong to agents. The
executable semantics faithfully represents and operationally captures the
highly concurrent nature, uncertain behavior, and spatial and epistemic
characteristics of reactive systems with flow of information. In SSCC, timing
attributes ---represented by stochastic duration--- can be associated to
processes, and exclusive and independent probabilistic choice is also
supported. SMT solving technology, available from the Maude system, is used to
realize the underlying constraint system of SSCC with quantifier-free formulas
over integers and reals. This results in a fully executable real-time symbolic
specification that can be used for quantitative analysis in the form of
statistical model checking. The main features and capabilities of SSCC are
illustrated with examples throughout the paper. This contribution is part of a
larger research effort aimed at making available formal analysis techniques and
tools, mathematically founded on the CCP approach, to the research community.Comment: arXiv admin note: text overlap with arXiv:1805.0743
Verification of Timed Automata Using Rewrite Rules and Strategies
ELAN is a powerful language and environment for specifying and prototyping
deduction systems in a language based on rewrite rules controlled by
strategies. Timed automata is a class of continuous real-time models of
reactive systems for which efficient model-checking algorithms have been
devised. In this paper, we show that these algorithms can very easily be
prototyped in the ELAN system. This paper argues through this example that
rewriting based systems relying on rules and strategies are a good framework to
prototype, study and test rather efficiently symbolic model-checking
algorithms, i.e. algorithms which involve combination of graph exploration
rules, deduction rules, constraint solving techniques and decision procedures
A Rewriting-Logic-Based Technique for Modeling Thermal Systems
This paper presents a rewriting-logic-based modeling and analysis technique
for physical systems, with focus on thermal systems. The contributions of this
paper can be summarized as follows: (i) providing a framework for modeling and
executing physical systems, where both the physical components and their
physical interactions are treated as first-class citizens; (ii) showing how
heat transfer problems in thermal systems can be modeled in Real-Time Maude;
(iii) giving the implementation in Real-Time Maude of a basic numerical
technique for executing continuous behaviors in object-oriented hybrid systems;
and (iv) illustrating these techniques with a set of incremental case studies
using realistic physical parameters, with examples of simulation and model
checking analyses.Comment: In Proceedings RTRTS 2010, arXiv:1009.398
Maude: specification and programming in rewriting logic
Maude is a high-level language and a high-performance system supporting executable specification and declarative programming in rewriting logic. Since rewriting logic contains equational logic, Maude also supports equational specification and programming in its sublanguage of functional modules and theories. The underlying equational logic chosen for Maude is membership equational logic, that has sorts, subsorts, operator overloading, and partiality definable by membership and equality conditions. Rewriting logic is reflective, in the sense of being able to express its own metalevel at the object level. Reflection is systematically exploited in Maude endowing the language with powerful metaprogramming capabilities, including both user-definable module operations and declarative strategies to guide the deduction process. This paper explains and illustrates with examples the main concepts of Maude's language design, including its underlying logic, functional, system and object-oriented modules, as well as parameterized modules, theories, and views. We also explain how Maude supports reflection, metaprogramming and internal strategies. The paper outlines the principles underlying the Maude system implementation, including its semicompilation techniques. We conclude with some remarks about applications, work on a formal environment for Maude, and a mobile language extension of Maude
Exploiting the Hierarchical Structure of Rule-Based Specifications for Decision Planning
Rule-based specifications have been very successful as a declarative approach in many domains, due to the handy yet solid foundations offered by rule-based machineries like term and graph rewriting. Realistic problems, however, call for suitable techniques to guarantee scalability. For instance, many domains exhibit a hierarchical structure that can be exploited conveniently. This is particularly evident for composition associations of models. We propose an explicit representation of such structured models and a methodology that exploits it for the description and analysis of model- and rule-based systems. The approach is presented in the framework of rewriting logic and its efficient implementation in the rewrite engine Maude and is illustrated with a case study.
Rewriting Logic Semantics of a Plan Execution Language
The Plan Execution Interchange Language (PLEXIL) is a synchronous language
developed by NASA to support autonomous spacecraft operations. In this paper,
we propose a rewriting logic semantics of PLEXIL in Maude, a high-performance
logical engine. The rewriting logic semantics is by itself a formal interpreter
of the language and can be used as a semantic benchmark for the implementation
of PLEXIL executives. The implementation in Maude has the additional benefit of
making available to PLEXIL designers and developers all the formal analysis and
verification tools provided by Maude. The formalization of the PLEXIL semantics
in rewriting logic poses an interesting challenge due to the synchronous nature
of the language and the prioritized rules defining its semantics. To overcome
this difficulty, we propose a general procedure for simulating synchronous set
relations in rewriting logic that is sound and, for deterministic relations,
complete. We also report on two issues at the design level of the original
PLEXIL semantics that were identified with the help of the executable
specification in Maude
A Comparative Study of Coq and HOL
This paper illustrates the differences between the style of theory mechanisation of Coq and of HOL. This comparative study is based on the mechanisation of fragments of the theory of computation in these systems. Examples from these implementations are given to support some of the arguments discussed in this paper. The mechanisms for specifying definitions and for theorem proving are discussed separately, building in parallel two pictures of the different approaches of mechanisation given by these systems
- …