Demo Data from EDBT 2026 / reviewers in the wild / expert
William Harris
dblp:09/4583
· DBLP profile ↗
7ranked-venue papers
0as first author
2since 2021 · last 2022
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Security and privacy · 3Databases, data management, data science and information retrieval · 3 · 2 since 2021Software engineering, systems software and programming languages · 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.
| Databases, data mining, and information retrieval
3 papers |
Query processing and optimization · 59% Database theory · 41% | |
| Network and information security
2 papers |
Systems and software security · 100% | |
| Software engineering, system software, and programming languages
2 papers |
Programming languages and type systems · 59% Program verification · 41% |
Topics — the 11 heaviest of 13, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Database theory
query containment |
1.0 | 2 | 2022 | SPES: A Symbolic Approach to Proving Query Equivalence Under Bag Semantics · ICDE 2022 Automated Verification of Query Equivalence Using Satisfiability Modulo Theories · Proc. VLDB Endow. 2019 |
Query processing and optimization › query optimization › predicate optimization
predicate pushdown |
0.5 | 1 | 2021 | SIA: Optimizing Queries using Learned Predicates · SIGMOD Conference 2021 |
Query processing and optimization
query rewriting |
0.5 | 1 | 2021 | SIA: Optimizing Queries using Learned Predicates · SIGMOD Conference 2021 |
Query processing and optimization
query optimization |
0.4 | 1 | 2019 | Automated Verification of Query Equivalence Using Satisfiability Modulo Theories · Proc. VLDB Endow. 2019 |
Systems and software security
memory safety |
0.4 | 2 | 2017 | Efficient Protection of Path-Sensitive Control Security · USENIX Security Symposium 2017 Enforcing Kernel Security Invariants with Data Flow Integrity · NDSS 2016 |
Systems and software security › memory safety
control-flow integrity |
0.3 | 1 | 2017 | Efficient Protection of Path-Sensitive Control Security · USENIX Security Symposium 2017 |
Systems and software security › data integrity
data-flow integrity |
0.2 | 1 | 2016 | Enforcing Kernel Security Invariants with Data Flow Integrity · NDSS 2016 |
Systems and software security › operating system security
kernel security |
0.2 | 1 | 2016 | Enforcing Kernel Security Invariants with Data Flow Integrity · NDSS 2016 |
Systems and software security
operating system security |
0.2 | 1 | 2016 | Enforcing Kernel Security Invariants with Data Flow Integrity · NDSS 2016 |
Program verification › decision procedure
satisfiability modulo theories |
0.1 | 1 | 2021 | SIA: Optimizing Queries using Learned Predicates · SIGMOD Conference 2021 |
Emerging computing paradigms
approximate computing |
0.1 | 1 | 2015 | FlexJava: language support for safe and modular approximate programming · ESEC/SIGSOFT FSE 2015 |
Methods — techniques the papers use, named apart from their topics
satisfiability modulo theories · 1.4symbolic representation · 1.0constraint satisfaction · 0.6counterexample-guided synthesis · 0.5counter-example guided synthesis · 0.5type inference · 0.4approximation safety analysis · 0.4first-order logic · 0.4control-flow protection · 0.3data flow integrity · 0.2
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2022 | SPES: A Symbolic Approach to Proving Query Equivalence Under Bag SemanticsabstractIn database-as-a-service platforms, automated ver-ification of query equivalence helps eliminate redundant computation in the form of overlapping sub-queries. Researchers have proposed two pragmatic techniques to tackle this problem. The first approach consists of reducing the queries to algebraic expressions and proving their equivalence using an algebraic theory. The limitations of this technique are threefold. It cannot prove the equivalence of queries with significant differences in the attributes of their relational operators (e.g., predicates in the filter operator). It does not support certain widely-used SQL features (e.g., NULL values). Its verification procedure is computationally intensive. The second approach transforms this problem to a constraint satisfaction problem and leverages a general-purpose solver to determine query equivalence. This technique consists of deriving the symbolic representation of the queries and proving their equivalence by determining the query containment relationship between the symbolic expressions. While the latter approach addresses all the limitations of the former technique, it only proves the equivalence of queries under set semantics (i.e., output tables must not contain duplicate tuples). However, in practice, database applications use bag semantics (i.e., output tables may contain duplicate tuples) In this paper, we introduce a novel symbolic approach for proving query equivalence under bag semantics. We transform the problem of proving query equivalence under bag semantics to that of proving the existence of a bijective, identity map between tuples returned by the queries on all valid inputs. We classify SQL queries into four categories, and propose a set of novel category-specific verification algorithms. We implement this symbolic approach in SPES and demonstrate that it proves the equivalence of a larger set of query pairs (95/232) under bag semantics compared to the SOTA tools based on algebraic (30/232) and symbolic approaches (67/232) under set and bag semantics, respectively. Furthermore, SPES is 3X faster than the symbolic tool that proves equivalence under set semantics. Qi Zhou 0010, Joy Arulraj, Shamkant B. Navathe, William Harris, Jinpeng Wu |
ICDE | 4 |
| 2021 | SIA: Optimizing Queries using Learned PredicatesabstractPredicate-centric rules for rewriting queries is a key technique in optimizing queries. These include pushing down the predicate below the join and aggregation operators, or optimizing the order of evaluating predicates. However, many of these rules are only applicable when the predicate uses a certain set of columns. For example, to move the predicate below the join operator, the predicate must only use columns from one of the joined tables. By generating a predicate that satisfies these column constraints and preserves the semantics of the original query, the optimizer may leverage additional predicate-centric rules that were not applicable before. Researchers have proposed syntax-driven rewrite rules and machine learning algorithms for inferring such predicates. However, these techniques suffer from two limitations. First, they do not let the optimizer constrain the set of columns that may be used in the learned predicate. Second, machine learning algorithms do not guarantee that the learned predicate preserves semantics. In this paper, we present SIA, a system for learning predicates while being guided by counter-examples and a verification technique, that addresses these limitations. The key idea is to leverage satisfiability modulo theories to generate counter-examples and use them to iteratively learn a valid, optimal predicate. We formalize this problem by proving the key properties of synthesized predicates. We implement our approach in SIA and evaluate its efficacy and efficiency. We demonstrate that it synthesizes a larger set of valid predicates compared to prior approaches. On a collection of 200 queries derived from the TPC-H benchmark, SIA successfully rewrites 114 queries with learned predicates. 66 of these rewritten queries exhibit more than 2X speed up. Qi Zhou 0010, Joy Arulraj, Shamkant B. Navathe, William Harris, Jinpeng Wu |
SIGMOD Conference | 4 |
| 2019 | Automated Verification of Query Equivalence Using Satisfiability Modulo TheoriesabstractDatabase-as-a-service offerings enable users to quickly create and deploy complex data processing pipelines. In practice, these pipelines often exhibit significant overlap of computation due to redundant execution of certain sub-queries. It is challenging for developers and database administrators to manually detect overlap across queries since they may be distributed across teams, organization roles, and geographic locations. Thus, we require automated cloud-scale tools for identifying equivalent queries to minimize computation overlap. State-of-the-art algebraic approaches to automated verification of query equivalence suffer from two limitations. First, they are unable to model the semantics of widely-used SQL features, such as complex query predicates and three-valued logic. Second, they have a computationally intensive verification procedure. These limitations restrict their efficacy and efficiency in cloud-scale database-as-a-service offerings. This paper makes the case for an alternate approach to determining query equivalence based on symbolic representation. The key idea is to effectively transform a wide range of SQL queries into first order logic formulae and then use satisfiability modulo theories to efficiently verify their equivalence. We have implemented this symbolic representation-based approach in EQUITAS. Our evaluation shows that EQUITAS proves the semantic equivalence of a larger set of query pairs compared to algebraic approaches and reduces the verification time by 27X. We also demonstrate that on a set of 17,461 real-world SQL queries, it automatically identifies redundant execution across 11% of the queries. Our symbolic-representation based technique is currently deployed on Alibaba's MaxCompute database-as-a-service platform. Qi Zhou 0010, Joy Arulraj, Shamkant B. Navathe, William Harris |
Proc. VLDB Endow. | 4 |
| 2017 | Proving Flow Security of Sequential Logic via Automatically-Synthesized Relational InvariantsabstractDue to the proliferation of reprogrammable hardware, core designs built from modules drawn from a variety of sources execute with direct access to critical system resources. Expressing guarantees that such modules satisfy, in particular the dynamic conditions under which they release information about their unbounded streams of inputs, and automatically proving that they satisfy such guarantees, is an open and critical problem.,,To address these challenges, we propose a domain-specific language, named STREAMS, for expressing information-flow policies with declassification over unbounded input streams. We also introduce a novel algorithm, named SIMAREL, that given a core design C and STREAMS policy P, automatically proves or falsifies that C satisfies P. The key technical insight behind the design of SIMAREL is a novel algorithm for efficiently synthesizing relational invariants over pairs of circuit executions.,,We expressed expected behavior of cores designed independently for research and production as STREAMS policies and used SIMAREL to check if each core satisfies its policy. SIMAREL proved that half of the cores satisfied expected behavior, but found unexpected information leaks in six open-source designs: an Ethernet controller, a flash memory controller, an SD-card storage manager, a robotics controller, a digital-signal processing (DSP) module, and a debugging interface. Hyoukjun Kwon, William Harris, Hadi Esmaeilzadeh |
CSF | 2 |
| 2017 | Efficient Protection of Path-Sensitive Control Security
Ren Ding 0001, Chenxiong Qian, Chengyu Song, William Harris, Taesoo Kim, Wenke Lee |
USENIX Security Symposium | 4 |
| 2016 | Enforcing Kernel Security Invariants with Data Flow Integrity
Chengyu Song, Byoungyoung Lee, Kangjie Lu, William Harris, Taesoo Kim, Wenke Lee |
NDSS | 4 |
| 2015 | FlexJava: language support for safe and modular approximate programmingabstractEnergy efficiency is a primary constraint in modern systems. Approximate computing is a promising approach that trades quality of result for gains in efficiency and performance. State- of-the-art approximate programming models require extensive manual annotations on program data and operations to guarantee safe execution of approximate programs. The need for extensive manual annotations hinders the practical use of approximation techniques. This paper describes FlexJava, a small set of language extensions, that significantly reduces the annotation effort, paving the way for practical approximate programming. These extensions enable programmers to annotate approximation-tolerant method outputs. The FlexJava compiler, which is equipped with an approximation safety analysis, automatically infers the operations and data that affect these outputs and selectively marks them approximable while giving safety guarantees. The automation and the language–compiler codesign relieve programmers from manually and explicitly an- notating data declarations or operations as safe to approximate. FlexJava is designed to support safety, modularity, generality, and scalability in software development. We have implemented FlexJava annotations as a Java library and we demonstrate its practicality using a wide range of Java applications and by con- ducting a user study. Compared to EnerJ, a recent approximate programming system, FlexJava provides the same energy savings with significant reduction (from 2× to 17×) in the number of annotations. In our user study, programmers spend 6× to 12× less time annotating programs using FlexJava than when using EnerJ. Jongse Park, Hadi Esmaeilzadeh, Xin Zhang 0035, Mayur Naik, William Harris |
ESEC/SIGSOFT FSE | 5 |