Sat 13 Jan 2018 16:50 - 17:15 at Watercourt A - Semantics and Synthesis Chair(s): Ilya Sergey

Abstract: Fiat is a deductive synthesis framework for deriving correct-by-construction implementations of abstract data types in Coq. The framework uses the representation independence provided by data abstraction to ensure that a derived implementation meets the specification for any possible client. The restriction that an implementation works for every client removes potential optimizations that would be correct for a particular client, however. The proposed talk discuss our ongoing work on formalizing a relaxation of data refinement in order to enable synthesis of implementations that are tailored to a particular client, while preserving the same representation independence guarantees programmers are used to.