English
Related papers

Related papers: Hierarchical Neural Program Synthesis

200 papers

High-level synthesis (HLS) has been widely adopted as it significantly improves the hardware design productivity and enables efficient design space exploration (DSE). Existing HLS tools are built using compiler infrastructures largely based…

Programming Languages · Computer Science 2021-12-23 Hanchen Ye , Cong Hao , Jianyi Cheng , Hyunmin Jeong , Jack Huang , Stephen Neuendorffer , Deming Chen

In program synthesis, we transform a specification into a program that is guaranteed to satisfy the specification. In synthesis of reactive systems, the environment in which the program operates may behave nondeterministically, e.g., by…

Logic in Computer Science · Computer Science 2013-07-25 Ron van der Meyden , Moshe Y. Vardi

Tokenization is a fundamental step in natural language processing, breaking text into units that computational models can process. While learned subword tokenizers have become the de-facto standard, they present challenges such as large…

Computation and Language · Computer Science 2025-01-22 Pit Neitemeier , Björn Deiseroth , Constantin Eichenberg , Lukas Balles

This book focuses on the use of algorithmic high-level synthesis (HLS) to build application-specific FPGA systems. Our goal is to give the reader an appreciation of the process of creating an optimized hardware design using HLS. Although…

Hardware Architecture · Computer Science 2018-05-11 Ryan Kastner , Janarbek Matai , Stephen Neuendorffer

Large pre-trained language models have been used to generate code,providing a flexible interface for synthesizing programs from natural language specifications. However, they often violate syntactic and semantic rules of their output…

Machine Learning · Computer Science 2022-01-28 Gabriel Poesia , Oleksandr Polozov , Vu Le , Ashish Tiwari , Gustavo Soares , Christopher Meek , Sumit Gulwani

Finding an optimal word representation algorithm is particularly important in terms of domain specific data, as the same word can have different meanings and hence, different representations depending on the domain and context. While…

Computation and Language · Computer Science 2025-10-09 Nouman Ahmed , Ronin Wu , Victor Botev

The purpose of a program analysis is to compute an abstract meaning for a program which approximates its dynamic behaviour. A compositional program analysis accomplishes this task with a divide-and-conquer strategy: the meaning of a program…

Programming Languages · Computer Science 2013-10-15 Azadeh Farzan , Zachary Kincaid

Block-based visual programming environments are increasingly used to introduce computing concepts to beginners. Given that programming tasks are open-ended and conceptual, novice students often struggle when learning in these environments.…

Artificial Intelligence · Computer Science 2023-03-30 Adish Singla , Nikitas Theodoropoulos

Automatic programming, the task of generating computer programs compliant with a specification without a human developer, is usually tackled either via genetic programming methods based on mutation and recombination of programs, or via…

Artificial Intelligence · Computer Science 2021-02-09 Vadim Liventsev , Aki Härmä , Milan Petković

Large language models (LLMs) have been widely adopted for synthetic data generation, significantly reducing annotation costs. However, most existing studies treat synthesis as a set of isolated tasks and overlook a more fundamental…

Artificial Intelligence · Computer Science 2026-05-29 Zhenlin Hu , Yan Wang , Zhen Bi , Zihao Xue , Bingyu Zhu , Longtao Huang , Xiongtao Zhang , Zeyu Yang , Zhixuan Chu , Jungang Lou

Synthesizing controllers for large, complex, and distributed systems is a challenging task. Numerous proposed methods exist in the literature, but it is difficult for practitioners to apply them -- most proposed synthesis methods lack…

Systems and Control · Electrical Eng. & Systems 2020-09-30 Shih-Hao Tseng , Jing Shuang Li

The IPARC Challenge, inspired by ARC, provides controlled program synthesis tasks over synthetic images to evaluate automatic program construction, focusing on sequence, selection, and iteration. This set of 600 tasks has resisted automated…

Software Engineering · Computer Science 2025-06-23 Shraddha Surana , Ashwin Srinivasan , Michael Bain

We propose a new synthesis algorithm that can efficiently search programs with local variables (e.g., those introduced by lambdas). Prior bottom-up synthesis algorithms are not able to evaluate programs with free local variables, and…

Programming Languages · Computer Science 2023-11-08 Xiang Li , Xiangyu Zhou , Rui Dong , Yihong Zhang , Xinyu Wang

Program similarity has become an increasingly popular area of research with various security applications such as plagiarism detection, author identification, and malware analysis. However, program similarity research faces a few unique…

Cryptography and Security · Computer Science 2024-05-07 Alexander Interrante-Grant , Michael Wang , Lisa Baer , Ryan Whelan , Tim Leek

An emerging branch of control theory specialises in certificate learning, concerning the specification of a desired (possibly complex) system behaviour for an autonomous or control model, which is then analytically verified by means of a…

Systems and Control · Electrical Eng. & Systems 2024-10-29 Alec Edwards , Andrea Peruffo , Alessandro Abate

In this work, we present a new approach to high level synthesis (HLS), where high level functions are first mapped to an architectural template, before hardware synthesis is performed. As FPGA platforms are especially suitable for…

Hardware Architecture · Computer Science 2016-06-22 Shaoyi Cheng , John Wawrzynek

Stochastic computing (SC) is a high density, low-power computation technique which encodes values as unary bitstreams instead of binary-encoded (BE) values. Practical SC implementations require deterministic or pseudo-random number…

Emerging Technologies · Computer Science 2019-02-28 Vincent T. Lee , Samuel Archibald Elliot , Armin Alaghi , Luis Ceze

We present \synver{}, a novel synthesis and verification framework for C programs, that deploys a Large Language Model (LLM) to search for a candidate program that satisfies the given specification. Our key idea is to impose syntactic and…

Programming Languages · Computer Science 2025-10-21 Prasita Mukherjee , Benjamin Delaware

Spatial computing architectures promise a major stride in performance and energy efficiency over the traditional load/store devices currently employed in large scale computing systems. The adoption of high-level synthesis (HLS) from…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-11-24 Johannes de Fine Licht , Maciej Besta , Simon Meierhans , Torsten Hoefler

Much algorithmic research in NLP aims to efficiently manipulate rich formal structures. An algorithm designer typically seeks to provide guarantees about their proposed algorithm -- for example, that its running time or space complexity is…

Programming Languages · Computer Science 2025-12-30 Tim Vieira , Ryan Cotterell , Jason Eisner