we write the new function as $g/j$ because:
```
C---
| \-g---*
j |
| |
v v
D--g/j--->E
```

```
foo(j(c)) = g(c)
foo = (g/j)(c)
g/j(j(c)) = g(c)
```

#### § Next over preorders (real category stuff)

The kan extension provides us a bijection, for
any function `f: D -> E`

```
C---
| \-g---*
j |
| |
v v
D--g/j--->E
D------f->E
hom(f.j, g) ~= hom(f, g/j)
```

That is, if we have some way to make congruent `f.j`

with `g`

, then we can
"split" the congruence to have `f.j`

congruent with `(g/j).j`

. Cancelling `j`

,
we can have `f`

congruent with `g/j`

.
Consider a preorder with a ordering `≤`

. Equip with a monoidal structure `<>`

,
which is a monotone map with a neutral element. (For example, integers with
multiplication and `≤`

).
The bijection of hom-sets is equivalent to saying
```
m*k <= n iff m <= n/k
```

(how? I have no idea; I gotta work this out!)
#### § Question: What happens in the context of vector spaces?

Since linear algebra is probably the nicest thing we have in math, I really
want to understand what happens in the linear algebra case. I don't really
understand how to make the correct version of a kan extension inside $Vect$,
though. A kan extension seems to fundamentally be a 2 categorical construct,
than a 1 categorical construct.