VLDB 2026 Research / reviewers in the wild / expert
Vincent Jugé
dblp:01/11110
· DBLP profile ↗
17ranked-venue papers
6as first author
10since 2021 · last 2025
0000-0003-0834-9082ORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Theory of computation · 14 · 5 first-author · 8 since 2021Graphics, computer vision, multimedia, augmented reality and games · 2 · 1 first-author · 2 since 2021Security and privacy · 1Software engineering, systems software and programming languages · 1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2025 | Efficient Top-Down Updates in AVL Trees
Vincent Jugé |
ESA | 1 |
| 2025 | Grandchildren-Weight-Balanced Binary Search TreesabstractWe revisit weight-balanced trees, also known as trees of bounded balance. Invented by Nievergelt and Reingold in 1972, these trees are obtained by assigning a weight to each node and requesting that the weight of each node should be quite larger than the weights of its children, the precise meaning of "quite larger" depending on a real-valued parameter γ. Blum and Mehlhorn then showed how to maintain them in a recursive (bottom-up) fashion when 2/11 ⩽ γ ⩽ 1-1/√2, their algorithm requiring only an amortised constant number of tree rebalancing operations per update (insertion or deletion). Later, in 1993, Lai and Wood proposed a top-down procedure for updating these trees when 2/11 ⩽ γ ⩽ 1/4. Our contribution is two-fold. First, we strengthen the requirements of Nievergelt and Reingold, by also requesting that each node should have a substantially larger weight than its grandchildren, thereby obtaining what we call grandchildren-balanced trees. Grandchildren-balanced trees are not harder to maintain than weight-balanced trees, but enjoy a smaller node depth, both in the worst case (with a 6 % decrease) and on average (with a 1.6 % decrease). In particular, unlike standard weight-balanced trees, all grandchildren-balanced trees with n nodes are of height less than 2 log₂(n). Second, we adapt the algorithm of Lai and Wood to all weight-balanced trees, i.e., to all parameter values γ such that 2/11 ⩽ γ ⩽ 1-1/√2. More precisely, we adapt it to all grandchildren-balanced trees for which 1/4 < γ ⩽ 1 - 1/√2. Finally, we show that, except in limit cases (where, for instance, γ = 1 - 1/√2), all these algorithms result in making a constant amortised number of tree rebalancing operations per tree update. Vincent Jugé |
WADS | 1 |
| 2025 | Galloping in Fast-Growth Natural Merge Sorts
Elahe Ghasemi, Vincent Jugé, Ghazal Khalighinejad, Helia Yazdanyar |
Algorithmica | 2 |
| 2025 | Correction: Galloping in Fast-Growth Natural Merge Sorts
Elahe Ghasemi, Vincent Jugé, Ghazal Khalighinejad, Helia Yazdanyar |
Algorithmica | 2 |
| 2024 | The Alternating Normal Form of Braids and Its Minimal Automaton
Vincent Jugé, June Roupin |
AofA | 1 |
| 2024 | Adaptive Shivers Sort: An Alternative Sorting AlgorithmabstractWe present a new sorting algorithm, called adaptive ShiversSort , that exploits the existence of monotonic runs for sorting efficiently partially sorted data. This algorithm is a variant of the well-known algorithm TimSort , which is the sorting algorithm used in standard libraries of programming languages, such as Python or Java (for non-primitive types). More precisely, adaptive ShiversSort is a so-called \(k\) -aware merge-sort algorithm, a class that captures ‘ TimSort -like’ algorithms and that was introduced by Buss and Knop. In this article, we prove that, although adaptive ShiversSort is simple to implement and differs only slightly from TimSort , its computational cost, in number of comparisons performed, is optimal within the class of natural merge-sort algorithms, up to a small additive linear term. This makes adaptive ShiversSort the first \(k\) -aware algorithm to benefit from this property, which is also a 33% improvement over TimSort 's worst-case. This suggests that adaptive ShiversSort could be a strong contender for being used instead of TimSort . Then, we investigate the optimality of \(k\) -aware algorithms. We give lower and upper bounds on the best approximation factors of such algorithms, compared to optimal stable natural merge-sort algorithms. In particular, we design generalisations of adaptive ShiversSort whose computational costs are optimal up to arbitrarily small multiplicative factors. Vincent Jugé |
ACM Trans. Algorithms | 1 |
| 2023 | On shuffled-square-free words
Laurent Bulteau, Vincent Jugé, Stéphane Vialette |
Theor. Comput. Sci. | 2 |
| 2022 | Permutation Pattern Matching for Doubly Partially Ordered PatternsabstractWe study in this paper the Doubly Partially Ordered Pattern Matching (or DPOP Matching) problem, a natural extension of the Permutation Pattern Matching problem. Permutation Pattern Matching takes as input two permutations σ and π, and asks whether there exists an occurrence of σ in π; whereas DPOP Matching takes two partial orders P_v and P_p defined on the same set X and a permutation π, and asks whether there exist |X| elements in π whose values (resp., positions) are in accordance with P_v (resp., P_p). Posets P_v and P_p aim at relaxing the conditions formerly imposed by the permutation σ, since σ yields a total order on both positions and values. Our problem being NP-hard in general (as Permutation Pattern Matching is), we consider restrictions on several parameters/properties of the input, e.g., bounding the size of the pattern, assuming symmetry of the posets (i.e., P_v and P_p are identical), assuming that one partial order is a total (resp., weak) order, bounding the length of the longest chain/anti-chain in the posets, or forbidding specific patterns in π. For each such restriction, we provide results which together give a(n almost) complete landscape for the algorithmic complexity of the problem. Laurent Bulteau, Guillaume Fertin, Vincent Jugé, Stéphane Vialette |
CPM | 3 |
| 2022 | Reduction Ratio of the IS-Algorithm: Worst and Random CasesabstractInternational audience Vincent Jugé |
CPM | 1 |
| 2022 | Galloping in Fast-Growth Natural Merge SortsabstractWe study the impact of merging routines in merge-based sorting algorithms. More precisely, we focus on the galloping routine that TimSort uses to merge monotonic sub-arrays, hereafter called runs, and on the impact on the number of element comparisons performed if one uses this routine instead of a naïve merging routine. This routine was introduced in order to make TimSort more efficient on arrays with few distinct values. Alas, we prove that, although it makes TimSort sort array with two values in linear time, it does not prevent TimSort from requiring up to $Θ(n \log(n))$ element comparisons to sort arrays of length~$n$ with three distinct values. However, we also prove that slightly modifying TimSort's galloping routine results in requiring only $\mathcal{O}(n + n \log(σ))$ element comparisons in the worst case, when sorting arrays of length $n$ with $σ$ distinct values. We do so by focusing on the notion of dual runs, which was introduced in the 1990s, and on the associated dual run-length entropy. This notion is both related to the number of distinct values and to the number of runs in an array, which came with its own run-length entropy that was used to explain TimSort's otherwise "supernatural" efficiency. We also introduce new notions of fast- and middle-growth for natural merge sorts (i.e., algorithms based on merging runs), which are found in several merge sorting algorithms similar to TimSort. We prove that algorithms with the fast- or middle-growth property, provided that they use our variant of TimSort's galloping routine for merging runs, are as efficient as possible at sorting arrays with low run-induced or dual-run-induced complexities. Elahe Ghasemi, Vincent Jugé, Ghazal Khalighinejad |
ICALP | 2 |
| 2020 | Adaptive Shivers Sort: An Alternative Sorting AlgorithmabstractWe present a new sorting algorithm, called adaptive ShiversSort, that exploits the existence of monotonic runs for sorting efficiently partially sorted data. This algorithm is a variant of the well-known algorithm TimSort, which is the sorting algorithm used in standard libraries of programming languages such as Python or Java (for non-primitive types). More precisely, adaptive ShiversSort is a so-called k-aware merge-sort algorithm, a class that was introduced by Buss and Knop that captures “TimSort-like” algorithms. In this article, we prove that, although adaptive ShiversSort is simple to implement and differs only slightly from TimSort, its computational cost, in number of comparisons performed, is optimal within the class of natural merge-sort algorithms, up to a small additive linear term: this makes adaptive ShiversSort the first k-aware algorithm to benefit from this property, which is also a 33% improvement over TimSort's worst-case. This suggests that adaptive ShiversSort could be a strong contender for being used instead of TimSort. Then, we investigate the optimality of k-aware algorithms: we give lower and upper bounds on the best approximation factors of such algorithms, compared to optimal stable natural merge-sort algorithms. In particular, we design generalisations of adaptive ShiversSort whose computational costs are optimal up to arbitrarily small multiplicative factors. Vincent Jugé |
SODA | 1 |
| 2019 | Timed Systems through the Lens of LogicabstractIn this paper, we analyze timed systems with data structures. We start by describing behaviors of timed systems using graphs with timing constraints. Such a graph is called realizable if we can assign time-stamps to nodes or events so that they are consistent with the timing constraints. The logical definability of several graph properties [20], [10] has been a challenging problem, and we show, using a highly nontrivial argument, that the realizability property for collections of graphs with strict timing constraints is logically definable in a class of propositional dynamic logic (EQ-ICPDL), which is strictly contained in MSO. Using this result, we propose a novel, algorithmically efficient and uniform proof technique for the analysis of timed systems enriched with auxiliary data structures, like stacks and queues. Our technique unravels new results (for emptiness checking as well as model checking) for timed systems with richer features than considered so far, while also recovering existing results. S. Akshay 0001, Paul Gastin, Vincent Jugé, S. Krishna 0004 |
LICS | 3 |
| 2018 | Finite Bisimulations for Dynamical Systems with Overlapping TrajectoriesabstractHaving a finite bisimulation is a good feature for a dynamical system, since it can lead to the decidability of the verification of reachability properties. We investigate a new class of o-minimal dynamical systems with very general flows, where the classical restrictions on trajectory intersections are partly lifted. We identify conditions, that we call Finite and Uniform Crossing: When Finite Crossing holds, the time-abstract bisimulation is computable and, under the stronger Uniform Crossing assumption, this bisimulation is finite and definable. Béatrice Bérard, Patricia Bouyer, Vincent Jugé |
CSL | 3 |
| 2018 | On the Worst-Case Complexity of TimSortabstractTimSort is an intriguing sorting algorithm designed in 2002 for Python, whose worst-case complexity was announced, but not proved until our recent preprint. In fact, there are two slightly different versions of TimSort that are currently implemented in Python and in Java respectively. We propose a pedagogical and insightful proof that the Python version runs in O(n log n). The approach we use in the analysis also applies to the Java version, although not without very involved technical details. As a byproduct of our study, we uncover a bug in the Java implementation that can cause the sorting method to fail during the execution. We also give a proof that Python's TimSort running time is in O(n + n log rho), where rho is the number of runs (i.e. maximal monotonic sequences), which is quite a natural parameter here and part of the explanation for the good behavior of TimSort on partially sorted inputs. Nicolas Auger, Vincent Jugé, Cyril Nicaud, Carine Pivoteau |
ESA | 2 |
| 2017 | Unbounded Product-Form Petri NetsabstractComputing steady-state distributions in infinite-state stochastic systems is in general a very difficult task. Product-form Petri nets are those Petri nets for which the steady-state distribution can be described as a natural product corresponding, up to a normalising constant, to an exponentiation of the markings. However, even though some classes of nets are known to have a product-form distribution, computing the normalising constant can be hard. The class of (closed) \Pi^3-nets has been proposed in an earlier work, for which it is shown that one can compute the steady-state distribution efficiently. However these nets are bounded. In this paper, we generalise queuing Markovian networks and closed \Pi^3-nets to obtain the class of open \Pi^3-nets, that generate infinite-state systems. We show interesting properties of these nets: (1) we prove that liveness can be decided in polynomial time, and that reachability in live \Pi^3-nets can be decided in polynomial time; (2) we show that we can decide ergodicity of such nets in polynomial time as well; (3) we provide a pseudo-polynomial time algorithm to compute the normalising constant. Patricia Bouyer, Serge Haddad, Vincent Jugé |
CONCUR | 3 |
| 2017 | Dynamic Complexity of the Dyck Reachability
Patricia Bouyer, Vincent Jugé |
FoSSaCS | 2 |
| 2013 | Enforceable Security Policies RevisitedabstractWe revisit Schneider’s work on policy enforcement by execution monitoring. We overcome limitations of Schneider’s setting by distinguishing between system actions that are controllable by an enforcement mechanism and those actions that are only observable, that is, the enforcement mechanism sees them but cannot prevent their execution. For this refined setting, we give necessary and sufficient conditions on when a security policy is enforceable. To state these conditions, we generalize the standard notion of safety properties. Our classification of system actions also allows one, for example, to reason about the enforceability of policies that involve timing constraints. Furthermore, for different specification languages, we investigate the decision problem of whether a given policy is enforceable. We provide complexity results and show how to synthesize an enforcement mechanism from an enforceable policy. David A. Basin, Vincent Jugé, Felix Klaedtke, Eugen Zalinescu |
ACM Trans. Inf. Syst. Secur. | 2 |