EDBT 2026 Demo / reviewers in the wild / expert
Jules Villard
dblp:79/6376
· DBLP profile ↗
13ranked-venue papers
2as first author
1since 2021 · last 2022
0000-0001-8637-0712ORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 9 · 2 first-author · 1 since 2021Theory of computation · 4Systems, architecture and hardware · 1
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Software engineering, system software, and programming languages
4 papers |
Program verification · 53% Program analysis · 46% Programming languages and type systems · 1% | |
| Theoretical computer science
1 paper |
Logic in computer science · 100% |
Topics — the 17 heaviest of 17, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Program verification › program logic
incorrectness logic |
1.0 | 2 | 2022 | Finding real bugs in big programs with incorrectness logic · Proc. ACM Program. Lang. 2022 Local Reasoning About the Presence of Bugs: Incorrectness Separation Logic · CAV (2) 2020 |
Program analysis
static analysis |
1.0 | 2 | 2022 | Finding real bugs in big programs with incorrectness logic · Proc. ACM Program. Lang. 2022 Local Reasoning About the Presence of Bugs: Incorrectness Separation Logic · CAV (2) 2020 |
Program verification › program logic
separation logic |
0.8 | 3 | 2020 | Local Reasoning About the Presence of Bugs: Incorrectness Separation Logic · CAV (2) 2020 Parametric completeness for separation theories · POPL 2014 The ramifications of sharing in data structures · POPL 2013 |
Program analysis › dynamic analysis
memory error detection |
0.6 | 1 | 2022 | Finding real bugs in big programs with incorrectness logic · Proc. ACM Program. Lang. 2022 |
Program analysis › static analysis
bug detection |
0.4 | 1 | 2020 | Local Reasoning About the Presence of Bugs: Incorrectness Separation Logic · CAV (2) 2020 |
Program verification › program logic › separation logic
incorrectness separation logic |
0.4 | 1 | 2020 | Local Reasoning About the Presence of Bugs: Incorrectness Separation Logic · CAV (2) 2020 |
Program analysis
symbolic execution |
0.4 | 1 | 2020 | Local Reasoning About the Presence of Bugs: Incorrectness Separation Logic · CAV (2) 2020 |
Program verification › modular reasoning
local reasoning |
0.3 | 2 | 2020 | The ramifications of sharing in data structures · POPL 2013 Local Reasoning About the Presence of Bugs: Incorrectness Separation Logic · CAV (2) 2020 |
Logic in computer science › proof theory › substructural logic
Boolean BI |
0.2 | 1 | 2014 | Parametric completeness for separation theories · POPL 2014 |
Logic in computer science › proof theory › substructural logic
bunched implications |
0.2 | 1 | 2014 | Parametric completeness for separation theories · POPL 2014 |
Logic in computer science
completeness |
0.2 | 1 | 2014 | Parametric completeness for separation theories · POPL 2014 |
Logic in computer science
proof theory |
0.2 | 1 | 2014 | Parametric completeness for separation theories · POPL 2014 |
Logic in computer science › proof theory
substructural logic |
0.2 | 1 | 2014 | Parametric completeness for separation theories · POPL 2014 |
Systems and software security
memory safety |
0.2 | 1 | 2022 | Finding real bugs in big programs with incorrectness logic · Proc. ACM Program. Lang. 2022 |
Program verification
modular verification |
0.2 | 1 | 2013 | The ramifications of sharing in data structures · POPL 2013 |
Program verification
program logic |
0.1 | 1 | 2020 | Local Reasoning About the Presence of Bugs: Incorrectness Separation Logic · CAV (2) 2020 |
Programming languages and type systems
mutable data structures |
0.0 | 1 | 2013 | The ramifications of sharing in data structures · POPL 2013 |
Methods — techniques the papers use, named apart from their topics
separation logic · 1.6compositional bug-reporting criterion · 1.1ISL · 1.1symbolic execution · 0.4incorrectness logic · 0.4proof theory · 0.4algebraic semantics · 0.4compositional proof system · 0.2
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2022 | Finding real bugs in big programs with incorrectness logicabstractIncorrectness Logic (IL) has recently been advanced as a logical theory for compositionally proving the presence of bugs—dual to Hoare Logic, which is used to compositionally prove their absence. Though IL was motivated in large part by the aim of providing a logical foundation for bug-catching program analyses, it has remained an open question: is IL useful only retrospectively (to explain existing analyses), or can it actually be useful in developing new analyses which can catch real bugs in big programs? In this work, we develop Pulse-X, a new, automatic program analysis for catching memory errors, based on ISL, a recent synthesis of IL and separation logic. Using Pulse-X, we have found 15 new real bugs in OpenSSL, which we have reported to OpenSSL maintainers and have since been fixed. In order not to be overwhelmed with potential but false error reports, we develop a compositional bug-reporting criterion based on a distinction between latent and manifest errors, which references the under-approximate ISL abstractions computed by Pulse-X, and we investigate the fix rate resulting from application of this criterion. Finally, to probe the potential practicality of our bug-finding method, we conduct a comparison to Infer, a widely used analyzer which has proven useful in industrial engineering practice. Quang Loc Le, Azalea Raad, Jules Villard, Josh Berdine, Derek Dreyer, Peter W. O'Hearn |
Proc. ACM Program. Lang. | 3 |
| 2020 | Local Reasoning About the Presence of Bugs: Incorrectness Separation LogicabstractThere has been a large body of work on local reasoning for proving the absence of bugs, but none for proving their presence . We present a new formal framework for local reasoning about the presence of bugs, building on two complementary foundations: 1) separation logic and 2) incorrectness logic. We explore the theory of this new incorrectness separation logic (ISL), and use it to derive a begin-anywhere, intra-procedural symbolic execution analysis that has no false positives by construction . In so doing, we take a step towards transferring modular, scalable techniques from the world of program verification to bug catching. Azalea Raad, Josh Berdine, Hoang-Hai Dang, Derek Dreyer, Peter W. O'Hearn, Jules Villard |
CAV (2) | 6 |
| 2016 | Verifying Concurrent Graph Algorithms
Azalea Raad, Aquinas Hobor, Jules Villard, Philippa Gardner |
APLAS | 3 |
| 2015 | Sub-classical Boolean Bunched Logics and the Meaning of ParabstractWe investigate intermediate logics between the bunched logics Boolean BI and Classical BI, obtained by combining classical propositional logic with various flavours of Hyland and De Paiva's full intuitionistic linear logic. Thus, in addition to the usual multiplicative conjunction (with its adjoint implication and unit), our logics also feature a multiplicative disjunction (with its adjoint co-implication and unit). The multiplicatives behave "sub-classically", in that disjunction and conjunction are related by a weak distribution principle, rather than by De Morgan equivalence. We formulate a Kripke semantics, covering all our sub-classical bunched logics, in which the multiplicatives are naturally read in terms of resource operations. Our main theoretical result is that validity according to this semantics coincides with provability in a corresponding Hilbert-style proof system. Our logical investigation sheds considerable new light on how one can understand the multiplicative disjunction, better known as linear logic's "par", in terms of resource operations. In particular, and in contrast to the earlier Classical BI, the models of our logics include the heap-like memory models of separation logic, in which disjunction can be interpreted as a property of intersection operations over heaps. James Brotherston, Jules Villard |
CSL | 2 |
| 2015 | CoLoSL: Concurrent Local Subjective Logic
Azalea Raad, Jules Villard, Philippa Gardner |
ESOP | 2 |
| 2015 | Shared contract-obedient channels
Étienne Lozes, Jules Villard |
Sci. Comput. Program. | 2 |
| 2014 | Developments in Concurrent Kleene Algebra
Tony Hoare, Stephan van Staden, Bernhard Möller, Georg Struth, Jules Villard, Huibiao Zhu, Peter W. O'Hearn |
RAMiCS | 5 |
| 2014 | Parametric completeness for separation theoriesabstractIn this paper, we close the logical gap between provability in the logic BBI, which is the propositional basis for separation logic, and validity in an intended class of separation models, as employed in applications of separation logic such as program verification. An intended class of separation models is usually specified by a collection of axioms describing the specific model properties that are expected to hold, which we call a separation theory. James Brotherston, Jules Villard |
POPL | 2 |
| 2013 | The ramifications of sharing in data structuresabstractPrograms manipulating mutable data structures with intrinsic sharing present a challenge for modular verification. Deep aliasing inside data structures dramatically complicates reasoning in isolation over parts of these objects because changes to one part of the structure (say, the left child of a dag node) can affect other parts (the right child or some of its descendants) that may point into it. The result is that finding intuitive and compositional proofs of correctness is usually a struggle. We propose a compositional proof system that enables local reasoning in the presence of sharing. Aquinas Hobor, Jules Villard |
POPL | 2 |
| 2010 | Tracking Heaps That Hop with Heap-Hop
Jules Villard, Étienne Lozes, Cristiano Calcagno |
TACAS | 1 |
| 2010 | A spatial equational logic for the applied pi-calculus
Étienne Lozes, Jules Villard |
Distributed Comput. | 2 |
| 2009 | Proving Copyless Message Passing
Jules Villard, Étienne Lozes, Cristiano Calcagno |
APLAS | 1 |
| 2008 | A Spatial Equational Logic for the Applied pi-Calculus
Étienne Lozes, Jules Villard |
CONCUR | 2 |