[OOPSLA23] Synthesizing Efficient Memoization Algorithms
Автор: ACM SIGPLAN
Загружено: 2024-02-13
Просмотров: 72
Synthesizing Efficient Memoization Algorithms (Video, OOPSLA2 2023)
Yican Sun, Xuanyu Peng, and Yingfei Xiong
(Peking University, China; Peking University, China; Peking University, China)
Abstract: 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 challenges: (i) a memoization algorithm is too large to be handled by conventional program synthesizers; (ii) we need to guarantee the efficiency of the memoization algorithm. To address this challenge, we structure the synthesis of memoization algorithms by introducing the local objective function and the memoization partition function and reduce the synthesis task to two smaller independent program synthesis tasks. Moreover, the number of distinct outputs of the function synthesized in the second synthesis task also decides the efficiency of the synthesized memoization algorithm, and we only need to minimize the number of different output values of the synthesized function. However, the generated synthesis task is still too complex for existing synthesizers. Thus, we propose a novel synthesis algorithm that combines the deductive and inductive methods to solve these tasks. To evaluate our algorithm, we collect 42 real-world benchmarks from Leetcode, the National Olympiad in Informatics in Provinces-Junior (a national-wide algorithmic programming contest in China), and previous approaches. Our approach successfully synhesizes 39/42 problems in a reasonable time, outperforming the baselines.
Article: https://doi.org/10.1145/3622800
Supplementary archive: https://doi.org/10.5281/zenodo.8325410 (Badges: Artifacts Available, Artifacts Evaluated — Functional)
ORCID: https://orcid.org/0000-0002-0370-1676, https://orcid.org/0000-0001-8613-3506, https://orcid.org/0000-0001-8991-747X
Video Tags: Program Synthesis, Memoization Algorithms, oopslab23main-p68-p, doi:10.1145/3622800, doi:10.5281/zenodo.8325410, orcid:0000-0002-0370-1676, orcid:0000-0001-8613-3506, orcid:0000-0001-8991-747X, Artifacts Available, Artifacts Evaluated — Functional
Presentation at the OOPSLA2 2023 conference, October 22–27, 2023, https://2023.splashcon.org/track/spla...
Sponsored by ACM SIGPLAN,
![[OOPSLA23] Synthesizing Efficient Memoization Algorithms](https://ricktube.ru/thumbnail/v3AlQ4uVLJc/hq720.jpg)
Доступные форматы для скачивания:
Скачать видео mp4
-
Информация по загрузке: