Cubical Type Theory favonia 1 2 t f 2 t f 2 t - - PowerPoint PPT Presentation

β–Ά
cubical
SMART_READER_LITE
LIVE PREVIEW

Cubical Type Theory favonia 1 2 t f 2 t f 2 t - - PowerPoint PPT Presentation

Cubical Type Theory favonia 1 2 t f 2 t f 2 t f 2 t f 4 0 7 3 8 1 5 2 6 2 t f 4 0 7 3 8 1 5 2 6 2 3 3 3 3


slide-1
SLIDE 1

favonia

Cubical

Type Theory

1

slide-2
SLIDE 2

2

slide-3
SLIDE 3

𝔺 t f

2

slide-4
SLIDE 4

𝔺 t f βŸ™

2

slide-5
SLIDE 5

𝔺 t f βŸ™ ⟘

2

slide-6
SLIDE 6

𝔺 t f βŸ™ ⟘ β„• 1 2 3 4 7 5 6 8 …

2

slide-7
SLIDE 7

𝔺 t f βŸ™ ⟘ β„• 1 2 3 4 7 5 6 8 … β„• β†’ β„• …

2

slide-8
SLIDE 8

3

slide-9
SLIDE 9

3

slide-10
SLIDE 10

3

slide-11
SLIDE 11

3

slide-12
SLIDE 12

3

slide-13
SLIDE 13

3

slide-14
SLIDE 14

2 4 6 8 1 3 5 7 9 quotient

4

slide-15
SLIDE 15

2 4 6 8 1 3 5 7 9 quotient

4

slide-16
SLIDE 16

2 4 6 8 1 3 5 7 9 quotient

4

slide-17
SLIDE 17

universe

5

slide-18
SLIDE 18

𝔺 id not universe

5

slide-19
SLIDE 19

𝔺 id not βŸ™+βŸ™ id swap universe

5

slide-20
SLIDE 20

𝔺 id not βŸ™+βŸ™ id swap β„•β†’β„• … β„• ⟘ universe

5

slide-21
SLIDE 21

base l

  • p

circle (homotopy theory)

6

slide-22
SLIDE 22
  • I. Cubes

7

slide-23
SLIDE 23

M A

8

slide-24
SLIDE 24

1 M A

8

slide-25
SLIDE 25

i:𝕁 ⊦ M : A

i 1 M A

8

slide-26
SLIDE 26

i:𝕁, j:𝕁 ⊦ M : A

i j M A

9

slide-27
SLIDE 27

i1:𝕁, i2:𝕁, ..., in:𝕁 ⊦ M : A

A M

n-cube

10

slide-28
SLIDE 28

M

i j

11

slide-29
SLIDE 29

M

i j

M[0/j] M[1/j] M[1/i] M[0/i]

11

slide-30
SLIDE 30

M

i j

M[0/j] M[1/j] M[1/i] M[0/i] M[i/j]

11

slide-31
SLIDE 31

N0 N

1

A M

path types

functions from 𝕁

12

slide-32
SLIDE 32

i:𝕁 ⊦ M : A M[0/i] ≑ N0 : A[0/i] M[1/i] ≑ N1 : A[1/i] Ξ»i.M : Pathi.A(N0,N1)

N0 N

1

A M

13

slide-33
SLIDE 33

i:𝕁 ⊦ M : A M[0/i] ≑ N0 : A[0/i] M[1/i] ≑ N1 : A[1/i] Ξ»i.M : Pathi.A(N0,N1) P : Pathi.A(N0,N1) r:𝕁 P@r : A[r/i] P@0 ≑ N0 : A[0/i]

N0 N

1

A M

P@1 ≑ N1 : A[1/i]

13

slide-34
SLIDE 34

i:𝕁 ⊦ M : A M[0/i] ≑ N0 : A[0/i] M[1/i] ≑ N1 : A[1/i] Ξ»i.M : Pathi.A(N0,N1) P : Pathi.A(N0,N1) r:𝕁 P@r : A[r/i] P ≑ Ξ»i.P@i : Pathi.A(N0,N1) P@0 ≑ N0 : A[0/i]

N0 N

1

A M

P@1 ≑ N1 : A[1/i] (Ξ»i.M)@r ≑ M[r/i] : A[r/i]

13

slide-35
SLIDE 35

h : Ξ (x:A). Path(F(x), G(x)) Ξ»i.Ξ»x.h(x)@i : Path(F, G)

function extensionality

almost trivial

14

slide-36
SLIDE 36
  • II. the Book

15

slide-37
SLIDE 37

M A N IdA(M,N) reflM : IdA(M,M)

the only generator

16

slide-38
SLIDE 38

suc induction step zero base case refl refl case mathematical induction β€œJ”: induction principle for Id

17

slide-39
SLIDE 39

(A ≃ B) ≃ IdU(A, B)

univalence

A B IdU(A, B) A ≃ B as axiom

18

slide-40
SLIDE 40

(A ≃ B) ≃ IdU(A, B) (A ≃ B) β†’ IdU(A, B)

univalence

A B IdU(A, B) A ≃ B as axiom

18

slide-41
SLIDE 41

base circle base : circle loop : Idcircle(base, base) l

  • p

19

slide-42
SLIDE 42

r e fl univalence loop … J w i t h

  • n

l y

normalization in danger* J(loop) ≑ ???

*most experts believe the normalization fails

refl case

20

slide-43
SLIDE 43

Leave Id alone!

Id/Path should reflect existing paths, not inducing new ones

21

slide-44
SLIDE 44

base circle base : circle i:𝕁 ⊦ loopi : circle

loopi

loop0 ≑ base : circle loop1 ≑ base : circle

i

l

  • p

22

slide-45
SLIDE 45

univalence

A B Vi(A, B, E) E : A ≃ B (when i = 0)* as a type

*see [AFH] (not recommended as the first paper to read)

23

slide-46
SLIDE 46

Judgmental

framework paths

  • f

(then internalized by Path/Id)

24

slide-47
SLIDE 47
  • III. Compositions

25

slide-48
SLIDE 48

concatenation?

26

slide-49
SLIDE 49

concatenation?

26

slide-50
SLIDE 50

concatenation?

26

slide-51
SLIDE 51

Kan filling for cubes

27

slide-52
SLIDE 52

Kan filling for cubes

27

slide-53
SLIDE 53

Kan filling for cubes

constant

concatenation

27

slide-54
SLIDE 54

Kan composition fillers can be done by higher-dimensional composition*

*technical limitations apply; see papers for real (!) math

28

slide-55
SLIDE 55

i j k fillers can be done by higher-dimensional composition*

29

slide-56
SLIDE 56

i j k

i=0 ⊦ Mi=0 : A j=0 ⊦ Mj=0 : A j=1 ⊦ Mj=1 : A i=1 ⊦ Mi=1 : A

fillers can be done by higher-dimensional composition*

29

slide-57
SLIDE 57

i j k

i=0 ⊦ Mi=0 : A j=0 ⊦ Mj=0 : A j=1 ⊦ Mj=1 : A i=1 ⊦ Mi=1 : A k=0 ⊦ Mk=0 : A

fillers can be done by higher-dimensional composition*

29

slide-58
SLIDE 58

i j k

compk.A Mk=0

Mi=0 Mj=0 Mj=1 Mi=1 Mk=0

i=0 β†ͺ Mi=0 i=1 β†ͺ Mi=1 j=0 β†ͺ Mj=0 j=1 β†ͺ Mj=1 : A[1/k]

30

slide-59
SLIDE 59

a composite in a universe is a type itself which has its own composition operator U

31

slide-60
SLIDE 60

i : 𝕁 ⊦ M : A

s y n t a x

a model equivalent to

β€œStandard”

homotopy theory? models in other higher toposes? the

32

slide-61
SLIDE 61

Agda --cubical redtt

https://github.com/RedPRL/redtt https://github.com/agda/cubical

33

slide-62
SLIDE 62

Homotopy Type Theory: Univalent Foundations of Mathematics Syntax and Models of Cartesian Cubical Type Theory [ABCFHL]

https://github.com/dlicata335/cart-cube/blob/master/cart-cube.pdf

Axioms for Modelling Cubical Type Theory in a Topos [OP] (expanded version)

https://arxiv.org/abs/1712.04864

Computational Semantics of Cartesian Cubical Type Theory [A] (chapter 3, still changing everyday)

https://www.cs.cmu.edu/~cangiuli/thesis/

One Path to Enlightenment

(in this order)

34