17 results on '"Santiago Escobar"'
Search Results
2. Programming and symbolic computation in Maude
- Author
-
José Meseguer, Rubén Rubio, Santiago Escobar, Francisco Durán, Carolyn L. Talcott, Steven Eker, and Narciso Martí-Oliet
- Subjects
Computer Science - Symbolic Computation ,FOS: Computer and information sciences ,Unification and narrowing ,Computer Science - Logic in Computer Science ,Reflection (computer programming) ,Correctness ,Maude and rewriting logic ,Unification ,Logic ,Computer science ,0102 computer and information sciences ,Symbolic Computation (cs.SC) ,computer.software_genre ,01 natural sciences ,Theoretical Computer Science ,Reachability ,External objects ,ComputingMethodologies_SYMBOLICANDALGEBRAICMANIPULATION ,Computer Science - Programming Languages ,Symbolic model checking ,Programming language ,Object (computer science) ,Symbolic computation ,Logic in Computer Science (cs.LO) ,Logical framework ,TheoryofComputation_MATHEMATICALLOGICANDFORMALLANGUAGES ,Computational Theory and Mathematics ,010201 computation theory & mathematics ,TheoryofComputation_LOGICSANDMEANINGSOFPROGRAMS ,Rewriting ,Strategies ,LENGUAJES Y SISTEMAS INFORMATICOS ,computer ,Software ,Programming Languages (cs.PL) ,Meta-interpreters - Abstract
[EN] Rewriting logic is both a flexible semantic framework within which widely different concurrent systems can be naturally specified and a logical framework in which widely different logics can be specified. Maude programs are exactly rewrite theories. Maude has also a formal environment of verification tools. Symbolic computation is a powerful technique for reasoning about the correctness of concurrent systems and for increasing the power of formal tools. We present several new symbolic features of Maude that enhance formal reasoning about Maude programs and the effectiveness of formal tools. They include: (i) very general unification modulo user-definable equational theories, and (ii) symbolic reachability analysis of concurrent systems using narrowing. The paper does not focus just on symbolic features: it also describes several other new Maude features, including: (iii) Maude's strategy language for controlling rewriting, and (iv) external objects that allow flexible interaction of Maude object-based concurrent systems with the external world. In particular, meta-interpreters are external objects encapsulating Maude interpreters that can interact with many other objects. To make the paper self-contained and give a reasonably complete language overview, we also review the basic Maude features for equational rewriting and rewriting with rules, Maude programming of concurrent object systems, and reflection. Furthermore, we include many examples illustrating all the Maude notions and features described in the paper., Duran has been partially supported by MINECO/FEDER project TIN2014-52034-R. Escobar has been partially supported by the EU (FEDER) and the MCIU under grant RTI2018-094403-B-C32, by the Spanish Generalitat Valenciana under grant PROMETE0/2019/098, and by the US Air Force Office of Scientific Research under award number FA9550-17-1-0286. MartiOliet and Rubio have been partially supported by MCIU Spanish project TRACES (TIN2015-67522-C3-3-R). Rubio has also been partially supported by a MCIU grant FPU17/02319. Meseguer and Talcott have been partially supported by NRL Grant N00173 -17-1-G002. Talcott has also been partially supported by ONR Grant N00014-15-1-2202.
- Published
- 2020
- Full Text
- View/download PDF
3. Constrained narrowing for conditional equational theories modulo axioms
- Author
-
José Meseguer, Andrew Cholewa, and Santiago Escobar
- Subjects
Soundness ,Discrete mathematics ,Infinite set ,Computer science ,Modulo ,Structure (category theory) ,Narrowing modulo ,Layered narrowing ,Constrained unification ,Type (model theory) ,Cover (topology) ,ComputingMethodologies_SYMBOLICANDALGEBRAICMANIPULATION ,Conditional narrowing ,Constrained variants ,Completeness (statistics) ,LENGUAJES Y SISTEMAS INFORMATICOS ,Algorithm ,Software ,Axiom - Abstract
For an unconditional equational theory (Sigma, E) whose oriented equations (E) over arrow are confluent and terminating, narrowing provides an E-unification algorithm. This has been generalized by various authors in two directions: (i) by considering unconditional equational theories (Sigma, E boolean OR B) where the (E) over arrow are confluent, terminating and coherent modulo axioms B, and (ii) by considering conditional equational theories. Narrowing for a conditional theory (Sigma, E boolean OR B) has also been studied, but much less and with various restrictions. In this paper we extend these prior results by allowing conditional equations with extra variables in their conditions, provided the corresponding rewrite rules (E) over arrow are confluent, strictly coherent, operationally terminating modulo B and satisfy a natural determinism condition allowing incremental computation of matching substitutions for their extra variables. We also generalize the type structure of the types and operations in Sigma to be order-sorted. The narrowing method we propose, called constrained narrowing, treats conditions as constraints whose solution is postponed. This can greatly reduce the search space of narrowing and allows notions such as constrained variant and constrained unifier that can cover symbolically possibly infinite sets of actual variants and unifiers. It also supports a hierarchical method of solving constraints. We give an inference system for hierarchical constrained narrowing modulo B and prove its soundness and completeness. (C) 2015 Elsevier B.V. All rights reserved., We thank the anonymous referees for their constructive criticism and their very detailed and helpful suggestions for improving an earlier version of this work. We also thank Luis Aguirre for kindly giving us additional suggestions to improve the text. This work has been partially supported by NSF Grant CNS 13-19109 and by the EU (FEDER) and the Spanish MINECO under grant TIN 2013-45732-C4-1-P, and by Generalitat Valenciana PROMETEOII/2015/013.
- Published
- 2015
- Full Text
- View/download PDF
4. State space reduction in the Maude-NRL Protocol Analyzer
- Author
-
Santiago Escobar, Sonia Santiago, Catherine Meadows, and José Meseguer
- Subjects
Theoretical computer science ,Computer science ,Cryptographic protocols ,Cryptographic protocol ,Mathematical proof ,Computer Science Applications ,Theoretical Computer Science ,Variety (cybernetics) ,Computational Theory and Mathematics ,Completeness (order theory) ,Packet analyzer ,Security ,Cryptosystem ,State (computer science) ,LENGUAJES Y SISTEMAS INFORMATICOS ,Information Systems - Abstract
The Maude-NRL Protocol Analyzer (Maude-NPA) is a tool and inference system for reasoning about the security of cryptographic protocols in which the cryptosystems satisfy different equational properties. It both extends and provides a formal framework for the original NRL Protocol Analyzer, which supported equational reasoning in a more limited way. Maude-NPA supports a wide variety of algebraic properties that includes many crypto-systems of interest such as, for example, one-time pads and Diffie–Hellman. Maude-NPA, like the original NPA, looks for attacks by searching backwards from an insecure attack state, and assumes an unbounded number of sessions. Because of the unbounded number of sessions and the support for different equational theories, it is necessary to develop ways of reducing the search space and avoiding infinite search paths. In order for the techniques to prove useful, they need not only to speed up the search, but should not violate completeness, so that failure to find attacks still guarantees security. In this paper we describe some state space reduction techniques that we have implemented in Maude-NPA. We also provide completeness proofs, and experimental evaluations of their effect on the performance of Maude-NPA., We would like to thank Antonio Gonzalez for his help in providing several protocol specifications in Maude-NPA. S. Escobar and S. Santiago have been partially supported by the EU (FEDER) and the Spanish MEC/MICINN under grant TIN 2010-21062-C02-02, and by Generalitat Valenciana PROMETEO2011/052. J. Meseguer and S. Escobar have been partially supported by NSF grants CNS 09-04749, and CCF 09-05584.
- Published
- 2014
- Full Text
- View/download PDF
5. A modular order-sorted equational generalization algorithm
- Author
-
Javier Espert, María Alpuente, José Meseguer, and Santiago Escobar
- Subjects
Terms ,Logic ,Generalization ,Empty set ,Mathematical proof ,Theoretical Computer Science ,Set (abstract data type) ,Commutative property ,Axiom ,Mathematics ,Discrete mathematics ,Inheritance ,Substitution (logic) ,Term (logic) ,Semantics ,Computer Science Applications ,Algebra ,Computational Theory and Mathematics ,Unification ,Programs ,Computer Science::Programming Languages ,LENGUAJES Y SISTEMAS INFORMATICOS ,Algorithm ,Information Systems - Abstract
Generalization, also called anti-unification, is the dual of unification. Given terms t and t , a generalizer is a term t of which t and t are substitution instances. The dual of a most general unifier (mgu) is that of least general generalizer (lgg). In this work, we extend the known untyped generalization algorithm to, first, an order-sorted typed setting with sorts, subsorts, and subtype polymorphism; second, we extend it to work modulo equational theories, where function symbols can obey any combination of associativity, commutativity, and identity axioms (including the empty set of such axioms); and third, to the combination of both, which results in a modular, order-sorted equational generalization algorithm. Unlike the untyped case, there is in general no single lgg in our framework, due to order-sortedness or to the equational axioms. Instead, there is a finite, minimal and complete set of lggs, so that any other generalizer has at least one of them as an instance. Our generalization algorithms are expressed by means of inference systems for which we give proofs of correctness. This opens up new applications to partial evaluation, program synthesis, and theorem proving for typed equational reasoning systems and typed rulebased languages such as ASF+SDF, Elan, OBJ, Cafe-OBJ, and Maude. © 2014 Elsevier Inc. All rights reserved. 1., M. Alpuente, S. Escobar, and J. Espert have been partially supported by the EU (FEDER) and the Spanish MEC/MICINN under grant TIN 2010-21062-C02-02, and by Generalitat Valenciana PROMETEO2011/052. J. Meseguer has been supported by NSF Grants CNS 09-04749, and CCF 09-05584.
- Published
- 2014
- Full Text
- View/download PDF
6. Folding variant narrowing and optimal variant termination
- Author
-
Santiago Escobar, José Meseguer, and Ralf Sasse
- Subjects
Unification ,Computer science ,Logic ,Modulo ,Mathematical proof ,Theoretical Computer Science ,Combinatorics ,Set (abstract data type) ,ComputingMethodologies_SYMBOLICANDALGEBRAICMANIPULATION ,Finitary ,Terminating narrowing strategy ,Axiom ,Mathematics ,Discrete mathematics ,Disjoint union ,Equational unification ,Variants ,Narrowing modulo ,Coherence (philosophical gambling strategy) ,Folding (DSP implementation) ,Term (logic) ,Term (time) ,Computational Theory and Mathematics ,Confluence ,Algorithm ,LENGUAJES Y SISTEMAS INFORMATICOS ,Software - Abstract
Automated reasoning modulo an equational theory E is a fundamental technique in many applications. If E can be split as a disjoint union E u Ax in such a way that E is confluent, terminating, sort-decreasing, and coherent modulo a set of equational axioms Ax, narrowing with E modulo Ax provides a complete E-unification algorithm. However, except for the hopelessly inefficient case of full narrowing, little seems to be known about effective narrowing strategies in the general modulo case beyond the quite depressing observation that basic narrowing is incomplete modulo AC. Narrowing with equations E modulo axioms Ax can be turned into a practical automated reasoning technique by systematically exploiting the notion of E, Ax-variants of a term. After reviewing such a notion, originally proposed by Comon-Lundh and Delaune, and giving various necessary and/or sufficient conditions for it, we explain how narrowing strategies can be used to obtain narrowing algorithms modulo axioms that are: (i) variant-complete (generate a complete set of variants for any input term), (ii) minimal (such a set does not have redundant variants), and (iii) are optimally variant-terminating (the strategy will terminate for an input term t iff t has a finite complete set of variants). We define a strategy called folding variant narrowing that satisfies above properties (i)-(iii); in particular, when E u Ax has the finite variant property, that is, when any term t has a finite complete set of variants, this strategy terminates on any input term and provides a finitary E u Ax-unification algorithm. We also explain how folding variant narrowing has a number of interesting applications in areas such as unification theory, cryptographic protocol verification, and proofs of termination, confluence and coherence of a set of rewrite rules R modulo an equational theory E. © 2012 Elsevier Inc. All rights reserved, S. Escobar has been partially supported by the EU (FEDER) and the Spanish MEC/MICINN under Grant TIN 2010-21062-C02-02, and by Generalitat Valenciana PROMETEO2011/052. R. Sasse and J. Meseguer have been partially supported by NSF Grants CNS 07-16638, CNS 08-31064, CNS 09-04749, and CCF 09-05584.
- Published
- 2012
- Full Text
- View/download PDF
7. A Tool for Automated Certification of Java Source Code in Maude
- Author
-
Mauricio Alba-Castro, P. Ojeda, Daniel Romero, Santiago Escobar, and María Alpuente
- Subjects
Maude ,General Computer Science ,Java ,automated certification ,Computer science ,Programming language ,strictfp ,Generics in Java ,web tool ,computer.software_genre ,rewriting logic ,Java concurrency ,Theoretical Computer Science ,Java API for XML-based RPC ,Real time Java ,Compiler ,Java annotation ,computer ,computer.programming_language ,Java Modeling Language ,Computer Science(all) - Abstract
In previous work, an abstract certification technique for Java source code was proposed based on rewriting logic, which is a semantic framework that has been efficiently implemented in the rule–based programming language Maude. Starting from a specification of a (generic) Java abstract semantics written in Maude, we develop an abstract verification technique that essentially consists of a reachability analysis using the Java abstract semantics. We provide facilities to associate abstract domains to the variables of the considered Java program so that the resulting state–space is finite. As a by–product of the abstract verification, a safety certificate is delivered that contains a set of (abstract) rewriting proofs that can be checked by the code consumer using a standard rewriting logic engine. The main advantage is that the amount of code that must be explicitly trusted is very small. This paper presents a Web tool that implements the abstract certification technique by providing appropriate abstract domains for different safety properties while hiding the technical details of the method from the user. The tool has been devised to be easily extendable to other properties and domains. It currently supports the certification of two kinds of safety properties that are not handled by standard Java compilers: secure integer arithmetic rules and non–interference policies.
- Published
- 2009
- Full Text
- View/download PDF
8. Order-Sorted Generalization
- Author
-
María Alpuente, Santiago Escobar, José Meseguer, and Pedro Ojeda
- Subjects
Discrete mathematics ,Correctness ,General Computer Science ,Unification ,Generalization ,Substitution (logic) ,Universal generalization ,Term (logic) ,Theoretical Computer Science ,Set (abstract data type) ,Automated theorem proving ,partial evaluation ,order–sorted reasoning ,least general generalization ,Computer Science(all) ,Mathematics - Abstract
Generalization, also called anti-unification, is the dual of unification. Given terms t and t′, a generalization is a term t″ of which t and t′ are substitution instances. The dual of a most general unifier (mgu) is that of least general generalization (lgg). In this work, we extend the known untyped generalization algorithm to an order-sorted typed setting with sorts, subsorts, and subtype polymorphism. Unlike the untyped case, there is in general no single lgg. Instead, there is a finite, minimal set of lggs, so that any other generalization has at least one of them as an instance. Our generalization algorithm is expressed by means of an inference system for which we give a proof of correctness. This opens up new applications to partial evaluation, program synthesis, and theorem proving for typed reasoning systems and typed rule-based languages such as ASF+SDF, Elan, OBJ, Cafe-OBJ, and Maude.
- Published
- 2009
- Full Text
- View/download PDF
9. Equational Cryptographic Reasoning in the Maude-NRL Protocol Analyzer
- Author
-
José Meseguer, Catherine Meadows, and Santiago Escobar
- Subjects
Maude ,Theoretical computer science ,Cryptographic primitive ,Cryptographic Protocol Verification ,General Computer Science ,business.industry ,Programming language ,Cryptography ,Cryptographic protocol ,computer.software_genre ,Theoretical Computer Science ,Equational Reasoning ,Reachability ,Formal specification ,Rewriting ,Narrowing ,business ,Rewriting Logic ,computer ,Protocol (object-oriented programming) ,Invariant (computer science) ,Computer Science(all) ,Computer Science::Cryptography and Security ,Mathematics - Abstract
The NRL Protocol Analyzer (NPA) is a tool for the formal specification and analysis of cryptographic protocols that has been used with great effect on a number of complex real-life protocols. One of the most interesting of its features is that it can be used to reason about security in face of attempted attacks on low-level algebraic properties of the functions used in a protocol. Recently, we have given for the first time a precise formal specification of the main features of the NPA inference system: its grammar-based techniques for (co-)invariant generation and its backwards narrowing reachability analysis method; both implemented in Maude as the Maude-NPA tool. This formal specification is given within the well-known rewriting framework so that the inference system is specified as a set of rewrite rules modulo an equational theory describing the behavior of the cryptographic symbols involved. This paper gives a high-level overview of the Maude-NPA tool and illustrates how it supports equational reasoning about properties of the underlying cryptographic infrastructure by means of a simple, yet nontrivial, example of an attack whose discovery essentially requires equational reasoning. It also shows how rule-based programming languages such as Maude and complex narrowing strategies are useful to model, analyze, and verify protocols.
- Published
- 2007
- Full Text
- View/download PDF
10. On-demand Evaluation for Maude
- Author
-
Salvador Lucas, Francisco Durán, and Santiago Escobar
- Subjects
Maude ,Reflection (computer programming) ,General Computer Science ,Programming language ,Computer science ,media_common.quotation_subject ,Subroutine ,Rewrite rule ,demandedness ,Term (logic) ,computer.software_genre ,Expression (mathematics) ,Theoretical Computer Science ,Zero (linguistics) ,Argument ,Simple (abstract algebra) ,on-demand strategy ,Function (engineering) ,computer ,Declarative programming ,reflection ,Computer Science(all) ,media_common - Abstract
Strategy annotations provide a simple mechanism for introducing some laziness in the evaluation of expressions. As an eager programming language, Maude can take advantage of them and, in fact, they are part of the language. Maude strategy annotations are lists of non-negative integers associated to function symbols which specify the ordering in which the arguments are (eventually) evaluated in function calls. A positive index enables the evaluation of an argument whereas 'zero' means that the function call has to be attempted. The use of negative indices has been proposed to express evaluation on-demand, where the demand is an attempt to match an argument term with the left-hand side of a rewrite rule. In this paper we show how to furnish Maude with the ability of dealing with on-demand strategy annotations.
- Published
- 2005
- Full Text
- View/download PDF
11. Correct and Complete (Positive) Strategy Annotations for OBJ
- Author
-
Santiago Escobar, Salvador Lucas, and María Alpuente
- Subjects
Theoretical computer science ,Correctness ,General Computer Science ,Computer science ,Programming language ,Program transformation ,OBJ ,computer.software_genre ,strategy annotations ,Theoretical Computer Science ,Rewriting ,computer ,Declarative programming ,Computer Science(all) - Abstract
Strategy annotations are used in several rewriting-based programming languages to introduce replacement restrictions aimed at improving efficiency and/or reducing the risk of nontermination. Unfortunately, rewriting restrictions can have a negative impact on the ability to compute normal forms. In this paper, we first ascertain/clarify the conditions ensuring correctness and completeness (regarding normalization) of computing with strategy annotations. Then, we define a program transformation methodology for (correct and) complete evaluations which applies to OBJ-like languages.
- Published
- 2004
- Full Text
- View/download PDF
12. Rewriting logic and its applications (extended selected papers from WRLA 2014)
- Author
-
Santiago Escobar
- Subjects
Theoretical computer science ,Computational Theory and Mathematics ,Logic ,Computer science ,Rewriting ,Software ,Theoretical Computer Science - Published
- 2016
- Full Text
- View/download PDF
13. On-demand Evaluation by Program Transformation1 1Work partially supported by CICYT TIC2001-2705-C03-01 and MCYT grants HA2001-0059 and HU2001-0019
- Author
-
Salvador Lucas, Santiago Escobar, and María Alpuente
- Subjects
Theoretical computer science ,General Computer Science ,Programming language ,Computer science ,Program transformation ,Function (mathematics) ,computer.software_genre ,Theoretical Computer Science ,Set (abstract data type) ,Eager evaluation ,Symbol (programming) ,Haskell ,Lazy evaluation ,Argument (linguistics) ,computer ,Interpreter ,computer.programming_language ,Computer Science(all) - Abstract
Strategy annotations are used in eager programming languages (e.g., OBJ2 , OBJ3 , CafeOBJ , and Maude ) for improving efficiency and/or reducing the risk of nontermination. Syntactically, they are given either as lists of natural numbers or as lists of integers associated to function symbols whose (absolute) values refer to the arguments of the corresponding symbol. A positive index forces the evaluation of an argument whereas a negative index means “evaluation on-demand”. Recently, we have introduced a formal description of the operational meaning of such on-demand strategy annotations which improves previous formalizations that were lacking satisfactory computational properties. In this paper, we introduce an automatic, semantics-preserving program transformation which produces a program (without negative annotations) which can be then correctly executed by typical OBJ interpreters. Moreover, to demonstrate the practicality of our ideas, the program transformation has been implemented (in Haskell ) and we compare the evaluation of transformed programs with the original ones on a set of representative benchmarks.
- Published
- 2003
- Full Text
- View/download PDF
14. OnDemandOBJ
- Author
-
Salvador Lucas, María Alpuente, and Santiago Escobar
- Subjects
General Computer Science ,Index (publishing) ,Programming language ,Computer science ,Symbol (programming) ,Natural number ,Function (mathematics) ,Argument (linguistics) ,Arithmetic ,computer.software_genre ,computer ,Theoretical Computer Science ,Computer Science(all) - Abstract
Strategy annotations are used in rule-based programming languages such as OBJ2 , OBJ3 , CafeOBJ , and Maude to improve efficiency and/or reduce the risk of nontermination. Syntactically, they are given either as lists of natural numbers or as lists of integers associated to function symbols whose (absolute) values refer to the arguments of the corresponding symbol. A positive index forces the evaluation of an argument whereas a negative index means "evaluate on-demand". In this paper, we present OnDemandOBJ , an implementation of strategy-guided on-demand evaluation, which improves previous mechanizations that were lacking satisfactory computational properties.
- Published
- 2003
- Full Text
- View/download PDF
15. Redundancy of Arguments Reduced to Induction
- Author
-
Santiago Escobar, Salvador Lucas, María Alpuente, and Rachid Echahed
- Subjects
Class (set theory) ,General Computer Science ,Semantics (computer science) ,Function (mathematics) ,Term (logic) ,Expression (mathematics) ,Theoretical Computer Science ,Decidability ,Algebra ,TheoryofComputation_MATHEMATICALLOGICANDFORMALLANGUAGES ,Redundancy (engineering) ,Rewriting ,Algorithm ,Computer Science(all) ,Mathematics - Abstract
We demonstrate that the problem of identifying redundant arguments of function symbols, i.e. parameters which can be replaced by any expression without changing the associated semantics, boils down to proving the validity of a particular class of inductive theorems in the equational theory of confluent, sufficiently complete term rewriting systems (TRSs). Hence, existing results for proving inductive theorems can be exploited to solve the problem in many interesting cases where previously developed methods fail to recognize and remove redundancies. In particular, this novel formulation directly yields a new decidability result for the redundancy problem which is based on the so-called standard theories . As an additional result which stems from the inductive encoding of the redundancy problem, we finally propose two different techniques for the analysis of redundant arguments, which are respectively based on inductionless induction and abstract rewriting (a technique for approximating normal forms in sufficiently complete, left linear, canonical TRSs).
- Published
- 2002
- Full Text
- View/download PDF
16. Preface
- Author
-
Demis Ballis and Santiago Escobar
- Subjects
General Computer Science ,Theoretical Computer Science ,Computer Science(all) - Published
- 2009
- Full Text
- View/download PDF
17. Preface
- Author
-
Santiago Escobar, MARÍA ALPUENTE, and Moreno FALASCHI
- Subjects
General Computer Science ,Theoretical Computer Science ,Computer Science(all) - Published
- 2006
- Full Text
- View/download PDF
Catalog
Discovery Service for Jio Institute Digital Library
For full access to our library's resources, please sign in.