Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Francisco Durán is active.

Publication


Featured researches published by Francisco Durán.


Theoretical Computer Science | 2002

Maude: specification and programming in rewriting logic

Manuel Clavel; Francisco Durán; Steven Eker; Patrick Lincoln; Narciso Martí-Oliet; José Meseguer; José F. Quesada

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 Maudes 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.


rewriting techniques and applications | 2003

The maude 2.0 system

Manuel Clavel; Francisco Durán; Steven Eker; Patrick Lincoln; Narciso Martí-Oliet; José Meseguer; Carolyn L. Talcott

This paper gives an overviewof the Maude 2.0 system. We emphasize the full generality with which rewriting logic and membership equational logic are supported, operational semantics issues, the new built-in modules, the more general Full Maude module algebra, the new META-LEVEL module, the LTL model checker, and new implementation techniques yielding substantial performance improvements in rewriting modulo. We also comment on Maudes formal tool environment and on applications.


CAFE: An Industrial-Strength Algebraic Formal Method | 2000

Building Equational Proving Tools by Reflection in Rewriting Logic

Manuel Clavel; Francisco Durán; Steven Eker; José Meseguer

Publisher Summary This chapter explains the design and use of two proving tools such as inductive theorem prover and a Church-Rosser checker. It uses these tools to prove theorems about equational specifications with initial algebra semantics and to check whether such specifications satisfy the Church-Rosser property. These tools have been developed as part of the Cafe project, and can also be used on their own to prove properties of equational specifications in Maude. An important feature of these tools is that they are written entirely in Maude and are in fact executable specifications in rewriting logic of the formal inference systems that they implement. This chapter also gives a brief review of membership equational logic, rewriting logic, and Maude, including reflective features and the related topic of strategies. After summarizing the reflective design of the tools, the chapter explains each of the tools, including its inference system and its corresponding Maude implementation, with examples and concluding remarks.


european conference on modelling foundations and applications | 2014

Modular DSLs for Flexible Analysis: An e-Motions Reimplementation of Palladio

Antonio Moreno-Delgado; Francisco Durán; Steffen Zschaler; Javier Troya

We address some of the limitations for extending and validating MDE-based implementations of NFP analysis tools by presenting a modular, model-based partial reimplementation of one well-known analysis framework, namely the Palladio Architecture Simulator. We specify the key DSLs from Palladio in the e-Motions system, describing the basic simulation semantics as a set of graph transformation rules. Different properties to be analysed are then encoded as separate, parametrised DSLs, independent of the definition of Palladio. These can then be composed with the base Palladio DSL to generate specific simulation environments. Models created in the Palladio IDE can be fed directly into this simulation environment for analysis. We demonstrate two main benefits of our approach: 1) The semantics of the simulation and the non-functional properties to be analysed are made explicit in the respective DSL specifications, and 2) because of the compositional definition, we can add definitions of new non-functional properties and their analyses.


Higher-order and Symbolic Computation \/ Lisp and Symbolic Computation | 2008

Proving operational termination of membership equational programs

Francisco Durán; Salvador Lucas; Claude Marché; José Meseguer; Xavier Urbain

Reasoning about the termination of equational programs in sophisticated equational languages such as Elan, Maude, OBJ, CafeOBJ, Haskell, and so on, requires support for advanced features such as evaluation strategies, rewriting modulo, use of extra variables in conditions, partiality, and expressive type systems (possibly including polymorphism and higher-order). However, many of those features are, at best, only partially supported by current term rewriting termination tools (for instance mu-term, CiME, AProVE, TTT, Termptation, etc.) while they may be essential to ensure termination. We present a sequence of theory transformations that can be used to bridge the gap between expressive membership equational programs and such termination tools, and prove the correctness of such transformations. We also discuss a prototype tool performing the transformations on Maude equational programs and sending the resulting transformed theories to some of the aforementioned standard termination tools.


The Journal of Object Technology | 2007

Formal and Tool Support for Model Driven Engineering with Maude

José Raúl Romero; José Eduardo Rivera; Francisco Durán; Antonio Vallecillo

Models and metamodels play a cornerstone role in Model-Driven Software Development. Although several notations have been proposed to specify them, the kind of formal and tool support they provide is quite limited. In this paper we explore the use of Maude as a formal notation for describing models and metamodels. Maude is an executable rewriting logic language specially well suited for the specification of object-oriented open and distributed systems. We show how Maude oers a simple, natural, and accurate way of specifying models and metamodels, and oers good tool support for reasoning about them. In particular, we show how some basic operations on models, such as model subtyping, type inference, and metric evaluation, can be easily specified and implemented in Maude, and made available in development environments such as Eclipse.


partial evaluation and semantic-based program manipulation | 2004

Proving termination of membership equational programs

Francisco Durán; Salvador Lucas; Josß Meseguer; Claude Marché; Xavier Urbain

Advanced typing, matching, and evaluation strategy features, as well as very general conditional rules, are routinely used in equational programming languages such as, for example, <sc>ASF+SDF</sc>, <sc>OBJ</sc>, <sc>CafeOBJ</sc>, <sc>Maude</sc>, and equational subsets of <sc>ELAN</sc> and <sc>CASL</sc>. Proving termination of equational programs having such expressive features is important but nontrivial, because some of those features may not be supported by standard termination methods and tools, such as <sc>muterm</sc>, <sc>C<i>i</i>ME</sc>, <sc>AProVE</sc>, <sc>TTT</sc>, <sc>Termptation</sc>, etc. Yet, use of the features may be essential to ensure termination. We present a sequence of theory transformations that can be used to bridge the gap between expressive equational programs and termination tools, prove the correctness of such transformations, and discuss a prototype tool performing the transformations on <sc>Maude</sc> equational programs and sending the resulting transformed theories to some of the aforementioned tools.


Lecture Notes in Computer Science | 2000

Principles of Mobile Maude

Francisco Durán; Steven Eker; Patrick Lincoln; José Meseguer

Mobile Maude is a mobile agent language extending the rewriting logic language Maude and supporting mobile computation. Mobile Maude uses reflection to obtain a simple and general declarative mobile language design and makes possible strong assurances of mobile agent behavior. The two key notions are processes and mobile objects. Processes are located computational environments where mobile objects can reside. Mobile objects have their own code, can move between different processes in different locations, and can communicate asynchronously with each other by means of messages. Mobile Maude’s key novel characteristics include: (1) reflection as a way of endowing mobile objects with “higher-order” capabilities; (2) object-orientation and asynchronous message passing; (3) a high-performance implementation of the underlying Maude basis; (4) a simple semantics without loss in the expressive power of application code; and (5) security mechanisms supporting authentication, secure message passing, and secure object mobility. Mobile Maude has been specified and prototyped in Maude. Here we present the Mobile Maude language for the first time, and illustrate its use in applications by means of Milner’s cell-phone example. We also discuss security and implementation issues.


Electronic Notes in Theoretical Computer Science | 1998

Metalevel Computation in Maude

Manuel Clavel; Francisco Durán; Steven Eker; Patrick Lincoln; Narciso Martí-Oliet; José Meseguer

Abstract Maudes language design and implementation make systematic use of the fact that rewriting logic is reflective. This makes the metatheory of rewriting logic accessible to the user in a clear and principled way, and makes possible many advanced metaprogramming applications, including user-definable strategy languages, language extensions by new module composition operations, development of theorem proving tools, and reifications of other languages and logics within rewriting logic. A naive implementation of reflection can be computationally very expensive. We explain the semantic principles and implementation techniques through which efficient ways of performing reflective computations are achieved in Maude through its predefined META-LEVEL module. We are indebted to Jose F. Quesada for his excellent work on the MSCP context-free parser for Maude, that---besides being used for different parsing functions in Maude---is used as a key component of the built-in function meta-parse in META-LEVEL. We cordially thank Carolyn Talcott for many discussions on metalevel issues that have contributed to the development of our ideas.


workshop on rewriting logic and its applications | 2010

A Church-Rosser checker tool for conditional order-sorted equational Maude specifications

Francisco Durán; José Meseguer

The Church-Rosser property, together with termination, is essential for an equational specification to have good executability conditions, and also for having a complete agreement between the specifications initial algebra, mathematical semantics, and its operational semantics by rewriting. Checking this property for expressive specifications that are order-sorted, conditional with possibly extra variables in their condition, and whose equations can be applied modulo different combinations of associativity, commutativity and identity axioms is challenging. In particular, the resulting conditional critical pairs that cannot be joined have often an intuitively unsatisfiable condition or seem intuitively joinable, so that sophisticated tool support is needed to eliminate them. Another challenge is the presence of different combinations of associativity, commutativity and identity axioms, including the very challenging case of associativity without commutativity for which no finitary unification algorithms exist. In this paper we present the foundations and illustrate the design and use of a completely new version of the Maude Church-Rosser Checker tool that addresses all the above-mentioned challenges and can deal effectively with complex conditional specifications modulo axioms.

Collaboration


Dive into the Francisco Durán's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar

Narciso Martí-Oliet

Complutense University of Madrid

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Salvador Lucas

Polytechnic University of Valencia

View shared research outputs
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge