Results 1  10
of
36
An Overview of ELAN
, 1998
"... This paper presents a comprehensive introduction to the ELAN rulebased programming language. We describe the main features of the language, the ELAN environment, and introduce bibliographic references to various papers addressing foundations, implementation and applications of ELAN. 1 Introduction ..."
Abstract

Cited by 100 (24 self)
 Add to MetaCart
This paper presents a comprehensive introduction to the ELAN rulebased programming language. We describe the main features of the language, the ELAN environment, and introduce bibliographic references to various papers addressing foundations, implementation and applications of ELAN. 1 Introduction The ELAN system [18] provides an environment for specifying and prototyping deduction systems in a language based on rules controlled by strategies. Its purpose is to support the design of theorem provers, logic programming languages, constraints solvers and decision procedures and to offer a modular framework for studying their combination. ELAN takes from functional programming the concept of abstract data types and the function evaluation principle based on rewriting. But rewriting is inherently nondeterministic since several rules can be applied at different positions in a same term, and in ELAN, a computation may have several results. This aspect is taken into account through choice...
Rewriting for Cryptographic Protocol Verification
, 1999
"... . On a case study, we present a new approach for verifying cryptographic protocols, based on rewriting and on tree automata techniques. Protocols are operationally described using Term Rewriting Systems and the initial set of communication requests is described by a tree automaton. Starting from ..."
Abstract

Cited by 56 (8 self)
 Add to MetaCart
. On a case study, we present a new approach for verifying cryptographic protocols, based on rewriting and on tree automata techniques. Protocols are operationally described using Term Rewriting Systems and the initial set of communication requests is described by a tree automaton. Starting from these two representations, we automatically compute an overapproximation of the set of exchanged messages (also recognized by a tree automaton). Then, proving classical properties like confidentiality or authentication can be done by automatically showing that the intersection between the approximation and a set of prohibited behaviors is the empty set. Furthermore, this method enjoys a simple and powerful way to describe intruder work, the ability to consider an unbounded number of parties, an unbounded number of interleaved sessions, and a theoretical property ensuring safeness of the approximation. Introduction In this paper, we present a new way of verifying cryptographic pro...
A Static Analysis Technique for Graph Transformation Systems
 In Proc. of CONCUR ’01
, 2001
"... In this paper we introduce a static analysis technique for graph transformation systems. We present an algorithm which, given a graph transformation system and a start graph, produces a nite structure consisting of a hypergraph decorated with transitions (Petri graph) which can be seen as an app ..."
Abstract

Cited by 42 (17 self)
 Add to MetaCart
In this paper we introduce a static analysis technique for graph transformation systems. We present an algorithm which, given a graph transformation system and a start graph, produces a nite structure consisting of a hypergraph decorated with transitions (Petri graph) which can be seen as an approximation of the Winskel style unfolding of the graph transformation system. The fact that any reachable graph has an homomorphic image in the Petri graph and the additional causal information provided by transitions allow us to prove several interesting properties of the original system. As an application of the proposed technique we show how it can be used to verify the absence of deadlocks in an innitestate Dining Philosophers system.
A Framework for the Verification of InfiniteState Graph Transformation Systems
, 2008
"... We propose a technique for the analysis of infinitestate graph transformation systems, based on the construction of finite structures approximating their behaviour. Following a classical approach, one can construct a chain of finite underapproximations (ktruncations) of the Winskel style unfolding ..."
Abstract

Cited by 14 (3 self)
 Add to MetaCart
We propose a technique for the analysis of infinitestate graph transformation systems, based on the construction of finite structures approximating their behaviour. Following a classical approach, one can construct a chain of finite underapproximations (ktruncations) of the Winskel style unfolding of a graph grammar. More interestingly, also a chain of finite overapproximations (kcoverings) of the unfolding can be constructed. The fact that ktruncations and kcoverings approximate the unfolding with arbitrary accuracy is formalised by showing that both chains converge (in a categorical sense) to the full unfolding. We discuss how the finite over and underapproximations can be used to check properties of systems modelled by graph transformation systems, illustrating this with some small examples. We also describe the Augur tool, which provides a partial implementation of the proposed constructions, and has been used for the verification of larger case studies.
Rewriting Approximations for Fast Prototyping of Static Analyzers
 Research Report RR 5997, INRIA
, 2006
"... Abstract. This paper shows how to construct static analyzers using tree automata and rewriting techniques. Starting from a term rewriting system representing the operational semantics of the target programming language and given a program to analyze, we automatically construct an overapproximation ..."
Abstract

Cited by 13 (8 self)
 Add to MetaCart
Abstract. This paper shows how to construct static analyzers using tree automata and rewriting techniques. Starting from a term rewriting system representing the operational semantics of the target programming language and given a program to analyze, we automatically construct an overapproximation of the set of reachable terms, i.e. of the program states that can be reached. The approach enables fast prototyping of static analyzers because modifying the analysis simply amounts to changing the set of rewrite rules defining the approximation. A salient feature of this approach is that the approximation is correct by construction and hence does not require an explicit correctness proof. To illustrate the framework proposed here on a realistic programming language we instantiate it with the Java Virtual Machine semantics and perform class analysis on Java bytecode programs. 1
Regular Sets of Descendants for Constructorbased Rewrite Systems
, 1999
"... . Starting from the regular tree language E of ground constructorinstances of any linear term, we build a nite tree automaton that recognizes the set of descendants R (E) of E for a constructorbased term rewrite system whose righthandsides fulll the following three restrictions : linearity, ..."
Abstract

Cited by 12 (3 self)
 Add to MetaCart
. Starting from the regular tree language E of ground constructorinstances of any linear term, we build a nite tree automaton that recognizes the set of descendants R (E) of E for a constructorbased term rewrite system whose righthandsides fulll the following three restrictions : linearity, no nested function symbols, function arguments are variables or ground terms. Note that leftlinearity is not assumed. We next present several applications. 1 Introduction Tree automata have already been applied to many areas of computer science, and in particular to rewriting techniques [2]. In comparison with more sophisticated renements, nite tree automata are obviously less powerful, but have plenty of good properties and lead to much simpler algorithms from a practical point of view. Because of potential applications to automated deduction and program validation, the problem of expressing by a nite tree automaton the transitive closure of a regular set E of ground terms with resp...
Reachability Analysis of Term Rewriting Systems with Timbuk
 LPAR PROCEEDINGS
, 2001
"... We present Timbuk  a tree automata library  which implements usual operations on tree automata as well as a completion algorithm used to compute an overapproximation of the set of descendants (E) for a regular set E and a term rewriting system R, possibly non linear and non terminating. On seve ..."
Abstract

Cited by 11 (1 self)
 Add to MetaCart
We present Timbuk  a tree automata library  which implements usual operations on tree automata as well as a completion algorithm used to compute an overapproximation of the set of descendants (E) for a regular set E and a term rewriting system R, possibly non linear and non terminating. On several examples of term rewriting systems representing programs and systems to verify, we show how to use Timbuk to construct their approximations and then prove unreachability properties of these systems.
Alternating TwoWay ACTree Automata
 IN PREPARATION
, 2002
"... We explore the notion of alternating twoway tree automata modulo the theory of finitely many associativecommutative (AC) symbols, some of them with a unit (AC1). This was prompted by questions arising in cryptographic protocol verification, where the emptiness question for intersections of such au ..."
Abstract

Cited by 11 (5 self)
 Add to MetaCart
We explore the notion of alternating twoway tree automata modulo the theory of finitely many associativecommutative (AC) symbols, some of them with a unit (AC1). This was prompted by questions arising in cryptographic protocol verification, where the emptiness question for intersections of such automata is fundamental. We show that the use of conditional push clauses, or of alternation, leads to undecidability, already in the case of one AC or AC1 symbol, with only functions of arity zero. On the other hand, emptiness is decidable in the general case of many function symbols, including many AC or AC1 symbols, provided push clauses are unconditional and intersection clauses are final. To this end, extensive use of refinements of resolution is made.
Automatic Approximation for the Verification of Cryptographic Protocols
, 2003
"... This paper presents an approximation function developed for the verication of cryptographic protocols. The main properties of this approximation are that it can be build automatically and its computation is guaranteed to terminate unlike Genet and Klay's algorithm. This approximation has been us ..."
Abstract

Cited by 10 (0 self)
 Add to MetaCart
This paper presents an approximation function developed for the verication of cryptographic protocols. The main properties of this approximation are that it can be build automatically and its computation is guaranteed to terminate unlike Genet and Klay's algorithm. This approximation has been used for the verication of the NeedhamSchroeder, OtwayRees and Woo Lam protocols. To be more precise, the approximation allows us to check secrecy and authenticity properties of the protocols.