Rohit Singh 0002

dblp:21/3400-2 · DBLP profile ↗
← Back
12ranked-venue papers
5as first author
0since 2021 · last 2017
0000-0002-4084-7340ORCID · corroborated

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

Software engineering, systems software and programming languages · 6 · 2 first-authorTheory of computation · 5 · 1 first-authorArtificial intelligence and machine learning · 2 · 1 first-authorDatabases, data management, data science and information retrieval · 2 · 2 first-authorGraphics, computer vision, multimedia, augmented reality and games · 1 · 1 first-authorApplied, interdisciplinary, general and emerging computing · 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
4 papers
Automated reasoning and model checking · 63% Mathematical optimization · 25% Algorithms and data structures · 9%
Software engineering, system software, and programming languages
4 papers
Program synthesis and code generation · 100%
Databases, data mining, and information retrieval
2 papers
Data integration and cleaning · 100%
Interdisciplinary, comprehensive, and emerging computing
1 paper
Computing education · 100%

Topics — the 19 heaviest of 20, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Data integration and cleaning
entity matching
0.622017
Synthesizing Entity Matching Rules by Examples · Proc. VLDB Endow. 2017
Generating Concise Entity Matching Rules · SIGMOD Conference 2017
Program synthesis and code generation
rule synthesis
0.422017
Synthesizing Entity Matching Rules by Examples · Proc. VLDB Endow. 2017
Generating Concise Entity Matching Rules · SIGMOD Conference 2017
Automated reasoning and model checking
quantitative verification
0.322015
Measuring and Synthesizing Systems in Probabilistic Environments · J. ACM 2015
Measuring and Synthesizing Systems in Probabilistic Environments · CAV 2010
Program synthesis and code generation
programming by example
0.312017
Synthesizing Entity Matching Rules by Examples · Proc. VLDB Endow. 2017
Program synthesis and code generation
constraint-based synthesis
0.212016
Deriving divide-and-conquer dynamic programming algorithms using solver-aided transformations · OOPSLA 2016
Program synthesis and code generation
deductive program synthesis
0.212016
Deriving divide-and-conquer dynamic programming algorithms using solver-aided transformations · OOPSLA 2016
Program synthesis and code generation
inductive program synthesis
0.212016
Deriving divide-and-conquer dynamic programming algorithms using solver-aided transformations · OOPSLA 2016
Mathematical optimization › sequential decision making
markov decision processes
0.212015
Measuring and Synthesizing Systems in Probabilistic Environments · J. ACM 2015
Mathematical optimization › sequential decision making
mean-payoff objectives
0.212015
Measuring and Synthesizing Systems in Probabilistic Environments · J. ACM 2015
Automated reasoning and model checking
probabilistic verification
0.212015
Measuring and Synthesizing Systems in Probabilistic Environments · J. ACM 2015
Automated reasoning and model checking
synthesis
0.212015
Measuring and Synthesizing Systems in Probabilistic Environments · J. ACM 2015
Computing education
problem generation
0.112012
Automatically Generating Algebra Problems · AAAI 2012
Program synthesis and code generation
concurrent program synthesis
0.112011
Quantitative Synthesis for Concurrent Programs · CAV 2011
Automated reasoning and model checking
model checking
0.112010
Measuring and Synthesizing Systems in Probabilistic Environments · CAV 2010
Automated reasoning and model checking › synthesis
program synthesis
0.112010
Measuring and Synthesizing Systems in Probabilistic Environments · CAV 2010
Automated reasoning and model checking
program verification
0.112010
Measuring and Synthesizing Systems in Probabilistic Environments · CAV 2010
Algorithms and data structures › recursive algorithms
divide-and-conquer
0.112016
Deriving divide-and-conquer dynamic programming algorithms using solver-aided transformations · OOPSLA 2016
Algorithms and data structures
dynamic programming
0.112016
Deriving divide-and-conquer dynamic programming algorithms using solver-aided transformations · OOPSLA 2016
Computational complexity › algebraic complexity
polynomial identity testing
0.012012
Automatically Generating Algebra Problems · AAAI 2012

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

program synthesis · 0.6grammar-based synthesis · 0.6general boolean formula · 0.6refinement types · 0.5deductive reasoning · 0.5constraint solving · 0.5query generalization · 0.3pruning · 0.3mean-payoff automata · 0.2markov decision process · 0.2quantitative game solving · 0.1game theory · 0.1
YearPublicationVenuePosition
2017 Generating Concise Entity Matching Rules
abstract
Entity matching (EM) is a critical part of data integration and cleaning. In many applications, the users need to understand why two entities are considered a match, which reveals the need for interpretable and concise EM rules. We model EM rules in the form of General Boolean Formulas (GBFs) that allows arbitrary attribute matching combined by conjunctions (∨), disjunctions (∧), and negations. (¬) GBFs can generate more concise rules than traditional EM rules represented in disjunctive normal forms (DNFs). We use program synthesis, a powerful tool to automatically generate rules (or programs) that provably satisfy a high-level specification, to automatically synthesize EM rules in GBF format, given only positive and negative matching examples.
Rohit Singh 0002, Venkata Vamsikrishna Meduri, Ahmed K. Elmagarmid, Samuel Madden 0001, Paolo Papotti, Jorge-Arnulfo Quiané-Ruiz, Armando Solar-Lezama, Nan Tang 0001
SIGMOD Conference1
2017 Synthesizing Entity Matching Rules by Examples
abstract
Entity matching (EM) is a critical part of data integration. We study how to synthesize entity matching rules from positive-negative matching examples. The core of our solution is program synthesis , a powerful tool to automatically generate rules (or programs) that satisfy a given high-level specification, via a predefined grammar. This grammar describes a General Boolean Formula ( GBF ) that can include arbitrary attribute matching predicates combined by conjunctions (∧), disjunctions (∨) and negations (¬), and is expressive enough to model EM problems, from capturing arbitrary attribute combinations to handling missing attribute values. The rules in the form of GBF are more concise than traditional EM rules represented in Disjunctive Normal Form ( DNF ). Consequently, they are more interpretable than decision trees and other machine learning algorithms that output deep trees with many branches. We present a new synthesis algorithm that, given only positive-negative examples as input, synthesizes EM rules that are effective over the entire dataset. Extensive experiments show that we outperform other interpretable rules (e.g., decision trees with low depth) in effectiveness, and are comparable with non-interpretable tools (e.g., decision trees with high depth, gradient-boosting trees, random forests and SVM).
Rohit Singh 0002, Venkata Vamsikrishna Meduri, Ahmed K. Elmagarmid, Samuel Madden 0001, Paolo Papotti, Jorge-Arnulfo Quiané-Ruiz, Armando Solar-Lezama, Nan Tang 0001
Proc. VLDB Endow.1
2016 SWAPPER: A framework for automatic generation of formula simplifiers based on conditional rewrite rules
abstract
This paper addresses the problem of creating simplifiers for logic formulas based on conditional term rewriting. In particular, the paper focuses on a program synthesis application where formula simplifications have been shown to have a significant impact. We show that by combining machine learning techniques with constraint-based synthesis, it is possible to synthesize a formula simplifier fully automatically from a corpus of representative problems, making it possible to create formula simplifiers tailored to specific problem domains. We demonstrate the benefits of our approach for synthesis benchmarks from the SyGuS competition and automated grading.
Rohit Singh 0002, Armando Solar-Lezama
FMCAD1
2016 Deriving divide-and-conquer dynamic programming algorithms using solver-aided transformations
abstract
We introduce a framework allowing domain experts to manipulate computational terms in the interest of deriving better, more efficient implementations.It employs deductive reasoning to generate provably correct efficient implementations from a very high-level specification of an algorithm, and inductive constraint-based synthesis to improve automation. Semantic information is encoded into program terms through the use of refinement types.
Shachar Itzhaky, Rohit Singh 0002, Armando Solar-Lezama, Kuat Yessenov, Yongquan Lu, Charles E. Leiserson, Rezaul Alam Chowdhury
OOPSLA2
2016 Synthesis of Domain Specific CNF Encoders for Bit-Vector Solvers
Jeevana Priya Inala, Rohit Singh 0002, Armando Solar-Lezama
SAT2
2015 Measuring and Synthesizing Systems in Probabilistic Environments
abstract
The traditional synthesis question given a specification asks for the automatic construction of a system that satisfies the specification, whereas often there exists a preference order among the different systems that satisfy the given specification. Under a probabilistic assumption about the possible inputs, such a preference order is naturally expressed by a weighted automaton, which assigns to each word a value, such that a system is preferred if it generates a higher expected value. We solve the following optimal synthesis problem: given an omega-regular specification, a Markov chain that describes the distribution of inputs, and a weighted automaton that measures how well a system satisfies the given specification under the input assumption, synthesize a system that optimizes the measured value. For safety specifications and quantitative measures that are defined by mean-payoff automata, the optimal synthesis problem reduces to finding a strategy in a Markov decision process (MDP) that is optimal for a long-run average reward objective, which can be achieved in polynomial time. For general omega-regular specifications along with mean-payoff automata, the solution rests on a new, polynomial-time algorithm for computing optimal strategies in MDPs with mean-payoff parity objectives. Our algorithm constructs optimal strategies that consist of two memoryless strategies and a counter. The counter is in general not bounded. To obtain a finite-state system, we show how to construct an ϵ-optimal strategy with a bounded counter, for all ϵ > 0. Furthermore, we show how to decide in polynomial time if it is possible to construct an optimal finite-state system (i.e., a system without a counter) for a given specification. We have implemented our approach and the underlying algorithms in a tool that takes qualitative and quantitative specifications and automatically constructs a system that satisfies the qualitative specification and optimizes the quantitative specification, if such a system exists. We present some experimental results showing optimal systems that were automatically generated in this way.
Krishnendu Chatterjee, Thomas A. Henzinger, Barbara Jobstmann, Rohit Singh 0002
J. ACM4
2014 Modular Synthesis of Sketches Using Models
Rohit Singh 0002, Rishabh Singh, Zhilei Xu, Rebecca Krosnick, Armando Solar-Lezama
VMCAI1
2012 Automatically Generating Algebra Problems
abstract
We propose computer-assisted techniques for helping with pedagogy in Algebra. In particular, given a proof problem p (of the form “Left-hand-side-term = Right-hand-side-term”), we show how to automatically generate problems that are similar to p. We believe that such a tool can be used by teachers in making examinations where they need to test students on problems similar to what they taught in class, and by students in generating practice problems tailored to their specific needs. Our first insight is that we can generalize p syntactically to a query Q that implicitly represents a set of problems [[Q]] (which includes p). Our second insight is that we can explore the space of problems [[Q]] automatically, use classical results from polynomial identity testing to generate only those problems in [[Q]] that are correct, and then use pruning techniques to generate only unique and interesting problems. Our third insight is that with a small amount of manual tuning on the query Q, the user can interactively guide the computer to generate problems of interest to her. We present the technical details of the above mentioned steps, and also describe a tool where these steps have been implemented. We also present an empirical evaluation on a wide variety of problems from various sub-fields of algebra including polynomials, trigonometry, calculus, determinants etc. Our tool is able to generate a rich corpus of similar problems from each given problem; while some of these similar problems were already present in the textbook, several were new!
Rohit Singh 0002, Sumit Gulwani, Sriram K. Rajamani
AAAI1
2011 Quantitative Synthesis for Concurrent Programs
Pavol Cerný, Krishnendu Chatterjee, Thomas A. Henzinger, Arjun Radhakrishna, Rohit Singh 0002
CAV5
2011 On Memoryless Quantitative Objectives
Krishnendu Chatterjee, Laurent Doyen 0001, Rohit Singh 0002
FCT3
2011 QUASY: Quantitative Synthesis Tool
Krishnendu Chatterjee, Thomas A. Henzinger, Barbara Jobstmann, Rohit Singh 0002
TACAS4
2010 Measuring and Synthesizing Systems in Probabilistic Environments
Krishnendu Chatterjee, Thomas A. Henzinger, Barbara Jobstmann, Rohit Singh 0002
CAV4