Abstracting an Operational Semantics to Finite Automata

Nadezhda Baklanova, Wilmer Ricciotti, Jan-Georg Smaus, Martin Strecker · 2015

There is an apparent similarity between the descriptions of small-step operational semantics of imperative programs and the seman- tics of finite automata, so defining an abstraction mapping from seman- tics to automata and proving a simulation property seems to be easy. This paper aims at identifying the reasons why simple proofs break, among them artifacts in the semantics that lead to stuttering steps in the simulation. We then present a semantics based on the zipper data structure, with a direct interpretation of evaluation as navigation in the syntax tree. The abstraction function is then defined by equivalence class construction.

Read the paper · More papers on PaperTik