TF-Coder: Program Synthesis for Tensor Manipulations
Not on the map. Why?
Abstract (arXiv)
The success and popularity of deep learning is on the rise, partially due to powerful deep learning frameworks such as TensorFlow and PyTorch that make it easier to develop deep learning models. However, these libraries also come with steep learning curves, since programming in these frameworks is quite different from traditional imperative programming with explicit loops and conditionals. In this work, we present a tool called TF-Coder for programming by example in TensorFlow. TF-Coder uses a bottom-up weighted enumerative search, with value-based pruning of equivalent expressions and flexible type- and value-based filtering to ensure that expressions adhere to various requirements imposed by the TensorFlow library. We train models to predict TensorFlow operations from features of the input and output tensors and natural language descriptions of tasks, to prioritize relevant operations during search. TF-Coder solves 63 of 70 real-world tasks within 5 minutes, sometimes finding simpler solutions in less time compared to experienced human programmers.
Key facts. Cited by 27 papers in the map (data through 7 Oct 2026). First posted on arXiv 19 Mar 2020.
Builds on
No reference list yet.
Built on by
Citing papers per year: 2021: 3; 2022: 7; 2023: 7; 2024: 5; 2025: 3; 2026: 2.
27 papers.
Sort:
By area:
- 2023Fuzz4All: Universal Fuzzing with Large Language Modelscited by 88
- 2022Natural Language to Code Generation in Interactive Data Science Notebookscited by 86
- 2025Self-Improving Language Models for Evolutionary Program Synthesis: A Case Study on ARC-AGIcited by 34
- 2022CrossBeam: Learning to Search in Bottom-Up Program Synthesiscited by 18
- 2023ExeDec: Execution Decomposition for Compositional Generalization in Neural Program Synthesiscited by 17
- 2021Shellcode_IA32: A Dataset for Automatic Shellcode Generationcited by 16
- 2024HYSYNTH: Context-Free LLM Approximation for Guiding Program Synthesiscited by 14
- 2022Non-Programmers Can Label Programs Indirectly via Active Examples: A Case Study with Text-to-SQLcited by 12
- 2023Program Synthesis with Best-First Bottom-Up Searchcited by 7
- 2024Grounding Data Science Code Generation with Input-Output Specificationscited by 7
- 2021Scaling Neural Program Synthesis with Distribution-based Searchcited by 6
- 2022Compositional Generalization and Decomposition in Neural Program Synthesiscited by 6
15 more
- 2023NeuRI: Diversifying DNN Generation via Inductive Rule Inferencecited by 6
- 2023LambdaBeam: Neural Program Search with Higher-Order Functions and Lambdascited by 6
- 2022A Survey on Artificial Intelligence for Source Code: A Dialogue Systems Perspectivecited by 3
- 2024Contextualized Data-Wrangling Code Generation in Computational Notebookscited by 3
- 2021Towards A Measure Of General Machine Intelligencecited by 2
- 2022Can NMT Understand Me? Towards Perturbation-based Evaluation of NMT Models for Code Generationcited by 2
- 2024AbstractBeam: Enhancing Bottom-Up Program Synthesis using Library Learningcited by 2
- 2025Cardiverse: Harnessing LLMs for Novel Card Game Prototypingcited by 2
- 2022Can We Generate Shellcodes via Natural Language? An Empirical Studycited by 0
- 2023WikiCoder: Learning to Write Knowledge-Powered Codecited by 0
- 2023mlirSynth: Automatic, Retargetable Program Raising in Multi-Level IR using Program Synthesiscited by 0
- 2024Syno: Structured Synthesis for Neural Operatorscited by 0
- 2025APRIL: API Synthesis with Automatic Prompt Optimization and Reinforcement Learningcited by 0
- 2026Lossless Tensor Compression as Program Synthesiscited by 0
- 2026Vectorizer: Vectorizing NumPy Programs with Shape-Guided Rewritecited by 0
- 2026Vectorizer: Vectorizing NumPy Programs with Shape-Guided Rewrite8 Sep 2026
- 2026Lossless Tensor Compression as Program Synthesis3 Aug 2026
- 2025APRIL: API Synthesis with Automatic Prompt Optimization and Reinforcement Learning29 Aug 2025
- 2025Self-Improving Language Models for Evolutionary Program Synthesis: A Case Study on ARC-AGI10 Jul 2025
- 2025Cardiverse: Harnessing LLMs for Novel Card Game Prototyping10 Feb 2025
- 2024Syno: Structured Synthesis for Neural Operators31 Oct 2024
- 2024Contextualized Data-Wrangling Code Generation in Computational Notebooks20 Sep 2024
- 2024AbstractBeam: Enhancing Bottom-Up Program Synthesis using Library Learning27 May 2024
- 2024HYSYNTH: Context-Free LLM Approximation for Guiding Program Synthesis24 May 2024
- 2024Grounding Data Science Code Generation with Input-Output Specifications12 Feb 2024
- 2023Program Synthesis with Best-First Bottom-Up Search6 Oct 2023
- 2023mlirSynth: Automatic, Retargetable Program Raising in Multi-Level IR using Program Synthesis6 Oct 2023
15 more
- 2023Fuzz4All: Universal Fuzzing with Large Language Models9 Aug 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
- 2023WikiCoder: Learning to Write Knowledge-Powered Code15 Mar 2023
- 2023NeuRI: Diversifying DNN Generation via Inductive Rule Inference4 Feb 2023
- 2022Natural Language to Code Generation in Interactive Data Science Notebooks19 Dec 2022
- 2022Non-Programmers Can Label Programs Indirectly via Active Examples: A Case Study with Text-to-SQL25 May 2022
- 2022Compositional Generalization and Decomposition in Neural Program Synthesis7 Apr 2022
- 2022Can NMT Understand Me? Towards Perturbation-based Evaluation of NMT Models for Code Generation29 Mar 2022
- 2022CrossBeam: Learning to Search in Bottom-Up Program Synthesis20 Mar 2022
- 2022A Survey on Artificial Intelligence for Source Code: A Dialogue Systems Perspective10 Feb 2022
- 2022Can We Generate Shellcodes via Natural Language? An Empirical Study8 Feb 2022
- 2021Scaling Neural Program Synthesis with Distribution-based Search24 Oct 2021
- 2021Towards A Measure Of General Machine Intelligence24 Sep 2021
- 2021Shellcode_IA32: A Dataset for Automatic Shellcode Generation27 Apr 2021
- 2023Fuzz4All: Universal Fuzzing with Large Language Modelscited by 88
- 2022Natural Language to Code Generation in Interactive Data Science Notebookscited by 86
- 2022CrossBeam: Learning to Search in Bottom-Up Program Synthesiscited by 18
- 2023ExeDec: Execution Decomposition for Compositional Generalization in Neural Program Synthesiscited by 17
- 2021Shellcode_IA32: A Dataset for Automatic Shellcode Generationcited by 16
- 2024HYSYNTH: Context-Free LLM Approximation for Guiding Program Synthesiscited by 14
- 2022Non-Programmers Can Label Programs Indirectly via Active Examples: A Case Study with Text-to-SQLcited by 12
- 2023Program Synthesis with Best-First Bottom-Up Searchcited by 7
- 2024Grounding Data Science Code Generation with Input-Output Specificationscited by 7
- 2021Scaling Neural Program Synthesis with Distribution-based Searchcited by 6
- 2022Compositional Generalization and Decomposition in Neural Program Synthesiscited by 6
- 2023NeuRI: Diversifying DNN Generation via Inductive Rule Inferencecited by 6
12 most cited of 26 All 26 (JSON)
- 2026Vectorizer: Vectorizing NumPy Programs with Shape-Guided Rewrite8 Sep 2026
- 2026Lossless Tensor Compression as Program Synthesis3 Aug 2026
- 2025APRIL: API Synthesis with Automatic Prompt Optimization and Reinforcement Learning29 Aug 2025
- 2025Cardiverse: Harnessing LLMs for Novel Card Game Prototyping10 Feb 2025
- 2024Syno: Structured Synthesis for Neural Operators31 Oct 2024
- 2024Contextualized Data-Wrangling Code Generation in Computational Notebooks20 Sep 2024
- 2024AbstractBeam: Enhancing Bottom-Up Program Synthesis using Library Learning27 May 2024
- 2024HYSYNTH: Context-Free LLM Approximation for Guiding Program Synthesis24 May 2024
- 2024Grounding Data Science Code Generation with Input-Output Specifications12 Feb 2024
- 2023Program Synthesis with Best-First Bottom-Up Search6 Oct 2023
- 2023mlirSynth: Automatic, Retargetable Program Raising in Multi-Level IR using Program Synthesis6 Oct 2023
- 2023Fuzz4All: Universal Fuzzing with Large Language Models9 Aug 2023
12 newest of 26 All 26 (JSON)