Program Equivalence is Coinductive

We describe computational models, notably Turing and counter machines, as state transition systems with side effects. Side effects are expressed via an algebraic signature and interpreted over comodels for that signature: comodels describe the memory model while the transition system captures the co...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Proceedings of the 31st Annual ACM/IEEE Symposium on Logic in Computer Science S. 337 - 346
Hauptverfasser: Pattinson, Dirk, Schröder, Lutz
Format: Tagungsbericht
Sprache:Englisch
Veröffentlicht: New York, NY, USA ACM 05.07.2016
Schriftenreihe:ACM Conferences
Schlagworte:
ISBN:9781450343916, 1450343910
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:We describe computational models, notably Turing and counter machines, as state transition systems with side effects. Side effects are expressed via an algebraic signature and interpreted over comodels for that signature: comodels describe the memory model while the transition system captures the control structure. Equational reasoning over comodels is known to be subtle. We identify a criterion on equational theories and classes of comodels that guarantees completeness, over the given class of comodels, of the standard equational calculus, and show that this criterion is satisfied in our leading examples. Based on a complete equational axiomatization of the memory (co)model, we then give a complete inductive-coinductive calculus for simulation between states, where a state simulates another if it has at least the same terminating computations, with the same cumulative effect on global state. Extensional equivalence of computations can then be expressed as mutual simulation. The crucial use of coinduction is to deal with non-termination of the simulated computation where the coinductive rule permits infinite unfolding.
ISBN:9781450343916
1450343910
DOI:10.1145/2933575.2934506