Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
A comparison between ITT and CoCCategorical models of type theories
Category Theory 2015 · Aveiro, PORTUGAL
Nino Guallart
July of 2015
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Index
1 Introduction
2 Simply typed lambda calculus
3 Higher-order type systems
4 Concluding remarks
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Index
1 Introduction
2 Simply typed lambda calculus
3 Higher-order type systems
4 Concluding remarks
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Index
1 Introduction
2 Simply typed lambda calculus
3 Higher-order type systems
4 Concluding remarks
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Index
1 Introduction
2 Simply typed lambda calculus
3 Higher-order type systems
4 Concluding remarks
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Índice
1 Introduction
2 Simply typed lambda calculus
3 Higher-order type systems
4 Concluding remarks
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Introduction
What is a type theory?
Formal system of elements (terms), each of one belonging to acertain type. Originally proposed as an alternative to naïve settheory (Russell's paradox), we will see type theories formulated in λ
calculus.
Everything is a function
Church's λC was intended to study computable functions. It isTuring-complete and can be seen as an abstract model of afunctional programming language (Landin, 1965).Whereas λC is untyped, simply typed lambda calculus (STLC) istyped, and therefore can be seen as the basis of typed functionalprogramming languages (Haskell, ML).
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Introduction
What is a type theory?
Formal system of elements (terms), each of one belonging to acertain type. Originally proposed as an alternative to naïve settheory (Russell's paradox), we will see type theories formulated in λ
calculus.
Everything is a function
Church's λC was intended to study computable functions. It isTuring-complete and can be seen as an abstract model of afunctional programming language (Landin, 1965).Whereas λC is untyped, simply typed lambda calculus (STLC) istyped, and therefore can be seen as the basis of typed functionalprogramming languages (Haskell, ML).
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Semantics of type theories
In this talk we will focus on the categorial semantics of STLC,before moving on a discussion of the categorical interpretation ofmore complex type theories.
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Índice
1 Introduction
2 Simply typed lambda calculus
3 Higher-order type systems
4 Concluding remarks
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Simply typed lambda calculus
λ→
e, f := x |c |λxτ .e|ef |
σ ,τ := β |σ → τ
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Simply typed lambda calculus
λσ
e, f := x |c|λxτ .e|ef |(e, f )|π1e|π1e
σ ,τ := β |σ → τ|σ × τ
λC syntax: λ→ and →.
Type constructors: →, ×, (+).
Base types. Void type: 0, with no terms. Unit type: 1, withone term, *.
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Simply typed lambda calculus
λσ
e, f := x |c|λxτ .e|ef |(e, f )|π1e|π1e
σ ,τ := β |σ → τ|σ × τ
λC syntax: λ→ and →.
Type constructors: →, ×, (+).
Base types. Void type: 0, with no terms. Unit type: 1, withone term, *.
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Simply typed lambda calculus
λσ
e, f := x |c|λxτ .e|ef |(e, f )|π1e|π1e
σ ,τ := β |σ → τ|σ × τ
λC syntax: λ→ and →.
Type constructors: →, ×, (+).
Base types. Void type: 0, with no terms. Unit type: 1, withone term, *.
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Simply typed lambda calculus
λσ
e, f := x |c|λxτ .e|ef |(e, f )|π1e|π1e
σ ,τ := β |σ → τ|σ × τ
λC syntax: λ→ and →.
Type constructors: →, ×, (+).
Base types. Void type: 0, with no terms. Unit type: 1, withone term, *.
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Simply typed lambda calculus
There are well-formed (pre)terms which are not well-typed, givingerror: (λx : σ .x)(a : τ).
From the set of preterms, let's consider the set Λ of well-typedterms, or simply terms.
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Simply typed lambda calculus
Typing rules for → (application and abstraction):
Γ,x : σ ` e : τABS
Γ ` (λx : σ .e) : (σ → τ)
Γ ` e : σ → τ Γ ` f : σAPP
Γ ` ef : τ
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Simply typed lambda calculus
Typing rules for × (introduction and elimination):
Γ ` t : A Γ ` u : BPROD-INT
Γ ` (t,u) : A×B
Γ ` (t,u) : A×BPROD-EL1
π1(t,u) : AΓ ` (t,u) : A×B
PROD-EL2π2(t,u) : B
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Simply typed lambda calculus
Unlike LC, is decidable and non Turing-complete -> itsevaluation always halts.
Normalising: the reduction of a preterm always terminates. If isa term, it ends giving the normal form of the term. If not,giving out some kind of error or unspeci�ed behaviour.
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Term evaluation
Based on β−reduction:
(λx : σ .E )FE-APP
E [x := F ]
t→ t ′E-APP1
tu→ t ′ut→ t ′
E-APP2ut→ ut ′
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Syntax and semantics
A STLC for natural numbers:
` 0 : N
Γ ` x : NSUCC
Γ ` sx : N
Γ ` x : N Γ ` y : NSUM
Γ ` x + y : N
...
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Syntax and semantics
A STLC for natural numbers:
` 0 : N
Γ ` x : NSUCC
Γ ` sx : N
Γ ` x : N Γ ` y : NSUM
Γ ` x + y : N
...
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Syntax and semantics
A STLC for natural numbers:
` 0 : N
Γ ` x : NSUCC
Γ ` sx : N
Γ ` x : N Γ ` y : NSUM
Γ ` x + y : N
...
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Curry-Howard isomorphism
�Predicates-as-types�, link between type theory and logical calculus:
Intuitionistic interpretation. If a type A has at least a term a,a : A, a is a proof of A.
Lambda abstraction: hypotheses introduction.
Term application equates to modus ponens:
Γ ` e : σ → τ Γ ` f : σAPP
Γ ` ef : τ
Rules for introduction and elimination of pairs (product) areakin to those of conjunction of predicates.
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Curry-Howard isomorphism
σ ,τ ::= β |σ → τ|σ × τ|σ + τ|0|1
p,q ::= b|p→ q|p∧q|p∨q|⊥|>
Types can be seen as propositions.Terms can be interpreted intuitionistically (BHK) as proofs(algorithms) of their corresponding types. For example, λxα .x is aproof of α → α , which is a tautology (taulologies equate tocombinators).Given a set of basic proofs with their types/propositions, we canbuild a proof of the propositions derived from them.
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Categorical model of STLC
Syntax-semantics duality between STLC and CCC (Lambek, 1970).
More precisely, type theories can be interpreted using categorytheory, and conversely, we can formalise categories in the languageof type theories. Generally, we can say that the relation between atype theory and its corresponding category is akin to syntax vssemantics . We can show this studying the relationship betweenSTLC with pairs and Cartesian closed categories (Cfr. Lambek andScott, 1988).
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Lambek-Lawvere isomorphism
Given Λ, let C be a Cartesian closed category with:
Product and exponential.
Terminal object 1.
Interpretation Λ→ C :
Types are interpreted as objects, i.e. [[β ]] ∈ Ob(C ).
A term e : σ is interpreted uniquely as a morphism 1→ [[σ ]].
Application of terms: composition of morphisms.
Pairs of terms: pair of morphisms.
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Lambek-Lawvere isomorphism
Given a CCC C , its internal language is the smallest TT preservingits structure:
Types are the objects of C .
Terms are the morphisms of C .
The composition of morphisms is given by term aplication.
A pair of morphisms is described by a pair of terms.
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Lambek-Lawvere isomorphism
The functors Syn (or Con) and Lang are dual to each other, so:
The interpretation of Λ , Syn(Λ), is a CCC C ′.
Conversely, the structure of a given CCC C can be describedusing a Λ′ of STLC, Λ′ = Lang(C ). Λ′ is the internal language
of C .
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Lambek-Lawvere isomorphism
The functors Syn (or Con) and Lang are dual to each other, so:
The interpretation of Λ , Syn(Λ), is a CCC C ′.
Conversely, the structure of a given CCC C can be describedusing a Λ′ of STLC, Λ′ = Lang(C ). Λ′ is the internal language
of C .
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Lambek-Lawvere isomorphism
The functors Syn (or Con) and Lang are dual to each other, so:
The interpretation of Λ , Syn(Λ), is a CCC C ′.
Conversely, the structure of a given CCC C can be describedusing a Λ′ of STLC, Λ′ = Lang(C ). Λ′ is the internal language
of C .
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Lambek-Lawvere isomorphism
Type theory Category theory
Types Objects
Unit type (> or 1) Terminal object
Product type A×B Product of objects A×B
Function type A→ B Exponential object BA
Terms Morphisms
Pair of terms (f ,g) Pair of morphisms (f ,g)
Projections of terms, π1and π2 Projections of morphisms, π1and π2
Abstraction λxA.f : B Arrow f : A→ B with a free variable x : A
Application fg Composition of arrows fg
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
C-H and L-L isomorphisms
All of them form a kind of triangular relationship betweenpropositional calculus, type theory and category theory.Important in the areas of logic and computation (morphisms asalgorithms).
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Índice
1 Introduction
2 Simply typed lambda calculus
3 Higher-order type systems
4 Concluding remarks
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Higher-order type systems
Note the rigid distinction between types and terms in STLC:
λxα .x : α → α
λ (xy)N×N .x + y : N×N → N
Why do we should want to explore these systems?
More expressivity: terms on types, types on terms...
Disadvantage: systems can be non-normalising.
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Higher-order type systems
Note the rigid distinction between types and terms in STLC:
λxα .x : α → α
λ (xy)N×N .x + y : N×N → N
Why do we should want to explore these systems?
More expressivity: terms on types, types on terms...
Disadvantage: systems can be non-normalising.
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Higher-order type systems
Note the rigid distinction between types and terms in STLC:
λxα .x : α → α
λ (xy)N×N .x + y : N×N → N
Why do we should want to explore these systems?
More expressivity: terms on types, types on terms...
Disadvantage: systems can be non-normalising.
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Dependent type systems
Some relevant authors:
Martin-Löf, P. (1984), Intuitionistic Type Theory, Bibliopolis.
Cocquand, T.; Huet, G. (1988), �The Calculus ofConstructions�, Information and Computation, Vol. 76, Issue2-3.
Barendregt, H.P. (1991), �Introduction to generalized typesystems�, Journal of Functional Programming, 1(2):125-154.
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Pure type systems
PTS blurrs or erases the distinction between types and terms, thusallowing to predicate over types. The concept of type must begeneralised:
Sorts: ?, � (Prop / Type).
Kinds: �→ ?, �→�, . . .
We will focus on a speci�c family of normalising type systems.
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Barendregt's λ−cube
λ→ λP
λ2 λP2
λσ λPσ
λω λPω
Polymorphism
Dependence
Type constructors
H.P. Barendregt, Introduction to generalized type systems, Journalof Functional Programming, 1(2):125-154, 1991.
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Polymorphism
Universal quanti�cation over types.
Identity function
Instead of an identity function for each type, there is a single one:
Λαλxα .x : ∀α.α → α
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Dependent types
Types depending of terms.
Π types: expands the idea of generalisation and arrow.
Πx :AB(x)
∀x ∈ A B(x)
x : A−→ B(x) : �
If A is a type, B is such that, for each x : A there is a type B(x),i.e., B gives out a family of types indexed over A.
b : B has the form λxA.T . If b : Πx :AB(x) and a : A, thenba : B(a).
If B(x) gives out constant types, it equates to A→ B .
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Dependent types
All application and abstraction rules of these systems can besummarised as follows if we consider the whole cube system (Cfr.(Roorda, 2000)):
Γ,x : A ` b : B Γ ` (Πx : A.B) : t ∈ {?,�}ABS
Γ ` (λx : A.b) : Πx : A.B
Γ ` f : (Πx : A.B) : t Γ ` a : AAPP
Γ ` fa : B[x ::= A]
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Categorical model of dependent types: Locally CCC
A category C whose slice categories C /x are all Cartesian closed.The dependent type Πx :AB(x) can be interpreted as an object inthe slice category C /x , since it can be interpreted as a morphismB → A.
B
C /x
A
In the same way that we did whith STLC, we can consider functorsSyn and Lang , so Syn(DTT ) is a lCCC, and for a given lCCC,Lang(lCCC ) is a DTT.Also, relationship to intuitionistic quanti�ed PL.
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Martin-Löf's ITT (impredicative)
Constructive foundations of mathematics (Martin-Löf,1971). Alsocontinuation of the idea of isomorphism between propositions andtypes within an intuitionistic framework (terms are proofs ofpropositions).Extension of STLC by adding universes. A universe [idea taken fromGrothendieck] contains as objects the previous types. So if σ and τ
are elements of universe U, they are types. Universe closed underconstruction of types:
Γ ` f : A : U Γ ` B : UΓ ` A→ B : U
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Martin-Löf's ITT (impredicative)
Showed to be inconsistent when
U : U
is considered. (Girard,1971) showed its inconsistency (the expansionof the term does not reach a normal form).
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Girard's paradox
Not at the same time:
Universal quanti�cation over all propositions.
Isomorphism between types and propositions.
Alternatives:
ITT (predicative): not universal quanti�cation over allpropositions. Prop and Type are identi�ed, a hierarchy ofuniverses.
CoC (impredicative): the relationship between propositions andtypes is weaker than isomorphism: every proposition isidenti�ed with the type of its roofs, but there arenon-propositional types (data types).
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Intuitionistic type theory
The predicative version of this theory (Martin-Löf,1975) has apredicative hierarchy of universes.
Dependent and function types.
Dependent sum and sum types.
Unit and empty types.
Strongly normalising.
Identi�cation of types and (quanti�ed) propositions (CHisomorphism). Terms of a certain types are seen as proofs of them.The rules of formation of complex types are akin to the rules ofintuitionistic �rst-order logic.Equality types and identity types: won't be discussed here.
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Category of ITT: Locally CCC
Extensionally, the aforementioned locally closed Cartesiancategories (lCCC) can provide a model for ITT.
Intensional versions are more much complicated (won't beconsidered here).
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Calculus of constructions
Created by Thierry Coquand.
Type of propositions P (small types), hierarchy of types oftypes (large types) and the type T of large types.
K ::= ?|�i (i ≥ 1)
σ ,τ,M,N ::= x |K |Πx : σ .τ|λx : σ .Mτ |MNτ[x :σ ]
Proofs have as a type P. Predicates are functions that give outpropositions.
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Calculus of constructions
Some features:
Pure type system.
Strongly normalising.
Dependent types.
Empty and unit type.
Non-propositional types: e.g. data types.
Distinction between:
Impredicative type * (type of propositions).Predicative hierarchy � (types of types).
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Calculus of constructions
Propositions can be seen as types, extending thus the CHisomorphism to quanti�ed PL, but not all types are to be read aspropositions. Rejection of the identi�cation between propositionsand types (Coquand, 1986):
Typei and Prop are terms, and also for terms M and N, then(MN), ΠM.N and λx .M are terms. T is not a term, is only a type.
Predicativity and non-predicativity are not
contradictory concepts: simply, the level of proposition
may be non-predicative and the level of type must be
predicative.
(Coquand, 1986)
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Model
The model of CoC has to deal with a predicative structure of typesand a predicative universe T.
Locally CCC for the hierarchy of types.
Appropiate structure for the impredicativity: collections ofsubsets.
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Índice
1 Introduction
2 Simply typed lambda calculus
3 Higher-order type systems
4 Concluding remarks
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC
beamer-icsi-logo
IntroductionSimply typed lambda calculus
Higher-order type systemsConcluding remarks
Concluding remarks
Concluding remarks
Problems with the categorical model of dependent types.
Di�erences between the predicative hierarchy of ITT and theimpredicative universe of CoC.
CH isomorphism and its variants: relationship betweenpropositions and types.
Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC