Mechanizing Coinduction and Corecursion in Higher-order Logic
Lawrence C. Paulson
Abstract
A theory of recursive and corecursive definitions has been developed in higher-order logic (HOL) and mechanized using Isabelle. Least fixedpoints express inductive data types such as strict lists; greatest fixedpoints express coinductive data types, such as lazy lists. Well-founded recursion expresses recursive functions over inductive data types; corecursion expresses functions that yield elements of coinductive data types. The theory rests on a traditional formalization of infinite trees. The theory is intended for use in specification and verification. It supports reasoning about a wide range of computable functions, but it does not formalize their operational semantics and can express noncomputable functions also. The theory is illustrated using finite and infinite lists. Corecursion expresses functions over infinite lists; coinduction reasons about such functions.
Create a lesson
Related papers
Compact Quantitative Equational Theories as Monad Restrictions
Matteo Mio, Colin Riba
Universal Construction and Exact Self-Reproduction in Ternary McCulloch-Pitts Networks
Charles C. Norton
Formally Certifying the Vertex Set of a Polyhedron Faster than Informal Enumeration
Xavier Allamigeon, Yazid Id-Sahra, Pierre-Yves Strub
Antichains for Concurrent Parameterized Games
Nathalie Bertrand, Patricia Bouyer, Gaëtan Staquet
An explicit shuffle construction of the homotopy span model of differential linear logic
Paul-André Melliès, Federico Olimpieri, Lionel Vaux Auclair
Modal Extensions of Generalised Nelson Logics
Igor Sedlár, Pietro Vigiani