VLDB 2026 Research / reviewers in the wild / expert
Pierre-Etienne Moreau
dblp:21/7020
· DBLP profile ↗
21ranked-venue papers
2as first author
1since 2021 · last 2021
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Theory of computation · 14 · 1 first-author · 1 since 2021Software engineering, systems software and programming languages · 11 · 1 first-author · 1 since 2021
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2021 | Static analysis of pattern-free propertiesabstractRewriting is a widely established formalism with major applications in computer science. It is indeed a staple of many formal verification applications as it is especially well suited to describe program semantics and transformations. In particular, constructor based term rewriting systems are generally used to illustrate the behaviour of functional programs. Horatiu Cirstea, Pierre Lermusiaux, Pierre-Etienne Moreau |
PPDP | 3 |
| 2020 | Pattern Eliminating Transformations
Horatiu Cirstea, Pierre Lermusiaux, Pierre-Etienne Moreau |
LOPSTR | 3 |
| 2019 | Generic Encodings of Constructor Rewriting SystemsabstractRewriting is a formalism widely used in computer science and mathematical logic. The classical formalism has been extended, in the context of functional languages, with an order over the rules and, in the context of rewrite based languages, with the negation over patterns. We propose in this paper a concise and clear algorithm computing the difference over patterns which can be used to define generic encodings of constructor term rewriting systems with negation and order into classical term rewriting systems. As a direct consequence, established methods used for term rewriting systems can be applied to analyze properties of the extended systems. The approach can also be seen as a generic compiler which targets any language providing basic pattern matching primitives. The formalism provides also a new method for deciding if a set of patterns subsumes a given pattern and thus, for checking the presence of useless patterns or the completeness of a set of patterns. Horatiu Cirstea, Pierre-Etienne Moreau |
PPDP | 2 |
| 2017 | Faithful (meta-)encodings of programmable strategies into term rewriting systemsabstractRewriting is a formalism widely used in computer science and mathematical logic. When using rewriting as a programming or modeling paradigm, the rewrite rules describe the transformations one wants to operate and rewriting strategies are used to con- trol their application. The operational semantics of these strategies are generally accepted and approaches for analyzing the termination of specific strategies have been studied. We propose in this paper a generic encoding of classic control and traversal strategies used in rewrite based languages such as Maude, Stratego and Tom into a plain term rewriting system. The encoding is proven sound and complete and, as a direct consequence, estab- lished termination methods used for term rewriting systems can be applied to analyze the termination of strategy controlled term rewriting systems. We show that the encoding of strategies into term rewriting systems can be easily adapted to handle many-sorted signa- tures and we use a meta-level representation of terms to reduce the size of the encodings. The corresponding implementation in Tom generates term rewriting systems compatible with the syntax of termination tools such as AProVE and TTT2, tools which turned out to be very effective in (dis)proving the termination of the generated term rewriting systems. The approach can also be seen as a generic strategy compiler which can be integrated into languages providing pattern matching primitives; experiments in Tom show that applying our encoding leads to performances comparable to the native Tom strategies. Horatiu Cirstea, Sergueï Lenglet, Pierre-Etienne Moreau |
Log. Methods Comput. Sci. | 3 |
| 2015 | A faithful encoding of programmable strategies into term rewriting systemsabstractRewriting is a formalism widely used in computer science and mathematical logic. When using rewriting as a programming or modeling paradigm, the rewrite rules describe the transformations one wants to operate and declarative rewriting strategies are used to control their application. The operational semantics of these strategies are generally accepted and approaches for analyzing the termination of specific strategies have been studied. We propose in this paper a generic encoding of classic control and traversal strategies used in rewrite based languages such as Maude, Stratego and Tom into a plain term rewriting system. The encoding is proven sound and complete and, as a direct consequence, established termination methods used for term rewriting systems can be applied to analyze the termination of strategy controlled term rewriting systems. The corresponding implementation in Tom generates term rewriting systems compatible with the syntax of termination tools such as AAProVE and TTT2, tools which turned out to be very effective in (dis)proving the termination of the generated term rewriting systems. The approach can also be seen as a generic strategy compiler which can be integrated into languages providing pattern matching primitives; this has been experimented for Tom and performances comparable to the native Tom strategies have been observed. Horatiu Cirstea, Sergueï Lenglet, Pierre-Etienne Moreau |
RTA | 3 |
| 2014 | Effective strategic programming for Java developersabstractSUMMARY In object programming languages, the Visitor design pattern allows separation of algorithms and data structures. When applying this pattern to tree‐like structures, programmers are always confronted with the difficulty of making their code evolve. One reason is that the code implementing the algorithm is interwound with the code implementing the traversal inside the visitor. When implementing algorithms such as data analyses or transformations, encoding the traversal directly into the algorithm turns out to be cumbersome as this type of algorithm only focuses on a small part of the data‐structure model (e.g., program optimization). Unfortunately, typed programming languages like Java do not offer simple solutions for expressing generic traversals. Rewrite‐based languages like ELAN or Stratego have introduced the notion of strategies to express both generic traversal and rule application control in a declarative way. Starting from this approach, our goal was to make the notion of strategic programming available in a widely used language such as Java and thus to offer generic traversals in typed Java structures. In this paper, we present the strategy language SL that provides programming support for strategies in Java. Copyright © 2012 John Wiley & Sons, Ltd. Emilie Balland, Pierre-Etienne Moreau, Antoine Reilles |
Softw. Pract. Exp. | 2 |
| 2012 | Island Grammar-Based Parsing Using GLL and Tom
Ali Afroozeh, Jean-Christophe Bach, Mark van den Brand, Adrian Johnstone, Maarten Manders, Pierre-Etienne Moreau, Elizabeth Scott |
SLE | 6 |
| 2010 | Anti-patterns for rule-based languages
Horatiu Cirstea, Claude Kirchner, Radu Kopetz, Pierre-Etienne Moreau |
J. Symb. Comput. | 4 |
| 2008 | Software Quality Improvement Via Pattern Matching
Radu Kopetz, Pierre-Etienne Moreau |
FASE | 2 |
| 2008 | Anti-pattern Matching Modulo
Claude Kirchner, Radu Kopetz, Pierre-Etienne Moreau |
LATA | 3 |
| 2008 | Term-Graph Rewriting Via Explicit Paths
Emilie Balland, Pierre-Etienne Moreau |
RTA | 2 |
| 2007 | Anti-pattern Matching
Claude Kirchner, Radu Kopetz, Pierre-Etienne Moreau |
ESOP | 3 |
| 2007 | Tom: Piggybacking Rewriting on Java
Emilie Balland, Paul Brauner, Radu Kopetz, Pierre-Etienne Moreau, Antoine Reilles |
RTA | 4 |
| 2006 | A Simple Generic Library for C
Marian Vittek, Peter Borovanský, Pierre-Etienne Moreau |
ICSR | 3 |
| 2005 | Formal validation of pattern matching codeabstractWhen addressing the formal validation of generated software, two main alternatives consist either to prove the correctness of compilers or to directly validate the generated code. Here, we focus on directly proving the correctness of compiled code issued from powerful pattern matching constructions typical of ML like languages or rewrite based languages such as ELAN, Maude or Tom. In this context, our first contribution is to define a general framework for anchoring algebraic pattern-matching capabilities in existing languages like C, Java or ML. Then, using a just enough powerful intermediate language, we formalize the behavior of compiled code and define the correctness of compiled code with respect to pattern-matching behavior. This allows us to prove the equivalence of compiled code correctness with a generic first-order proposition whose proof could be achieved via a proof assistant or an automated theorem prover. We then extend these results to the multi-match situation characteristic of the ML like languages. The whole approach has been implemented on top of the Tom compiler and used to validate the syntactic matching code of the Tom compiler itself. Claude Kirchner, Pierre-Etienne Moreau, Antoine Reilles |
PPDP | 2 |
| 2003 | A Pattern Matching Compiler for Multiple Target Languages
Pierre-Etienne Moreau, Christophe Ringeissen, Marian Vittek |
CC | 1 |
| 2003 | Environments for Term Rewriting Engines for Free!
Mark van den Brand, Pierre-Etienne Moreau, Jurgen J. Vinju |
RTA | 2 |
| 2002 | ELAN from a rewriting logic point of view
Peter Borovanský, Claude Kirchner, Hélène Kirchner, Pierre-Etienne Moreau |
Theor. Comput. Sci. | 4 |
| 2001 | Promoting rewriting to a programming language: a compiler for non-deterministic rewrite programs in associative-commutative theoriesabstractFirst-order languages based on rewrite rules share many features with functional languages, but one difference is that matching and rewriting can be made much more expressive and powerful by incorporating some built-in equational theories. To provide reasonable programming environments, compilation techniques for such languages based on rewriting have to be designed. This is the topic addressed in this paper. The proposed techniques are independent from the rewriting language, and may be useful to build a compiler for any system using rewriting modulo Associative and Commutative (AC) theories. An algorithm for many-to-one AC matching is presented, that works efficiently for a restricted class of patterns. Other patterns are transformed to fit into this class. A refined data structure, namely compact bipartite graph, allows encoding of all matching problems relative to a set of rewrite rules. A few optimisations concerning the construction of the substitution and of the reduced term are described. We also address the problem of non-determinism related to AC rewriting, and show how to handle it through the concept of strategies. We explain how an analysis of the determinism can be performed at compile time, and we illustrate the benefits of this analysis for the performance of the compiled evaluation process. Then we briefly introduce the ELAN system and its compiler, in order to give some experimental results and comparisons with other languages or rewrite engines. Hélène Kirchner, Pierre-Etienne Moreau |
J. Funct. Program. | 2 |
| 2000 | REM (Reduce Elan Machine): Core of the New ELAN Compiler
Pierre-Etienne Moreau |
RTA | 1 |
| 1995 | Prototyping Completion with Constraints Using Computational Systems
Hélène Kirchner, Pierre-Etienne Moreau |
RTA | 2 |