65
Towards a type theory for directed homotopy theory Paige Randall North Ohio State University 10 July 2018

Towards a type theory for directed homotopy theory

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Towards a type theory for directed homotopytheory

Paige Randall North

Ohio State University

10 July 2018

Outline

Introduction

Directed homotopy theory

The hom type former

An interpretation in the category of categories

A homotopical perspective

Conclusion

Outline

Introduction

Directed homotopy theory

The hom type former

An interpretation in the category of categories

A homotopical perspective

Conclusion

Goal

Goal

To develop a directed type theory.

To formalize theorems about:

§ Higher category theory§ Directed homotopy theory

§ Concurrent processes§ Rewriting

Criteria

§ Directed paths are introduced as terms of a type former, hom,to be added to Martin-Lof type theory

§ Transport along terms of hom

§ Independence of hom and Id

Goal

Goal

To develop a directed type theory.

To formalize theorems about:

§ Higher category theory§ Directed homotopy theory

§ Concurrent processes§ Rewriting

Criteria

§ Directed paths are introduced as terms of a type former, hom,to be added to Martin-Lof type theory

§ Transport along terms of hom

§ Independence of hom and Id

Goal

Goal

To develop a directed type theory.

To formalize theorems about:

§ Higher category theory

§ Directed homotopy theory§ Concurrent processes§ Rewriting

Criteria

§ Directed paths are introduced as terms of a type former, hom,to be added to Martin-Lof type theory

§ Transport along terms of hom

§ Independence of hom and Id

Goal

Goal

To develop a directed type theory.

To formalize theorems about:

§ Higher category theory§ Directed homotopy theory

§ Concurrent processes§ Rewriting

Criteria

§ Directed paths are introduced as terms of a type former, hom,to be added to Martin-Lof type theory

§ Transport along terms of hom

§ Independence of hom and Id

Goal

Goal

To develop a directed type theory.

To formalize theorems about:

§ Higher category theory§ Directed homotopy theory

§ Concurrent processes

§ Rewriting

Criteria

§ Directed paths are introduced as terms of a type former, hom,to be added to Martin-Lof type theory

§ Transport along terms of hom

§ Independence of hom and Id

Goal

Goal

To develop a directed type theory.

To formalize theorems about:

§ Higher category theory§ Directed homotopy theory

§ Concurrent processes§ Rewriting

Criteria

§ Directed paths are introduced as terms of a type former, hom,to be added to Martin-Lof type theory

§ Transport along terms of hom

§ Independence of hom and Id

Goal

Goal

To develop a directed type theory.

To formalize theorems about:

§ Higher category theory§ Directed homotopy theory

§ Concurrent processes§ Rewriting

Criteria

§ Directed paths are introduced as terms of a type former, hom,to be added to Martin-Lof type theory

§ Transport along terms of hom

§ Independence of hom and Id

Goal

Goal

To develop a directed type theory.

To formalize theorems about:

§ Higher category theory§ Directed homotopy theory

§ Concurrent processes§ Rewriting

Criteria

§ Directed paths are introduced as terms of a type former, hom,to be added to Martin-Lof type theory

§ Transport along terms of hom

§ Independence of hom and Id

Goal

Goal

To develop a directed type theory.

To formalize theorems about:

§ Higher category theory§ Directed homotopy theory

§ Concurrent processes§ Rewriting

Criteria

§ Directed paths are introduced as terms of a type former, hom,to be added to Martin-Lof type theory

§ Transport along terms of hom

§ Independence of hom and Id

What does directed mean?

Syntactically

Martin-Lof’s identity type is symmetric/undirected since for anytype T , and terms a, b : T , there is a function

i : IdT pa, bq Ñ IdT pb, aq

so that any path p : IdT pa, bq can be inverted to obtain a pathip : IdT pb, aq.

§ Can think of these terms as undirected paths

§ Can we design a type former of directed paths that resemblesId but without its inversion operation i?

What does directed mean?

Syntactically

Martin-Lof’s identity type is symmetric/undirected since for anytype T , and terms a, b : T , there is a function

i : IdT pa, bq Ñ IdT pb, aq

so that any path p : IdT pa, bq can be inverted to obtain a pathip : IdT pb, aq.

§ Can think of these terms as undirected paths

§ Can we design a type former of directed paths that resemblesId but without its inversion operation i?

What does directed mean?

Syntactically

Martin-Lof’s identity type is symmetric/undirected since for anytype T , and terms a, b : T , there is a function

i : IdT pa, bq Ñ IdT pb, aq

so that any path p : IdT pa, bq can be inverted to obtain a pathip : IdT pb, aq.

§ Can think of these terms as undirected paths

§ Can we design a type former of directed paths that resemblesId but without its inversion operation i?

What does directed mean?

Theorem

C cartesian closed category. A functorial reflexive relation

1Cr // Id

ε0ˆε1 // 1C ˆ 1C

models identity types if and only if the mapping path spacefactorization

Xf // Y ù X

1ˆrf // X ˆY IdpY qε1 // Y

generates a weak factorization system on C where all red (resp.blue) maps are in the left (resp. right) class.

What does directed mean?

Theorem

C cartesian closed category. A functorial reflexive relation

1Cr // Id

ε0ˆε1 // 1C ˆ 1C

models identity types if and only if it is

1. transitive,

2. homotopical,

3. symmetric.

What does directed mean?

Semantically

higher groupoids

higher categories(undirected paths Ď

directed paths)

directed spaces(directed paths Ď

undirected paths)

What does directed mean?

Semantically

higher groupoids

higher categories(undirected paths Ď

directed paths)

directed spaces(directed paths Ď

undirected paths)

What does directed mean?

Semantically

higher groupoids

higher categories(undirected paths Ď

directed paths)

directed spaces(directed paths Ď

undirected paths)

Outline

Introduction

Directed homotopy theory

The hom type former

An interpretation in the category of categories

A homotopical perspective

Conclusion

Directed spaces

Rough definition

A space together with a subset of its paths that are marked as‘directed’

Directed spaces

Rough definition

A space together with a subset of its paths that are marked as‘directed’

Directed spaces

Rough definition

A space together with a subset of its paths that are marked as‘directed’

Application: concurrencyConcurrent processes can be represented by directed spaces.

B

A

piA, iB q

pfA, fB q

§ A,B are two processes

§ m, n are two memory locations

§ which can be locked pLq or unlocked pUqby each process

Fundamental questions:

§ Which states are safe? (Predicate Spxq on X op.)

§ Which states are reachable? (Predicate Rpxq on X .)

Application: concurrencyConcurrent processes can be represented by directed spaces.

B

A

piA, iB q

pfA, fB q

§ A,B are two processes

§ m, n are two memory locations

§ which can be locked pLq or unlocked pUqby each process

Fundamental questions:

§ Which states are safe? (Predicate Spxq on X op.)

§ Which states are reachable? (Predicate Rpxq on X .)

Application: concurrencyConcurrent processes can be represented by directed spaces.

LAm

LBn

LAn

LBm

UAn

UBm

UAm

UBn

B

A

piA, iB q

pfA, fB q

§ A,B are two processes

§ m, n are two memory locations

§ which can be locked pLq or unlocked pUqby each process

Fundamental questions:

§ Which states are safe? (Predicate Spxq on X op.)

§ Which states are reachable? (Predicate Rpxq on X .)

Application: concurrencyConcurrent processes can be represented by directed spaces.

LAm

LBn

LAn

LBm

UAn

UBm

UAm

UBn

B

A

piA, iB q

pfA, fB q

§ A,B are two processes

§ m, n are two memory locations

§ which can be locked pLq or unlocked pUqby each process

Fundamental questions:

§ Which states are safe? (Predicate Spxq on X op.)

§ Which states are reachable? (Predicate Rpxq on X .)

Application: concurrencyConcurrent processes can be represented by directed spaces.

LAm

LBn

LAn

LBm

UAn

UBm

UAm

UBn

B

A

piA, iB q

pfA, fB q

§ A,B are two processes

§ m, n are two memory locations

§ which can be locked pLq or unlocked pUqby each process

Fundamental questions:

§ Which states are safe? (Predicate Spxq on X op.)

§ Which states are reachable? (Predicate Rpxq on X .)

Application: concurrencyConcurrent processes can be represented by directed spaces.

LAm

LBn

LAn

LBm

UAn

UBm

UAm

UBn

B

A

piA, iB q

pfA, fB q

§ A,B are two processes

§ m, n are two memory locations

§ which can be locked pLq or unlocked pUqby each process

Fundamental questions:

§ Which states are safe? (Predicate Spxq on X op.)

§ Which states are reachable? (Predicate Rpxq on X .)

Application: concurrencyConcurrent processes can be represented by directed spaces.

LAm

LBn

LAn

LBm

UAn

UBm

UAm

UBn

B

A

piA, iB q

pfA, fB q

§ A,B are two processes

§ m, n are two memory locations

§ which can be locked pLq or unlocked pUqby each process

Fundamental questions:

§ Which states are safe? (Predicate Spxq on X op.)

§ Which states are reachable? (Predicate Rpxq on X .)

Outline

Introduction

Directed homotopy theory

The hom type former

An interpretation in the category of categories

A homotopical perspective

Conclusion

Rules for hom: core and op

T TYPE

T coreTYPE

T TYPE

T opTYPE

T TYPE t : T core

it : T

T TYPE t : T core

iopt : T op

Rules for hom: formation

T TYPE s : T op t : T

homT ps, tq TYPE

Id formation

T TYPE s : T t : T

IdT ps, tq TYPE

Rules for hom: formation

T TYPE s : T op t : T

homT ps, tq TYPE

Id formation

T TYPE s : T t : T

IdT ps, tq TYPE

Rules for hom: introduction

T TYPE t : T core

1t : homT piopt, itq TYPE

Id introduction

T TYPE t : T

rt : IdT pt, tq TYPE

Rules for hom: introduction

T TYPE t : T core

1t : homT piopt, itq TYPE

Id introduction

T TYPE t : T

rt : IdT pt, tq TYPE

Rules for hom: right elimination and computation

T TYPE s : T core, t : T , f : homT piops, tq $ Dpf q TYPE

s : T core $ dpsq : Dp1sq

s : T core, t : T , f : homT piops, tq $ eRpd , f q : Dpf q

s : T core $ eRpd , 1sq ” dpsq : Dp1sq

Id elimination and computation

T TYPE

s : T , t : T , f : IdT ps, tq $ Dpf q TYPE s : T $ dpsq : Dprsq

s : T , t : T , f : IdT ps, tq $ jpd , f q : Dpf qs : T $ jpd , rsq ” dpsq : Dprsq

Rules for hom: right elimination and computation

T TYPE s : T core, t : T , f : homT piops, tq $ Dpf q TYPE

s : T core $ dpsq : Dp1sq

s : T core, t : T , f : homT piops, tq $ eRpd , f q : Dpf q

s : T core $ eRpd , 1sq ” dpsq : Dp1sq

Id elimination and computation

T TYPE

s : T , t : T , f : IdT ps, tq $ Dpf q TYPE s : T $ dpsq : Dprsq

s : T , t : T , f : IdT ps, tq $ jpd , f q : Dpf qs : T $ jpd , rsq ” dpsq : Dprsq

Rules for hom: left elimination and computation

T TYPE s : T op, t : T core, f : homT ps, itq $ Dpf q TYPE

s : T core $ dpsq : Dp1sq

s : T op, t : T core, f : homT ps, itq $ eLpd , f q : Dpf qs : T core $ eLpd , 1sq ” dpsq : Dp1sq

Id elimination and computation

T TYPE

s : T , t : T , f : IdT ps, tq $ Dpf q TYPE s : T $ dpsq : Dprsq

s : T , t : T , f : IdT ps, tq $ jpd , f q : Dpf qs : T $ jpd , rsq ” dpsq : Dprsq

Rules for hom: left elimination and computation

T TYPE s : T op, t : T core, f : homT ps, itq $ Dpf q TYPE

s : T core $ dpsq : Dp1sq

s : T op, t : T core, f : homT ps, itq $ eLpd , f q : Dpf qs : T core $ eLpd , 1sq ” dpsq : Dp1sq

Id elimination and computation

T TYPE

s : T , t : T , f : IdT ps, tq $ Dpf q TYPE s : T $ dpsq : Dprsq

s : T , t : T , f : IdT ps, tq $ jpd , f q : Dpf qs : T $ jpd , rsq ” dpsq : Dprsq

Syntactic results

§ Transport: for a dependent type t : T $ Sptq:

t : T core, t 1 : T , f : homT piopt, t 1q, s : Spitq$ transportRps, f q : Spt 1q

§ Composition: for a type T :

r : T op, s : T core, t : T , f : homT pr , isq, g : homT piops, tq

$ compRpf , gq : homT pr , tq

§ With Σ types, we can define

ReachablepT q :“ Σx :T homT pi , xq

SafepT q :“ Σx :T op homT px , f q

for any type T with terms i : T op, f : T .

Syntactic results

§ Transport: for a dependent type t : T $ Sptq:

t : T core, t 1 : T , f : homT piopt, t 1q, s : Spitq$ transportRps, f q : Spt 1q

§ Composition: for a type T :

r : T op, s : T core, t : T , f : homT pr , isq, g : homT piops, tq

$ compRpf , gq : homT pr , tq

§ With Σ types, we can define

ReachablepT q :“ Σx :T homT pi , xq

SafepT q :“ Σx :T op homT px , f q

for any type T with terms i : T op, f : T .

Syntactic results

§ Transport: for a dependent type t : T $ Sptq:

t : T core, t 1 : T , f : homT piopt, t 1q, s : Spitq$ transportRps, f q : Spt 1q

§ Composition: for a type T :

r : T op, s : T core, t : T , f : homT pr , isq, g : homT piops, tq

$ compRpf , gq : homT pr , tq

§ With Σ types, we can define

ReachablepT q :“ Σx :T homT pi , xq

SafepT q :“ Σx :T op homT px , f q

for any type T with terms i : T op, f : T .

Outline

Introduction

Directed homotopy theory

The hom type former

An interpretation in the category of categories

A homotopical perspective

Conclusion

The interpretation

§ Use the framework of comprehension categories

§ Dependent types are represented by functors T : Γ Ñ Cat.

§ Dependent terms are represented by natural transformations

Γ

˚ ))

T

77�� t Cat

where ˚ : Γ Ñ Cat is the functor which takes everything tothe one-object category.

§ Context extension is represented by the Grothendieckconstruction which takes each functor T : Γ Ñ Cat to theGrothendieck opfibration

πΓ :

ż

ΓT Ñ Γ.

Interpreting core and op in the empty context

T TYPE

T coreTYPE T op

TYPE

T TYPE t : T core

it : T iopt : T op

For any category T ,

§ T core :“ obpT q

§ T op :“ T op

§ i : T core Ñ T and iop : T core Ñ T op are the identity onobjects.

Interpreting hom formation and introduction

T TYPE s : T op t : T

homT ps, tq TYPE

T TYPE t : T core

1t : homT piopt, itq TYPE

For any category T ,

§ Take the functor

hom : T op ˆ T Ñ Set ãÑ Cat.

§ Take the natural transformation

T core

˚**

hom ˝piopˆiq

44�� 1‚ Cat

where each component 1t : ˚ Ñ hompt, tq picks out theidentity morphism of t.

Interpreting right hom elimination and computation

T TYPE s : T core, t : T , f : homT piops, tq $ Dpf q TYPE

s : T core $ dpsq : Dp1sq

s : T core, t : T , f : homT piops, tq $ eRpd , f q : Dpf q

s : T core $ eRpd , 1sq ” dpsq : Dp1sq

§ Use the fact that the subcategoryT core is ‘initial’:

§ for every ps, t, f q Pş

T coreˆThom

there is a unique morphismp1s , f q : ps, s, 1sq Ñ ps, t, f q withdomain in T core

§ Set eRpdqps,t,f q :“ Dp1s , f qdps,s,1sq

Interpreting right hom elimination and computation

T TYPE s : T core, t : T , f : homT piops, tq $ Dpf q TYPE

s : T core $ dpsq : Dp1sq

s : T core, t : T , f : homT piops, tq $ eRpd , f q : Dpf q

s : T core $ eRpd , 1sq ” dpsq : Dp1sq

ş

T coreˆT hom˚

!!D .. Cat

T core

˚11

D

;;

��d?�

1‚

OO

§ Use the fact that the subcategoryT core is ‘initial’:

§ for every ps, t, f q Pş

T coreˆThom

there is a unique morphismp1s , f q : ps, s, 1sq Ñ ps, t, f q withdomain in T core

§ Set eRpdqps,t,f q :“ Dp1s , f qdps,s,1sq

Interpreting right hom elimination and computation

T TYPE s : T core, t : T , f : homT piops, tq $ Dpf q TYPE

s : T core $ dpsq : Dp1sq

s : T core, t : T , f : homT piops, tq $ eRpd , f q : Dpf q

s : T core $ eRpd , 1sq ” dpsq : Dp1sq

ş

T coreˆT hom˚

!!D .. Cat

T core

˚11

D

;;

��d?�

1‚

OO§ Use the fact that the subcategoryT core is ‘initial’:

§ for every ps, t, f q Pş

T coreˆThom

there is a unique morphismp1s , f q : ps, s, 1sq Ñ ps, t, f q withdomain in T core

§ Set eRpdqps,t,f q :“ Dp1s , f qdps,s,1sq

Interpreting right hom elimination and computation

T TYPE s : T core, t : T , f : homT piops, tq $ Dpf q TYPE

s : T core $ dpsq : Dp1sq

s : T core, t : T , f : homT piops, tq $ eRpd , f q : Dpf q

s : T core $ eRpd , 1sq ” dpsq : Dp1sq

ş

T coreˆT hom˚

!!D .. Cat

T core

˚11

D

;;

��d?�

1‚

OO§ Use the fact that the subcategoryT core is ‘initial’:

§ for every ps, t, f q Pş

T coreˆThom

there is a unique morphismp1s , f q : ps, s, 1sq Ñ ps, t, f q withdomain in T core

§ Set eRpdqps,t,f q :“ Dp1s , f qdps,s,1sq

Interpreting right hom elimination and computation

T TYPE s : T core, t : T , f : homT piops, tq $ Dpf q TYPE

s : T core $ dpsq : Dp1sq

s : T core, t : T , f : homT piops, tq $ eRpd , f q : Dpf q

s : T core $ eRpd , 1sq ” dpsq : Dp1sq

ş

T coreˆT hom˚

!!D ..

� eRpdq

Cat

T core

˚11

D

;;

��d?�

1‚

OO

§ Use the fact that the subcategoryT core is ‘initial’:

§ for every ps, t, f q Pş

T coreˆThom

there is a unique morphismp1s , f q : ps, s, 1sq Ñ ps, t, f q withdomain in T core

§ Set eRpdqps,t,f q :“ Dp1s , f qdps,s,1sq

Interpreting left hom elimination and computation

T TYPE s : T op, t : T core, f : homT ps, itq $ Dpf q TYPE

s : T core $ dpsq : Dp1sq

s : T op, t : T core, f : homT ps, itq $ eLpd , f q : Dpf qs : T core $ eLpd , 1sq ” dpsq : Dp1sq

§ Replace T by T op and apply right hom elimination andcomputation.

Outline

Introduction

Directed homotopy theory

The hom type former

An interpretation in the category of categories

A homotopical perspective

Conclusion

A homotopical perspective

While the homotopy theory of isomorphisms in categories

C Ñ Cp–q Ñ C ˆ C

provides an interpretation of Martin-Lof’s identity type, thehomotopy theory of morphisms in categories

C Ñ CpÑÑÑq Ñ C ˆ C

provides an interpretation of this hom former.

The weak factorization system

§ Let p–q denote the category with two objects and oneisomorphism between them.

§ Let pÑÑÑq denote the category with two objects and onemorphism between them.

§ Then factorize the codiagonal of the one-point category intwo ways

˚ ` ˚ Ñ p–q Ñ ˚ ˚ `˚ Ñ pÑÑÑq Ñ ˚

§ which produces a factorization of any diagonal in two wayswhich each generate weak factorization systems.

C Ñ Cp–q Ñ C ˆ C C Ñ CpÑÑÑq Ñ C ˆ C

§ The first gives an interpretation of the Id type in Cat.

§ The second underlies this interpretation of the hom type inCat.

The weak factorization system continued

§ The right class of this weakfactorization system are thosefunctors p : E Ñ B which have theenriched right lifting property

˚

DOM

��

// E

p

��pÑÑÑq //

==

B

§ so all Grothendieck opfibrations (dependent projections) are inthe right class.

§ The functor 1‚ : T core ãÑş

T coreˆT hom is the left part of thefactorization of

i : T core Ñ T .

§ Then the right hom elimination and computation rule arisesfrom the weak factorization system.

T core� _

1‚

��

d //ş

ş

TcoreˆT hom D

π

��ş

T coreˆT hom

eRpdq77

ş

T coreˆT hom

Outline

Introduction

Directed homotopy theory

The hom type former

An interpretation in the category of categories

A homotopical perspective

Conclusion

Summary & future work

Summary

We have:

§ a directed type theory

§ with a model in Cat.

Future work

We need to:§ integrate this into traditional Martin-Lof type theory

§ integrate Id and hom in the same theory§ specify Σ, Π, etc

§ find interpretations in categories of directed spaces§ build ‘directed’ weak factorization systems§ build universes

Summary & future work

Summary

We have:

§ a directed type theory

§ with a model in Cat.

Future work

We need to:§ integrate this into traditional Martin-Lof type theory

§ integrate Id and hom in the same theory§ specify Σ, Π, etc

§ find interpretations in categories of directed spaces§ build ‘directed’ weak factorization systems§ build universes

Summary & future work

Summary

We have:

§ a directed type theory

§ with a model in Cat.

Future work

We need to:§ integrate this into traditional Martin-Lof type theory

§ integrate Id and hom in the same theory§ specify Σ, Π, etc

§ find interpretations in categories of directed spaces§ build ‘directed’ weak factorization systems§ build universes

Summary & future work

Summary

We have:

§ a directed type theory

§ with a model in Cat.

Future work

We need to:§ integrate this into traditional Martin-Lof type theory

§ integrate Id and hom in the same theory§ specify Σ, Π, etc

§ find interpretations in categories of directed spaces§ build ‘directed’ weak factorization systems§ build universes

Thank you!

Further Reading

L. Fajstrup et al.Directed Algebraic Topology and Concurrency.Springer International Publishing, 2016.

E. Finster and S. Mimram.A Type-Theoretical Definition of Weak ω-Categories.2017 32nd Annual ACM/IEEE Symposium on Logic in Computer Science, 1–12,2017.

D. R. Licata and R. Harper.2-Dimensional Directed Type Theory.Electronic Notes in Theoretical Computer Science, 276 (2011), pp. 263-289.

A. Nyuts.Towards a Directed Homotopy Type Theory based on 4 Kinds of Variance.MA thesis. KU Leuven, 2015.

E. Riehl and M. Shulman.A type theory for synthetic 8-categories.Higher Structures, 1(1):116-193, 2017.

M. Warren.Directed Type TheoryTalk at IAS, 10 April 2013.