Choose, Don't Label: Multiple-Choice Query Synthesis for Program Disambiguation
Celeste Barnaby, Danny Ding, Osbert Bastani, Isil Dillig
Abstract
High-level specifications of code are inherently ambiguous, and prior systems have explored interactive techniques to help users clarify their intent and resolve such ambiguities. However, most existing approaches elicit supervision through labeled examples, which are often error-prone and may fail to capture user intent. This paper introduces a new active learning paradigm for program disambiguation based on multiple-choice queries. In this paradigm, the system presents a small set of high-level behaviors as multiple-choice options, and the user simply selects the intended one. Technically, each answer option corresponds to a Hoare triple that characterizes a cluster of semantically similar candidate programs. This formulation enables formal reasoning about the informativeness and interpretability of queries, and supports systematic construction of optimal queries. Building on this insight, we develop a new active learning algorithm and implement it in a tool called Socrates, which automatically synthesizes informative multiple-choice queries for program disambiguation. We evaluate Socrates across four domains spanning both symbolic and neurosymbolic settings and show that it produces intuitive, easy-to-answer queries and achieves efficient convergence. Most importantly, Socrates identifies the intended program more reliably than existing methods, while maintaining competitive runtime performance.
CCS Concepts: • Software and its engineering → Software verification.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 94ef2991-2c41-4ea4-9c31-73973a4e0c5dBuilds on19
- Language Models are Few-Shot LearnersTom B. Brown, Benjamin Mann, Nick Ryder, Melanie Subbiah et al.NeurIPS 2020 · 64,255 citations
- ViperGPT: Visual Inference via Python Execution for ReasoningDídac Surís, Sachit Menon, Carl VondrickICCV 2023 · 732 citations
- CodeGen: An Open Large Language Model for Code with Multi-Turn Program SynthesisErik Nijkamp, Bo Pang, Hiroaki Hayashi, Lifu Tu et al.ICLR 2023 · 234 citations
- Jigsaw: Large Language Models meet Program SynthesisNaman Jain, Skanda Vaidyanath, Arun Iyer, Nagarajan Natarajan et al.ICSE 2022 · 134 citations
- Multi-modal synthesis of regular expressionsQiaochu Chen, Xinyu Wang, Xi Ye, Greg Durrett et al.PLDI 2020 · 81 citations
Related papers
- Active Learning for Neurosymbolic Program SynthesisCeleste Barnaby, Qiaochu Chen, Ramya Ramalingam, Osbert Bastani et al.OOPSLA 2025 · 2 citations
- Active Learning of Symbolic Automata for Reactive Programs via Dynamic Symbolic MapperYoel Kim, Yunja ChoiFSE 2026
- Question selection for interactive program synthesisRuyi Ji, Jingjing Liang, Yingfei Xiong, Lu Zhang et al.PLDI 2020 · 33 citations
- Assuage: Assembly Synthesis Using A Guided ExplorationJingmei Hu, Priyan Vaithilingam, Stephen Chong, Margo I. Seltzer et al.UIST 2021 · 10 citations
- Guiding Program Synthesis by Learning to Generate ExamplesLarissa Laich, Pavol Bielik, Martin T. VechevICLR 2020 · 17 citations
