comparison equalizer.agda @ 240:964e258e08fb

fix
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sun, 08 Sep 2013 11:54:06 +0900
parents 08afb6ad80c7
children 9e4dc349831e
comparison
equal deleted inserted replaced
239:08afb6ad80c7 240:964e258e08fb
36 record Burroni { c₁ c₂ ℓ : Level} ( A : Category c₁ c₂ ℓ ) {c a b : Obj A} (f g : Hom A a b) (e : Hom A c a) : Set (ℓ ⊔ (c₁ ⊔ c₂)) where 36 record Burroni { c₁ c₂ ℓ : Level} ( A : Category c₁ c₂ ℓ ) {c a b : Obj A} (f g : Hom A a b) (e : Hom A c a) : Set (ℓ ⊔ (c₁ ⊔ c₂)) where
37 field 37 field
38 α : {a b c : Obj A } → (f : Hom A a b) → (g : Hom A a b ) → {e : Hom A c a } → Hom A c a 38 α : {a b c : Obj A } → (f : Hom A a b) → (g : Hom A a b ) → {e : Hom A c a } → Hom A c a
39 γ : {a b c d : Obj A } → (f : Hom A a b) → (g : Hom A a b ) → (h : Hom A d a ) → Hom A d c 39 γ : {a b c d : Obj A } → (f : Hom A a b) → (g : Hom A a b ) → (h : Hom A d a ) → Hom A d c
40 δ : {a b c : Obj A } → {e : Hom A c a } → (f : Hom A a b) → Hom A a c 40 δ : {a b c : Obj A } → {e : Hom A c a } → (f : Hom A a b) → Hom A a c
41 cong-α : {a b c : Obj A } → {g g' : Hom A a b } → A [ g ≈ g' ] → { α α' : Hom A c a } → A [ α ≈ α' ]
42 cong-γ : {a _ c d : Obj A } → {h h' : Hom A d a } → A [ h ≈ h' ] → { γ γ' : Hom A d c } → A [ γ ≈ γ' ]
43 cong-δ : {a b c : Obj A } → {f f' : Hom A a b} → A [ f ≈ f' ] → { δ δ' : Hom A a c } → A [ δ ≈ δ' ]
41 b1 : A [ A [ f o α {a} {b} {c} f g {e} ] ≈ A [ g o α {a} {b} {c} f g {e} ] ] 44 b1 : A [ A [ f o α {a} {b} {c} f g {e} ] ≈ A [ g o α {a} {b} {c} f g {e} ] ]
42 b2 : {d : Obj A } → {h : Hom A d a } → A [ A [ ( α {a} {b} {c} f g {e} ) o (γ {a} {b} {c} f g h) ] ≈ A [ h o α (A [ f o h ]) (A [ g o h ]){id1 A d} ] ] 45 b2 : {d : Obj A } → {h : Hom A d a } → A [ A [ ( α {a} {b} {c} f g {e} ) o (γ {a} {b} {c} f g h) ] ≈ A [ h o α (A [ f o h ]) (A [ g o h ]){id1 A d} ] ]
43 b3 : A [ A [ α {a} {b} {a} f f {id1 A a} o δ {a} {b} {a} {id1 A a} f ] ≈ id1 A a ] 46 b3 : {a b d : Obj A} → (f : Hom A a b ) → {h : Hom A d a } → A [ A [ α {a} {b} {d} f f {h} o δ {a} {b} {d} {h} f ] ≈ id1 A a ]
44 -- b4 : {c d : Obj A } {k : Hom A c a} → A [ β f g ( A [ α f g o k ] ) ≈ k ] 47 -- b4 : {c d : Obj A } {k : Hom A c a} → A [ β f g ( A [ α f g o k ] ) ≈ k ]
45 b4 : {d : Obj A } {k : Hom A d c} → 48 b4 : {d : Obj A } {k : Hom A d c} →
46 A [ A [ γ {a} {b} {c} {d} f g ( A [ α {a} {b} {c} f g {e} o k ] ) o ( δ {d} {b} {d} {id1 A d} (A [ f o A [ α {a} {b} {c} f g {e} o k ] ] ) )] ≈ k ] 49 A [ A [ γ {a} {b} {c} {d} f g ( A [ α {a} {b} {c} f g {e} o k ] ) o ( δ {d} {b} {d} {id1 A d} (A [ f o A [ α {a} {b} {c} f g {e} o k ] ] ) )] ≈ k ]
47 -- A [ α f g o β f g h ] ≈ h 50 -- A [ α f g o β f g h ] ≈ h
48 β : { d a b : Obj A} → (f : Hom A a b) → (g : Hom A a b ) → (h : Hom A d a ) → Hom A d c 51 β : { d a b : Obj A} → (f : Hom A a b) → (g : Hom A a b ) → (h : Hom A d a ) → Hom A d c
225 → Burroni A {c} {a} {b} f g e 228 → Burroni A {c} {a} {b} f g e
226 lemma-equ1 {a} {b} {c} f g e eqa = record { 229 lemma-equ1 {a} {b} {c} f g e eqa = record {
227 α = λ {a} {b} {c} f g {e} → equalizer (eqa {a} {b} {c} f g {e} ) ; -- Hom A c a 230 α = λ {a} {b} {c} f g {e} → equalizer (eqa {a} {b} {c} f g {e} ) ; -- Hom A c a
228 γ = λ {a} {b} {c} {d} f g h → k (eqa f g ) {d} ( A [ h o (equalizer ( eqa (A [ f o h ] ) (A [ g o h ] ))) ] ) (lemma-equ4 {a} {b} {c} {d} f g h ) ; -- Hom A c d 231 γ = λ {a} {b} {c} {d} f g h → k (eqa f g ) {d} ( A [ h o (equalizer ( eqa (A [ f o h ] ) (A [ g o h ] ))) ] ) (lemma-equ4 {a} {b} {c} {d} f g h ) ; -- Hom A c d
229 δ = λ {a} {b} {c} {e} f → k (eqa {a} {b} {c} f f {e} ) (id1 A a) (lemma-equ2 f); -- Hom A a c 232 δ = λ {a} {b} {c} {e} f → k (eqa {a} {b} {c} f f {e} ) (id1 A a) (lemma-equ2 f); -- Hom A a c
233 cong-α = cong-α1 ;
234 cong-γ = cong-γ1 ;
235 cong-δ = cong-δ1 ;
230 b1 = fe=ge (eqa {a} {b} {c} f g {e}) ; 236 b1 = fe=ge (eqa {a} {b} {c} f g {e}) ;
231 b2 = lemma-b2 ; 237 b2 = lemma-b2 ;
232 b3 = lemma-b3 ; 238 b3 = lemma-b3 ;
233 b4 = lemma-b4 239 b4 = lemma-b4
234 } where 240 } where
241 cong-α1 : {a b c : Obj A } → {g g' : Hom A a b } → A [ g ≈ g' ] → { α α' : Hom A c a } → A [ α ≈ α' ]
242 cong-α1 {a} {b} {c} {g} {g'} eq = let open ≈-Reasoning (A) in {!!}
243 cong-γ1 : {a _ c d : Obj A } → {h h' : Hom A d a } → A [ h ≈ h' ] → { γ γ' : Hom A d c } → A [ γ ≈ γ' ]
244 cong-γ1 = {!!}
245 cong-δ1 : {a b c : Obj A } → {f f' : Hom A a b} → A [ f ≈ f' ] → { δ δ' : Hom A a c } → A [ δ ≈ δ' ]
246 cong-δ1 = {!!}
235 -- 247 --
236 -- e eqa f g f 248 -- e eqa f g f
237 -- c ----------> a ------->b 249 -- c ----------> a ------->b
238 -- ^ g 250 -- ^ g
239 -- | 251 -- |
244 -- 256 --
245 -- e o id1 ≈ e → k e ≈ id 257 -- e o id1 ≈ e → k e ≈ id
246 258
247 lemma-equ2 : {a b : Obj A} (f : Hom A a b) → A [ A [ f o id1 A a ] ≈ A [ f o id1 A a ] ] 259 lemma-equ2 : {a b : Obj A} (f : Hom A a b) → A [ A [ f o id1 A a ] ≈ A [ f o id1 A a ] ]
248 lemma-equ2 f = let open ≈-Reasoning (A) in refl-hom 260 lemma-equ2 f = let open ≈-Reasoning (A) in refl-hom
249 lemma-b3 : A [ A [ equalizer (eqa f f ) o k (eqa f f) (id1 A a) (lemma-equ2 f) ] ≈ id1 A a ] 261 lemma-b3 : {a b d : Obj A} (f : Hom A a b ) { h : Hom A d a } → A [ A [ equalizer (eqa f f ) o k (eqa f f) (id1 A a) (lemma-equ2 f) ] ≈ id1 A a ]
250 lemma-b3 = let open ≈-Reasoning (A) in 262 lemma-b3 {a} {b} {d} f {h} = let open ≈-Reasoning (A) in
251 begin 263 begin
252 equalizer (eqa f f) o k (eqa f f) (id1 A a) (lemma-equ2 f) 264 equalizer (eqa f f) o k (eqa f f) (id1 A a) (lemma-equ2 f)
253 ≈⟨ ek=h (eqa f f ) ⟩ 265 ≈⟨ ek=h (eqa f f ) ⟩
254 id1 A a 266 id1 A a
255 267
329 ( α bur f g o γ bur {a} {b} {c} f g h ) o δ bur {d} {b} {d} {id1 A d} (f o h) 341 ( α bur f g o γ bur {a} {b} {c} f g h ) o δ bur {d} {b} {d} {id1 A d} (f o h)
330 ≈⟨ car (b2 bur) ⟩ 342 ≈⟨ car (b2 bur) ⟩
331 ( h o ( α bur ( f o h ) ( g o h ))) o δ bur {d} {b} {d} {id1 A d} (f o h) 343 ( h o ( α bur ( f o h ) ( g o h ))) o δ bur {d} {b} {d} {id1 A d} (f o h)
332 ≈↑⟨ assoc ⟩ 344 ≈↑⟨ assoc ⟩
333 h o ((( α bur ( f o h ) ( g o h ))) o δ bur {d} {b} {d} {id1 A d} (f o h) ) 345 h o ((( α bur ( f o h ) ( g o h ))) o δ bur {d} {b} {d} {id1 A d} (f o h) )
334 ≈⟨ cdr {!!} ⟩ 346 ≈↑⟨ cdr ( car ( cong-α bur eq)) ⟩
347 h o ((( α bur ( f o h ) ( f o h ))) o δ bur {d} {b} {d} {id1 A d} (f o h) )
348 ≈⟨ cdr (b3 bur {d} {b} {d} (f o h) {id1 A d} ) ⟩
335 h o id1 A d 349 h o id1 A d
336 ≈⟨ {!!} ⟩ 350 ≈⟨ idR ⟩
337 h 351 h
338 352
339 uniqueness1 : {d : Obj A} → ∀ {h : Hom A d a} → {eq : A [ A [ f o h ] ≈ A [ g o h ] ] } → {k' : Hom A d c } → 353 uniqueness1 : {d : Obj A} → ∀ {h : Hom A d a} → {eq : A [ A [ f o h ] ≈ A [ g o h ] ] } → {k' : Hom A d c } →
340 A [ A [ (α bur f g) o k' ] ≈ h ] → A [ k1 {d} h eq ≈ k' ] 354 A [ A [ (α bur f g) o k' ] ≈ h ] → A [ k1 {d} h eq ≈ k' ]
341 uniqueness1 {d} {h} {eq} {k'} ek=h = let open ≈-Reasoning (A) in 355 uniqueness1 {d} {h} {eq} {k'} ek=h = let open ≈-Reasoning (A) in
342 begin 356 begin
343 k1 {d} h eq 357 k1 {d} h eq
344 ≈⟨⟩ 358 ≈⟨⟩
345 γ bur {a} {b} {c} f g h o δ bur {d} {b} {d} {id1 A d} (f o h) 359 γ bur {a} {b} {c} f g h o δ bur {d} {b} {d} {id1 A d} (f o h)
346 ≈⟨ ? ⟩ 360 ≈↑⟨ car (cong-γ bur {a} {b} {c} {d} ek=h ) ⟩
361 γ bur f g (A [ α bur f g o k' ]) o δ bur {d} {b} {d} {id1 A d} (f o h)
362 ≈↑⟨ cdr (cong-δ bur {d} {a} {d} (resp {d} {d} {a} {id1 A d} refl-hom ek=h )) ⟩
363 γ bur f g (A [ α bur f g o k' ]) o δ bur (A [ f o A [ α bur f g o k' ] ])
364 ≈⟨ b4 bur ⟩
347 k' 365 k'
348 366
349 367
350 368
351 -- end 369 -- end