56
· ·

A comparison between ITT and CoC

  • 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

beamer-icsi-logo

IntroductionSimply typed lambda calculus

Higher-order type systemsConcluding remarks

That's all! Thank you very much!

Category Theory 2015 · Aveiro, PORTUGAL A comparison between ITT and CoC