Semi-supervised verified feedback generation

S Kaleeswaran, A Santhiar, A Kanade… - Proceedings of the 2016 …, 2016 - dl.acm.org
Students have enthusiastically taken to online programming lessons and contests.
Unfortunately, they tend to struggle due to lack of personalized feedback. There is an urgent …

Accelerating syntax-guided invariant synthesis

G Fedyukovich, R Bodík - Tools and Algorithms for the Construction and …, 2018 - Springer
We present a fast algorithm for syntax-guided synthesis of inductive invariants which
combines enumerative learning with inductive-subset extraction, leverages …

Deriving divide-and-conquer dynamic programming algorithms using solver-aided transformations

S Itzhaky, R Singh, A Solar-Lezama, K Yessenov… - ACM SIGPLAN …, 2016 - dl.acm.org
We introduce a framework allowing domain experts to manipulate computational terms in
the interest of deriving better, more efficient implementations. It employs deductive …

Synthesizing Efficient Memoization Algorithms

Y Sun, X Peng, Y Xiong - Proceedings of the ACM on Programming …, 2023 - dl.acm.org
In this paper, we propose an automated approach to finding correct and efficient
memoization algorithms from a given declarative specification. This problem has two major …

Autogen: Automatic discovery of cache-oblivious parallel recursive algorithms for solving dynamic programs

R Chowdhury, P Ganapathi, JJ Tithi… - ACM SIGPLAN …, 2016 - dl.acm.org
We present AUTOGEN---an algorithm that for a wide class of dynamic programming (DP)
problems automatically discovers highly efficient cache-oblivious parallel recursive divide …

Elixir: A system for synthesizing concurrent graph programs

D Prountzos, R Manevich, K Pingali - Proceedings of the ACM …, 2012 - dl.acm.org
Algorithms in new application areas like machine learning and network analysis use"
irregular" data structures such as graphs, trees and sets. Writing efficient parallel code in …

Superfusion: Eliminating Intermediate Data Structures via Inductive Synthesis

R Ji, Y Zhao, N Polikarpova, Y Xiong, Z Hu - Proceedings of the ACM on …, 2024 - dl.acm.org
Intermediate data structures are a common cause of inefficiency in functional programming.
Fusion attempts to eliminate intermediate data structures by combining adjacent data …

From Batch to Stream: Automatic Generation of Online Algorithms

Z Wang, S Pailoor, A Prakash, Y Wang… - Proceedings of the ACM …, 2024 - dl.acm.org
Online streaming algorithms, tailored for continuous data processing, offer substantial
benefits but are often more intricate to design than their offline counterparts. This paper …

Provably efficient scheduling of cache-oblivious wavefront algorithms

R Chowdhury, P Ganapathi, Y Tang… - Proceedings of the 29th …, 2017 - dl.acm.org
Iterative wavefront algorithms for evaluating dynamic programming recurrences exploit
optimal parallelism but show poor cache performance. Tiled-iterative wavefront algorithms …

Autogen: Automatic discovery of efficient recursive divide-8-conquer algorithms for solving dynamic programming problems

R Chowdhury, P Ganapathi, S Tschudi, JJ Tithi… - ACM Transactions on …, 2017 - dl.acm.org
We present Autogen—an algorithm that for a wide class of dynamic programming (DP)
problems automatically discovers highly efficient cache-oblivious parallel recursive divide …