Programming with enumerable sets of structures The MIT Faculty has made this article openly available. Please share how this access benefits you. Your story matters. Citation Kuraj, Ivan, Viktor Kuncak, and Daniel Jackson. "Programming with Enumerable Sets of Structures." OOPSLA 2015 Proceedings of the 2015 ACM SIGPLAN International Conference on Object- Oriented Programming, Systems, Languages, and Applications, 25-30 October, 2015, Pittsburgh, Pennsylvania, ACM Press, 2015, pp. 37–56. As Published http://dx.doi.org/10.1145/2814270.2814323 Publisher Association for Computing Machinery Version Author's final manuscript Citable link http://hdl.handle.net/1721.1/116136 Terms of Use Creative Commons Attribution-Noncommercial-Share Alike Detailed Terms http://creativecommons.org/licenses/by-nc-sa/4.0/ Programming with Enumerable Sets of Structures Ivan Kuraj Viktor Kuncak Daniel Jackson CSAIL, MIT, USA EPFL, Switzerland CSAIL, MIT, USA
[email protected] viktor.kuncak@epfl.ch
[email protected] Abstract [30, 32], bounded and unbounded verification [3, 15, 25, 28], We present an efficient, modular, and feature-rich framework theorem proving [6, 12], and others [4, 9, 22, 24, 31]. The for automated generation and validation of complex structures, structures in question are not just the common algorithmic suitable for tasks that explore a large space of structured values. data structures that are the backbone of common libraries, Our framework is capable of exhaustive, incremental, parallel, but also domain-specific structures, such as abstract models and memoized enumeration from not only finite but also infinite of programs in compilers, image formats, or DOM trees in domains, while providing fine-grained control over the process.