Learning Disjunctions of Predicates
Nader H. Bshouty, Dana Drachsler-Cohen, Martin Vechev, Eran Yahav

TL;DR
This paper introduces an efficient algorithm for learning disjunctions of boolean functions from membership queries, with applications in program synthesis, especially when requirements are learned interactively from users.
Contribution
The paper presents a new algorithm for learning disjunctions of boolean functions with near-optimal query complexity, applicable to specific function classes like halfspaces and inequalities.
Findings
Algorithm asks at most |F| * OPT(F_∨) membership queries.
Runs in polynomial time for certain function classes.
Enables practical program synthesis by reducing user queries.
Abstract
Let be a set of boolean functions. We present an algorithm for learning from membership queries. Our algorithm asks at most membership queries where is the minimum worst case number of membership queries for learning . When is a set of halfspaces over a constant dimension space or a set of variable inequalities, our algorithm runs in polynomial time. The problem we address has practical importance in the field of program synthesis, where the goal is to synthesize a program that meets some requirements. Program synthesis has become popular especially in settings aiming to help end users. In such settings, the requirements are not provided upfront and the synthesizer can only learn them by posing membership queries to the end user. Our work enables such synthesizers to learn the…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsMachine Learning and Algorithms · Algorithms and Data Compression · Advanced Database Systems and Queries
