Demo Data from VLDB 2026 / reviewers in the wild / expert
Jon French
dblp:53/2486
· DBLP profile ↗
2ranked-venue papers
0as first author
0since 2021 · last 2019
0000-0002-0330-3555ORCID · corroborated
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 2
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.
| Computer architecture, parallel and distributed computing, and storage systems
2 papers |
Processor architecture and microarchitecture · 70% Memory systems · 30% | |
| Software engineering, system software, and programming languages
1 paper |
Programming languages and type systems · 100% |
Topics — the 3 heaviest of 4, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Programming languages and type systems › language semantics
formal semantics |
0.4 | 1 | 2019 | ISA semantics for ARMv8-a, RISC-v, and CHERI-MIPS · Proc. ACM Program. Lang. 2019 |
Processor architecture and microarchitecture
instruction set architecture |
0.4 | 1 | 2019 | ISA semantics for ARMv8-a, RISC-v, and CHERI-MIPS · Proc. ACM Program. Lang. 2019 |
Memory systems › memory consistency
memory consistency model |
0.3 | 1 | 2018 | Simplifying ARM concurrency: multicopy-atomic axiomatic and operational models for ARMv8 · Proc. ACM Program. Lang. 2018 |
Methods — techniques the papers use, named apart from their topics
sail · 0.8proof-assistant definitions · 0.8emulator generation · 0.8operational semantics · 0.3equivalence proof · 0.3axiomatic semantics · 0.3
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2019 | ISA semantics for ARMv8-a, RISC-v, and CHERI-MIPSabstractArchitecture specifications notionally define the fundamental interface between hardware and software: the envelope of allowed behaviour for processor implementations, and the basic assumptions for software development and verification. But in practice, they are typically prose and pseudocode documents, not rigorous or executable artifacts, leaving software and verification on shaky ground. In this paper, we present rigorous semantic models for the sequential behaviour of large parts of the mainstream ARMv8-A, RISC-V, and MIPS architectures, and the research CHERI-MIPS architecture, that are complete enough to boot operating systems, variously Linux, FreeBSD, or seL4. Our ARMv8-A models are automatically translated from authoritative ARM-internal definitions, and (in one variant) tested against the ARM Architecture Validation Suite. We do this using a custom language for ISA semantics, Sail, with a lightweight dependent type system, that supports automatic generation of emulator code in C and OCaml, and automatic generation of proof-assistant definitions for Isabelle, HOL4, and (currently only for MIPS) Coq. We use the former for validation, and to assess specification coverage. To demonstrate the usability of the latter, we prove (in Isabelle) correctness of a purely functional characterisation of ARMv8-A address translation. We moreover integrate the RISC-V model into the RMEM tool for (user-mode) relaxed-memory concurrency exploration. We prove (on paper) the soundness of the core Sail type system. We thereby take a big step towards making the architectural abstraction actually well-defined, establishing foundations for verification and reasoning. Alasdair Armstrong, Thomas Bauereiß, Brian Campbell 0001, Alastair Reid 0001, Kathryn E. Gray, Robert M. Norton, Prashanth Mundkur, Mark Wassell, Jon French, Christopher Pulte, Shaked Flur, Ian Stark, Neelakantan R. Krishnaswami, Peter Sewell |
Proc. ACM Program. Lang. | 9 |
| 2018 | Simplifying ARM concurrency: multicopy-atomic axiomatic and operational models for ARMv8abstractARM has a relaxed memory model, previously specified in informal prose for ARMv7 and ARMv8. Over time, and partly due to work building formal semantics for ARM concurrency, it has become clear that some of the complexity of the model is not justified by the potential benefits. In particular, the model was originally non-multicopy-atomic : writes could become visible to some other threads before becoming visible to all — but this has not been exploited in production implementations, the corresponding potential hardware optimisations are thought to have insufficient benefits in the ARM context, and it gives rise to subtle complications when combined with other ARMv8 features. The ARMv8 architecture has therefore been revised: it now has a multicopy-atomic model. It has also been simplified in other respects, including more straightforward notions of dependency, and the architecture now includes a formal concurrency model. In this paper we detail these changes and discuss their motivation. We define two formal concurrency models: an operational one, simplifying the Flowing model of Flur et al., and the axiomatic model of the revised ARMv8 specification. The models were developed by an academic group and by ARM staff, respectively, and this extended collaboration partly motivated the above changes. We prove the equivalence of the two models. The operational model is integrated into an executable exploration tool with new web interface, demonstrated by exhaustively checking the possible behaviours of a loop-unrolled version of a Linux kernel lock implementation, a previously known bug due to unprevented speculation, and a fixed version. Christopher Pulte, Shaked Flur, Will Deacon, Jon French, Susmit Sarkar, Peter Sewell |
Proc. ACM Program. Lang. | 4 |