César Rodríguez

dblp:74/9958 · DBLP profile ↗
← Back
14ranked-venue papers
5as first author
1since 2021 · last 2021
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Theory of computation · 10 · 3 first-author · 1 since 2021Software engineering, systems software and programming languages · 6 · 1 first-authorSystems, architecture and hardware · 1
YearPublicationVenuePosition
2021 Quasi-optimal partial order reduction
Camille Coti, Laure Petrucci, César Rodríguez, Marcelo Sousa
Formal Methods Syst. Des.3
2020 Symbolic Partial-Order Execution for Testing Multi-Threaded Programs
abstract
We describe a technique for systematic testing of multi-threaded programs. We combine Quasi-Optimal Partial-Order Reduction, a state-of-the-art technique that tackles path explosion due to interleaving non-determinism, with symbolic execution to handle data non-determinism. Our technique iteratively and exhaustively finds all executions of the program. It represents program executions using partial orders and finds the next execution using an underlying unfolding semantics. We avoid the exploration of redundant program traces using cutoff events. We implemented our technique as an extension of KLEE and evaluated it on a set of large multi-threaded C programs. Our experiments found several previously undiscovered bugs and undefined behaviors in memcached and GNU sort, showing that the new method is capable of finding bugs in industrial-size benchmarks.
Daniel Schemmel, Julian Büning, César Rodríguez, David Laprell, Klaus Wehrle
CAV (1)3
2018 Quasi-Optimal Partial Order Reduction
abstract
A dynamic partial order reduction (DPOR) algorithm is optimal when it always explores at most one representative per Mazurkiewicz trace. Existing literature suggests that the reduction obtained by the non-optimal, state-of-the-art Source-DPOR (SDPOR) algorithm is comparable to optimal DPOR. We show the first program with $$\mathop {\mathcal {O}} (n)$$ Mazurkiewicz traces where SDPOR explores $$\mathop {\mathcal {O}} (2^n)$$ redundant schedules (as this paper was under review, we were made aware of the recent publication of another paper [3] which contains an independently-discovered example program with the same characteristics). We furthermore identify the cause of this blow-up as an NP-hard problem. Our main contribution is a new approach, called Quasi-Optimal POR, that can arbitrarily approximate an optimal exploration using a provided constant k. We present an implementation of our method in a new tool called Dpu using specialised data structures. Experiments with Dpu, including Debian packages, show that optimality is achieved with low values of k, outperforming state-of-the-art tools.
Huyen T. T. Nguyen, César Rodríguez, Marcelo Sousa, Camille Coti, Laure Petrucci
CAV (2)2
2018 Dynamic Symbolic Verification of MPI Programs
Dhriti Khanna, Subodh Sharma 0001, César Rodríguez, Rahul Purandare
FM3
2017 Abstract Interpretation with Unfoldings
Marcelo Sousa, César Rodríguez, Vijay Victor D'Silva, Daniel Kroening
CAV (2)2
2017 Preserving Partial-Order Runs in Parametric Time Petri Nets
abstract
Parameter synthesis for timed systems aims at deriving parameter valuations satisfying a given property. In this article, we target concurrent systems. We use partial-order semantics for parametric time Petri nets as a way to both cope with the well-known state-space explosion due to concurrency and significantly enhance the result of an existing synthesis algorithm. Given a reference parameter valuation, our approach synthesizes other valuations preserving the partial-order executions of the reference parameter valuation. We show the applicability of our approach using a tool applied to asynchronous circuits.
Étienne André 0001, Thomas Chatain, César Rodríguez
ACM Trans. Embed. Comput. Syst.3
2015 Unfolding-Based Process Discovery
Hernán Ponce de León, César Rodríguez, Josep Carmona 0001, Keijo Heljanko, Stefan Haar
ATVA2
2015 Unfolding-based Partial Order Reduction
abstract
Partial order reduction (POR) and net unfoldings are two alternative methods to tackle state-space explosion caused by concurrency. In this paper, we propose the combination of both approaches in an effort to combine their strengths. We first define, for an abstract execution model, unfolding semantics parameterized over an arbitrary independence relation. Based on it, our main contribution is a novel stateless POR algorithm that explores at most one execution per Mazurkiewicz trace, and in general, can explore exponentially fewer, thus achieving a form of super-optimality. Furthermore, our unfolding-based POR copes with non-terminating executions and incorporates state caching. On benchmarks with busy-waits, among others, our experiments show a dramatic reduction in the number of executions when compared to a state-of-the-art DPOR.
César Rodríguez, Marcelo Sousa, Subodh Sharma 0001, Daniel Kroening
CONCUR1
2013 Contextual Merged Processes
César Rodríguez, Stefan Schwoon, Victor Khomenko
Petri Nets1
2013 Cunf: A Tool for Unfolding and Verifying Petri Nets with Read Arcs
César Rodríguez, Stefan Schwoon
ATVA1
2012 Verification of Petri Nets with Read Arcs
César Rodríguez, Stefan Schwoon
CONCUR1
2012 Efficient unfolding of contextual Petri nets
Paolo Baldan, Alessandro Bruni, Andrea Corradini 0001, Barbara König 0001, César Rodríguez, Stefan Schwoon
Theor. Comput. Sci.5
2011 Efficient Contextual Unfolding
César Rodríguez, Stefan Schwoon, Paolo Baldan
CONCUR1
1999 Effectively Computation of Some Radicals of Submodules of Free Modules
Agustín Marcelo, Félix Marcelo, César Rodríguez
CASC3