higher induc ve types in computa onal cubical type theory
play

Higher Induc ve Types in Computa onal Cubical Type Theory Evan - PowerPoint PPT Presentation

Higher Induc ve Types in Computa onal Cubical Type Theory Evan Cavallo & Robert Harper Carnegie Mellon University POPL 2019 0 cubical type theory dependent type theory with a univalent, proof-relevant internal equality POPL 2019


  1. Higher Induc � ve Types in Computa � onal Cubical Type Theory Evan Cavallo & Robert Harper Carnegie Mellon University POPL 2019 0

  2. cubical type theory dependent type theory with a univalent, proof-relevant internal equality POPL 2019 1

  3. cubical type theory dependent type theory with a univalent, proof-relevant internal equality indexed higher induc � ve types ■ quo � ent types for this equality ■ indexed induc � ve types that respect it POPL 2019 1

  4. higher type theory: [Awodey & Warren; Voevodsky] dependent type theory with a univalent, proof-relevant internal equality POPL 2019 2

  5. higher type theory: [Awodey & Warren; Voevodsky] dependent type theory with a univalent, proof-relevant internal equality POPL 2019 2

  6. higher type theory: [Awodey & Warren; Voevodsky] dependent type theory with a univalent, proof-relevant internal equality " " POPL 2019 2

  7. higher type theory: [Awodey & Warren; Voevodsky] dependent type theory with a univalent, proof-relevant internal equality " " isomorphism ⇒ equal types POPL 2019 2

  8. higher type theory: [Awodey & Warren; Voevodsky] dependent type theory with a univalent, proof-relevant internal equality " " isomorphism ⇒ equal types POPL 2019 2

  9. higher type theory: [Awodey & Warren; Voevodsky] dependent type theory with a univalent, proof-relevant internal equality " " isomorphism ⇒ equal types (axioma � zed by homotopy type theory) POPL 2019 2

  10. cubical type theory: [Cohen, Coquand, Huber & Mörtberg; Angiuli, Favonia & Harper] computa � onal higher type theory via dimension variables POPL 2019 3

  11. cubical type theory: [Cohen, Coquand, Huber & Mörtberg; Angiuli, Favonia & Harper] computa � onal higher type theory via dimension variables POPL 2019 3

  12. cubical type theory: [Cohen, Coquand, Huber & Mörtberg; Angiuli, Favonia & Harper] computa � onal higher type theory via dimension variables POPL 2019 3

  13. cubical type theory: path types POPL 2019 4

  14. cubical type theory: path types POPL 2019 4

  15. cubical type theory: coercion POPL 2019 5

  16. cubical type theory: coercion POPL 2019 5

  17. cubical type theory: coercion POPL 2019 5

  18. cubical type theory: composi � on POPL 2019 6

  19. cubical type theory: composi � on POPL 2019 6

  20. cubical type theory: composi � on POPL 2019 6

  21. cubical type theory: composi � on POPL 2019 6

  22. cubical type theory: composi � on POPL 2019 6

  23. cubical type theory: composi � on general case: POPL 2019 6

  24. cubical type theory: + univalence POPL 2019 7

  25. higher induc � ve types quo � ents for proof-relevant equality POPL 2019 8

  26. higher induc � ve types quo � ents for proof-relevant equality POPL 2019 8

  27. higher induc � ve types quo � ents for proof-relevant equality POPL 2019 8

  28. higher induc � ve types quo � ents for proof-relevant equality POPL 2019 8

  29. higher induc � ve types quo � ents for proof-relevant equality POPL 2019 8

  30. higher induc � ve types POPL 2019 9

  31. higher induc � ve types POPL 2019 10

  32. higher induc � ve types POPL 2019 10

  33. higher induc � ve types POPL 2019 10

  34. higher induc � ve types POPL 2019 10

  35. higher induc � ve types POPL 2019 10

  36. higher induc � ve types etc. POPL 2019 10

  37. higher induc � ve types in generality POPL 2019 11

  38. higher induc � ve types in generality ■ axioma � c type theory: - Sojakova: W-quo � ents - Basold, Geuvers, & van der Weide; Dybjer & Moeneclaey; Kaposi & Kovács ■ seman � cs: - Dybjer & Moeneclaey - Lumsdaine & Shulman: cell monads ■ cubical type theory: - Coquand, Huber, & Mörtberg: examples, schema sketch POPL 2019 11

  39. higher induc � ve types in generality ■ axioma � c type theory: - Sojakova: W-quo � ents - Basold, Geuvers, & van der Weide; Dybjer & Moeneclaey; Kaposi & Kovács ■ seman � cs: - Dybjer & Moeneclaey - Lumsdaine & Shulman: cell monads ■ cubical type theory: - Coquand, Huber, & Mörtberg: examples, schema sketch our contribu � on: cubical schema with computa � onal seman � cs POPL 2019 11

  40. higher induc � ve types in generality ■ axioma � c type theory: - Sojakova: W-quo � ents - Basold, Geuvers, & van der Weide; Dybjer & Moeneclaey; Kaposi & Kovács ■ seman � cs: - Dybjer & Moeneclaey - Lumsdaine & Shulman: cell monads ■ cubical type theory: - Coquand, Huber, & Mörtberg: examples, schema sketch our contribu � on: cubical schema with computa � onal seman � cs (including indexed induc � ve types) POPL 2019 11

  41. 1. schema POPL 2019 12

  42. 1. schema elimina � on principle POPL 2019 12

  43. 2. seman � cs what are the values of an induc � ve type? POPL 2019 13

  44. 2. seman � cs what are the values of an induc � ve type? POPL 2019 13

  45. 2. seman � cs what are the values of an induc � ve type? POPL 2019 13

  46. 2. seman � cs what are the values of an induc � ve type? can we implement coercion and composi � on? can we implement coercion and composi � on? POPL 2019 13

  47. 2. seman � cs what are the values of an induc � ve type? can we implement coercion and composi � on? can we implement coercion and composi � on? POPL 2019 13

  48. 2. seman � cs what are the values of an induc � ve type? can we implement coercion and composi � on? can we implement coercion and composi � on? POPL 2019 13

  49. 2. seman � cs what are the values of an induc � ve type? can we implement coercion and composi � on? can we implement coercion and composi � on? POPL 2019 13

  50. 2. seman � cs what are the values of an induc � ve type? can we implement coercion and composi � on? POPL 2019 14

  51. 2. seman � cs what are the values of an induc � ve type? can we implement coercion and composi � on? and elimina � on? POPL 2019 14

  52. 2. seman � cs what are the values of an induc � ve type? can we implement coercion and composi � on? and elimina � on? POPL 2019 14

  53. 2. seman � cs what are the values of an induc � ve type? can we implement coercion and composi � on? and elimina � on? POPL 2019 14

  54. 2. seman � cs what are the values of an induc � ve type? can we implement coercion and composi � on? and elimina � on? can we implement coercion and composi � on? and elimina � on? POPL 2019 14

  55. * 2. seman � cs what are the values of an induc � ve type? can we implement coercion and composi � on? and elimina � on? can we implement coercion and composi � on? and elimina � on? * more complicated in general case POPL 2019 14

  56. * 2. seman � cs what are the values of an induc � ve type? can we implement coercion and composi � on? and elimina � on? can we implement coercion and composi � on? and elimina � on? * more complicated in general case POPL 2019 14

  57. * 2. seman � cs what are the values of an induc � ve type? can we implement coercion and composi � on? and elimina � on? can we implement coercion and composi � on? and elimina � on? * more complicated in general case POPL 2019 14

  58. indexed induc � ve types POPL 2019 15

  59. indexed induc � ve types iden � ty type (subject of HoTT axioms) POPL 2019 15

  60. indexed induc � ve types iden � ty type (subject of HoTT axioms) POPL 2019 15

  61. indexed induc � ve types iden � ty type (subject of HoTT axioms) POPL 2019 15

  62. indexed induc � ve types iden � ty type (subject of HoTT axioms) POPL 2019 15

  63. indexed induc � ve types iden � ty type (subject of HoTT axioms) ✓ POPL 2019 15

  64. all in all ■ schema for indexed higher induc � ve types - torus, higher trunca � ons, localiza � ons, etc. - iden � ty types ■ computa � onal seman � cs - PERs on untyped opera � onal seman � cs - canonicity theorem ■ fragment implemented in redtt proof assistant github.com/RedPRL/redtt POPL 2019 16

Recommend


More recommend