A function has a dependent type when the type of its result depends upon the value of its argument. The type of all types is the type of every type, including itself. In a typed lambda calculus, these two features synergize in a conceptually clean and uniform way to yield enormous expressive power at very little apparent cost. By reconstructing and analyzing a paradox due to Girard, we argue that there is no effective typechecking algorithm for such a language. Comments
You must log in or register to comment.
