Skip to content

Commit e48d32e

Browse files
committed
wip: Restriction of adjoint
1 parent bb9991b commit e48d32e

File tree

1 file changed

+67
-0
lines changed

1 file changed

+67
-0
lines changed
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
```agda
2+
3+
open import Cat.Functor.Adjoint
4+
open import Cat.Prelude
5+
open import Cat.Functor.Properties
6+
module Cat.Functor.Adjoint.Restrict {o}{ℓ}{o'}{ℓ'}
7+
{C C' : Precategory o ℓ} {D D' : Precategory o' ℓ'} {L' : Functor C' D'}{R' : _} (adj : L' ⊣ R')
8+
{iC : Functor C C'}{iD : Functor D D'}
9+
{L : Functor C D}{R : Functor D C}
10+
{ffIC : is-fully-faithful iC}
11+
{ffID : is-fully-faithful iD}
12+
where
13+
14+
open import Cat.Functor.Naturality
15+
open import Cat.Functor.Adjoint.Hom
16+
17+
hom-equiv→adjoints : ∀{o ℓ o' ℓ'} {C : Precategory o ℓ}{D : Precategory o' ℓ'}
18+
→ {L : Functor D C} {R : Functor C D}
19+
→ (eqv : ∀{x}{y} → Precategory.Hom C (Functor.F₀ L x) y ≃ Precategory.Hom D x (Functor.F₀ R y))
20+
→ (nat : hom-iso-natural {L = L} {R = R} λ {x} {y} → fst $ eqv {x} {y})
21+
→ L ⊣ R
22+
hom-equiv→adjoints eqv nat = hom-iso→adjoints (fst eqv) (snd eqv) nat
23+
24+
open import Cat.Morphism
25+
open Precategory
26+
open Functor
27+
module R = Functor R
28+
module L = Functor L
29+
module iD = Functor iD
30+
module iC = Functor iC
31+
module C = Precategory C
32+
module D = Precategory D
33+
module C' = Precategory C'
34+
module D' = Precategory D'
35+
36+
is-ff-prop : {oc lc od ld : _}{C : Precategory oc lc}{D : Precategory od ld}
37+
-> (F : Functor C D) → is-prop (is-fully-faithful F)
38+
is-ff-prop F = hlevel!
39+
40+
41+
infixr 9 _o_
42+
_o_ : ∀{a}{b}{c} {A : Type a} {B : A → Type b} {C : {x : A} → B x → Type c} →
43+
(∀ {x} (y : B x) → C y) → (g : (x : A) → B x) →
44+
((x : A) → C (g x))
45+
f o g = λ x → f (g x)
46+
47+
48+
restrict : (L' F∘ iC) ≅ⁿ (iD F∘ L) → (R' F∘ iD) ≅ⁿ (iC F∘ R) → L ⊣ R
49+
restrict comm1 comm2 = hom-equiv→adjoints f
50+
λ {b = b} {c = c} g h x →
51+
fst f (D._∘_ g (D._∘_ x (L.₁ h)))
52+
≡⟨ {! !} ⟩
53+
C._∘_ (R.₁ g) (C._∘_ (fst f x) h) ∎
54+
where
55+
f : {x : C .Ob} {y : D .Ob} → D.Hom (L.F₀ x) y ≃ C.Hom x (R.F₀ y)
56+
f {c} {d} =
57+
D.Hom (L.F₀ c) d ≃⟨ iD.F₁ , ffID ⟩
58+
D'.Hom (iD.F₀ (L.F₀ c)) (iD.F₀ d) ≃⟨ iso→hom-equiv D' (isoⁿ→iso ((_ Iso⁻¹) comm1) c) (id-iso _) ⟩
59+
D'.Hom ((L' F∘ iC).F₀ c) (iD.F₀ d) ≃⟨ L-adjunct adj , L-adjunct-is-equiv adj ⟩
60+
C'.Hom (iC.F₀ c) ((R' F∘ iD).F₀ d) ≃⟨ iso→hom-equiv C' (id-iso _) (isoⁿ→iso comm2 d) ⟩
61+
C'.Hom (iC.F₀ c) (iC.F₀ (R.F₀ d)) ≃⟨ (iC.F₁ , ffIC) e⁻¹ ⟩
62+
C.Hom c (R.F₀ d) ≃∎
63+
64+
-- {!!} ∙ {!!}
65+
-- {!!} ∙ {!!}
66+
67+
```

0 commit comments

Comments
 (0)