diff --git a/src/Misc/FiveLemma/Exact.agda b/src/Misc/FiveLemma/Category/Exact.agda similarity index 63% rename from src/Misc/FiveLemma/Exact.agda rename to src/Misc/FiveLemma/Category/Exact.agda index f9beb67..fbf7ffd 100644 --- a/src/Misc/FiveLemma/Exact.agda +++ b/src/Misc/FiveLemma/Category/Exact.agda @@ -1,6 +1,6 @@ {-# OPTIONS --cubical #-} -module Misc.FiveLemma.Exact where +module Misc.FiveLemma.Category.Exact where open import Agda.Primitive open import Cubical.Categories.Abelian @@ -15,8 +15,6 @@ open import Cubical.Foundations.Structure open import Cubical.Functions.Embedding open import Cubical.Functions.Surjection -open import Misc.FiveLemma.GroupMorphisms - private variable ℓ ℓ' : Level @@ -59,7 +57,7 @@ module _ (AC : AbelianCategory ℓ ℓ') where -- I am using Vec in the reverse way!!! - -- Fin 5 4 3 2 1 0 + -- Fin 5 0 1 2 3 4 -- obSeq = E :: D :: C :: B :: A :: [] -- Fin 4 3 2 1 0 @@ -67,37 +65,24 @@ module _ (AC : AbelianCategory ℓ ℓ') where -- sequence of Homs data HomSeq : {n : ℕ} → (os : obSeq n) → Type (ℓ-max ℓ ℓ') where - h[_] : {os : obSeq z} → Hom[ lookup os (inject₁ Fin.zero) , lookup os (suc Fin.zero) ] → HomSeq os - _h∷_ : {n : ℕ} {os : obSeq n} {o : ob} - → Hom[ (head os) , o ] → HomSeq os → HomSeq (o ∷ os) + h[_] : {os : obSeq z} → Hom[ lookup os (suc Fin.zero) , lookup os (inject₁ Fin.zero) ] → HomSeq os + _h∷_ : {n : ℕ} {os : obSeq n} {o : ob} → Hom[ (head os) , o ] → HomSeq os → HomSeq (o ∷ os) homSeqN : {n : ℕ} → (os : obSeq n) → (m : Fin (suc n)) → Type ℓ' - homSeqN {n = n} os m = Hom[ (lookup os (inject₁ m)) , (lookup os (suc m)) ] + homSeqN {n = n} os m = Hom[ (lookup os (opposite (inject₁ m))) , (lookup os (opposite (suc m))) ] - op-inv : {n : ℕ} → (m : Fin n) → opposite (opposite m) ≡ m - op-inv {n = n} m = sym (fuckyou2 n (opposite (opposite m))) ∙ {! !} ∙ fuckyou2 n m where - fuckyou1 : (n : ℕ) → (m : Fin n) → Data.Nat._<_ (toℕ m) n - fuckyou1 (suc n) Fin.zero = z