Infinite objects in type theory
TYPES '93 Proceedings of the international workshop on Types for proofs and programs
Codifying Guarded Definitions with Recursive Schemes
TYPES '94 Selected papers from the International Workshop on Types for Proofs and Programs
Concurrency and Automata on Infinite Sequences
Proceedings of the 5th GI-Conference on Theoretical Computer Science
A Typed Lambda Calculus with Categorical Type Constructors
Category Theory and Computer Science
Category Theory and Computer Science
Interactive Theorem Proving and Program Development
Interactive Theorem Proving and Program Development
A coinductive calculus of streams
Mathematical Structures in Computer Science
Proof Methods for Corecursive Programs
Fundamenta Informaticae - Program Transformation: Theoretical Foundations and Basic Techniques. Part 1
Observational Coalgebras and Complete Sets of Co-operations
Electronic Notes in Theoretical Computer Science (ENTCS)
Functional pearl: streams and unique fixed points
Proceedings of the 13th ACM SIGPLAN international conference on Functional programming
Well-Definedness of Streams by Termination
RTA '09 Proceedings of the 20th International Conference on Rewriting Techniques and Applications
A Brief Overview of Agda --- A Functional Language with Dependent Types
TPHOLs '09 Proceedings of the 22nd International Conference on Theorem Proving in Higher Order Logics
Behavioural differential equations and coinduction for binary trees
WoLLIC'07 Proceedings of the 14th international conference on Logic, language, information and computation
Dependently typed programming in Agda
AFP'08 Proceedings of the 6th international conference on Advanced functional programming
Productivity of stream definitions
FCT'07 Proceedings of the 16th international conference on Fundamentals of Computation Theory
Hi-index | 0.00 |
We consider the problem of determining the unicity of solutions for corecursive equations. This can be done by transforming the equations into a guarded form, that is, representing them as a coalgebra. However, in some examples this transformation is very hard to achieve. On the other hand, mere unicity of solutions can be determined independently by constructing a bisimulation relation. The relation is defined inductively by successive steps of reduction of the body of the equation and abstraction of the recursive calls. The algorithm is not complete: it may terminate successfully, in which case unicity is proved; it may terminate with a negative answer, in which case no bisimulation could be constructed; or it may run forever. If it diverges, the inductively defined relation is in fact a bisimulation and unicity obtains. However, we cannot decide whether the algorithm will run forever or not.