Trace-Based Coinductive Operational Semantics for While

  • Authors:
  • Keiko Nakata;Tarmo Uustalu

  • Affiliations:
  • Institute of Cybernetics at Tallinn University of Technology, Tallinn, Estonia EE-12618;Institute of Cybernetics at Tallinn University of Technology, Tallinn, Estonia EE-12618

  • Venue:
  • TPHOLs '09 Proceedings of the 22nd International Conference on Theorem Proving in Higher Order Logics
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

We present four coinductive operational semantics for the While language accounting for both terminating and non-terminating program runs: big-step and small-step relational semantics and big-step and small-step functional semantics. The semantics employ traces (possibly infinite sequences of states) to record the states that program runs go through. The relational semantics relate statement-state pairs to traces, whereas the functional semantics return traces for statement-state pairs. All four semantics are equivalent. We formalize the semantics and their equivalence proofs in the constructive setting of Coq.