Using Structural Recursion for Corecursion

Yves Bertot 1 Ekaterina Komendantskaya 1
1 MARELLE - Mathematical, Reasoning and Software
CRISAM - Inria Sophia Antipolis - Méditerranée
Abstract : We propose a (limited) solution to the problem of constructing stream values defined by recursive equations that do not respect the guardedness condition. The guardedness condition is imposed on definitions of corecursive functions in Coq, AGDA, and other higher-order proof assistants. In this paper, we concentrate in particular on those non-guarded equations where recursive calls appear under functions. We use a correspondence between streams and functions over natural numbers to show that some classes of non-guarded definitions can be modelled through the encoding as structural recursive functions. In practice, this work extends the class of stream values that can be defined in a constructive type theory-based theorem prover with inductive and coinductive types, structural recursion and guarded corecursion
Document type :
Conference papers
Stefano Berardi and Feruccio Damiani and Ugo de Liguoro. Types 2008, 2008, Torino, Italy. Springer, 5497, pp.220-236, 2008, Lecture Notes in Computer Science


https://hal.inria.fr/inria-00322331
Contributor : Yves Bertot <>
Submitted on : Monday, March 23, 2009 - 1:21:02 PM
Last modification on : Monday, March 23, 2009 - 1:35:35 PM

Identifiers

  • HAL Id : inria-00322331, version 4
  • ARXIV : 0903.3850

Collections

Citation

Yves Bertot, Ekaterina Komendantskaya. Using Structural Recursion for Corecursion. Stefano Berardi and Feruccio Damiani and Ugo de Liguoro. Types 2008, 2008, Torino, Italy. Springer, 5497, pp.220-236, 2008, Lecture Notes in Computer Science. <inria-00322331v4>

Export

Share

Metrics

Consultation de
la notice

244

Téléchargement du document

119