Program synthesis from polymorphic refinement types

N Polikarpova, I Kuraj, A Solar-Lezama - ACM SIGPLAN Notices, 2016 - dl.acm.org
We present a method for synthesizing recursive functions that provably satisfy a given
specification in the form of a polymorphic refinement type. We observe that such …

Continuous reasoning: Scaling the impact of formal methods

PW O'Hearn - Proceedings of the 33rd annual ACM/IEEE symposium …, 2018 - dl.acm.org
This paper describes work in continuous reasoning, where formal reasoning about a
(changing) codebase is done in a fashion which mirrors the iterative, continuous model of …

Semantic code refactoring for abstract data types

S Pailoor, Y Wang, I Dillig - Proceedings of the ACM on Programming …, 2024 - dl.acm.org
Modifications to the data representation of an abstract data type (ADT) can require
significant semantic refactoring of the code. Motivated by this observation, this paper …

Inference of robust reachability constraints

Y Sellami, G Girol, F Recoules, D Couroussé… - Proceedings of the …, 2024 - dl.acm.org
Characterization of bugs and attack vectors is in many practical scenarios as important as
their finding. Recently, Girol et. al. have introduced the concept of robust reachability, which …

Symbolic execution with existential second-order constraints

S Mechtaev, A Griggio, A Cimatti… - Proceedings of the 2018 …, 2018 - dl.acm.org
Symbolic execution systematically explores program paths by solving path conditions---
formulas over symbolic variables. Typically, the symbolic variables range over numbers …

Specification synthesis with constrained Horn clauses

S Prabhu, G Fedyukovich, K Madhukar… - Proceedings of the 42nd …, 2021 - dl.acm.org
The problem of synthesizing specifications of undefined procedures has a broad range of
applications, but the usefulness of the generated specifications depends on their quality. In …

Phased synthesis of divide and conquer programs

A Farzan, V Nicolet - Proceedings of the 42nd ACM SIGPLAN …, 2021 - dl.acm.org
We propose a fully automated method that takes as input an iterative or recursive reference
implementation and produces divide-and-conquer implementations that are functionally …

Strategy synthesis for linear arithmetic games

A Farzan, Z Kincaid - Proceedings of the ACM on Programming …, 2017 - dl.acm.org
Many problems in formal methods can be formalized as two-player games. For several
applications—program synthesis, for example—in addition to determining which player wins …

Learning stateful preconditions modulo a test generator

A Astorga, P Madhusudan, S Saha, S Wang… - Proceedings of the 40th …, 2019 - dl.acm.org
In this paper, we present a novel learning framework for inferring stateful preconditions (ie,
preconditions constraining not only primitive-type inputs but also non-primitive-type object …

Theory exploration powered by deductive synthesis

E Singher, S Itzhaky - … : 33rd International Conference, CAV 2021, Virtual …, 2021 - Springer
This paper presents a symbolic method for automatic theorem generation based on
deductive inference. Many software verification and reasoning tasks require proving …