Eckmann-Hilton.prmk 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326
  1. (set reverse
  2. (Pi (A (Universe 0)) (x A) (y A) (p (Id x y)) (Id y x))
  3. (lambda (A (Universe 0))
  4. (J
  5. ;;typFunc
  6. (lambda (x A) (y A) (p (Id x y))
  7. (Id y x))
  8. ;;reflFunc
  9. (lambda (x A) (refl x)))))
  10. ;; dowód że `x = x` po odwróceniu dalej daje `x = x`
  11. (set reverse-comp-check
  12. (Pi (A (Universe 0)) (x A)
  13. (Id (refl x) ((((reverse A) x) x) (refl x))))
  14. (lambda (A (Universe 0)) (x A)
  15. (refl (refl x))))
  16. (set concat
  17. (Pi (A (Universe 0))
  18. (Pi (x A)
  19. (Pi (y A)
  20. (Pi (z A)
  21. (Pi (xy (Id x y))
  22. (Pi (yz (Id y z))
  23. (Id x z)))))))
  24. (lambda (A (Universe 0))
  25. (lambda (x A)
  26. (lambda (y A)
  27. (lambda (z A)
  28. (lambda (xy (Id x y))
  29. (lambda (yz (Id y z))
  30. ((((((J
  31. (lambda (x A)
  32. (lambda (y A)
  33. (lambda (p (Id x y))
  34. (Pi (z A)
  35. (Pi (q (Id y z))
  36. (Id x z))))))
  37. (lambda (x A)
  38. (lambda (z A)
  39. (lambda (p (Id x z))
  40. p))))
  41. x)
  42. y)
  43. xy)
  44. z)
  45. yz))))))))
  46. ;;dowód że `reflx o reflx = reflx`
  47. (set concat-comp-check
  48. (Pi (A (Universe 0))
  49. (Pi (x A)
  50. (Id
  51. (refl x)
  52. ((((((concat A) x) x) x) (refl x)) (refl x)))))
  53. (lambda (A (Universe 0))
  54. (lambda (x A)
  55. (refl (refl x)))))
  56. (set p-eq-p-refl
  57. (Pi (A (Universe 0))
  58. (Pi (x A)
  59. (Pi (y A)
  60. (Pi (p (Id x y))
  61. (Id p ((((((concat A) x) y) y) p) (refl y)))))))
  62. (lambda (A (Universe 0))
  63. (J
  64. (lambda (x A)
  65. (lambda (y A)
  66. (lambda (p (Id x y))
  67. (Id p ((((((concat A) x) y) y) p) (refl y))))))
  68. (lambda (x A) (refl (refl x))))))
  69. (set p-eq-refl-p
  70. (Pi (A (Universe 0))
  71. (Pi (x A)
  72. (Pi (y A)
  73. (Pi (p (Id x y))
  74. (Id p ((((((concat A) x) x) y) (refl x)) p))))))
  75. (lambda (A (Universe 0))
  76. (J
  77. (lambda (x A)
  78. (lambda (y A)
  79. (lambda (p (Id x y))
  80. (Id p ((((((concat A) x) x) y) (refl x)) p)))))
  81. (lambda (x A) (refl (refl x))))))
  82. (set p-inv-p-eq-refl-y
  83. (Pi (A (Universe 0))(Pi (x A) (Pi (y A) (Pi (p (Id x y))
  84. (Id
  85. ((((((concat A) y) x) y)
  86. ((((reverse A) x) y) p))
  87. p)
  88. (refl y))))))
  89. (lambda (A (Universe 0))
  90. (J (lambda (x A) (lambda (y A) (lambda (p (Id x y))
  91. (Id ((((((concat A) y) x) y)
  92. ((((reverse A) x) y) p))
  93. p)
  94. (refl y)))))
  95. (lambda (x A) (refl (refl x))))))
  96. (set p-p-inv-eq-refl-x
  97. (Pi (A (Universe 0))(Pi (x A) (Pi (y A) (Pi (p (Id x y))
  98. (Id ((((((concat A) x) y) x)
  99. p)
  100. ((((reverse A) x) y) p))
  101. (refl x))))))
  102. (lambda (A (Universe 0))
  103. (J (lambda (x A) (lambda (y A) (lambda (p (Id x y))
  104. (Id ((((((concat A) x) y) x)
  105. p )
  106. ((((reverse A) x) y) p))
  107. (refl x)))))
  108. (lambda (x A) (refl (refl x))))))
  109. (set p-inv-inv-eq-p
  110. (Pi (A (Universe 0))
  111. (Pi (x A)
  112. (Pi (y A)
  113. (Pi (p (Id x y))
  114. (Id
  115. ((((reverse A) y) x) ((((reverse A) x) y) p))
  116. p)))))
  117. (lambda (A (Universe 0))
  118. (lambda (x A)
  119. (lambda (y A)
  120. (lambda (p (Id x y))
  121. ((J
  122. (lambda (x A)
  123. (lambda (y A)
  124. (lambda (p (Id x y))
  125. (Id
  126. ((((reverse A) y) x) ((((reverse A) x) y) p))
  127. p)
  128. )))
  129. (lambda (x A)
  130. (refl (refl x))))
  131. x
  132. y
  133. p))))))
  134. ;; p o (q o r) = (p o q) o r
  135. (set id-kolejnosc-dzialan
  136. (Pi (A (Universe 0)) (x A) (y A) (z A) (w A)
  137. (p (Id x y)) (q (Id y z)) (r (Id z w))
  138. (Id
  139. (concat A x y w p (concat A y z w q r))
  140. (concat A x z w (concat A x y z p q) r)))
  141. (lambda (A (Universe 0)) (x A) (y A) (z A)(w A)
  142. (p (Id x y)) (q (Id y z)) (r (Id z w))
  143. ((J ; x y p z w q r
  144. ;;D1
  145. (lambda (x A) (y A) (p (Id x y))
  146. (Pi (z A) (w A)
  147. (q (Id y z)) (r (Id z w))
  148. (Id
  149. (concat A x y w p (concat A y z w q r))
  150. (concat A x z w (concat A x y z p q) r))))
  151. ;;refl for D1
  152. ;;todo coś przed J
  153. (lambda (x A) (z A) (w A)
  154. (q (Id x z)) ( r (Id z w))
  155. ((J ;D2 x z q w r
  156. (lambda (x A) (z A) (q (Id x z))
  157. (Pi (w A) (r (Id z w))
  158. (Id
  159. (concat A x x w (refl x) (concat A x z w q r))
  160. (concat A x z w (concat A x x z (refl x) q) r))))
  161. ;;d2 refl
  162. ;nie trzeba (lambda (x A) (w A) (r (Id x w)))
  163. (J ;D3
  164. (lambda (x A) (w A) (r (Id x w))
  165. (Id
  166. (concat A x x w (refl x) (concat A x x w (refl x) r))
  167. (concat A x x w (concat A x x x (refl x) (refl x)) r)
  168. ))
  169. ;;refld d3
  170. (lambda (x A) (refl (refl x)))
  171. )
  172. )
  173. x z q w r))
  174. )
  175. x y p z w q r )
  176. ))
  177. ;; to będzie potrzebne do Whiser-R żeby udowodnić
  178. ;; (p o refl_b = p) == (p = q) == (q = q o refl_b)
  179. (set concat-2
  180. (Pi (A (Universe 0))
  181. (a A) (b A)
  182. (p (Id a b)) (q (Id a b)) (r (Id a b))
  183. (h (Id p q)) (i (Id q r))
  184. (Id p r))
  185. (lambda (A (Universe 0))
  186. (a A) (b A)
  187. (p (Id a b)) (q (Id a b)) (r (Id a b))
  188. (h (Id p q)) (i (Id q r))
  189. (concat (Id a b) p q r h i)))
  190. ;;to było łatwe a ja się spodziewałem że będzie trudne
  191. (set whisker-r
  192. (Pi (A (Universe 0))
  193. (a A) (b A) (c A)
  194. (p (Id a b)) (q (Id a b)) (r (Id b c))
  195. (alfa (Id p q))
  196. (Id
  197. (concat A a b c p r)
  198. (concat A a b c q r)))
  199. (lambda (A (Universe 0))
  200. (a A) (b A) (c A)
  201. (p (Id a b)) (q (Id a b)) (r (Id b c))
  202. (alfa (Id p q))
  203. ((J
  204. (lambda (b A) (c A) (r (Id b c))
  205. (Pi (a A) (p (Id a b)) (q (Id a b)) (alfa (Id p q))
  206. (Id
  207. (concat A a b c p r)
  208. (concat A a b c q r))))
  209. (lambda (b A) (a A) (p (Id a b)) (q (Id a b)) (alfa (Id p q))
  210. (concat (Id a b)
  211. (concat A a b b p (refl b)); p o refl
  212. p
  213. (concat A a b b q (refl b)) ; q o refl
  214. (reverse (Id a b) p (concat A a b b p (refl b)) (p-eq-p-refl A a b p)); p o refl = p
  215. (concat (Id a b)
  216. p
  217. q
  218. (concat A a b b q (refl b)); q o refl
  219. alfa
  220. (p-eq-p-refl A a b q); q = q o refl
  221. ))))
  222. b c r a p q alfa)))
  223. (set whisker-l
  224. (Pi (A (Universe 0))
  225. (a A) (b A) (c A)
  226. (p (Id a b)) (r (Id b c)) (s (Id b c))
  227. (beta (Id r s))
  228. (Id
  229. (concat A a b c p r)
  230. (concat A a b c p s)))
  231. (lambda (A (Universe 0))
  232. (a A) (b A) (c A)
  233. (p (Id a b)) (r (Id b c)) (s (Id b c))
  234. (beta (Id r s))
  235. ((J
  236. (lambda (a A) (b A) (p (Id a b))
  237. (Pi (c A) (r (Id b c)) (s (Id b c)) (beta (Id r s))
  238. (Id
  239. (concat A a b c p r)
  240. (concat A a b c p s))))
  241. (lambda (b A) (c A) (r (Id b c)) (s (Id b c)) (beta (Id r s))
  242. (concat (Id b c) ;;;;;;;;;;;;
  243. (concat A b b c (refl b) r) ; refl o r
  244. r
  245. (concat A b b c (refl b) s) ; refl o s
  246. (reverse (Id b c) r (concat A b b c (refl b) r) (p-eq-refl-p A b c r)) ; reflb o r = r
  247. (concat (Id b c)
  248. r
  249. s
  250. (concat A b b c (refl b) s); refl o s
  251. beta
  252. (p-eq-refl-p A b c s); s = refl o s
  253. ))))
  254. a b p c r s beta)))
  255. ;; (alfa o_r r) o (q o_l beta)
  256. (set horizontal-composition
  257. (Pi (A (Universe 0))
  258. (a A) (b A) (c A)
  259. (p (Id a b)) (q (Id a b))
  260. (r (Id b c)) (s (Id b c))
  261. (alfa (Id p q)) (beta (Id r s))
  262. (Id
  263. (concat A a b c p r)
  264. (concat A a b c q s)))
  265. (lambda (A (Universe 0))
  266. (a A) (b A) (c A)
  267. (p (Id a b)) (q (Id a b))
  268. (r (Id b c)) (s (Id b c))
  269. (alfa (Id p q)) (beta (Id r s))
  270. (concat
  271. (Id a c)
  272. (concat A a b c p r)
  273. (concat A a b c q r)
  274. (concat A a b c q s)
  275. (whisker-r A a b c p q r alfa)
  276. (whisker-l A a b c q r s beta))))
  277. ;; (p o_l beta) o (alfa o_r s)
  278. (set horizontal-composition-2
  279. (Pi (A (Universe 0))
  280. (a A) (b A) (c A)
  281. (p (Id a b)) (q (Id a b))
  282. (r (Id b c)) (s (Id b c))
  283. (alfa (Id p q)) (beta (Id r s))
  284. (Id
  285. (concat A a b c p r)
  286. (concat A a b c q s)))
  287. (lambda (A (Universe 0))
  288. (a A) (b A) (c A)
  289. (p (Id a b)) (q (Id a b))
  290. (r (Id b c)) (s (Id b c))
  291. (alfa (Id p q)) (beta (Id r s))
  292. (concat
  293. (Id a c)
  294. (concat A a b c p r)
  295. (concat A a b c p s)
  296. (concat A a b c q s)
  297. (whisker-l A a b c p r s beta)
  298. (whisker-r A a b c p q s alfa))))
  299. ;; Jeszcze dużo do Eckmana-Hiltona
  300. tt