English
Related papers

Related papers: Herb.jl: A Unifying Program Synthesis Library

200 papers

We introduce DiffOpt.jl, a Julia library to differentiate through the solution of optimization problems with respect to arbitrary parameters present in the objective and/or constraints. The library builds upon MathOptInterface, thus…

Machine Learning · Computer Science 2023-08-01 Mathieu Besançon , Joaquim Dias Garcia , Benoît Legat , Akshay Sharma

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

APIs play a pivotal role in modern software development by enabling seamless communication and integration between various systems, applications, and services. Component-based API synthesis is a form of program synthesis that constructs an…

Software Engineering · Computer Science 2025-02-24 Hua Zhong , Shan Jiang , Sarfraz Khurshid

The Julia programming language has gained acceptance within the High-Performance Computing (HPC) community due to its ability to tackle two-language problem: Julia code feels as high-level as Python but allows developers to tune it to…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-04-17 Sergio Sanchez-Ramirez , Mosè Giordano

Provably correct software is one of the key challenges in our softwaredriven society. While formal verification establishes the correctness of a given program, the result of program synthesis is a program which is correct by construction.…

Logic in Computer Science · Computer Science 2021-03-08 Andreas Humenberger , Laura Kovacs

OutlierDetection.jl is an open-source ecosystem for outlier detection in Julia. It provides a range of high-performance outlier detection algorithms implemented directly in Julia. In contrast to previous packages, our ecosystem enables the…

Machine Learning · Computer Science 2022-11-10 David Muhr , Michael Affenzeller , Anthony D. Blaom

This paper presents a new synthesis-based approach for batch image processing. Unlike existing tools that can only apply global edits to the entire image, our method can apply fine-grained edits to individual objects within the image. For…

Programming Languages · Computer Science 2023-06-16 Celeste Barnaby , Qiaochu Chen , Roopsha Samanta , Isil Dillig

We propose a technique for synthesizing bidirectional programs from the corresponding unidirectional code plus a few input/output examples. The core ideas are: (1) constructing a sketch using the given unidirectional program as a…

Programming Languages · Computer Science 2021-10-07 Masaomi Yamaguchi , Kazutaka Matsuda , Cristina David , Meng Wang

In today's software world with its cornucopia of reusable software libraries, when a programmer is faced with a programming task that they suspect can be completed through the use of a library, they often look for code examples using a…

Software Engineering · Computer Science 2021-10-08 Geert Heyman , Rafael Huysegems , Pascal Justen , Tom Van Cutsem

Large language models (LLMs) have catalyzed an upsurge in automatic code generation, garnering significant attention for register transfer level (RTL) code generation. Despite the potential of RTL code generation with natural language, it…

Hardware Architecture · Computer Science 2024-08-14 Chenwei Xiong , Cheng Liu , Huawei Li , Xiaowei Li

We present an efficient approach for writing architecture-agnostic parallel high-performance stencil computations in Julia, which is instantiated in the package ParallelStencil.jl. Powerful metaprogramming, costless abstractions and…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-12-01 Samuel Omlin , Ludovic Räss

The goal of inductive program synthesis is for a machine to automatically generate a program from user-supplied examples. A key underlying assumption is that humans can provide sufficient examples to teach a concept to a machine. To…

Human-Computer Interaction · Computer Science 2025-02-18 Céline Hocquette , Johannes Langer , Andrew Cropper , Ute Schmid

We propose a novel approach to program synthesis, focusing on synthesizing database queries. At a high level, our proposed algorithm takes as input a sketch with soft constraints encoding user intent, and then iteratively interacts with the…

Programming Languages · Computer Science 2021-10-12 Osbert Bastani , Xin Zhang , Armando Solar-Lezama

AcceleratedKernels.jl is introduced as a backend-agnostic library for parallel computing in Julia, natively targeting NVIDIA, AMD, Intel, and Apple accelerators via a unique transpilation architecture. Written in a unified, compact…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-07-23 Andrei-Leonard Nicusan , Dominik Werner , Simon Branford , Simon Hartley , Andrew J. Morris , Kit Windows-Yule

Julia is a new language for writing data analysis programs that are easy to implement and run at high performance. Similarly, the Dynamic Distributed Dimensional Data Model (D4M) aims to clarify data analysis operations while retaining…

Mathematical Software · Computer Science 2016-12-13 Alexander Chen , Alan Edelman , Jeremy Kepner , Vijay Gadepally , Dylan Hutchison

Understanding binary code is an essential but complex software engineering task for reverse engineering, malware analysis, and compiler optimization. Unlike source code, binary code has limited semantic information, which makes it…

Software Engineering · Computer Science 2022-10-12 Yifan Zhang

This paper proposes integrating Aspect-oriented Programming (AOP) into Julia, a language widely used in scientific and High-Performance Computing (HPC). AOP enhances software modularity by encapsulating cross-cutting concerns, such as…

Programming Languages · Computer Science 2024-12-30 Osamu Ishimura , Yoshihide Yoshimoto

Program synthesis is the task of constructing a program conforming to a given specification. We focus on deductive synthesis, and in particular on synthesis problems with specifications given as $\forall\exists$-formulas, expressing the…

Logic in Computer Science · Computer Science 2025-08-15 Márton Hajdu , Petra Hozzová , Laura Kovács , Andrei Voronkov , Eva Maria Wagner , Richard Steven Žilinčík

Program synthesis or code generation aims to generate a program that satisfies a problem specification. Recent approaches using large-scale pretrained language models (LMs) have shown promising results, yet they have some critical…

Machine Learning · Computer Science 2022-11-04 Hung Le , Yue Wang , Akhilesh Deepak Gotmare , Silvio Savarese , Steven C. H. Hoi

We present Trixi.jl, a Julia package for adaptive high-order numerical simulations of hyperbolic partial differential equations. Utilizing Julia's strengths, Trixi.jl is extensible, easy to use, and fast. We describe the main design choices…

Mathematical Software · Computer Science 2022-01-19 Hendrik Ranocha , Michael Schlottke-Lakemper , Andrew R. Winters , Erik Faulhaber , Jesse Chan , Gregor J. Gassner
‹ Prev 1 8 9 10 Next ›