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...

Celý popis

Uložené v:
Podrobná bibliografia
Vydané v:Proceedings of the 31st Annual ACM/IEEE Symposium on Logic in Computer Science s. 337 - 346
Hlavní autori: Pattinson, Dirk, Schröder, Lutz
Médium: Konferenčný príspevok..
Jazyk:English
Vydavateľské údaje: New York, NY, USA ACM 05.07.2016
Edícia:ACM Conferences
Predmet:
ISBN:9781450343916, 1450343910
On-line prístup:Získať plný text
Tagy: Pridať tag
Žiadne tagy, Buďte prvý, kto otaguje tento záznam!
Popis
Shrnutí: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