B A Y C P L E I C T S U PART I M A i 1 0 i: M : A M - - PowerPoint PPT Presentation

β–Ά
b a y c p l e i c t s u
SMART_READER_LITE
LIVE PREVIEW

B A Y C P L E I C T S U PART I M A i 1 0 i: M : A M - - PowerPoint PPT Presentation

B A Y C P L E I C T S U PART I M A i 1 0 i: M : A M A A i j i: , j: M : A M A n-cube i 1 : , i 2 : , , i n : M : A M[1/j] M[1/i] M[i/j] M[0/i] M[0/j] M i j i:


slide-1
SLIDE 1

PART I

C U B I C A L E P Y T S

slide-2
SLIDE 2

i:𝕁 ⊦ M : A

i 1 M

A

slide-3
SLIDE 3

i:𝕁, j:𝕁 ⊦ M : A

i j

M

A

A

slide-4
SLIDE 4

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

A

M

n-cube

slide-5
SLIDE 5

M

i j

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

slide-6
SLIDE 6

Ξ“ ⊦ i : 𝕁

i:𝕁 ∈ Ξ“

0 : 𝕁 𝕁 is not a type! It is an alian animal r ∧ s : 𝕁 r : 𝕁 s : 𝕁 1 : 𝕁 r ∨ s : 𝕁 r : 𝕁 s : 𝕁 ~ r : 𝕁 r : 𝕁

  • ptional
slide-7
SLIDE 7

A IdA

i n t e r n a l i z e e x t r a p a t h s new paths

univalence funext loop

Pre-cubical Era

(induced)

slide-8
SLIDE 8

A IdA

i n t e r n a l i z e n e w p a t h s

univalence loop

Cubical Era judgmental framework

  • f paths
slide-9
SLIDE 9

base : S1 S1 : U loopr : S1 r : 𝕁 loop0 ≑ base : S1 loop1 ≑ base : S1 loop: IdS1(base; base)

slide-10
SLIDE 10

elimS1[x.C](Mbase; Mloop; N) : C[N/x] x: S1 ⊒ C : U Mbase : C[base/x] N: S1 Mloop : Mbase =loop

x.C Mbase

elimS1[x.C](Mbase; i.Mloop; N) : C[N/x] x: S1 ⊒ C : U Mbase : C[base/x] N: S1 i:𝕁 ⊒ Mloop : C[loopi/x] Mloop[0/i] ≑ Mbase : C[base/x] Mloop[1/i] ≑ Mbase : C[base/x]

slide-11
SLIDE 11

elimS1[x.C](Mbase; i.Mloop; N) : C[N/x]

Mbase : C[base/x] i:𝕁 ⊒ Mloop : C[loopi/x] Mloop[0/i] ≑ Mbase : C[base/x] Mloop[1/i] ≑ Mbase : C[base/x] loopr : S1 loop1 ≑ base : S1 loop0 ≑ base : S1 base : S1

Mbase Mloop

x.C

slide-12
SLIDE 12

elimS1[x.C](Mbase; j.Mloop; base) ≑ Mbase : C[base/x] (…) elimS1[x.C](Mbase; j.Mloop; loopi) ≑ Mloop[i/j] : C[loopi/x] (…)

  • 1. diagonal substitution is crucial
  • 2. we need to improve the framework

to enable path concatenation e.g., "loop βˆ™ loop"

slide-13
SLIDE 13

IdA

e x t r a p a t h s

univalence funext loop

Pre-cubical

including concatenation, reversal, etc., via magical J

A

n e w p a t h s

univalence loop

Cubical

*stay tuned for the next week

slide-14
SLIDE 14

Mi

Ai Path types

Pathi.A(N; O) : U i:𝕁 ⊦ A : U N : A[0/i] O : A[1/i]

"Ξ i:𝕁 A" with endpoints N O

Ξ»i.M : Pathi.A(N; O) i:𝕁 ⊦ M : A M[0/i] ≑ N : A[0/i] M[1/i] ≑ O : A[1/i] P@r : A[r/i] r : 𝕁 P : Pathi.A(N; O) P@0 ≑ N : A[0/i] P : Pathi.A(N; O) P@1 ≑ O : A[1/i]

slide-15
SLIDE 15

Mi

Ai Path types

"Ξ i:𝕁 A" with endpoints N O

(Ξ»i.M)@r ≑ M[r/i] : A[r/i] i:𝕁 ⊦ M : A r : 𝕁 P ≑ Ξ»i.P@i : Pathi.A(N; O) P : Pathi.A(N; O)

slide-16
SLIDE 16

Path types

internalizing i:𝕁 ⊦ M : A

Identification types

freely generated by refl

these two will become equivalent when we fix the framework (next week)

slide-17
SLIDE 17

A

n e w p a t h s

univalence loop

*stay tuned for the next week

Where is function extensionality?

YES, WE CAN!

(NOT VIA UNIVALENCE)

slide-18
SLIDE 18

P : Ξ x:APath_.B(x)(F(x); G(x)) x:A ⊦ P(x) : Path_.B(x)(F(x); G(x)) x:A, i:𝕁 ⊦ P(x)@i : B(x) i:𝕁, x:A ⊦ P(x)@i : B(x) i:𝕁 ⊦ Ξ»x.P(x)@i : B(x) Ξ»i.Ξ»x.P(x)@i : Path_.Ξ (x:A)B(x)(F; G)

(you need to check the boundaries F and G)

Function extensionality

slide-19
SLIDE 19

i:𝕁 ⊦ Ξ»x.P(x)@i : B(x) Ξ»i.Ξ»x.P(x)@i : Path_.Ξ (x:A)B(x)(F; G) P : Ξ x:APath_.B(x)(F(x); G(x)) x:A ⊦ P(x) : Path_.B(x)(F(x); G(x)) x:A, i:𝕁 ⊦ P(x)@i : B(x) i:𝕁, x:A ⊦ P(x)@i : B(x)

  • 1. Both paths and functions internalize

hypothetical judgments

  • 2. You can exchange hypotheses
  • 3. Paths and functions thus "commute"
  • 4. Therefore, function extensionality!
slide-20
SLIDE 20

Fix the framework (next week)

  • 1. What are the types? (form)
  • 2. What are the constructors? (intro)
  • 3. How to consume an element? (elim)
  • 4. What if a constructor is consumed? (Ξ²)
  • 5. Uniqueness principle? (Ξ·)
  • 6. How to compose stu? (Kan operators)

every type is responsible for its path concatenation

slide-21
SLIDE 21

IdA

e x t r a p a t h s

univalence funext loop

Pre-cubical

including concatenation, reversal, etc., via magical J

A

n e w p a t h s

univalence loop

Cubical

*stay tuned for the next week