Synthesizing Imperative Programs from Examples Guided by Static Analysis

02/21/2017
by   Sunbeom So, et al.
0

We present a novel algorithm that synthesizes imperative programs for introductory programming courses. Given a set of input-output examples and a partial program, our algorithm generates a complete program that is consistent with every example. Our key idea is to combine enumerative program synthesis and static analysis, which aggressively prunes out a large search space while guaranteeing to find, if any, a correct solution. We have implemented our algorithm in a tool, called SIMPL, and evaluated it on 30 problems used in introductory programming courses. The results show that SIMPL is able to solve the benchmark problems in 6.6 seconds on average.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
04/14/2017

Deep API Programmer: Learning to Program with APIs

We present DAPIP, a Programming-By-Example system that learns to program...
research
06/13/2022

Metric Program Synthesis

We present a new domain-agnostic synthesis technique for generating prog...
research
08/19/2021

Programming-By-Example by Programming-By-Example: Synthesis of Looping Programs

Program synthesis has seen many new applications in recent years, in lar...
research
04/06/2023

HOTGP – Higher-Order Typed Genetic Programming

Program synthesis is the process of generating a computer program follow...
research
06/14/2021

Learning to Combine Per-Example Solutions for Neural Program Synthesis

The goal of program synthesis from examples is to find a computer progra...
research
05/04/2023

Program Synthesis for Robot Learning from Demonstrations

This paper presents a new synthesis-based approach for solving the Learn...
research
09/25/2017

Glass-Box Program Synthesis: A Machine Learning Approach

Recently proposed models which learn to write computer programs from dat...

Please sign up or login with your details

Forgot password? Click here to reset