Subtyping by Folding an Inductive Relation into a Coinductive One
In this paper we show that a prototypical subtype relation that can neither be defined as a least fixed point nor as a greatest fixed point can nevertheless be defined in a dependently typed language with inductive and coinductive types. The definition proceeds alike a fold in functional programming, although a rather unusual one: that is not applied to any starting object. There has been a related construction of bisimilarity in Coq by Nakata and Uustalu recently, however, our case is not concerned with bisimilarity but a weaker notion of similarity that corresponds to recursive subtyping and has it’s own interesting problems.
KeywordsRegular Expression Proof Assistant Inductive Relation Inductive Type Type Constructor
Unable to display preview. Download preview PDF.
- 7.Danielsson, N.A., Altenkirch, T.: Mixing induction and coinduction, Draft (2009)Google Scholar
- 10.Gonthier, G., Mahboubi, A., Tassi, E.: A Small Scale Reflection Extension for the Coq system. Research Report RR-6455, INRIA (2011)Google Scholar
- 11.Henglein, F., Nielsen, L.: Declarative coinductive axiomatization of regular expression containment and its computational interpretation (preliminary version). Technical Report 612, Department of Computer Science, University of Copenhagen (DIKU) (February 2010)Google Scholar
- 12.Komendantsky, V.: Computable partial derivatives of regular expressions, Draft. Contributed proofs (2011), http://www.cs.standrews.ac.uk/~vk/doc/mir.v
- 13.Komendantsky, V.: Regular expression containment as a proof search problem. In: Lengrand, S. (ed.) Pre-proceedings of the International Workshop on Proof-Search in Axiomatic Theories and Type Theories, PSATTT 2011 (2011)Google Scholar
- 15.McBride, C.: Type-preserving renaming and substitution (2005) (manuscript)Google Scholar
- 17.Miyamoto, T.: RegExp contribution to Coq (2011)Google Scholar
- 18.Nakata, K., Uustalu, T.: Resumptions, weak bisimilarity and big-step semantics for While with interactive I/O: An exercise in mixed induction-coinduction. In: Proc. Structural Operational Semantics, SOS 2010 (2010)Google Scholar
- 19.Coq development team. The Coq proof assistant reference manual, http://coq.inria.fr/refman/