CrossBeam: Learning to Search in Bottom-Up Program Synthesis
Not on the map. Why?
Abstract (arXiv)
Many approaches to program synthesis perform a search within an enormous space of programs to find one that satisfies a given specification. Prior works have used neural models to guide combinatorial search algorithms, but such approaches still explore a huge portion of the search space and quickly become intractable as the size of the desired program increases. To tame the search space blowup, we propose training a neural model to learn a hands-on search policy for bottom-up synthesis, instead of relying on a combinatorial search algorithm. Our approach, called CrossBeam, uses the neural model to choose how to combine previously-explored programs into new programs, taking into account the search history and partial program executions. Motivated by work in structured prediction on learning to search, CrossBeam is trained on-policy using data extracted from its own bottom-up searches on training tasks. We evaluate CrossBeam in two very different domains, string manipulation and logic programming. We observe that CrossBeam learns to search efficiently, exploring much smaller portions of the program space compared to the state-of-the-art.
Key facts. Cited by 18 papers in the map (data through 7 Oct 2026). Builds on 30 of its 54 references that are in the map. First posted on arXiv 20 Mar 2022.
Builds on
30 of 54 references.
References · 30
- 2021Evaluating Large Language Models Trained on Codecited by 8,053
- 2021Program Synthesis with Large Language Modelscited by 3,509
- 2017Deep Setscited by 1,394
- 2015Pointer Networkscited by 882
- 2017Thinking Fast and Slow with Deep Learning and Tree Searchcited by 245
- 2017A Survey of Machine Learning for Big Code and Naturalnesscited by 220
- 2020Solving Mixed Integer Programs Using Neural Networkscited by 178
- 2016DeepCoder: Learning to Write Programscited by 145
- 2017RobustFill: Neural Program Learning under Noisy I/Ocited by 124
- 2020SmBoP: Semi-autoregressive Bottom-up Semantic Parsingcited by 97
- 2019Write, Execute, Assess: Program Synthesis with a REPLcited by 92
- 2016Neuro-Symbolic Program Synthesiscited by 84
18 more
- 2018Leveraging Grammar and Reinforcement Learning for Neural Program Synthesiscited by 83
- 2020Learning programs by learning from failurescited by 73
- 2015Learning to Search Better Than Your Teachercited by 50
- 2019Learning to Infer Program Sketchescited by 44
- 2020Turning 30: New Ideas in Inductive Logic Programmingcited by 42
- 2018Neural-Guided Deductive Search for Real-Time Program Synthesis from Examplescited by 39
- 2020BUSTLE: Bottom-Up Program Synthesis Through Learning-Guided Explorationcited by 30
- 2020TF-Coder: Program Synthesis for Tensor Manipulationscited by 27
- 2018Automatic Program Synthesis of Long Programs with a Learned Garbage Collectorcited by 24
- 2020Incremental Sampling Without Replacement for Sequence Modelscited by 23
- 2020Just-in-Time Learning for Bottom-Up Enumerative Synthesiscited by 18
- 2020Latent Programmer: Discrete Latent Codes for Program Synthesiscited by 18
- 2020Learning to Represent Programs with Property Signaturescited by 16
- 2018The Three Pillars of Machine Programmingcited by 12
- 2018FrAngel: Component-Based Synthesis with Control Structurescited by 10
- 2018Learning Beam Search Policies via Imitation Learningcited by 9
- 2021Predicate Invention by Learning From Failurescited by 9
- 2020An Empirical Investigation of Beam-Aware Training in Supertaggingcited by 3
Built on by
Citing papers per year: 2022: 4; 2023: 4; 2024: 7; 2025: 2; 2026: 1.
18 papers.
Sort:
By area:
- 2023Hypothesis Search: Inductive Reasoning with Language Modelscited by 119
- 2023Clover: Closed-Loop Verifiable Code Generationcited by 62
- 2024NExT: Teaching Large Language Models to Reason about Code Executioncited by 60
- 2024Is Programming by Example solved by LLMs?cited by 27
- 2023ExeDec: Execution Decomposition for Compositional Generalization in Neural Program Synthesiscited by 17
- 2024HYSYNTH: Context-Free LLM Approximation for Guiding Program Synthesiscited by 14
- 2022From Perception to Programs: Regularize, Overparameterize, and Amortizecited by 13
- 2022Compositional Generalization and Decomposition in Neural Program Synthesiscited by 6
- 2023LambdaBeam: Neural Program Search with Higher-Order Functions and Lambdascited by 6
- 2024Relational decomposition for program synthesiscited by 6
- 2024Learning big logical rules by joining small rulescited by 4
- 2022Relational program synthesis with numerical reasoningcited by 2
6 more
- 2024AbstractBeam: Enhancing Bottom-Up Program Synthesis using Library Learningcited by 2
- 2024Reclaiming the Source of Programmatic Policies: Programmatic versus Latent Spacescited by 2
- 2025Shedding Light in Task Decomposition in Program Synthesis: The Driving Force of the Synthesizer Modelcited by 2
- 2022NESTER: An Adaptive Neurosymbolic Method for Causal Effect Estimationcited by 1
- 2025Herb.jl: A Unifying Program Synthesis Librarycited by 1
- 2026Codoku: Renewable Program-Reasoning Challenges for Frontier Coding Agentscited by 0
- 2026Codoku: Renewable Program-Reasoning Challenges for Frontier Coding Agents28 Sep 2026
- 2025Herb.jl: A Unifying Program Synthesis Library10 Oct 2025
- 2025Shedding Light in Task Decomposition in Program Synthesis: The Driving Force of the Synthesizer Model11 Mar 2025
- 2024Reclaiming the Source of Programmatic Policies: Programmatic versus Latent Spaces16 Oct 2024
- 2024Relational decomposition for program synthesis22 Aug 2024
- 2024Is Programming by Example solved by LLMs?12 Jun 2024
- 2024AbstractBeam: Enhancing Bottom-Up Program Synthesis using Library Learning27 May 2024
- 2024HYSYNTH: Context-Free LLM Approximation for Guiding Program Synthesis24 May 2024
- 2024NExT: Teaching Large Language Models to Reason about Code Execution23 Apr 2024
- 2024Learning big logical rules by joining small rules29 Jan 2024
- 2023Clover: Closed-Loop Verifiable Code Generation26 Oct 2023
- 2023Hypothesis Search: Inductive Reasoning with Language Models11 Sep 2023
6 more
- 2023ExeDec: Execution Decomposition for Compositional Generalization in Neural Program Synthesis26 Jul 2023
- 2023LambdaBeam: Neural Program Search with Higher-Order Functions and Lambdas3 Jun 2023
- 2022NESTER: An Adaptive Neurosymbolic Method for Causal Effect Estimation8 Nov 2022
- 2022Relational program synthesis with numerical reasoning3 Oct 2022
- 2022From Perception to Programs: Regularize, Overparameterize, and Amortize13 Jun 2022
- 2022Compositional Generalization and Decomposition in Neural Program Synthesis7 Apr 2022
- 2023Clover: Closed-Loop Verifiable Code Generationcited by 62
- 2024Is Programming by Example solved by LLMs?cited by 27
- 2023ExeDec: Execution Decomposition for Compositional Generalization in Neural Program Synthesiscited by 17
- 2024HYSYNTH: Context-Free LLM Approximation for Guiding Program Synthesiscited by 14
- 2022From Perception to Programs: Regularize, Overparameterize, and Amortizecited by 13
- 2022Compositional Generalization and Decomposition in Neural Program Synthesiscited by 6
- 2023LambdaBeam: Neural Program Search with Higher-Order Functions and Lambdascited by 6
- 2024Relational decomposition for program synthesiscited by 6
- 2024Learning big logical rules by joining small rulescited by 4
- 2022Relational program synthesis with numerical reasoningcited by 2
- 2024AbstractBeam: Enhancing Bottom-Up Program Synthesis using Library Learningcited by 2
- 2024Reclaiming the Source of Programmatic Policies: Programmatic versus Latent Spacescited by 2
12 most cited of 15 All 15 (JSON)
- 2025Herb.jl: A Unifying Program Synthesis Library10 Oct 2025
- 2025Shedding Light in Task Decomposition in Program Synthesis: The Driving Force of the Synthesizer Model11 Mar 2025
- 2024Reclaiming the Source of Programmatic Policies: Programmatic versus Latent Spaces16 Oct 2024
- 2024Relational decomposition for program synthesis22 Aug 2024
- 2024Is Programming by Example solved by LLMs?12 Jun 2024
- 2024AbstractBeam: Enhancing Bottom-Up Program Synthesis using Library Learning27 May 2024
- 2024HYSYNTH: Context-Free LLM Approximation for Guiding Program Synthesis24 May 2024
- 2024Learning big logical rules by joining small rules29 Jan 2024
- 2023Clover: Closed-Loop Verifiable Code Generation26 Oct 2023
- 2023ExeDec: Execution Decomposition for Compositional Generalization in Neural Program Synthesis26 Jul 2023
- 2023LambdaBeam: Neural Program Search with Higher-Order Functions and Lambdas3 Jun 2023
- 2022NESTER: An Adaptive Neurosymbolic Method for Causal Effect Estimation8 Nov 2022
12 newest of 15 All 15 (JSON)