Fig 2 - uploaded by Joaquin Salvachua
Content may be subject to copyright.
DF ↔ Maude translations.  

DF ↔ Maude translations.  

Source publication
Conference Paper
Full-text available
RDF looks like the first step to build the Semantic Web vi- sion. Our long-term goal is to have a sound way to verify and validate the semantic web interactions that applications and agents may develop in a distributed environment. The first step for reaching this goal is to provide a useful semantic support to RDF itself. Based on this formal supp...

Similar publications

Article
Full-text available
Existing models for analyzing the integrity and confidentia lity of protocols need to be extended to enable the analysis of availability. Prior work on such extensions shows promising applications to the development of new DoS countermeasures. Ideally, it should be possible to apply these countermeasures systematically in a way that preserves desir...
Article
Full-text available
The InvA tool supports the deductive verification of safety properties of infinite-state concurrent systems. Given a concurrent system specified as a rewrite theory and a safety formula to be verified, InvA reduces such a formula to inductive properties of the underlying equational theory by means of the application of a few inference rules. Throug...
Article
Full-text available
Coordination and composition of components is an essential concern in component-based software engineering. In this paper, we present an operational semantics for a component composition language called Reo. Reo connectors exogenously compose and coordinate the interactions among individual components, that unawarely comprise a complex system, into...
Conference Paper
Full-text available
Real-Time Maude is an executable rewriting logic language particularly well suited for the specification of object-oriented open and distributed real time systems. In this paper we explore the possibility of using Real-Time Maude as a formal notation for software architecture description and verification of real time systems. The system model is co...
Article
Full-text available
Model checking is an important part of the theoretical informatics. It enables the verification of a model with a set of properties such as liveness, deadlock or safety. Furthermore, Petri nets are well known and can be used for a model checking process. Wider, a reconfigurable Petri net is based on a pure Petri net with a set of rules. These rules...

Citations

... Lorsqu'une propriété est vérifiée ou non, l'outil retourne un résultat positif ou un contre-exemple illustrant le chemin qui a mené à cet état d'erreur. Parmi les outils qui exploitent la technique de model-cheking on trouve SPIN [Hol91], SMV [Mcm91], Maude [Cla05], etc. Les [Ver05,Sen05,Hua09] proposent en général une traduction vers un module orienté objet Maude. En effet, Huang et al. [Hua09] utilisent Maude afin de construire un modèle mathématique bien défini d'un système décrit en OWL-S. ...
Thesis
Currently, Agent Oriented Software Engineering (AOSE) is a very active research domain. For many years, MAS designers have development methodologies and modeling language without reflects the different temporal restrictions that RT-MAS may have. Indeed, it is not easy to conceptualize RT-MAS concepts using conventional agent software engineering approaches. Consequently, a critical research issue for the real time agent community has been the definition of suitable organizational model for analyzing and designing their main properties. The progress in this area has been slow but generally steady. Most of the proposals consider an organization as an entity that has some concrete purpose or global objective without taking in to account the temporal restriction of real time agent. Then they use a set of organizational concepts, e.g. roles, norms, groups, interactions, etc; to control and modify the dynamics or agents behaviors with regard to the global objective of the organization. In our opinion, this vision of organization is incomplete. We propose to extend them with temporal constraint by extending Agent UML (AUML) diagrams [Lao13]. In particular, we believe that the concept of temporal restriction that real time agent must respect during their life cycle is very important to be included in organization. Our approach takes the depiction of social characters combined with agent temporal restriction as the core of RTMAS modeling and presents the first idea of an organizational model to specify RTMAS. It allows representing functional aspect, static aspects, and dynamic aspects of RTMAS based on organizational perspective. However formalizing the organizational aspects of RT-MAS is in our opinion, an importance way for both analysis and design activities. Furthermore, the RTMAS design requires the involvement with formal languages. Among these languages: Real Time Maude (RT-Maude) [Olv07] is probably the best known and most widely used languages for both functional and object oriented programming. Furthermore, RT-Maude is very powerful in terms of specification, validation and verification of concurrent systems, making it a good candidate for specification and validation of RT-MAS. Knowing that, there is currently no work applying RTMaude to RT-MAS formal organizational specification and both to real time applications. In fact, this formal organizational framework represents an important approach for modeling RT-MAS, it is a recent extension which combines the AUML extended diagrams [Lao13], with RTMaude specification [Lao14] to support the formal specification of RT-MAS organizational requirements. In this framework, the strengths of both approaches are unified, but it still lacks more organizational details to be considered. So, a rewriting logic based approach is described for prototyping the Agent-Group-Role (AGR) [Fer03a] and Model of Organization for multI-agent SystEms (Moise+) [Hub02a] models for multi-agent systems organization to be able to reason, on the one hand, about the organizational model, and on the other hand, about its general semantics. Furthermore, the possibility of including a temporal dimension to deal with agents temporal constraints issues was investigated in Moise+ model to specify the concrete model of Real-Time Multi-Agent System through Real-Time Maude language. This allowed us to have on one side an organizational model facilitating the design of the RTMAS and on the other side a formal specification framework providing providing better support for their verification processes. For the validation of this work we applied the translation process to simulate the formal specifications with predefined interaction scenarios, in our case we chose two examples, one dealing with supply chain management and the other with conference management.
... Le recours aux modèles formels tels que les ontologies comme représentation intermédiaire n'a pas encore été exploré. Pourtant, les travaux sur le passage automatique de textes en LN vers des ontologies ont montré des résultats prometteurs (Petasis et al., 2011 ;Ruiz-Martìnez et al., 2011 ;Thongkrau, Lalitrojwong, 2012) et divers travaux ont déjà proposé des méthodes de traduction automatique entre une ontologie et un langage formel tels que Alloy (Song et al., 2012) ou Maude (Verdejo et al., 2005 ;Senanayake et al., 2005 ;Huang et al., 2009). En outre, de nombreux travaux insistent sur la pertinence de l'usage d'ontologies en ingénierie des exigences (Castañeda et al., 2010), pour codifier les connaissances pertinentes et faciliter la compréhension du domaine (Omoronyia et al., 2010 ;Al Balushi et al., 2013), minimiser l'ambiguïté linguistique (Castañeda et al., 2012), identifier des règles métier redondantes, jamais applicables ou qui violent le domaine de leur définition (Chniti et al., 2012), ou s'appuyer sur les connaissances d'ontologies pour aider l'analyse dans ses décisions pour améliorer des spécifications (Körner, Brumm, 2009). ...
Article
Full-text available
Nowadays sensors and actuators associated with control devices can be installed anywhere, as in our homes creating smart environments. Our goal is to allow a user to configure her own smart environment by describing her needs, i.e. the environment behavioral rules, in natural language (NL). We explore the possibilities offered by an ontology, to transform NL specifications into formal specifications. Analysis of user requirements allows us an automatic instantiation of the ontology so that it represents the behavior described by the user. The represented behavioral rules are then translated into Maude specifications to complement verifications realized in OWL. We show that throughout this formalization process, it is possible to check the completeness, the consistency and the conformity of the specified requirements and maintain traceability between NL requirements and formal specifications to allow a precise feedback to the user.
... Au fil des années, Maude s'est avéré être un bon environnement pour le prototypage rapide [Meseguer, 2010] et l'aide au développement et à la validation de modèles UML/OCL [Clavel et Egea, 2006b], de façon plus générale, de méta-modèles MOF 3 [Boronat et Meseguer, 2010]. De nombreux travaux ont également exploré son utilisation pour la spécification de modèles décrits par des langages du web sémantique [Verdejo et al., 2005;Senanayake et al., 2005;Elenius et al., 2008;Huang et al., 2009;Song et al., 2012;Gueffaz, 2012] tels que RDF ou OWL. ...
... La plupart des approches de traduction des langages d'ontologie RDF et OWL vers des langages de spécifications formelles exploitent leurs aspects orientés objet. Par exemple [Verdejo et al., 2005;Senanayake et al., 2005;Huang et al., 2009] proposent en général une traduction vers un module orienté objet Maude. Au contraire Elenius et al. [2008] décrivent les individus, les concepts, et les propriétés OWL à l'aide d'opérateurs Maude. ...
... La transformation entre langages peut se faire au travers d'une analyse syntaxique des spécifications décrivant le modèle de départ. Par exemple, Verdejo et al. [2005] effectuent une analyse syntaxique de documents RDF pour en extraire les informations à traduire en spécifications Maude. Lomuscio et Solanki [2009] proposent la transformation d'une ontologie OWL-S vers le langage ISPL (Interpreted System Programming Language), un langage d'entrée pour le modèle checker MCMAS 9 [Lomuscio et Raimondi, 2006]. ...
Article
Full-text available
The main objective of system development is to address requirements. As such, success in its realisation is highly dependent on a requirement specification phase which aims to describe precisely and unambiguously all the characteristics of the system that should be developed. In order to arrive at a set of requirements, a user needs analysis is carried out which involves different parties (stakeholders). The system requirements are generally written in natural language to garantuee a wider understanding. However, since NL texts can contain semantic ambiguities, implicit information, or other inconsistenties, this can lead to diverse interpretations. Hence, it is not easy to specify a set of complete and consistent requirements, and therefore, the specified requirements must be formally checked. Specifications written in NL are not considered to be formal and do not allow for a direct application of formal methods. We must therefore transform NL requirements into formal specifications. The work presented in this thesis was carried out in this framework. The main difficulty of such transformation is the gap between NL requirements and formal specifications. The objective of this work is to propose an approach for an automatic verification of user requirements which are written in natural language and describe a system's expected behaviour. Our approach uses the potential offered by a representation model based on a logical formalism. Our contribution has three main aspects: 1) an OWL-DL ontology based on description logic, used as a pivot representation model that serves as a link between NL requirements to formal specifications; 2) an approach for the instantiation of the pivot ontology, which allows an automatic transformation of NL requirements to their conceptual representations; and 3) an approach exploiting the logical formalism of the ontology in order to automatically translate the ontology into a formal specification language called Maude.
... As we have already mentioned at the beginning of this paper, there is a rich tradition of using rewriting logic to give semantic definitions for languages using a variety of styles, including the lambda calculus [49,63], Prolog and languages based on narrowing like BABEL [78], the UNITY language [52], the π-calculus [77,63,68], the concurrent logic programming language GAEA [44], the programming language for active networks PLAN [79,65], a UML metamodel [69,31,32], the specification language for cryptographic protocols CAPSL [23], the mobile agents system DaAgent [1], the Maude extension for mobile computations Mobile Maude [26], and the Resource Description Framework (RDF) for the semantic web [4]. For a more exhaustive bibliography about this subject we refer to the paper [50]. ...
Article
Full-text available
This paper describes in detail how to bridge the gap between theory and practice when implement- ing in Maude structural operational semantics described in rewriting logic, where transitions become rewrites and inference rules become conditional rewrite rules with rewrites in the conditions, as made possible by the new features in Maude 2. We validate this technique using it in several case studies: a functional language Fpl (evaluation and computation semantics), an imperative language WhileL (evaluation and computation semantics), Kahn's functional language Mini-ML (evaluation or natural semantics), Milner's CCS (with strong and weak transitions), and Full LOTOS (including ACT ONE data type specifications). In addition, on top of CCS we develop an implementation of the Hennessy- Milner modal logic for describing local capabilities of processes, and for LOTOS we build an entire tool where Full LOTOS specifications can be entered and executed (without user knowledge of the underlying implementation of the semantics). We also compare this method based on transitions as rewrites with another one based on transitions as judgements. c
... Among those sites there exists a jungle of open-source Erlang code. The pico http server [4] was developed by Armstrong, the principal designer of Erlang. YAWS (Yet Another Web Server) [7] is an http 1.1 compliant implementation. ...
... Translating RDF documents to logical descriptions is reported in [4]. Queries and inference are treated in a uniform way in description logic [10]. ...
Article
Full-text available
The functional programming language Erlang is proposed to support the migration of existing web servers to the Wisdom Web. The W3C Working Group has specified use-cases for the world wide Wisdom web. The Erlang implementation provides use-cases for specifying the existing www. Actors associated with use-cases provide the unifying concept for integrating a functional programming language to express distributed, concurrent and real-time operations with resource description framework of W3C for expressing web resources.
Article
Full-text available
We explore the features of rewriting logic and, in particular, of the rewriting logic language Maude as a logical and semantic framework for representing and executing inference systems. In order to illustrate the general ideas we consider two substantial case studies. In the first one, we represent both the semantics of Milner's CCS and a modal logic for describing local capabilities of CCS processes. Although a rewriting logic representation of the CCS semantics is already known, it cannot be directly executed in the default interpreter of Maude. Moreover, it cannot be used to answer questions such as which are the successors of a process after performing an action, which is used to define the semantics of Hennessy-Milner modal logic. Basically, the problems are the existence of new variables in the righthand side of the rewrite rules and the nondeterministic application of the semantic rules, inherent to CCS. We show how these problems can be solved in a general, not CCS dependent way by controlling the rewriting process by means of reflection. This executable specification plus the reflective control of rewriting can be used to analyze CCS processes. The same techniques are also used to implement a symbolic semantics for LOTOS in our second case study. The good properties of Maude as a metalanguage allow us to implement a whole formal tool where LOTOS specifications without restrictions in their data types (given as ACT ONE specifications) can be executed. In summary, we present Maude as an executable semantic framework by providing easy-tool-building techniques for a language given its operational semantics.
Article
This paper describes in detail how to bridge the gap between theory and practice when implementing in Maude structural operational semantics described in rewriting logic, where transitions become rewrites and inference rules become conditional rewrite rules with rewrites in the conditions, as made possible by the new features in Maude 2. We validate this technique using it in several case studies: a functional language Fpl (evaluation and computation semantics), an imperative language WhileL (evaluation and computation semantics), Kahn’s functional language Mini-ML (evaluation or natural semantics), Milner’s CCS (with strong and weak transitions), and Full LOTOS (including ACT ONE data type specifications). In addition, on top of CCS we develop an implementation of the Hennessy–Milner modal logic for describing local capabilities of processes, and for LOTOS we build an entire tool where Full LOTOS specifications can be entered and executed (without user knowledge of the underlying implementation of the semantics). We also compare this method based on transitions as rewrites with another one based on transitions as judgements.
Article
A key aspect of ubiquitous computing is using sensor networks to effectively and unobtrusively infer human activities in their environment. A typical top-down approach is to first label and decompose activities as sequences of actions with certain probabilities, and then use these predefined activity models for recognition and prediction. This approach, however, does not capture the internal goals of different actions, and it only deals with those explicitly defined activity models. In this article, inspired by traditional activity theory and qualitative process theory, we present a goal-directed human activity computing model. A formal activity ontology is proposed so as to capture the internal semantic relations between different atomic activities such as actions and processes. A number of representative inference rules are then introduced to predict the future activities based on the activity ontology. The proposed formal activity computing model is simulated and demonstrated with Maude, a formal specification and programming language.
Article
Full-text available
La lógica de reescritura, propuesta por José Meseguer en 1990 como marco de unificación de modelos de computación concurrente, es una lógica para razonar sobre sistemas concurrentes con estado que evolucionan por medio de transiciones. Desde su definición, se ha propuesto a la lógica de reescritura como marco lógico y semántico en el cual poder expresar de forma natural otras muchas lógicas, lenguajes y modelos de computación. Además, la lógica de reescritura es ejecutable utilizando el lenguaje multiparadigma Maude cuyos módulos son teorías en la lógica de reescritura. El objetivo principal de esta tesis es extender la idea de la lógica de reescritura y Maude como marco semántico a la idea de marco semántico ejecutable. Este objetivo se ha abordado desde diferentes puntos de vista. En primer lugar, presentamos representaciones ejecutables de semántica operacionales estructurales. En concreto, hemos estudiado dos implementaciones diferentes de la semántica de CCS y su utilización para implementar la lógica modal de Hennessy-Milner; hemos realizado una implementación de una semántica simbólica para LOTOS incluyendo especificaciones de tipos de datos en ACT ONE que son traducidos a módulos Maude y de una herramienta que permite al usuario ejecutar directamente sus especificaciones LOTOS; y hemos utilizado las mismas técnicas para implementar otros tipos de semánticas operacionales de lenguajes funcionales e imperativos sencillos, incluyendo tanto semánticas de evaluación (o paso largo) como semánticas de computación (o paso corto). En segundo lugar, hemos querido contribuir al desarrollo de una metodología propuesta recientemente por Denker, Meseguer y Talcott para la especificación y análisis de sistemas basada en una jerarquía de métodos incrementalmente más fuertes, especificando y analizando tres descripciones ejecutables del protocolo de elección de líder dentro de la especificación del bus multimedia en serie IEEE 1394 (conocido como "FireWire"). En dos de estas descripciones hacemos especial énfasis en los aspectos relacionados con el tiempo, esenciales para este protocolo. Por último, hemos abordado la dotación de semántica formal a lenguajes de la web semántica, mediante la traducción del lenguaje de descripción de recursos web RDF (Resource Description Framework) a Maude y su integración con Mobile Maude, una extensión de Maude para permitir cómputos móviles.
Article
Las técnicas de especificación formal de sistemas concurrentes pueden agruparse en general en dos niveles; en el primero se incluyen las técnicas consistentes en el desarrollo de modelos formales del sistema y en el segundo las técnicas que realizan la especificación del sistema mediante la definición de propiedades abstractas del mismo. El objetivo de esta tesis es proponer una metodología de especificación de sistemas que cubra ambos niveles de especificación mediante el uso de un marco matemático uniforme, proporcionado por la lógica de reescritura y su implementación vía el metalenguaje Maude. La especificación en el primer nivel se realizará directamente en el propio lenguaje Maude, mientras que para realizar la especificación de segundo nivel definiremos una lógica modal para probar propiedades de sistemas especificados en Maude, en la cual las transiciones definidas por las reglas de reescritura se capturan como acciones en la lógica. La lógica definida puede utilizarse además mediante la definición de la interfaz apropiada para probar propiedades específicas en otras lógicas temporales o modales. En la tesis se estudian en primer lugar las especificaciones en el lenguaje Maude. Mediante el desarrollo de una especificación de un modelo orientado a objetos para redes de telecomunicación de banda ancha se muestra el poder del lenguaje para especificar este tipo de sistemas y en particular la relación de herencia, la relación del contenido y las relaciones explícitas de grupo (ser-miembro-de, cliente-servidor, ..). Se estudia el uso de la reflexión en el control de un proceso de modificación de características de la red. En este sentido se combinan ideas del campo de la reflexión lógica con ideas provenientes del campo de la reflexión orientada a objetos mediante el uso de un mediador, un metaobjeto que vive en el metanivel y que tiene acceso a la configuración de la red para su gestión. En segundo lugar se procede a la definición de la lógica modal Verificación Logic for Rewriting Logic (VLRL). La principal característica de esta lógica es que proporciona dos modalidades, una de ellas una modalidad de acción que permite capturar las reglas de reescritura como acciones de la lógica, y la otra modalidad espacial que permite definir propiedades sobre partes del sistema y relacionarlas con propiedades del sistema completo así como definir propiedades sobre acciones realizadas en partes del sistema. La lógica VLRL permite además probar propiedades definidas en otras lógicas modales o temporales mediante la definición de la interfaz apropiada. Se muestra el uso de la lógica en la prueba de propiedades de seguridad de varios sistemas orientados a objetos: un protocolo de exclusión mutua, el sistema del mundo de los bloques y el sistema Mobile Maude como modelo de movilidad de objetos entre procesos. Por último se muestra otro medio de probar propiedades de sistemas especificados en lógica de reescritura mediante un ejemplo en el que se realiza una prueba semi-formal por inducción de propiedades de seguridad y vivacidad del protocolo para la elección de líder del bus en serie multimedia IEEE 1394