VLDB 2026 Research / reviewers in the wild / expert
Berkeley R. Churchill
dblp:02/9961
· DBLP profile ↗
6ranked-venue papers
3as first author
0since 2021 · last 2019
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 5 · 2 first-authorSystems, architecture and hardware · 1 · 1 first-authorTheory of computation · 1 · 1 first-author
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 · 49% Compilers and program optimization · 29% Program analysis · 22% |
Topics — the 4 heaviest of 4, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Program verification
equivalence checking |
0.8 | 3 | 2019 | Semantic program alignment for equivalence checking · PLDI 2019 Conditionally correct superoptimization · OOPSLA 2015 Data-driven equivalence checking · OOPSLA 2013 |
Compilers and program optimization › compiler optimization
superoptimization |
0.5 | 2 | 2017 | Sound Loop Superoptimization for Google Native Client · ASPLOS 2017 Conditionally correct superoptimization · OOPSLA 2015 |
Program analysis › dynamic analysis › trace analysis
trace alignment |
0.4 | 1 | 2019 | Semantic program alignment for equivalence checking · PLDI 2019 |
Program verification
bounded verification |
0.1 | 1 | 2017 | Sound Loop Superoptimization for Google Native Client · ASPLOS 2017 |
Methods — techniques the papers use, named apart from their topics
product program construction · 0.4superoptimization · 0.3simulated annealing · 0.3formal verification · 0.3testing · 0.2decision procedures · 0.2abstract interpretation · 0.2simulation relation inference · 0.2SMT solver · 0.2
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2019 | Semantic program alignment for equivalence checkingabstractWe introduce a robust semantics-driven technique for program equivalence checking. Given two functions we find a trace alignment over a set of concrete executions of both programs and construct a product program particularly amenable to checking equivalence. Berkeley R. Churchill, Oded Padon, Rahul Sharma 0001, Alex Aiken |
PLDI | 1 |
| 2017 | Sound Loop Superoptimization for Google Native ClientabstractSoftware fault isolation (SFI) is an important technique for the construction of secure operating systems, web browsers, and other extensible software. We demonstrate that superoptimization can dramatically improve the performance of Google Native Client, a SFI system that ships inside the Google Chrome Browser. Key to our results are new techniques for superoptimization of loops: we propose a new architecture for superoptimization tools that incorporates both a fully sound verification technique to ensure correctness and a bounded verification technique to guide the search to optimized code. In our evaluation we optimize 13 libc string functions, formally verify the correctness of the optimizations and report a median and average speedup of 25% over the libraries shipped by Google. Berkeley R. Churchill, Rahul Sharma 0001, J. F. Bastien, Alex Aiken |
ASPLOS | 1 |
| 2015 | Conditionally correct superoptimizationabstractThe aggressive optimization of heavily used kernels is an important problem in high-performance computing. However, both general purpose compilers and highly specialized tools such as superoptimizers often do not have sufficient static knowledge of restrictions on program inputs that could be exploited to produce the very best code. For many applications, the best possible code is conditionally correct: the optimized kernel is equal to the code that it replaces only under certain preconditions on the kernel's inputs. The main technical challenge in producing conditionally correct optimizations is in obtaining non-trivial and useful conditions and proving conditional equivalence formally in the presence of loops. We combine abstract interpretation, decision procedures, and testing to yield a verification strategy that can address both of these problems. This approach yields a superoptimizer for x86 that in our experiments produces binaries that are often multiple times faster than those produced by production compilers. Rahul Sharma 0001, Eric Schkufza, Berkeley R. Churchill, Alex Aiken |
OOPSLA | 3 |
| 2014 | Widening for Control-Flow
Ben Hardekopf, Ben Wiedermann, Berkeley R. Churchill, Vineeth Kashyap |
VMCAI | 3 |
| 2013 | Data-driven equivalence checkingabstractWe present a data driven algorithm for equivalence checking of two loops. The algorithm infers simulation relations using data from test runs. Once a candidate simulation relation has been obtained, off-the-shelf SMT solvers are used to check whether the simulation relation actually holds. The algorithm is sound: insufficient data will cause the proof to fail. We demonstrate a prototype implementation, called DDEC, of our algorithm, which is the first sound equivalence checker for loops written in x86 assembly. Rahul Sharma 0001, Eric Schkufza, Berkeley R. Churchill, Alex Aiken |
OOPSLA | 3 |
| 2011 | Summing Symbols in Mutual Recurrences
Berkeley R. Churchill, Edmund A. Lamagna |
COCOON | 1 |