Presented at the WPTE 2022 workshop (https://wpte2022.github.io), Haïfa, Israel, August 2022, whose proceedings will be published in a journal. Corresponds to preprint https://hal.inria.fr/hal-03689027v4.Coinduction is an important concept in functional programming. To formally prove properties ofcorecursive functions one can try to define them in a proof assistant such as Coq. But there arestrong limitations on the corecursive functions that can be defined. In particular, one cannot freelymix corecursion with recursion. In this paper we introduce the notion of Sufficiently Complete PartialOrder (SCPO) that enables us to transform a program’s coinductive types by means of ”sufficientlycompleting” inductive types, thereby escaping Coq’s buil...
Programmers happily use induction to prove properties of recursive programs. To show properties of c...
Bove and Capretta's popular method for justifying function definitions by general recursive equation...
We show how codatatypes can be employed to produce compact, high-level proofs of key results in logi...
Presented at the WPTE 2022 workshop (https://wpte2022.github.io), Haïfa, Israel, August 2022, whose ...
Coinduction is an important concept in functional programming. To formally prove properties of corec...
In Constructive Type Theory, recursive and corecursive definitions are subject to syntactic restrict...
In Constructive Type Theory, recursive and corecursive definitions are subject to syntactic restrict...
AbstractIn Constructive Type Theory, recursive and corecursive definitions are subject to syntactic ...
International audienceWe present two methods for defining corecursive functions that go beyond what ...
Corecursive programs produce values of greatest fixpoint types, in contrast to recursive programs, w...
Recursion is a well-known and powerful programming technique, with a wide variety of applications. ...
This paper presents a formalized framework for defining corecursive functions safely in a total sett...
In type theory based logical frameworks, recursive and corecursive definitions are subject to syntac...
This paper presents a formalized framework for defining corecursive functions safely in a total sett...
Abstract. Recursion is a well-known and powerful programming technique, with a wide variety of appli...
Programmers happily use induction to prove properties of recursive programs. To show properties of c...
Bove and Capretta's popular method for justifying function definitions by general recursive equation...
We show how codatatypes can be employed to produce compact, high-level proofs of key results in logi...
Presented at the WPTE 2022 workshop (https://wpte2022.github.io), Haïfa, Israel, August 2022, whose ...
Coinduction is an important concept in functional programming. To formally prove properties of corec...
In Constructive Type Theory, recursive and corecursive definitions are subject to syntactic restrict...
In Constructive Type Theory, recursive and corecursive definitions are subject to syntactic restrict...
AbstractIn Constructive Type Theory, recursive and corecursive definitions are subject to syntactic ...
International audienceWe present two methods for defining corecursive functions that go beyond what ...
Corecursive programs produce values of greatest fixpoint types, in contrast to recursive programs, w...
Recursion is a well-known and powerful programming technique, with a wide variety of applications. ...
This paper presents a formalized framework for defining corecursive functions safely in a total sett...
In type theory based logical frameworks, recursive and corecursive definitions are subject to syntac...
This paper presents a formalized framework for defining corecursive functions safely in a total sett...
Abstract. Recursion is a well-known and powerful programming technique, with a wide variety of appli...
Programmers happily use induction to prove properties of recursive programs. To show properties of c...
Bove and Capretta's popular method for justifying function definitions by general recursive equation...
We show how codatatypes can be employed to produce compact, high-level proofs of key results in logi...