Optimal Program Synthesis via Abstract Interpretation

Fuente: arXiv
Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: Mell, Stephen, Zdancewic, Steve, Bastani, Osbert
Format: Preprint
Veröffentlicht: 2026
Schlagworte:
Online-Zugang:
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
_version_ 1866911450401865728
author Mell, Stephen
Zdancewic, Steve
Bastani, Osbert
author_facet Mell, Stephen
Zdancewic, Steve
Bastani, Osbert
contents We consider the problem of synthesizing programs with numerical constants that optimize a quantitative objective, such as accuracy, over a set of input-output examples. We propose a general framework for optimal synthesis of such programs in a given domain specific language (DSL), with provable optimality guarantees. Our framework enumerates programs in a general search graph, where nodes represent subsets of concrete programs. To improve scalability, it uses A* search in conjunction with a search heuristic based on abstract interpretation; intuitively, this heuristic establishes upper bounds on the value of subtrees in the search graph, enabling the synthesizer to identify and prune subtrees that are provably suboptimal. In addition, we propose a natural strategy for constructing abstract transformers for monotonic semantics, which is a common property for components in DSLs for data classification. Finally, we implement our approach in the context of two such existing DSLs, demonstrating that our algorithm is more scalable than existing optimal synthesizers.
format Preprint
id arxiv_https___arxiv_org_abs_2602_14717
institution arXiv
publishDate 2026
record_format arxiv
spellingShingle Optimal Program Synthesis via Abstract Interpretation
Mell, Stephen
Zdancewic, Steve
Bastani, Osbert
Programming Languages
We consider the problem of synthesizing programs with numerical constants that optimize a quantitative objective, such as accuracy, over a set of input-output examples. We propose a general framework for optimal synthesis of such programs in a given domain specific language (DSL), with provable optimality guarantees. Our framework enumerates programs in a general search graph, where nodes represent subsets of concrete programs. To improve scalability, it uses A* search in conjunction with a search heuristic based on abstract interpretation; intuitively, this heuristic establishes upper bounds on the value of subtrees in the search graph, enabling the synthesizer to identify and prune subtrees that are provably suboptimal. In addition, we propose a natural strategy for constructing abstract transformers for monotonic semantics, which is a common property for components in DSLs for data classification. Finally, we implement our approach in the context of two such existing DSLs, demonstrating that our algorithm is more scalable than existing optimal synthesizers.
title Optimal Program Synthesis via Abstract Interpretation
topic Programming Languages
url https://arxiv.org/abs/2602.14717