kirancodes.me
To Proof Maintenance & Beyond!

Synthesizing iterators from abstraction functions

Derek Rayside, Vajih Montaghami, Francesca Leung, Albert Yuen, Kevin Xu, Daniel Jackson

Abstract

A technique for synthesizing iterators from declarative abstraction functions written in a relational logic specification language is described. The logic includes a transitive closure operator that makes it convenient for expressing reachability queries on linked data structures. Some optimizations, including tuple elimination, iterator flattening, and traversal state reduction, are used to improve performance of the generated iterators.

Related papers