Amortizing Pragmatic Program Synthesis with Rankings
Yewen Pu, Saujas Vaduguru, Priyan Vaithilingam, Elena Glassman, Daniel, Fried

TL;DR
This paper introduces a method to efficiently approximate pragmatic program synthesis using rankings, significantly speeding up the process while maintaining or improving accuracy in human communication scenarios.
Contribution
It presents a novel amortization technique that distills RSA-based rankings into a global ranking, enabling fast and accurate pragmatic program synthesis.
Findings
Achieved orders of magnitude speedups over exact RSA synthesizer.
More accurate than non-pragmatic synthesizers in human communication tasks.
Exact in the single-example synthesis case.
Abstract
The usage of Rational Speech Acts (RSA) framework has been successful in building \emph{pragmatic} program synthesizers that return programs which, in addition to being logically consistent with user-generated examples, account for the fact that a user chooses their examples informatively. We present a general method of amortizing the slow, exact RSA synthesizer. Our method first query the exact RSA synthesizer to compile a communication dataset. The dataset contains a number of example-dependent rankings of subsets of programs. It then distills a \textit{single} global ranking of all programs as an approximation to every ranking in the dataset. This global ranking is then used at inference time to rank multiple logically consistent candidate programs generated from a fast, non-pragmatic synthesizer. Experiments on two program synthesis domains using our ranking method resulted in…
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
TopicsSoftware Testing and Debugging Techniques · Logic, programming, and type systems · Formal Methods in Verification
MethodsSPEED: Separable Pyramidal Pooling EncodEr-Decoder for Real-Time Monocular Depth Estimation on Low-Resource Settings
