Decomposition-Based Synthesis for Applying Divide-and-Conquer-Like Algorithmic Paradigms
Ruyi Ji, Yuwei Zhao, Yingfei Xiong, Di Wang, Lu Zhang, Zhenjiang Hu

TL;DR
This paper introduces AutoLifter, a novel synthesis tool that automatically applies divide-and-conquer-like paradigms without relying on syntax-based transformations, effectively simplifying complex program synthesis tasks.
Contribution
AutoLifter employs two new decomposition methods to enable paradigm application without syntax restrictions, improving efficiency and scalability in program synthesis.
Findings
AutoLifter solves 82 out of 96 tasks within 20 seconds on average.
It significantly outperforms existing approaches in applying D&C-like paradigms.
The methods reduce the complexity of large-scale program synthesis tasks.
Abstract
Algorithmic paradigms such as divide-and-conquer (D&C) are proposed to guide developers in designing efficient algorithms, but it can still be difficult to apply algorithmic paradigms to practical tasks. To ease the usage of paradigms, many research efforts have been devoted to the automatic application of algorithmic paradigms. However, most existing approaches to this problem rely on syntax-based program transformations and thus put significant restrictions on the original program. In this paper, we study the automatic application of D&C and several similar paradigms, denoted as D&C-like algorithmic paradigms, and aim to remove the restrictions from syntax-based transformations. To achieve this goal, we propose an efficient synthesizer, named AutoLifter, which does not depend on syntax-based transformations. Specifically, the main challenge of applying algorithmic paradigms is from…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Software Engineering Research · Logic, programming, and type systems
