Jean-Pierre Jouannaud
Tsinghua University
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Jean-Pierre Jouannaud.
international colloquium on automata, languages and programming | 2009
Jean-Pierre Jouannaud; Vincent van Oostrom
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 required, but can be used if available. Unlike ordered completion, rewrite proofs are closed under instantiation. Examples are presented, including Kleenes and Huets classical examples showing that non-terminating local-confluent relations may not be confluent.
Theoretical Computer Science | 2012
Jean-Pierre Jouannaud; Jiaxiang Liu
This paper builds on a fundamental notion of rewriting theory that characterizes confluence of a (binary) rewriting relation, Klops 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, we show that cofinal derivations can be used to give a new, concise proof of Toyamas celebrated modularity theorem and its recent extensions to rewriting modulo in the case of strongly-coherent systems, an assumption discussed in depth here. This is done by generalizing cofinal derivations to cofinal streams, allowing us in turn to generalize van Oostroms result to the modulo case.
rewriting techniques and applications | 2014
Jiaxiang Liu; Nachum Dershowitz; Jean-Pierre Jouannaud
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 ({R_{textit{T}}} cup{R_{textit{NT}}} ) such that (R_{textit{T}}) is terminating and (R_{textit{NT}}) is a left-linear, rank non-increasing, possibly non-terminating rewrite system. Confluence can then be reduced to the joinability of the critical pairs of (R_{textit{T}}) and to the existence of decreasing diagrams for the critical pairs of (R_{textit{T}}) inside (R_{textit{NT}}) as well as for the rigid parallel critical pairs of (R_{textit{NT}}).
Specification, Algebra, and Software | 2014
Jiaxiang Liu; Jean-Pierre Jouannaud
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 fields is further specialized. For example, there are many different paradigms for functional programming: LISP, Mac Carthy’s original functional programming paradigm based on pure lambda-calculus for lists enriched with recursion; ML, Milner’s paradigm based on a typed lambda-calculus enriched with data types, a let construct and recursion which has become a standard; O’Donnel’s paradigm based on orthogonal rewriting; and OBJ, Goguen’s paradigm based on terminating rewriting in first-order algebra to cite a few. Similarly, logic programming has given rise to constraint logic programming, as well as query languages for data bases. Bridges have also been built across these programming languages: OCaml is a functional programming language with modules, objects, inheritance, and more [18]. MAUDE is a functional, rewriting-based, programming language supporting concurrency [16]. Similar to MAUDE, CafeOBJ [3] supports in addition behavioural descriptions [17]. Functional, logic and constraint programming coexist in CoqMT [20]. Bridges have also been built at the more abstract level of programming paradigms. For one example, Kirchner’s rho-calculus is an attempt to unify lambdacalculus and rewriting [12]. Meseguer’s rewriting logic can be seen as an
international conference on logic programming | 2010
Jean-Pierre Jouannaud; Benjamin Monate
We introduce parameterized rewrite systems for describing infinite families of finite string rewrite systems depending upon non-negative integer parameters, 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 itself on the integer parameters. Rewriting makes use of a toolkit for parameterized words which allows to describe a rewrite step made independently by all systems in an infinite family by a single, effective parameterized rewrite step. The main result is a confluence test for all systems in a family at once, based on a critical pair lemma classically based on computing finitely many overlaps between left-hand sides of parameterized rules and then checking for their joinability (which decidability is not garanteed).
2009 IEEE International Workshop on Open-source Software for Scientific Computation (OSSC) | 2009
Jean-Pierre Jouannaud
The purpose of this talk is to stress the difficulties with writing correct software, and introduce a now mature technology used in various industrial areas which is based in part on open source certification software developped worldwide. WHY is software correctness a difficult problem and open source software a wise choice for developping program verifiers, WHICH programs can be cured thanks to this technology, and HOW can open source software find its place in industrial applications.
Handbook of theoretical computer science (vol. B) | 1991
Nachum Dershowitz; Jean-Pierre Jouannaud
Archive | 1989
Nachum Dershowitz; Jean-Pierre Jouannaud
Department of Computer Science [CS] | 1991
Nachum Dershowitz; Jean-Pierre Jouannaud; Jan Willem Klop
Archive | 2011
Jean-Pierre Jouannaud; Zhong Shao