Skip to content

Commit 07c87ff

Browse files
committed
clean up, just five
1 parent e3fcc00 commit 07c87ff

File tree

2 files changed

+6
-44
lines changed

2 files changed

+6
-44
lines changed

Cubical/Algebra/Group/Exact.agda

Lines changed: 4 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -35,53 +35,15 @@ SuccStr {ℓ = ℓ} = TypeWithStr ℓ λ A → (A → A)
3535

3636
-- Exactness except the intersecting Group is only propositionally equal
3737
isWeakExactAt : {A B B' C : Group ℓ} (f : GroupHom A B) (g : GroupHom B' C) (p : B ≡ B') Type ℓ
38-
isWeakExactAt {ℓ = ℓ} {B = B} {B' = B'} f g p =
39-
(b : ⟨ B ⟩) isInKer g (subst (λ (a : Σ (Type ℓ) GroupStr) fst a) p b) ≃ isInIm f b
38+
isWeakExactAt {ℓ = ℓ} {B = B} {B' = B'} f g p = (b : ⟨ B ⟩) (isInKer g (tr b) isInIm f b) × (isInIm f b isInKer g (tr b)) where
39+
tr = λ (b : ⟨ B ⟩) subst (λ (a : Σ (Type ℓ) GroupStr) fst a) p b
4040

4141
isExactAt : {A B C : Group ℓ} (f : GroupHom A B) (g : GroupHom B C) Type ℓ
42-
isExactAt {B = B} f g = (b : ⟨ B ⟩) isInKer g b ≃ isInIm f b
43-
44-
-- TODO: Is exactness preserved across association?
42+
isExactAt {B = B} f g = (b : ⟨ B ⟩) (isInKer g b isInIm f b) × (isInIm f b isInKer g b)
4543

4644
isWeakExactAtRefl : {A B C : Group ℓ} (f : GroupHom A B) (g : GroupHom B C)
4745
isWeakExactAt f g refl ≡ isExactAt f g
48-
isWeakExactAtRefl {ℓ = ℓ} {B = B} f g i = (b : ⟨ B ⟩) (isInKer g (transportRefl b i)) ≃ (isInIm f b)
49-
50-
-- Exact sequence based on vec
51-
module _ where
52-
2+_ = λ (n : ℕ) suc (suc n)
53-
3+_ = λ (n : ℕ) suc (suc (suc n))
54-
55-
data HomVec {ℓ : Level} : {n : ℕ} Vec (Group ℓ) (2+ n) Type (ℓ-suc ℓ) where
56-
-- This needs to at least have 1 group in it or else the suc case doesn't have
57-
-- a previous group to index by
58-
end : {A B : Group ℓ} GroupHom A B HomVec {n = 0} (B ∷ A ∷ [])
59-
cons : {n : ℕ} {gv : Vec (Group ℓ) (suc n)} {A B : Group ℓ}
60-
GroupHom A B HomVec {n = n} (A ∷ gv) HomVec {n = suc n} (B ∷ A ∷ gv)
61-
62-
data ExactSeqVec {ℓ : Level} : {n : ℕ} {gs : Vec (Group ℓ) (3+ n)} HomVec gs Type (ℓ-suc ℓ) where
63-
nil : {A B C : Group ℓ} {f : GroupHom A B} {g : GroupHom B C}
64-
isExactAt f g ExactSeqVec (cons g (end f))
65-
cons : {n : ℕ} {gv : Vec (Group ℓ) (suc n)} {A B C : Group ℓ}
66-
{f : GroupHom A B} {g : GroupHom B C} {hv : HomVec (A ∷ gv)}
67-
isExactAt f g
68-
ExactSeqVec (cons f hv) ExactSeqVec (cons g (cons f hv))
69-
70-
-- Exact sequence over successor structures
71-
module _ where
72-
exactSeq : (ss @ (N , succ) : SuccStr {ℓ = ℓ})
73-
(gSeq : (gIdx : N) Group ℓ')
74-
(hSeq : (hIdx : N) GroupHom (gSeq hIdx) (gSeq (succ hIdx)))
75-
Type (ℓ-max ℓ ℓ')
76-
exactSeq (N , succ) gSeq hSeq = (pIdx : N) isExactAt (hSeq pIdx) (hSeq (succ pIdx))
77-
78-
module _ where
79-
0→_ : (A : Group ℓ) GroupHom (UnitGroup {ℓ}) A
80-
0→ A = let open GroupStr (A .snd) in
81-
(λ _ 1g) , record { pres· = λ x y sym (·IdR 1g) ; pres1 = refl ; presinv = λ x sym (·InvL 1g) ∙ ·IdR (inv 1g) }
82-
83-
_→0 : (A : Group ℓ) GroupHom A (UnitGroup {ℓ})
84-
A →0 = (λ _ tt*) , record { pres· = λ x y refl ; pres1 = refl ; presinv = λ x refl }
46+
isWeakExactAtRefl {ℓ = ℓ} {B = B} f g i = (b : ⟨ B ⟩) (isInKer g (transportRefl b i) isInIm f b) × (isInIm f b isInKer g (transportRefl b i))
8547

8648
SES→isEquiv : {L R : Group ℓ-zero}
8749
{G : Group ℓ} {H : Group ℓ'}

Cubical/Algebra/Group/Five.agda

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ module _
118118
f[a]-in-im[f] = ∣ a , refl ∣₁
119119

120120
f[a]-in-ker[g] : isInKer g (f .fst a)
121-
f[a]-in-ker[g] = invIsEq (fg (f .fst a) .snd) f[a]-in-im[f]
121+
f[a]-in-ker[g] = fg (f .fst a) .snd f[a]-in-im[f]
122122

123123
g[f[a]]≡0 : g .fst (f .fst a) ≡ C .snd .GroupStr.1g
124124
g[f[a]]≡0 = f[a]-in-ker[g]
@@ -158,7 +158,7 @@ module _
158158
u[p[d]]≡q[j[d]] = sq4 d
159159

160160
d'-in-ker[u] : isInKer u d'
161-
d'-in-ker[u] = let im[t]→ker[u] = invIsEq (tu d' .snd) in
161+
d'-in-ker[u] = let im[t]→ker[u] = tu d' .snd in
162162
im[t]→ker[u] ∣ (c' , refl) ∣₁
163163

164164
u[p[d]]≡0 : u[p[d]] ≡ E' .snd .GroupStr.1g

0 commit comments

Comments
 (0)