Demo Data from VLDB 2026 / reviewers in the wild / expert
Nathaniel Charlton
dblp:30/2091
· DBLP profile ↗
8ranked-venue papers
6as first author
0since 2021 · last 2015
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Theory of computation · 5 · 5 first-authorSoftware engineering, systems software and programming languages · 3 · 2 first-authorArtificial intelligence and machine learning · 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.
| Theoretical computer science
1 paper |
Logic in computer science · 50% Automated reasoning and model checking · 50% | |
| Software engineering, system software, and programming languages
1 paper |
Program verification · 100% |
Topics — the 3 heaviest of 3, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Logic in computer science › program logic
separation logic |
0.2 | 1 | 2013 | Specification patterns for reasoning about recursion through the store · Inf. Comput. 2013 |
Automated reasoning and model checking › temporal logic specification
specification patterns |
0.2 | 1 | 2013 | Specification patterns for reasoning about recursion through the store · Inf. Comput. 2013 |
Program verification › model checking
software model checking |
0.1 | 1 | 2007 | Hector: Software Model Checking with Cooperating Analysis Plugins · CAV 2007 |
Methods — techniques the papers use, named apart from their topics
cooperating analysis plugins · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2015 | Symbolic Execution Proofs for Higher Order Store Programs
Bernhard Reus, Nathaniel Charlton, Ben Horsfall |
J. Autom. Reason. | 2 |
| 2013 | Specification patterns for reasoning about recursion through the store
Nathaniel Charlton, Bernhard Reus |
Inf. Comput. | 1 |
| 2012 | Verifying the reflective visitor patternabstractComputational reflection allows a program to inspect and manipulate the structure or behaviour of itself at runtime. Often this means that it is possible to create more generic or adaptable programs in an elegant way. However, there is little support for specification and automatic verification of reflective programs. We address this problem by implementing, specifying, and verifying a reflective library using a Hoare-logic for a simple language with stored procedures. The latter is important since reflective metadata is modelled on the heap, thus method objects will be realised as stored procedures. We verify memory safety as well as functional correctness of an instance of the reflective visitor pattern, including the reflective library. The entire verification is carried out in our (semi-)automatic verification tool Crowfoot. Ben Horsfall, Nathaniel Charlton, Bernhard Reus |
FTfJP@ECOOP | 2 |
| 2012 | Crowfoot: A Verifier for Higher-Order Store Programs
Nathaniel Charlton, Ben Horsfall, Bernhard Reus |
VMCAI | 1 |
| 2011 | Specification Patterns and Proofs for Recursion through the Store
Nathaniel Charlton, Bernhard Reus |
FCT | 1 |
| 2011 | Hoare Logic for Higher Order Store Using Simple Semantics
Nathaniel Charlton |
WoLLIC | 1 |
| 2007 | Hector: Software Model Checking with Cooperating Analysis Plugins
Nathaniel Charlton, Michael Huth 0001 |
CAV | 1 |
| 2007 | Program verification with interacting analysis pluginsabstractAbstract In this paper we propose and argue for a modular framework for interprocedural program analysis, where multiple program analysis tools are combined in order to exploit the particular advantages of each. This allows for “plugging together” such tools as required by each verification task and makes it easy to integrate new analyses. Our framework automates the sharing of information between plugins using a first order logic with transitive closure, in a way inspired by the open product of Cortesi et al. We describe a prototype implementation of our framework, which performs static assertion checking on a simple language for heap-manipulating programs. This implementation includes plugins for three existing approaches—predicate abstraction, 3-valued shape analysis and a decidable pointer analysis—and for a simple type system. We demonstrate through a detailed example the increase in precision that our approach can provide. Finally we discuss the design decisions we have taken, in particular the tradeoffs involved in the choice of language by which the plugins communicate, and identify some future directions for our work. Nathaniel Charlton |
Formal Aspects Comput. | 1 |