Skip to content

Commit 22050aa

Browse files
jajapersonplt-amy
authored andcommitted
defn: Opposite of product category is product of opposites
1 parent 7f54b7b commit 22050aa

2 files changed

Lines changed: 57 additions & 1 deletion

File tree

‎src/Cat/Instances/Product.lagda.md‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,6 @@ _nt×_ α β .is-natural (c , d) (c' , d') (f , g) = Σ-pathp
135135
```
136136
-->
137137
138-
139138
## Univalence
140139
141140
Isomorphisms in functor categories admit a short description, too: They
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
<!--
2+
```agda
3+
open import Cat.Functor.Equivalence
4+
open import Cat.Functor.Properties
5+
open import Cat.Instances.Product
6+
open import Cat.Functor.Base
7+
open import Cat.Prelude
8+
9+
import Cat.Reasoning
10+
```
11+
-->
12+
13+
```agda
14+
module Cat.Instances.Product.Duality {o₁ h₁ o₂ h₂ : Level}
15+
{C : Precategory o₁ h₁} {D : Precategory o₁ h₁}
16+
where
17+
```
18+
19+
<!--
20+
```agda
21+
open Precategory
22+
open Functor
23+
open _=>_
24+
```
25+
-->
26+
27+
# Duality of product categories {defines="opposite-product-category"}
28+
29+
As one might expect, taking the [[opposite category]] of a [[product category]]
30+
agrees with the product of opposite categories. Rather than showing
31+
equality we construct an [[isomorphism of precategories]].
32+
33+
```agda
34+
×^op→ : Functor ((C ×ᶜ D)^op) (C ^op ×ᶜ D ^op)
35+
×^op→ .F₀ x = x
36+
×^op→ .F₁ f = f
37+
×^op→ .F-id = refl
38+
×^op→ .F-∘ f g = refl
39+
40+
×^op-is-iso : is-precat-iso ×^op→
41+
×^op-is-iso = iso has-is-ff has-is-iso where
42+
has-is-ff : Cat.Functor.Properties.is-fully-faithful ×^op→
43+
has-is-ff = id-equiv
44+
45+
has-is-iso : is-equiv (F₀ ×^op→)
46+
has-is-iso = id-equiv
47+
```
48+
49+
This means, in particular, that it is an adjoint equivalence:
50+
51+
```agda
52+
×^op-is-equiv : is-equivalence ×^op→
53+
×^op-is-equiv = is-precat-iso→is-equivalence ×^op-is-iso
54+
55+
×^op← : Functor (C ^op ×ᶜ D ^op) ((C ×ᶜ D)^op)
56+
×^op← = is-equivalence.F⁻¹ ×^op-is-equiv
57+
```

0 commit comments

Comments
 (0)