Jean-Pierre Jouannaud

Jean-Pierre Jouannaud
  • PhD
  • Professor Emeritus at École Polytechnique

About

112
Publications
5,622
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
5,452
Citations
Current institution
École Polytechnique
Current position
  • Professor Emeritus

Publications

Publications (112)
Preprint
Full-text available
We present a new and powerful algebraic framework for graph rewriting, based on drags, a class of graphs enjoying a novel composition operator. Graphs are embellished with roots and sprouts, which can be wired together to form edges. Drags enjoy a rich algebraic structure with sums and products. Drag rewriting naturally extends graph rewriting, dag...
Chapter
Rewriting is an intentional model of computation which is inherently non-deterministic. Defining functions by rewriting requires to prove that the result of a given computation is unique for every input, a property called confluence. This chapter describes confluence criteria for first-order as well as higher-order, terminating rewriting computatio...
Article
Full-text available
Drags are a recent, natural generalization of terms which admit arbitrary cycles. A key aspect of drags is that they can be equipped with a composition operator so that rewriting amounts to replace a drag by another in a composition. In this paper, we develop a unification algorithm for drags that allows to check the local confluence property of a...
Article
Full-text available
User-defined higher-order rewrite rules are becoming a standard in proof assistants based on intuitionistic type theory. This raises the question of proving that they preserve the properties of beta-reductions for the corresponding type systems. In a series of papers, we develop techniques based on van Oostrom’s decreasing diagrams that reduce conf...
Article
In a previous work (Abstract data type systems, Theoret. Comput. Sci. 173 (2) (1997)), the last two authors presented a combined language made of a (strongly normalizing) algebraic rewrite system and a typed lambda-calculus enriched by pattern-matching definitions following a certain format, called the “General Schema”, which generalizes the usual...
Article
We investigate the new, Turing-complete class of layered systems, whose lefthand sides of rules can only be overlapped at a multiset of disjoint or equal positions. Layered systems define a natural notion of rank for terms: the maximal number of non-overlapping redexes along a path from the root to a leaf. Overlappings are allowed in finite or infi...
Conference Paper
Full-text available
We investigate a new, Turing-complete class of layered systems, whose linearized lefthand sides of rules can only be overlapped at the root position. Layered systems define a natural notion of rank for terms: the maximal number of redexes along a path from the root to a leaf. Overlappings are allowed in finite or infinite trees. Rules may be non-te...
Article
Full-text available
This paper aims at carrying out termination proofs for simply typed higher-order calculi automatically by using ordering comparisons. To this end, we introduce the computability path ordering (CPO), a recursive relation on terms obtained by lifting a precedence on function symbols. A first version, core CPO, is essentially obtained from the higher-...
Article
We extend the termination proof methods based on reduction orderings to higher-order rewriting systems based on higher-order pattern matching. We accommodate, on the one hand, a weakly polymorphic, algebraic extension of Church's simply typed λ-calculus and, on the other hand, any use of eta, as a reduction, as an expansion, or as an equation. The...
Conference Paper
Full-text available
Knuth and Bendix showed that confluence of a terminating first-order rewrite system can be reduced to the joinability of its finitely many critical pairs. We show that this is still true of a rewrite system Rt ∪ Rnt such that Rt is terminating and Rnt is a left-linear, rank non-increasing, possibly non-terminating rewrite system. Confluence can the...
Article
Full-text available
Scientific fields undergo successive phases of specialization and unification. The field of programming languages is in a phase of specialization. Among the main programming paradigms are imperative programming, functional programming, logic programming, object oriented programming, concurrent programming and distributed programming. Each of these...
Article
Full-text available
This paper builds on a fundamental notion of rewriting theory that characterizes confluence of a (binary) rewriting relation, Klop’s cofinal derivations. Cofinal derivations were used by van Oostrom to obtain another characterization of confluence of a rewriting relation via the existence of decreasing diagrams for all local peaks. In this paper, w...
Article
We prove a general purpose abstract Church-Rosser result that captures most existing such results that rely on termination of computations. This is achieved by studying abstract normal rewriting in a way that allows to incorporate positions at the abstract level. New concrete Church-Rosser results are obtained, in particular for higher-order rewrit...
Article
Full-text available
We study a complex type theory, a Calculus of Inductive Constructions with a predicative hierarchy of universes and a first-order theory T built in its conversion relation. The theory T is specified abstractly, by a set of constructors, a set of defined symbols, axioms expressing that constructors are free and defined symbols completely defined, an...
Conference Paper
Full-text available
We introduce parameterized rewrite systems for describing infinite families of finite string rewrite systems depending upon non-negative integer pa- rameters, as well as ways to reason uniformly over these families. Unlike previous work, the vocabulary on which a rewrite system in the family is built depends it- self on the integer parameters. Rewr...
Article
Full-text available
We describe a fully portable, open source certifier for traces of SAT problems produced by zChaff. It can also be easily adapted for MiniSat, PicoSat or BooleForce, and we have done it for PicoSat. Our certifier has been developped with the proof assistant Coq. We give some figures based on the pigeon hole, comparing both PicoSat and zChaff on the...
Conference Paper
Full-text available
We give a new elegant proof that decreasing diagrams imply confluence based on a proof reduction technique, which is then the basis of a novel completion method which proof-reduction relation transforms arbitrary proofs into rewrite proofs even in presence of non-terminating reductions. Unlike previous methods, no ordering of the set of terms is re...
Conference Paper
Full-text available
In this paper, we first briefly survey automated termination proof methods for higher-order calculi. We then concentrate on the higher-order recursive path ordering, for which we provide an improved definition, the Computability Path Ordering. This new definition appears indeed to capture the essence of computability arguments \`a la Tait and Girar...
Article
Full-text available
We investigate here a new version of the Calculus of Inductive Constructions (CIC) on which the proof assistant Coq is based: the Calculus of Congruent Inductive Constructions, which truly extends CIC by building in arbitrary first-order decision procedures: deduction is still in charge of the CIC kernel, while computation is outsourced to dedicate...
Article
Full-text available
In (19), Toyama proved that the union of two confluent term-rewriting systems that share absolutely no function symbols or constants is likewise con- fluent, a property called modularity. The proof of this beautiful modularity result, technically based on slicing terms into an homogeneous cap and a so called alien, possibly heterogeneous substituti...
Article
Full-text available
In [17], Toyama proved that the union of two confluent term-rewriting systems that share absolutely no function symbols or constants is likewise con-fluent, a property called modularity. The proof of this beautiful modularity result, technically based on slicing terms into an homogeneous cap and a so called alien, possibly heterogeneous substitutio...
Conference Paper
Full-text available
This paper provides a new, decidable definition of the higher- order recursive path ordering in which type comparisons are made only when needed, therefore eliminating the need for the computability clo- sure, and bound variables are handled explicitly, making it possible to handle recursors for arbitrary strictly positive inductive types.
Article
Full-text available
It is commonly agreed that the success of future proof assistants will rely on their ability to incorporate computations within deduction in order to mimic the mathematician when replacing the proof of a proposition P by the proof of an equivalent proposition P' obtained from P thanks to possibly complex calculations. In this paper, we investigate...
Article
Full-text available
This article extends the termination proof techniques based on reduction orderings to a higher-order setting, by defining a family of recursive path orderings for terms of a typed lambda-calculus generated by a signature of polymorphic higher-order function symbols. These relations can be generated from two given well-founded orderings, on the func...
Conference Paper
Full-text available
This paper is concerned with the foundations of the Calculus of Algebraic Constructions (CAC), an extension of the Calculus of Constructions by inductive data types. CAC generalizes inductive types equipped with higher-order primitive recursion, by providing definitions of functions by pattern-matching which capture recursor definitions for arbitra...
Conference Paper
Full-text available
Termination is a major question in both logic and computer science. In logic, termination is at the heart of proof theory where it is usually called strong normalization (of cut elimination). In computer science, termination has always been an important issue for showing programs correct. In the early days of logic, strong normalization was usually...
Conference Paper
In [12], Toyama proved that the union of two confluent term-rewriting systems that share absolutely no function symbols or constants is likewise confluent, a property called modularity. The proof of this beautiful modularity result, technically based on slicing terms into an homogeneous cap and a so called alien, possibly heterogeneous substitution...
Conference Paper
Full-text available
We extend the termination proof methods based on reduction orderings to higher-order rewriting systems à la Nipkow using higher-order pattern matching for firing rules, and accommodate for any use of eta, as a reduction, as an expansion or as an equation. As a main novelty, we provide with a mechanism for transforming any reduction ordering includi...
Chapter
Solving equations, also called unification, has made impressive progress during the past decade. Described as existentially quantified formulae over =, unification problems are usually transformed step by step until a solved form is reached from which a most general unifier can be obtained. Kirchner showed how to compute transformation rules for th...
Article
Full-text available
We describe an automatic complexity analysis mechanism for programs extracted from proofs carried out with the proof assistant Coq. By extraction, we mean the automatic generation of MiniML code [Pierre Letouzey. Programmation fonctionnelle certifiée – l'extraction de programmes dans l'asistant coq. Technical report, 2004]. By complexity analysis,...
Chapter
Full-text available
This paper extends the termination proof techniques based on rewrite orderings to a higher-order setting, by defining a recursive path ordering for simply typed higher-order terms in -long -normal form. This ordering is powerful enough to show termination of several complex examples.
Conference Paper
Full-text available
Rigorous program development is notoriously difficult because it involves many aspects, among which specification, programming, verification, code reuse, maintenance, and version management. Besides, these various tasks are interdependent, requiring going back and forth between them. In this paper, we are interested in certain language features and...
Conference Paper
The first RTA conference took place in Dijon, in 1985. This year, 2005, it takes place in Nara. Nara and Dijon share a glorious past but can be considered as being “Sleeping Beauties”, after the title of a book by the Nobel price novelist yasunari Kawabata. Is RTA sleeping on its glorious past? Back in the late 80s, many of us feared that this woul...
Conference Paper
Full-text available
Equations are ubiquitous in mathematics and in computer science as well. This first sentence of a survey on first-order rewriting borrowed again and again characterizes best the fundamental reason why rewriting, as a technology for processing equations, is so important in our discipline [10]. Here, we consider higher-order rewriting, that is, rewri...
Article
Full-text available
The goal of this paper is threefold : to revisit the definitions of order-preserving functionals, to make precise whether well-founded quasi-orderings and well quasi-orderings are closed under these functionals, and to provide with proofs which are simple enough to be taught to undergraduate students. It appears from the recent literature that some...
Article
Full-text available
Automated deduction in first-order logic finds almost all its roots in Herbrand’s work, starting with Herbrand’s interpretations, a clausal calculus, and rules for unification. J.A. Robinson’s key contribution was the formulation of resolution and its completeness proof, in which semantic trees were semi-apparent. Robinson and Wos introduced the sp...
Conference Paper
Full-text available
Verification is a hard task, but much progress has been achieved recently. Many verification problems have been shown decidable by reducing them to model-checking finite state transition systems. Verification of infinite state transition systems has achieved tremendous progress too, by showing that many particular cases were themselves decidable, s...
Article
In a previous work ("Abstract Data Type Systems", TCS 173(2), 1997), the leI two authors presented a combined lmbined made of a (strongl normal3zG9 alrmal rewrite system and a typed #-calA#Ik enriched by pattern-matching de#nitionsfolnitio a certain format,calat the "General Schema", whichgeneral39I theusual recursor de#nitions fornatural numbers a...
Article
Full-text available
Introduction Rewrite rules are increasingly used in programming languages and logical systems, with two main goals: defining functions by pattern matching; describing rule-based decision procedures. Our ambition is to develop for the higher-order/type case the kind of semi-automated termination proof techniques that are available for the first-orde...
Article
Full-text available
. Rewriting is a general paradigm for expressing computations in various logics, and we focus here on rewriting techniques in equational logic. When used at the proof level, rewriting provides with a very powerful methodology for proving completeness results, a technique that is illustrated here. We also consider whether important properties of rew...
Conference Paper
We presented lists of open problems in the theory of rewriting in the proceedings of the previous two conferences [36, 37]. We continue with that tradition this year. We give references to solutions to eleven problems from the previous lists, report on progress on several others, provide a few reformulations of old problems, and include ten new pro...
Conference Paper
Full-text available
Introduction Interest in the theory and applications of rewriting has been growing rapidly, as evidenced in part by four conference proceedings #including this one# #15, 26, 41,66#; three workshop proceedings #33, 47, 77#; #ve special journal issues #5,88, 24, 40, 67#; more than ten surveys #2,7,27, 28, 44, 56,57,76, 82, 81#; one edited collection...
Article
This paper is part of a long-term effort to increase expressiveness of algebraic specification languages while at the same time having a simple semantic basis on which efficient execution by rewriting and powerful theorem-proving tools can be based. In particular, our rewriting techniques provide semantic foundations for Maude's functional sublangu...
Article
Full-text available
This is an introduction to the philosophy and use of OBJ, emphasizing its oper-ational semantics, with aspects of its history and its logical semantics. Release 2 of OBJ3 is described in detail, with many examples. OBJ is a wide spectrum first-order functional language that is rigorously based on (order sorted) equational logic and parameterized pr...
Article
In a previous work (“Abstract Data Type Systems”, TCS 173(2), 1997), the last two authors presented a combined language made of a (strongly normalizing) algebraic rewrite system and a typed λ-calculus enriched by pattern-matching definitions following a certain format, called the “General Schema”, which generalizes the usual recursor definitions fo...
Conference Paper
Full-text available
This paper extends the termination proof techniques based on reduction orderings to a higher-order setting, by adapting the recursive path ordering definition to terms of a typed lambda-calculus generated by a signature of polymorphic higher-order function symbols. The obtained ordering is well-founded, compatible with p-reductions and with polymor...
Article
Full-text available
Many of the above ideas arose when discussing with people of the afore mentionned groups (Coq, Demons, Maude, PROTHEO), and especially with Gilles Dowek and Christine Paulin. Mitsuhiro Okada also deserves special thanks for introducing me to the Curry-Howard world, while I was introducing him to its Hurry-Coward counterpart.
Article
This paper extends the termination proof techniques based on rewrite orderings to a higher-order setting, by defining a recursive path ordering for simply typed higher-order terms in η-long β-normal form. This ordering is powerful enough to show termination of several complex examples.
Article
Full-text available
: This paper is concerned with the foundations of Inductive Data Type Systems, an extension of pure type systems by inductive data types. IDTS generalize (inductive) types equipped with primitive recursion of higher-type, by providing definitions of functions by pattern matching of a form which is general enough to capture recursor definitions for...
Article
This paper is concerned with the foundations of an extension of pure type systems by abstract data types, hence the name of Abstract Data Type Systems. ADTS generalize inductive types as they are defined in the calculus of constructions, by providing definitions of functions by pattern matching on the one hand, and relations among constructors of t...
Article
This paper is part of a long-term effort to increase expressiveness of algebraic specification languages while at the same time having a simple semantic foundation on which efficient execution by rewriting and powerful theorem-proving tools can be based. In particular, our rewriting techniques provide semantic foundations for Maude's functional sub...
Conference Paper
This work investigates inductive theorem proving techniques for first-order functions whose meaning and domains can be specified by Horn Clauses built up from the equality and finitely many unary membership predicates. In contrast with other works in the area, constructors are not assumed to be free. Techniques originating from tree automata are us...
Article
Full-text available
syntax trees, congruence laws and rewrite rules are used to define the semantics. A computation step is modeled as the application of a rewrite rule to an abstract syntax tree modulo structural congruence. Using the semantics, the critical interaction between sequential execution (including backtracking and cut pruning) and coroutining are made pre...
Article
Full-text available
. We compare two prominent decision procedures for propositional logic: Ordered Binary Decision Diagrams (obdds) and the DavisPutnam procedure. Experimental results indicate that the Davis-Putnam procedure outperforms obdds in hard constraint-satisfaction problems, while obdds are clearly superior for Boolean functional equivalence problems from th...
Article
This paper is concerned with the impact of stepwise development methodologies on prototyping.
Article
Full-text available
. Confluent term rewriting systems can be seen as a model for functional computations, in which redexes corresponding to instances of left hand sides of rules are repeatedly replaced by their corresponding right hand side instance. Lazy sequential strategies reduce a given redex in a term if and only if this redex must be reduced by any other seque...
Article
Full-text available
Constraints have become very popular during the last decade. Constraints allow to define sets of data by means of logical formulae. Our goal here is to survey the notion of constraint system and to give examples of constraint systems operating on various domains, such as natural, rational or real numbers, finite domains, and term domains. We classi...
Article
Solving equations in the free algebra T (F; X) (i.e. unification) uses the two rules: f(~s) = f( ~ t) ! ~s = ~ t (decomposition) and s[x] = x !? (occur-check). These two rules are not correct in quotients of T (F; X) by a finitely generated congruence =E . Following C. Kirchner, we first define classes of equational theories (called syntactic and c...
Article
Introduction We presented lists of open problems in the theory of rewriting in the proceedings of the previous two conferences [ 36; 37 ] . We continue with that tradition this year. We give references to solutions to eleven problems from the previous lists, report on progress on several others, provide a few reformulations of old problems, and inc...
Article
Completion Completion has recently been put in a more abstract framework [ Bachmair-et al, 1986 ] , an approach we adopt here. As in traditional proof theory (cf. [ Takeuti, 1987 ] ), proofs are reduced, in some well-founded sense, by replacing locally maximal subproofs with smaller ones, until a normal-form proof is obtained. In completion, the ax...
Article
Introduction Two years ago, in the proceedings of the previous conference, we presented a list of open problems in the theory of rewriting [ Dershowitz et al., 1991a ] . This time, we report on progress made during the intervening time, and then list some new problems. (A few additional questions on the subject appear in the back of [ Diekert, 1990...
Conference Paper
Full-text available
Confluent term rewriting systems can be seen as a model for functional computations, in which redexes corresponding to instances of left hand sides of rules are repeatedly replaced by their corresponding right hand side instance. Lazy sequential strategies reduce a given redex in a term if and only if this redex must be reduced by any other sequent...
Conference Paper
Without Abstract
Chapter
Two years ago, in the proceedings of the previous conference, we presented a list of open problems in the theory of rewriting [Dershowitz et al., 1991a]. This time, we report on progress made during the intervening time, and then list some new problems. (A few additional questions on the subject appear in the back of [Diekert, 1990].) We also menti...
Article
Rewriting with associativity, commutativity and identity has been an open problem for a long time. In 1989, Baird, Peterson and Wilkerson introduced the notion of constrained rewriting, to avoid the problem of nontermination inherent to the use of identities. We build up on this idea in two ways: by giving a complete set of rules for completion mod...
Conference Paper
Results for syntactic theories are generalized to shallow theories. The main technique used is the computation by ordered completion techniques of conservative extensions of the starting shallow presentation which are, respectively, ground convergent, syntactic, and cycle-syntactic. In all cases, the property that variables occur at depth at most o...
Article
obj is a declarative language, with mathematical semantics given by order-sorted equational logic and an operational semantics based on order-sorted term rewriting. obj also has user-definable abstract data types with mixfix syntax and a flexible type system that supports overloading and subtypes. In addition, obj has a powerful generic module mech...
Conference Paper
This paper surveys the use of rewriting for prototyping languages based on equations as are algebraic specifications. The option is to stress the variety of questions expressed as logical queries that can be solved by using rewriting techniques, without hiding the limitations of the method. Using rewriting itself as a specification language is inve...
Conference Paper
The combination of polymorphically typed lambda-calculi with first-order as well as higher-order rewrite rules is considered. The need of such a combination for exploiting the benefits of algebraically defined data types within functional programming is demonstrated. A general modularity result, which allows as particular cases primitive recursive...
Conference Paper
Conventional algebraic specifications are first-order. Using higher-order equations in combination with first-order ones raises several fundamental model-theoretic and proof-theoretic questions. The model theory of higher-order equations is well understood (see [20] for a survey of algebraic specifications). The proof theory of higher-order equatio...
Article
Appropriate notations are important for stating complex results in a way that can be easily understood. Oftentimes, notatin is crucial to carrying out correct and simple proofs. Our purpose here is to contribute to the development of good notations for term rewriting and related areas.
Conference Paper
Rewriting with associativity, commutativity and identity has been an open problem for a long time. In a recent paper [BPW89], Baird, Peterson and Wilkerson introduced the notion of constrained rewriting, to avoid the problem of non-termination inherent to the use of identities. We build up on this idea in two ways: by giving a complete set of rules...
Article
A complete unification algorithm is presented for the combination of two theories E in T(F,X) and E’ in T(F’,X) where F and F’ denote two disjoint sets of function symbols, E and E’ are arbitrary equational theories for which are given, for E: a complete unification algorithm for terms in T(F ∪ C,X), where C is a set of free constants and a complet...
Article
Inductionless induction consists of using pure equational reasoning for proving the validity of an equation in the initial algebra of a set of equational axioms, which would normally require some kind of induction. Under given hypotheses, the equation is valid iff adding it to the set of axioms does not result in an inconsistency. This inconsistenc...
Article
Inductionless induction consists of using pure equational reasoning for proving the validity of an equation in the initial algebra of a set of equational axioms, which would normally require some kind of induction. Under given hypotheses, the equation is valid iff adding it to the set of axioms does not result in an inconsistency. This inconsistenc...
Conference Paper
OBJ is a declarative language, with mathematical semantics given by order-sorted equational logic and an efficient operational semantics based on order-sorted term-rewriting. In addition, OBJ has a uniquely powerful generic module mechanism, including non-executable theories as well as executable objects, plus module expressions that describe and c...
Conference Paper
A complete unification algorithm is presented for the combination of two arbitrary equational theories E in T ( F , X ) and E <sup>1</sup> in T ( F ', X ), where F and F ' denote two disjoint sets of function symbols. The method adapts to unification of infinite trees. It is applied to two well-known open problems, when E is the theory of Boolean r...
Article
Church-Rosser properties are first presented, depending on an arbitrary relation R, an equivalence relation E and a reduction relation $R^E $ used to compute normal forms of R modulo E. Terminating rewriting systems operating on equational congruence classes of terms of a free algebra are then considered. In this framework, the Church–Rosser proper...
Conference Paper
We show how a programming language designer may embed the type structure of a programming language in the more robust type structure of the typed lambda calculus. This is done by translating programs of the language into terms of the typed lambda calculus. ...
Article
We give a construction of the smallest (for inclusion of sets) simplification ordering which contains a given pair (g,d) such that g is not embedded in d. The construction is simple but the proof is complex. As a consequence, we show that it is decidable to prove the termination of a rewrite rule g→d using a simplification ordering: it must be chec...
Conference Paper
The problem of termination of a set R of rules modulo a set E of equations, called E-termination problem, arises when trying to complete the set of rules in order to get a Church-Rosser property for the rules modulo the equations. We first show here that termination of the rewriting relation and E-termination are the same whenever the used rewritin...
Conference Paper
This paper proposes an expressional loop notation (XLoop) based on the ideas described in [16,17] which makes it practical to express loops as compositions of functions. The primary benefit of XLoop is that it brings the powerful metaphor of expressions ...
Conference Paper
Full-text available
ABSTRACT The well,known,Knuth and,Bendix completion ,proce­ dure,computes,a convergent,term,rewriting ,system from,a given,set,of equational,axioms.,This proce­ dure was extended to handle,mixed ,sets ,of rules and,equations,in order to deal ,with ,axioms,that cannot,be used,as rules without loosing the requi­ red,termination,property.,The develope...
Conference Paper
The well known Knuth and Bendix completion procedure computes a convergent term rewriting system from a given set of equational axioms. We describe here an abstract model of computation to handle the case where some axioms cannot be treated as rewrite rules without loosing the required termination property. We call Equational Term Rewriting Systems...
Article
After a fast survey of the field, we describe Summers methodology and its extensions, by the mean of an example. The theoretical foundations of the method are fully detailed, together with an essential remaining open problem. A particular application is pre sented: the derecursivation of program schemes.
Article
We propose two-well founded orderings on multisets that extend the Dershowitz-Manna ordering. Unlike the Dershowitz-Manna ordering, ours do not have a natural monotonicity property. This lack of monotonicity suggests using monotonicity to provide a new characterization of the Dershowitz-Manna ordering. Section 5 proposes an efficient and correct im...
Article
Full-text available
We study the unification and matching problems in the signed binary trees theory. We show that any equation tl1=t2 can be transformed into an equivalent one x=t. If x does not occur in t then (x > t) is the unique most general unifier in the theory (up to an isomorphism). We apply this technique to find recurrence relations between sets of terms. T...

Network

Cited By