Publications
Many of my publications are also indexed on DBLP.
2016
- [ISWC'16]
SPARQLGX: Efficient Distributed Evaluation of SPARQL with Apache Spark
(to appear)
2015
- [ICFP'15]
XQuery and Static Typing: Tackling the Problem of Backward Axes
[acm] [bib]
A static type-checker for XQuery programs, that improves the XQuery standard type system, by solving the long-standing problem of typing backward axes. The prototype jointly uses two solvers.
- [IJCAI'15]
Reasoning with Style
[bib] [slides]
How CSS files can be refactored automatically for speeding up web browsing.
- [IJCAI'15]
Expressive Logical Combinators For Free.
[bib] [slides]
Combinators form a succinct and expressive language without increasing complexity.
- [CIKM'15]
On Query-Update Independence for SPARQL
[bib]
- [TOPLAS'15]
A Logical Approach To Deciding Semantic Subtyping.
[bib]
How subtyping for very expressive types can be solved in EXPTIME by reduction to logical satisfiability.
- [TOCL'15]
Efficiently Deciding μ-calculus with Converse over Finite Trees.
[acm] [bib]
A satisfiability solver and some implementation secrets: try the system online.
- [IPIN'15]
A comparative analysis of attitude estimation for pedestrian navigation with smartphones.
[bib]
2014
- [TOIT'14]
Equipping IDEs with XML Path Reasoning Capabilities.
[bib]
We present the first development environment augmented with static detection of inconsistent XPath expressions for facilitating the development and debugging of web applications.
- [DE'14]
Automated Refactoring for Size Reduction of CSS stylesheets.
[bib]
2013
- [ISWC'13]
Evaluating and Benchmarking SPARQL Query Containment Solvers.
[bib]
We report on deciding SPARQL query containment with state-of-the-art logical solvers. (Nominee for best paper award).
- [WWW'13]
XML Validation: Looking Backward.
[acm] [hal] [bib]
XML Schemas and Schematron share the same logical foundations.
2012
- [WWW'12]
On the Analysis of Cascading Style Sheets.
[pdf] [hal] [bib]
We present a unique method for proving the absence of errors in CSS style sheets.
- [IJCAR'12]
SPARQL Query Containment under RDFS Entailment Regime.
[pdf] [hal] [bib]
We investigate query containment for a (P)SPARQL fragment extended with regular path expressions.
- [AAAI'12]
SPARQL Query Containment under SHI Axioms.
[pdf] [hal] [bib]
A novel and extensible approach to SPARQL query containment in the presence of schemas.
- [DE'12b]
Toward automated schema-directed code revision.
[acm] [hal] [bib]
- [DE'12a]
XML Query-Update Independence Analysis Revisited.
[acm] [hal] [bib]
We revisit Benedikt and Cheney's framework for query-update independence analysis and show that performance can be drastically enhanced using a reduction to mu-calculus satisfiability. Compared to previous works, our approach is (i) more expressive from a theoretical point of view, and (ii) more efficient in practice.
2011
- [ICFP'11]
Parametric Polymorphism and Semantic Subtyping: the Logical Connection.
[acm] [hal] [bib]
We consider a type algebra equipped with recursive, product, function, intersection, union, and complement types together with type variables and universal quantification over them. We consider the subtyping relation recently defined by Castagna and Xu between such type expressions and show how this relation can be decided in EXPTIME, answering an open question.
- [TOIT'11]
Impact of XML Schema Evolution.
[acm] [hal] [bib]
Effects of XML Schema changes on the validity of documents and on the evaluation of queries are formally investigated.
-
[IJCAI'11]
Query reasoning on trees with types, interleaving and counting.
[pdf] [hal] [bib]
This paper studies logical satisfiability for a fragment of XPath queries extended with (1) limits on the number of elements satisfying a property (i.e., counting) and (2) unordered elements (interleaving), in the presence of schemas.
-
[ICSE'11]
Inconsistent Path Detection for XML IDEs.
[acm] [hal] [bib]
The first IDE for XQuery extended with static detection of inconsistent XPath expressions is introduced for simplifying the development and debugging of any application involving XPath expressions.
-
[DBPL'11]
PSPARQL Query Containment.
[hal] [bib]
A method for comparing semantic web queries statically.
2010
-
[ICSE'10]
Eliminating Dead-Code from XQuery Programs.
[acm] [hal] [bib]
An XQuery IDE augmented with static analysis features for identifying and eliminating dead code automatically is introduced.
-
[WWW'10]
Debugging Standard Document Formats.
[acm] [hal] [bib]
A tool is presented for checking forward and backward compatibilities of XML Schemas and formally prove them. We believe this can be of great value for standardization bodies that define specifications using various XML type definition languages (such as W3C specifications), and are concerned with quality assurance for their normative recommendations.
-
[ICDE'10]
XML Reasoning Made Practical.
[hal] [ieee] [bib]
A tool for solving XPath query satisfiability, containment, and equivalence, in the presence of real-world XML Schemas is presented. It can be used in query optimizers, type-checkers, and optimizing compilers that need to perform compile-time analyses.
2009
-
[ICFP'09]
Identifying Query Incompatibilities with Evolving XML Schemas.
[acm] [hal] [bib]
A predicate language and tool are introduced for checking whether schema evolutions require a particular query to be updated. Whenever schema evolutions may induce query malfunctions, the system is able to generate annotated XML documents that exemplify bugs, with the goal of helping the programmer to understand and properly overcome undesired effects of schema evolutions.
- Logics for XML: reasoning about trees.
[amazon] [bib]
ISBN 978-3639193718. VDM Verlag. September 2009.
Book with the results presented in my PhD thesis.
-
[DE'09]
On the Analysis of Queries with Counting Constraints.
[acm] [hal] [bib]
The extension of a tree logic with a counting operator along regular path expressions involving upward and downward recursive navigation is discussed.
-
[PLAN-X'09]
Counting in Trees along Multidirectional Regular Paths.
[hal] [proceedings]
(preliminary version of the above DE'09 paper)
2008
- XML Reasoning Solver User Manual.In INRIA Research Report 6726, November 2008. Updated in June 2011. [hal] [bib]Documentation for using the XML reasoning solver in practice.
- Efficient Static Analysis of XML Paths and Types.In INRIA Research Report 6590, July 2008. [hal] [bib]Long version of the PLDI'07 paper (includes proofs, crucial implementation techniques for building a satisfiability-testing algorithm which performs well in practice, detailed descriptions of the algorithm, and formal explanations about an important property of the logic: cycle-freeness for formulas).
- Static Analysis of XML Programs.In ERCIM News, number 72: "The Future Web", 2008. [ercim] [bib](invited communication)
2007
-
[PLDI'07]
Efficient Static Analysis of XML Paths and Types.
[acm] [hal] [bib]
A new logic for reasoning over finite trees is proposed. This logic currently offers the best balance known between expressivity and complexity for decidability. It is as expressive as monadic second-order logic whereas its satisfiability is shown decidable in time complexity 2^O(n) w.r.t. size n of the formula. We present an effective algorithm in practice using symbolic techniques (BDDs), and use it for the static analysis of XPath queries in the presence of regular tree types, including XPath typing.
-
[PLAN-X'07]
XPath Typing Using a Modal Logic with Converse for Finite Trees.
[hal] [bib]
(preliminary version of the above PLDI'07 paper)
-
[DKE'07]
Deciding XPath Containment with MSO.
[elsevier] [hal] [bib]
Experiments are conducted with monadic second order logic (using the MONA system) in order to decide containment of XPath queries (e.g. whether or not for all XML trees the result of a regular query is always included in the result of another one).
2006
-
[TOIS'06]
A System for the Static Analysis of XPath.
[acm] [hal] [bib]
Major decision problems encountered in the static analysis of XPath (such as query containment, satisfiability, and overlap) are solved in the presence or absence of regular tree type constraints, by reduction to satisfiability of the alternation-free modal μ-calculus over graphs.
-
[DE'06]
Comparing XML Path Expressions.
[acm] [hal] [bib]
(preliminary version of the above TOIS'06 article)
2005
-
[DE'05]
Compiling XPath for Streaming Access Policy.
[acm] [hal] [bib] (preliminary version in the International Workshop on High Performance XML Processing 2004)
A method for refactoring XPath 1.0 expressions for stream-based evaluation purposes is presented. XPath is compiled into a state-less and forward only subset. This extends the normalization of XPath expressions into the Core language, as described by the W3C formal semantics draft.
2004
-
[DE'04]
Logic-Based XPath Optimization.
[acm] [hal] [bib]
(preliminary version in the International Workshop on High Performance XML Processing 2004)
This paper uses the containment relation over XPath expressions for optimization purposes. A set of rewriting rules is provided in order to eliminate redundancies and contradictions from XPath queries at compile-time.
-
[TPHOLs'04]
XPath Formal Semantics and Beyond: A Coq-Based Approach.
[hal] [bib]
This paper presents the calculus of inductive constructions (and especially the Coq proof assistant) as a framework for dealing with XPath formal semantics. An FO embedding of XPath is presented and its equivalence with XPath denotational semantics is formally proved. This gives a basis for simplifying the development of formal proofs involving XPath.
-
Compiling XPath into a State-Less and Forward-Only SubsetInternational Workshop on High Performance XML Processing 2004 [pdf] [hal] [bib]A method for refactoring XPath 1.0 expressions for stream-based evaluation purposes is presented. This extends the normalization of XPath expressions into the Core language, as described by the W3C formal semantics draft.
2003
-
Eliminating Context-State from XPath.Research Note (unpublished manuscript), October 2003. [pdf] [bib]This note explains how we can get rid of XPath context state references (such as position() and last()) by rewriting them into other XPath constructs. This allows implementing XPath evaluators that do not need to maintain any context state information.
-
[SMIL Europe'03]
Editing SMIL with Timelines.
[pdf] [bib]
Visual techniques for editing structured multimedia documents with SMIL and SVG animations are introduced, together with implementations of corresponding authoring systems.
Theses
- Static Analysis for Data-Centric Web Programming.HDR, Université Grenoble Alpes, November 2014.
- Logics for XML.PhD Thesis, Institut National Polytechnique de Grenoble, December 2006. [pdf] [hal] [bib]This thesis presents a new logic of finite trees adapted for XML, and its application to the static analysis of XML programming languages. The dissertation presents the investigations (using MSO, and the μ-calculus) that finally lead to the design of the logic and its satisfiability-testing algorithm. The dissertation also presents related symbolic techniques used for the solver implementation. This opens the way for a new class of static analyzers (more details).
Patents
- Optimization of XPath Expressions For Evaluation Upon Streaming XML Data, Kristoffer Rose and Pierre Genevès, IBM Research Patent, #20050257201, May 2004. This patent was awarded an IBM Invention Achievement Award in July 2004.