English
Related papers

Related papers: Learning to superoptimize programs

200 papers

Code summarization generates brief natural language descriptions of source code pieces, which can assist developers in understanding code and reduce documentation workload. Recent neural models on code summarization are trained and…

Software Engineering · Computer Science 2022-10-24 Rui Xie , Tianxiang Hu , Wei Ye , Shikun Zhang

Optimization algorithms appear in the core calculations of numerous Artificial Intelligence (AI) and Machine Learning methods, as well as Engineering and Business applications. Following recent works on the theoretical deficiencies of AI, a…

Optimization and Control · Mathematics 2024-10-29 Nikolaos P. Bakas , Vagelis Plevris , Andreas Langousis , Savvas A. Chatzichristofis

We consider learning problems of an intuitive and concise preference model, called lexicographic preference lists (LP-lists). Given a set of examples that are pairwise ordinal preferences over a universe of objects built of attributes of…

Artificial Intelligence · Computer Science 2019-09-20 Ahmed Moussa , Xudong Liu

We study the problem of learning efficient algorithms that strongly generalize in the framework of neural program induction. By carefully designing the input / output interfaces of the neural model and through imitation, we are able to…

Machine Learning · Computer Science 2020-07-09 Yujia Li , Felix Gimeno , Pushmeet Kohli , Oriol Vinyals

We develop a first line of attack for solving programming competition-style problems from input-output examples using deep learning. The approach is to train a neural network to predict properties of the program that generated the outputs…

Machine Learning · Computer Science 2017-03-09 Matej Balog , Alexander L. Gaunt , Marc Brockschmidt , Sebastian Nowozin , Daniel Tarlow

Foundation models (e.g., CodeBERT, GraphCodeBERT, CodeT5) work well for many software engineering tasks. These models are pre-trained (using self-supervision) with billions of code tokens, and then fine-tuned with hundreds of thousands of…

Software Engineering · Computer Science 2022-06-03 Toufique Ahmed , Premkumar Devanbu

With the decline of Moore's law, optimizing program performance has become a major focus of software research. However, high-level optimizations such as API and algorithm changes remain elusive due to the difficulty of understanding the…

Background: During software maintenance and development, the comprehension of program code is key to success. High-quality comments can help us better understand programs, but they're often missing or outmoded in today's programs. Automatic…

Software Engineering · Computer Science 2019-10-15 Yuxiang Zhu , Minxue Pan

This article introduces the concept of optimization learning, a methodology to design optimization proxies that learn the input/output mapping of parametric optimization problems. These optimization proxies are trustworthy by design: they…

Optimization and Control · Mathematics 2025-01-08 Pascal Van Hentenryck

Effective code optimization in compilers is crucial for computer and software engineering. The success of these optimizations primarily depends on the selection and ordering of the optimization passes applied to the code. While most…

Programming Languages · Computer Science 2026-05-29 Chaoyi Deng , Jialong Wu , Ningya Feng , Jianmin Wang , Mingsheng Long

This paper develops a computational model of paraphrase under which text modification is carried out reluctantly; that is, there are external constraints, such as length or readability, on an otherwise ideal text, and modifications to the…

cmp-lg · Computer Science 2008-02-03 Mark Dras

Neural Combinatorial Optimization aims to learn to solve a class of combinatorial problems through data-driven methods and notably through employing neural networks by learning the underlying distribution of problem instances. While, so far…

Machine Learning · Computer Science 2025-08-05 Daniela Thyssens , Tim Dernedde , Wilson Sentanoe , Lars Schmidt-Thieme

Meta-learning algorithms use past experience to learn to quickly solve new tasks. In the context of reinforcement learning, meta-learning algorithms acquire reinforcement learning procedures to solve new problems more efficiently by…

Machine Learning · Computer Science 2020-05-01 Abhishek Gupta , Benjamin Eysenbach , Chelsea Finn , Sergey Levine

Selecting the right compiler optimisations has a severe impact on programs' performance. Still, the available optimisations keep increasing, and their effect depends on the specific program, making the task human intractable. Researchers…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-05-12 Stefano Cereda , Gianluca Palermo , Paolo Cremonesi , Stefano Doni

Problems in program analysis can be solved by developing novel program semantics and deriving abstractions conventionally. For over thirty years, higher-order program analysis has been sold as a hard problem. Its solutions have required…

Programming Languages · Computer Science 2011-05-03 Sam Tobin-Hochstadt , David Van Horn

Despite large incentives, ecorrectness in software remains an elusive goal. Declarative programming techniques, where algorithms are derived from a specification of the desired behavior, offer hope to address this problem, since there is a…

Programming Languages · Computer Science 2018-01-22 Anthony Di Franco

Context: Refactoring is the art of modifying the design of a system without altering its behavior. The idea is to reorganize variables, classes and methods to facilitate their future adaptations and comprehension. As the concept of behavior…

Software Engineering · Computer Science 2021-07-23 Eman Abdullah AlOmar , Mohamed Wiem Mkaouer , Christian Newman , Ali Ouni

Source code summarization is the task of creating short, natural language descriptions of source code. Code summarization is the backbone of much software documentation such as JavaDocs, in which very brief comments such as "adds the…

Software Engineering · Computer Science 2021-01-11 Sakib Haque , Aakash Bansal , Lingfei Wu , Collin McMillan

Sparse coding is a basic task in many fields including signal processing, neuroscience and machine learning where the goal is to learn a basis that enables a sparse representation of a given set of data, if one exists. Its standard…

Machine Learning · Computer Science 2015-03-04 Sanjeev Arora , Rong Ge , Tengyu Ma , Ankur Moitra

In this paper we propose a learning paradigm for the problem of understanding spoken language. The basis of the work is in a formalization of the understanding problem as a communication problem. This results in the definition of a…

cmp-lg · Computer Science 2008-02-03 Roberto Pieraccini , Esther Levin