Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Christophe Joubert is active.

Publication


Featured researches published by Christophe Joubert.


tools and algorithms for construction and analysis of systems | 2005

BISIMULATOR: a modular tool for on-the-fly equivalence checking

Damien Bergamini; Nicolas Descoubes; Christophe Joubert; Radu Mateescu

The equivalence checking problem consists in verifying that a system (e.g., a protocol) matches its abstract specification (e.g., a service) by comparing their Labeled Transition Systems (Ltss) modulo a given equivalence relation. Two approaches are traditionally used to perform equivalence checking: global verification requires to construct the two Ltss before comparison, whereas local (or on-the-fly) verification allows to explore them incrementally during comparison. The latter approach is able to detect errors even in prohibitively large systems, and therefore reveals more effective in combating state explosion.


international workshop on model checking software | 2006

Distributed on-the-fly model checking and test case generation

Christophe Joubert; Radu Mateescu

The explicit-state analysis of concurrent systems must handle large state spaces, which correspond to realistic systems containing many parallel processes and complex data structures. In this paper, we combine the on-the-fly approach (incremental construction of the state space) and the distributed approach (state space exploration using several machines connected by a network) in order to increase the computing power of analysis tools. To achieve this, we propose Mb-DSolve, a new algorithm for distributed on-the-fly resolution of multiple block, alternation-free boolean equation systems (Bess).First, we apply Mb-DSolve to perform distributed on-the-fly model checking of alternation-free modal μ-calculus, using the standard encoding of the problem as a Bes resolution. The speedup and memory consumption obtained on large state spaces improve over previously published approaches based on game graphs. Next, we propose an encoding of the conformance test case generation problem as a Bes resolution from which a diagnostic representing the complete test graph (Ctg) is built. By applying Mb-DSolve, we obtain a distributed on-the-fly test case generator whose capabilities scale up smoothly w.r.t. well-established existing sequential tools.


tools and algorithms for construction and analysis of systems | 2006

DISTRIBUTOR and BCG_MERGE: tools for distributed explicit state space generation

Hubert Garavel; Radu Mateescu; Damien Bergamini; Adrian Curic; Nicolas Descoubes; Christophe Joubert; Irina Smarandache-Sturm; Gilles Stragier

The explicit-state verification of complex concurrent systems, whose underlying state spaces may be prohibitively large, requires an important amount of memory and computation time. Although explicit state space generation is known to be exponential as the number of concurrent processes in the system increases, it is tempting to push forward the capabilities of verification tools by exploiting the computing resources (memory and processors) of massively parallel machines, such as clusters and grids.


leveraging applications of formal methods | 2006

Implementing Influence Analysis Using Parameterised Boolean Equation Systems

María del Mar Gallardo; Christophe Joubert; Pedro Merino

The well-known problem of state space explosion in model checking is even more critical when applying this technique to programming languages, mainly due to the presence of complex data structures. One recent and promising approach to deal with this problem is the construction of an abstract and correct representation of the global program state allowing to match visited states during program model exploration. In particular, one powerful method to implement abstract matching is to fill the state vector with a minimal amount of relevant variables for each program point. In this paper, we combine the on-the-fly model checking approach (incremental construction of the program state space) and the static analysis method called influence analysis (extraction of significant variables for each program point) in order to automatically construct an abstract matching function. Firstly, we describe the problem as an alternation-free value-based mu-calculus formula, whose validity can be checked on the program model expressed as a labeled transition system (LTS). Secondly, we translate the analysis into the local resolution of a parameterised Boolean equation system (PBES), whose representation enables a more efficient construction of the resulting abstract matching function. Finally, we show how our proposal has been elegantly integrated into CADP, a generic framework for both the design and analysis of distributed systems and the development of verification tools.


international conference on datalog in academia and industry | 2010

Datalog-Based program analysis with BES and RWL

María Alpuente; Marco A. Feliú; Christophe Joubert; Alicia Villanueva

This paper describes two techniques for Datalog query evaluation and their application to object-oriented program analysis. The first technique transforms Datalog programs into an implicit Boolean Equation System (Bes) that can then be solved by using linear-time complexity algorithms that are available in existing, general purpose verification toolboxes such as Cadp. In order to improve scalability and to enable analyses involving advanced meta-programming features, we develop a second methodology that transforms Datalog programs into rewriting logic (Rwl) theories. This method takes advantage of the preeminent features and facilities that are available within the high-performance system Maude, which provides a very efficient implementation of Rwl. We provide evidence of the practicality of both approaches by reporting on some experiments with a number of real-world Datalog-based analyses.


parallel, distributed and network-based processing | 2005

Distributed local resolution of Boolean equation systems

Christophe Joubert; Radu Mateescu

Boolean equation systems (BESs) allow to represent various problems encountered in the area of propositional logic programming and verification of concurrent systems. Several sequential algorithms for global and local BES resolution have been proposed so far, mainly in the field of verification; however, these algorithms do not scale up satisfactorily as the size of BESs increases. In this paper, we propose a distributed algorithm, called DSOLVE, which performs the local resolution of a BES using a set of machines connected by a network. Our experiments for solving large BESs using clusters of PCs show linear speedups and a scalable behaviour of DSOLVE w.r.t. its sequential counterpart.


formal methods for industrial critical systems | 2009

Using Datalog and Boolean Equation Systems for Program Analysis

Mar ´ õa Alpuente; Marco A. Feliú; Christophe Joubert; Alicia Villanueva

This paper describes a powerful, fully automated method to evaluate Datalog queries by using Boolean Equation Systems (Bess), and its application to object-oriented program analysis. Datalog is used as a specification language for expressing complex interprocedural program analyses involving dynamically created objects. In our methodology, Datalog rules encoding a particular analysis together with a set of constraints (Datalog facts that are automatically extracted from program source code) are dynamically transformed into a Bes, whose local resolution corresponds to the demand-driven evaluation of the program analysis. This approach allows us to reuse existing general purpose verification toolboxes, such as Cadp, providing local Bes resolutions with linear-time complexity. Our evaluation technique has been implemented and successfully tested on several Java programs and Datalog analyses that demonstrate the feasibility of our approach.


Electronic Notes in Theoretical Computer Science | 2005

Distributed On-the-Fly Equivalence Checking

Christophe Joubert; Radu Mateescu

On-the-fly equivalence checking consists in comparing two Labeled Transition Systems (Ltss) modulo a given equivalence relation by exploring them in a demand-driven way. Since it avoids the explicit construction of Ltss, this method is able to detect errors even in systems that are too large to fit in the memory of a computer. In this paper, we aim at further improving the performance of on-the-fly equivalence checking using several machines connected by a network. We propose DSolve, a new algorithm for distributed on-the-fly resolution of Boolean Equation Systems (Bess), which enables equivalence checking modulo various relations characterized in terms of Bess. DSolve serves as verification engine for the distributed version of Bisimulator, an on-the-fly equivalence checker developed within the Cadp verification toolbox using the Open/Caesar environment. Our experimental measures show quasi-linear speedups and a good scalability of the distributed version of Bisimulator w.r.t. its sequential version.


logic based program synthesis and transformation | 2009

Defining datalog in rewriting logic

María Alpuente; Marco A. Feliú; Christophe Joubert; Alicia Villanueva

In recent work, the effectiveness of using declarative languages has been demonstrated for many problems in program analysis. Using a simple relational query language, like Datalog, complex interprocedural analyses involving dynamically created objects can be expressed in just a few lines. By exploiting the power of the Rewriting Logic language Maude, we aim at transforming Datalog programs into efficient rewrite systems that compute the same answers. A prototype has been implemented and applied to some real-world Datalog-based analyses. Experimental results show that the performance of solving Datalog queries in rewriting logic is comparable to state-of-the-art Datalog solvers.


international conference on engineering of complex computer systems | 2007

On-the-fly model checking for C programs with extended CADP in FMICS-jETI

M. del Mar Gallardo; Pedro Merino; David Sanán; Christophe Joubert

A current trend in the software engineering community is to integrate different tools in a friendly and powerful development environment for use by final users. This is also the case for tools based on formal methods, which are very valuable for increasing confidence in the reliability of software. This paper contributes to one promising approach to make this integration possible, the project FMICS-jETI. This project aims to obtain an active repository of tools based on formal methods in such a way that users can access and combine all the tools simply by defining a graph with the tools and the files they manage. In particular, the paper explains how two new modules of the well known toolset CADP are added to FMICS-jETI. These new modules, named C.Open and Annotator extend Cadp with functions to manage C programs in this toolset.

Collaboration


Dive into the Christophe Joubert's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar

María Alpuente

Polytechnic University of Valencia

View shared research outputs
Top Co-Authors

Avatar

Marco A. Feliú

Polytechnic University of Valencia

View shared research outputs
Top Co-Authors

Avatar

Alicia Villanueva

Polytechnic University of Valencia

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Byron Cook

University College London

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge