Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data.

Calvin Smith

dblp:172/7089 · DBLP profile ↗
← Back
7ranked-venue papers
5as first author
0since 2021 · last 2020
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 6 · 5 first-authorArtificial intelligence and machine learning · 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.

Software engineering, system software, and programming languages
4 papers
Program synthesis and code generation · 60% Program verification · 20% Program analysis · 20%
Artificial intelligence
1 paper
Knowledge representation and reasoning · 62% Vision and language · 38%
Computer architecture, parallel and distributed computing, and storage systems
1 paper
Parallel and multicore computing · 100%

Topics — the 10 heaviest of 11, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Knowledge, reasoning and agents › Knowledge representation and reasoning › logic-based reasoning
symbolic reasoning
0.412020
Generating Programmatic Referring Expressions via Program Synthesis · ICML 2020
Program synthesis and code generation › neural program synthesis
neurosymbolic program synthesis
0.412020
Generating Programmatic Referring Expressions via Program Synthesis · ICML 2020
Program synthesis and code generation
relational program synthesis
0.412020
Generating Programmatic Referring Expressions via Program Synthesis · ICML 2020
Program verification › probabilistic verification
probabilistic program verification
0.412019
Trace abstraction modulo probability · Proc. ACM Program. Lang. 2019
Program analysis
specification mining
0.312017
Discovering relational specifications · ESEC/SIGSOFT FSE 2017
Program synthesis and code generation
programming by example
0.212016
MapReduce program synthesis · PLDI 2016
Parallel and multicore computing
data-parallel programming
0.212016
MapReduce program synthesis · PLDI 2016
Parallel and multicore computing › data-parallel programming
mapreduce
0.212016
MapReduce program synthesis · PLDI 2016
Computer vision › Vision and language › visual grounding
referring expression
0.112020
Generating Programmatic Referring Expressions via Program Synthesis · ICML 2020
Computer vision › Vision and language
visual reasoning
0.112020
Generating Programmatic Referring Expressions via Program Synthesis · ICML 2020

Methods — techniques the papers use, named apart from their topics

program interpreter · 0.9policy neural network · 0.9enumerative search · 0.9program synthesis · 0.7failure automata · 0.4craig interpolation · 0.4database techniques · 0.3
YearPublicationVenuePosition
2020 Generating Programmatic Referring Expressions via Program Synthesis
abstract
Incorporating symbolic reasoning into machine learning algorithms is a promising approach to improve performance on learning tasks that require logical reasoning. We study the problem of generating a programmatic variant of referring expressions that we call referring relational programs. In particular, given a symbolic representation of an image and a target object in that image, the goal is to generate a relational program that uniquely identifies the target object in terms of its attributes and its relations to other objects in the image. We propose a neurosymbolic program synthesis algorithm that combines a policy neural network with enumerative search to generate such relational programs. The policy neural network employs a program interpreter that provides immediate feedback on the consequences of the decisions made by the policy, and also takes into account the uncertainty in the symbolic representation of the image. We evaluate our algorithm on challenging benchmarks based on the CLEVR dataset, and demonstrate that our approach significantly outperforms several baselines.
Calvin Smith, Osbert Bastani, Rishabh Singh, Aws Albarghouthi, Mayur Naik
ICML2
2019 Program Synthesis with Equivalence Reduction
Calvin Smith, Aws Albarghouthi
VMCAI1
2019 Synthesizing differentially private programs
abstract
Inspired by the proliferation of data-analysis tasks, recent research in program synthesis has had a strong focus on enabling users to specify data-analysis programs through intuitive specifications, like examples and natural language. However, with the ever-increasing threat to privacy through data analysis, we believe it is imperative to reimagine program synthesis technology in the presence of formal privacy constraints. In this paper, we study the problem of automatically synthesizing randomized, differentially private programs, where the user can provide the synthesizer with a constraint on the privacy of the desired algorithm. We base our technique on a linear dependent type system that can track the resources consumed by a program, and hence its privacy cost. We develop a novel type-directed synthesis algorithm that constructs randomized differentially private programs. We apply our technique to the problems of synthesizing database-like queries as well as recursive differential privacy mechanisms from the literature.
Calvin Smith, Aws Albarghouthi
Proc. ACM Program. Lang.1
2019 Trace abstraction modulo probability
abstract
We propose trace abstraction modulo probability, a proof technique for verifying high-probability accuracy guarantees of probabilistic programs. Our proofs overapproximate the set of program traces using failure automata, finite-state automata that upper bound the probability of failing to satisfy a target specification. We automate proof construction by reducing probabilistic reasoning to logical reasoning: we use program synthesis methods to select axioms for sampling instructions, and then apply Craig interpolation to prove that traces fail the target specification with only a small probability. Our method handles programs with unknown inputs, parameterized distributions, infinite state spaces, and parameterized specifications. We evaluate our technique on a range of randomized algorithms drawn from the differential privacy literature and beyond. To our knowledge, our approach is the first to automatically establish accuracy properties of these algorithms.
Calvin Smith, Justin Hsu, Aws Albarghouthi
Proc. ACM Program. Lang.1
2017 Constraint-Based Synthesis of Datalog Programs
Aws Albarghouthi, Paraschos Koutris, Mayur Naik, Calvin Smith
CP4
2017 Discovering relational specifications
abstract
Formal specifications of library functions play a critical role in a number of program analysis and development tasks. We present Bach, a technique for discovering likely relational specifications from data describing input-output behavior of a set of functions comprising a library or a program. Relational specifications correlate different executions of different functions; for instance, commutativity, transitivity, equivalence of two functions, etc. Bach combines novel insights from program synthesis and databases to discover a rich array of specifications. We apply Bach to learn specifications from data generated for a number of standard libraries. Our experimental evaluation demonstrates Bach's ability to learn useful and deep specifications in a small amount of time.
Calvin Smith, Gabriel Ferns, Aws Albarghouthi
ESEC/SIGSOFT FSE1
2016 MapReduce program synthesis
abstract
By abstracting away the complexity of distributed systems, large-scale data processing platforms—MapReduce, Hadoop, Spark, Dryad, etc.—have provided developers with simple means for harnessing the power of the cloud. In this paper, we ask whether we can automatically synthesize MapReduce-style distributed programs from input–output examples. Our ultimate goal is to enable end users to specify large-scale data analyses through the simple interface of examples. We thus present a new algorithm and tool for synthesizing programs composed of efficient data-parallel operations that can execute on cloud computing infrastructure. We evaluate our tool on a range of real-world big-data analysis tasks and general computations. Our results demonstrate the efficiency of our approach and the small number of examples it requires to synthesize correct, scalable programs.
Calvin Smith, Aws Albarghouthi
PLDI1