In this page we will post relevant papers that will be covered in the course. Papers which are labelled as fundamental are required reading. Other papers can be skimmed by the majority of the class for a high level understanding.
Advice on to read papers here.
|1.||Fundamentals of Deductive Program Synthesis by Zohar Manna and Richard Waldinger, IEEE Transactions on Software Engineering, 1992. Available on-line here|
|2.||Viktor Kuncak, Mikaël Mayer, Ruzica Piskac, Philippe Suter: Complete functional synthesis. PLDI 2010: 316-329|
Ideas using program schemas or templates + Farkas' Lemma (or Quantifier Elimination / Dualization).
|1.||Michael Colón: Schema-Guided Synthesis of Imperative Programs by Constraint Solving. LOPSTR 2004: 166-181|
|2.||Ankur Taly, Sumit Gulwani, Ashish Tiwari: Synthesizing Switching Logic Using Constraint Solving. VMCAI 2009: 305-319|
|3.||Saurabh Srivastava, Sumit Gulwani, Jeffrey S. Foster: From program verification to program synthesis. POPL 2010: 313-326|
|1.||Armando Solar-Lezama, “Program Synthesis by Sketching”, PhD Thesis, UC Berkeley, 2008.|
(alternatively, we can read the papers corresponding to the sketching project).
|1.||Shachar Itzhaky, Sumit Gulwani, Neil Immerman, Mooly Sagiv: A simple inductive synthesis methodology and its applications. OOPSLA 2010: 36-46|
|2.||Sumit Gulwani: Automating String Processing in Spreadsheets using Input-Output Examples, POPL 2011.|
Papers on solving SAT/SMT.
Some basic papers on Decision Procedures, SAT and SMT solvers. Familiarize ourselves with various theories that are supported by popular solvers Yices, Z3, CVC, STP and so on.
|0.||Decision procedures for linear arithmetic, arrays and bitvectors.|
|The Calculus of Computation: Decision Procedures with Applications to Verification by Aaron Bradley and Zohar Manna.|
|Decision Procedures: An Algorithmic Point of View by Daniel Kroening and Ofer Strichman.|
|1.||GRASP: A New Search Algorithm for Satisfiability by Marques-Silva, J. P. and Sakallah, K. A. In Proceedings of International Conference on Computer-Aided Design, pp. 220-227, 1996.|
|2.||Chaff: Engineering an Efficient SAT Solver by M. Moskewicz, C. Madigan, Y. Zhao, L. Zhang, S. Malik, 39th Design Automation Conference (DAC 2001), 2001.|
|3.||Integrating Simplex with DPLL(T) by Bruno Dutertre and Leonardo DeMoura, CSL Technical Report SRI-CSL-06-01 • May 23, 2006 (available on-line here ).|
Solvers for non-linear theories (Shor's SDP relaxation by Parillo, Franzle et al.), arrays (Stump et al., Bradley et al.), data-structures (papers by Zhang et al., Kuncak et al.,…), Differential Logic (Platzer). Readings TBA.
Supervisory Control Theory. Basic Ideas from Optimal Control Theory.
Dynamic Programming. Hamilton Jacobi Equations and their correspondence to dynamic programming. Level set methods for Hamilton-Jacobi-Bellman-Isaacs PDEs (Mitchell, Bayen and Tomlin).
Reactive System Synthesis as a Game.