Skip to main content

Timeline for Recursively dependent types?

Current License: CC BY-SA 2.5

8 events
when toggle format what by license comment
Dec 23, 2009 at 19:39 vote accept Mike Shulman
Dec 23, 2009 at 19:38 comment added Mike Shulman I don't see why that's important---I only want $z$ to have one type, namely $A(z)$.
Dec 23, 2009 at 12:55 comment added Neel Krishnaswami Yeah, the same constants can participate in many types. The easiest example is with sums -- the left injection into a sum $inl(-)$ is a constant of type $A \to A + B$ for all types $A$ and $B$.
Dec 22, 2009 at 23:26 comment added Mike Shulman But I think that your first couple of paragraphs give me the answer I want, because I really do want $z$ to be a constant. I had assumed that even in order for $z$ to be a declared constant of type $B$, the type $B$ would have to be a well-formed type in some context---which I guess $A(z)$ is since $z$ is a constant and all, but I had somehow felt that $B$ ought to be well-formed "before" $z$ is declared. But I guess that sort of "before" is not even applicable here.
Dec 22, 2009 at 23:25 comment added Mike Shulman Thanks for the very detailed answer! I am still digesting the stuff about fixed-point operators, but I don't think it's quite relevant for what I wanted, since my indexing type $A(z)$ isn't something like $\mathbb{N}$ on which a type could be defined by recursion anyway.
Dec 22, 2009 at 11:07 history edited Neel Krishnaswami CC BY-SA 2.5
Eliminated redundant phrasing
Dec 22, 2009 at 10:08 history edited Neel Krishnaswami CC BY-SA 2.5
added 755 characters in body
Dec 22, 2009 at 9:51 history answered Neel Krishnaswami CC BY-SA 2.5