Skip to content

Commit bf86b57

Browse files
committed
defn: sections, retractions, split monos/epis
1 parent ecbb289 commit bf86b57

File tree

1 file changed

+99
-0
lines changed

1 file changed

+99
-0
lines changed

src/Cat/Morphism.lagda.md

Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -277,3 +277,102 @@ invertible→epic {f = f} invert g h p =
277277
open is-invertible invert
278278
```
279279

280+
## Sections and Retractions
281+
282+
Given 2 maps $e : A \to B$ and $s : B \to A$, we say that $s$ is a section of
283+
$e$ if $e \circ s = id$. The intuition behind the name is that $s$ we can think of
284+
$e$ as taking some sort of quotient, and $s$ as picking out representatives
285+
for each equivalence class formed by $e$.
286+
In other words, $s$ picks out a cross-*section*.
287+
288+
```agda
289+
_is-section-of_ : (s : Hom b a) → (e : Hom a b) → Type _
290+
_is-section-of_ s e = e ∘ s ≡ id
291+
```
292+
293+
Furthermore, we also that $e$ is a retraction of $s$ when $e \circ s = id$.
294+
The intuition here is that the act of picking representatives of equivalence
295+
classes induces an idempotent map $s \circ e : A \to A$, which *retracts* each
296+
element of $A$ to the representative of the equivalence class formed by $e$.
297+
298+
```agda
299+
_is-retract-of_ : (e : Hom a b) → (s : Hom b a) → Type _
300+
_is-retract-of_ e s = e ∘ s ≡ id
301+
```
302+
303+
It's worth showing that a retraction does indeed induce an idempotent morphism on
304+
$A$.
305+
306+
```agda
307+
retract-idempotent : ∀ {e : Hom a b} {s : Hom b a}
308+
→ e is-retract-of s → (s ∘ e) ∘ (s ∘ e) ≡ s ∘ e
309+
retract-idempotent {e = e} {s = s} retract =
310+
(s ∘ e) ∘ s ∘ e ≡˘⟨ assoc s e (s ∘ e) ⟩
311+
s ∘ (e ∘ s ∘ e) ≡⟨ ap (s ∘_) (assoc e s e) ⟩
312+
s ∘ (e ∘ s) ∘ e ≡⟨ ap (λ ϕ → s ∘ ϕ ∘ e) retract ⟩
313+
s ∘ id ∘ e ≡⟨ ap (s ∘_) (idl e) ⟩
314+
s ∘ e ∎
315+
```
316+
317+
Earlier, I claimed that we ought to think of $e$ as taking some sort of quotient.
318+
This is made precise by the fact that if $e$ has some section $s$, then $e$ must
319+
be an epimorphism.
320+
321+
```agda
322+
section→is-epic : ∀ {e : Hom a b} {s : Hom b a}
323+
→ s is-section-of e → is-epic e
324+
section→is-epic {e = e} {s = s} section g h p =
325+
g ≡˘⟨ idr g ⟩
326+
g ∘ id ≡˘⟨ ap (g ∘_) section ⟩
327+
g ∘ e ∘ s ≡⟨ assoc g e s ⟩
328+
(g ∘ e) ∘ s ≡⟨ ap (_∘ s) p ⟩
329+
(h ∘ e) ∘ s ≡˘⟨ assoc h e s ⟩
330+
h ∘ e ∘ s ≡⟨ ap (h ∘_) section ⟩
331+
h ∘ id ≡⟨ idr h ⟩
332+
h ∎
333+
```
334+
335+
Dually, if $e$ is a retraction of $s$, then $s$ must be a monomorphism.
336+
```agda
337+
retract→is-monic : ∀ {e : Hom a b} {s : Hom b a}
338+
→ e is-retract-of s → is-monic s
339+
retract→is-monic {e = e} {s = s} retract g h p =
340+
g ≡˘⟨ idl g ⟩
341+
id ∘ g ≡˘⟨ ap (_∘ g) retract ⟩
342+
(e ∘ s) ∘ g ≡˘⟨ assoc e s g ⟩
343+
e ∘ s ∘ g ≡⟨ ap (e ∘_) p ⟩
344+
e ∘ s ∘ h ≡⟨ assoc e s h ⟩
345+
(e ∘ s) ∘ h ≡⟨ ap (_∘ h) retract ⟩
346+
id ∘ h ≡⟨ idl h ⟩
347+
h ∎
348+
```
349+
350+
## Split Epi and Monomorphisms
351+
352+
The fact that the existence of a section of $f$ implies that $f$ is epic gives rise
353+
to the notion of a split epimorphism. We can think of this
354+
as some sort of quotient equipped with a choice of representatives.
355+
356+
```agda
357+
record is-split-epic (f : Hom a b) : Type (o ⊔ h) where
358+
field
359+
split : Hom b a
360+
section : split is-section-of f
361+
362+
is-split-epic→is-epic : is-split-epic f → is-epic f
363+
is-split-epic→is-epic split-epic = section→is-epic section
364+
where
365+
open is-split-epic split-epic
366+
```
367+
368+
Again by duality, we also have the notion of a split monomorphism. We can think
369+
of these as some embedding along with some classifying map. Alternatively, we
370+
can view a split monomorphisms as some means of selecting normal forms, along
371+
with an evaluation map.
372+
373+
```agda
374+
record is-split-monic (f : Hom a b) : Type (o ⊔ h) where
375+
field
376+
split : Hom b a
377+
retract : split is-retract-of f
378+
```

0 commit comments

Comments
 (0)