Program Synthesis

139 papers with code • 3 benchmarks • 5 datasets

Program synthesis is the process of automatically generating a program or code snippet that satisfies a given specification or set of requirements. This can include generating code from a formal specification, a natural language description, or example inputs and outputs. The primary goal of program synthesis is to minimize human intervention in the coding process, reduce errors, and improve productivity.

Program synthesis often involves the use of advanced algorithms, artificial intelligence, and machine learning techniques to search the space of possible programs that meet the given constraints. This process can be guided by a variety of techniques, such as constraint solving, symbolic execution, and genetic algorithms.

Libraries

Use these libraries to find Program Synthesis models and implementations

ChatGPT for GTFS: Benchmarking LLMs on GTFS Understanding and Retrieval

utel-uiuc/gtfs_llm 4 Aug 2023

The idea of this research is to see if the current widely adopted LLMs (ChatGPT) are able to understand GTFS and retrieve information from GTFS using natural language instructions without explicitly providing information.

1
04 Aug 2023

GRAN is superior to GraphRNN: node orderings, kernel- and graph embeddings-based metrics for graph generators

otouat/gnnevaluationmetrics 13 Jul 2023

We use these metrics to compare GraphRNN and GRAN, two well-known generative models for graphs, and unveil the influence of node orderings.

1
13 Jul 2023

RLTF: Reinforcement Learning from Unit Test Feedback

zyq-scut/rltf 10 Jul 2023

The goal of program synthesis, or code generation, is to generate executable code based on given descriptions.

103
10 Jul 2023

Knowledge-Driven Robot Program Synthesis from Human VR Demonstrations

ease-crc/vr-program-synthesis 5 Jun 2023

Aging societies, labor shortages and increasing wage costs call for assistance robots capable of autonomously performing a wide array of real-world tasks.

0
05 Jun 2023

LambdaBeam: Neural Program Search with Higher-Order Functions and Lambdas

ellisk42/lambdabeam NeurIPS 2023

Search is an important technique in program synthesis that allows for adaptive strategies such as focusing on particular search directions based on execution results.

5
03 Jun 2023

ANPL: Towards Natural Programming with Interactive Decomposition

IPRC-DIP/ANPL NeurIPS 2023

We deploy ANPL on the Abstraction and Reasoning Corpus (ARC), a set of unique tasks that are challenging for state-of-the-art AI systems, showing it outperforms baseline programming systems that (a) without the ability to decompose tasks interactively and (b) without the guarantee that the modules can be correctly composed together.

16
29 May 2023

Search-Based Regular Expression Inference on a GPU

mojtabavalizadeh/paresy 29 May 2023

Our main algorithmic idea is to implement the search space of regular expressions succinctly as a contiguous matrix of bitvectors.

7
29 May 2023

Gorilla: Large Language Model Connected with Massive APIs

ShishirPatil/gorilla 24 May 2023

Large Language Models (LLMs) have seen an impressive wave of advances recently, with models now excelling in a variety of tasks, such as mathematical reasoning and program synthesis.

10,236
24 May 2023

CRITIC: Large Language Models Can Self-Correct with Tool-Interactive Critiquing

microsoft/ProphetNet 19 May 2023

Unlike these models, humans typically utilize external tools to cross-check and refine their initial content, like using a search engine for fact-checking, or a code interpreter for debugging.

626
19 May 2023

Probabilistic Lexicase Selection

ld-ing/plexicase 19 May 2023

Lexicase selection is a widely used parent selection algorithm in genetic programming, known for its success in various task domains such as program synthesis, symbolic regression, and machine learning.

2
19 May 2023