Component-based synthesis for complex APIs

Abstract

Component-based approaches to program synthesis assemble programs from a database of existing components, such as methods provided by an API. In this paper, we present a novel type-directed algorithm for component-based synthesis. The key novelty of our approach is the use of a compact Petri-net representation to model relationships between methods in an API. Given a target method signature S, our approach performs reachability analysis on the underlying Petri-net model to identify sequences of method calls that could be used to synthesize an implementation of S. The programs synthesized by our algorithm are guaranteed to type check and pass all test cases provided by the user.

Document Details

Document Type
Pub Defense Publication
Publication Date
Jan 01, 2017
Source ID
10.1145/3093333.3009851

Entities

People

  • Işıl Dillig
  • Ruben Martins
  • Thomas W. Reps
  • Yu Feng
  • Yuepeng Wang

Organizations

  • Defense Advanced Research Projects Agency
  • National Science Foundation
  • University of Texas at Austin
  • University of Wisconsin–Madison

Tags

Fields of Study

  • Computer science
  • Engineering

Readers

  • Adaptive Control and Estimation with Uncertainty in Dynamic Systems.
  • Computer Science.
  • Distributed Systems and Data Platform Development