Undecidability of Equality for Codata Types
Ulrich Berger and Anton Setzer Swansea University CMCS’18 Thessaloniki, Greece 15 April 2018
Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 1/ 29
Undecidability of Equality for Codata Types Ulrich Berger and Anton - - PowerPoint PPT Presentation
Undecidability of Equality for Codata Types Ulrich Berger and Anton Setzer Swansea University CMCS18 Thessaloniki, Greece 15 April 2018 Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 1/ 29 The Need for
Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 1/ 29
Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 2/ 29
The Need for Decidable Equality
Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 3/ 29
The Need for Decidable Equality
Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 4/ 29
The Need for Decidable Equality
Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 5/ 29
The Need for Decidable Equality
Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 6/ 29
The Need for Decidable Equality
◮ Can be undecidable. ◮ Can be used to prove correctness of programs. ◮ For coalgebras the standard choice is bisimilarity defined
◮ Generic equality type based on definitional equality. ◮ Not relevant for this talk. Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 7/ 29
Codata Types and Coalgebras
Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 8/ 29
Codata Types and Coalgebras
Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 9/ 29
Codata Types and Coalgebras
Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 10/ 29
Codata Types and Coalgebras
◮ Assumes every s : Stream is of the form s = n :: s′ for some t. ◮ We will see that this results in undecidability of equality.
Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 11/ 29
Codata Types and Coalgebras
◮ (fun2Stream f ) is in normal form, if f in normal form. ◮ Reductions are only carried out after applying head or tail to it. Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 12/ 29
Codata Types and Coalgebras
Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 13/ 29
Codata Types and Coalgebras
◮ Representation of the process algebra CSP in Agda in a coalgebraic
◮ Proof of algebraic laws using trace semantics, stable failures semantics,
Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 14/ 29
Undecidability of Weak Forms of Equality
Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 15/ 29
Undecidability of Weak Forms of Equality
Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 16/ 29
Undecidability of Weak Forms of Equality
Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 17/ 29
Undecidability of Weak Forms of Equality
Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 18/ 29
Undecidability of Weak Forms of Equality
Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 19/ 29
Undecidability of Weak Forms of Equality
Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 20/ 29
Undecidability of Weak Forms of Equality
Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 21/ 29
Undecidability of Weak Forms of Equality
◮ If e terminates after k steps with result r
◮ If e never terminates then
Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 22/ 29
Undecidability of Weak Forms of Equality
Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 23/ 29
Undecidability of Weak Forms of Equality
Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 24/ 29
Conclusion
Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 25/ 29
Conclusion
◮ streams are determined by head and tail ◮ or that every stream is of the form cons(n,s).
Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 26/ 29
Conclusion
◮ However streams are not always of the form cons(n, s).
◮ Currently not much used. ◮ See discussion in CMCS’18 paper. Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 27/ 29
Conclusion
Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 28/ 29
Conclusion
Ulrich Berger and Anton Setzer (Swansea) Undecidability of Equality for Codata Types 29/ 29