Category Theory
Zulip Server
Archive

You're reading the public-facing archive of the Category Theory Zulip server.
To join the server you need an invite. Anybody can get an invite by contacting Matteo Capucci at name dot surname at gmail dot com.
For all things related to this archive refer to the same person.


Stream: deprecated: discrete geometry and entanglement

Topic: Free functors


view this post on Zulip Eric Forgy (Dec 13 2020 at 22:29):

Note: Corrections or comments are welcome.

A directed graph is a functor G:XSet,\mathcal{G}: X\to\mathsf{Set}, where XX is a category with two objects X0,X1X^0,X^1 and two morphisms s,t:X1X0.s,t:X^1\to X^0. The set G0=G(X0)\mathcal{G}^0 = \mathcal{G}(X^0) is the set of vertices and the set G1=G(X1)\mathcal{G}^1 = \mathcal{G}(X^1) is the set of directed edges. If ϵG1\epsilon\in\mathcal{G}^1, it is a directed edge from the source node s(ϵ)s(\epsilon) to the target node t(ϵ).t(\epsilon).

The category DiGraph\mathsf{DiGraph} is the functor category [X,Set].[X,\mathsf{Set}].

Composing a graph G\mathcal{G} with a free functor FVect:SetVect\mathcal{F}_{\mathsf{Vect}}: \mathsf{Set}\to\mathsf{Vect} gives a span

V0sV1tV0V^0\overset{s}{\leftarrow} V^1\overset{t}{\rightarrow} V^0

where V0=FVect(G0)V^0 = \mathcal{F}_{\mathsf{Vect}}(\mathcal{G}^0) is a vector space of nodes and V1=FVect(G1)V^1 = \mathcal{F}_{\mathsf{Vect}}(\mathcal{G}^1) is a vector space of directed edges.

view this post on Zulip Eric Forgy (Dec 14 2020 at 00:05):

An algebra is a monoid in Vect\mathsf{Vect} so we can consider a free functor

FAlg:VectAlg,\mathcal{F}_{\mathsf{Alg}}: \mathsf{Vect}\to\mathsf{Alg},

where Alg=Mon(Vect)\mathsf{Alg} = \mathsf{Mon(Vect)} so that the composite

FAlgFVectG:XAlg\mathcal{F}_{\mathsf{Alg}}\circ\mathcal{F}_{\mathsf{Vect}}\circ\mathcal{G}: X\to\mathsf{Alg}

is a span of algebras

A0sA1tA0,A^0\overset{s}{\leftarrow} A^1\overset{t}{\rightarrow} A^0,

where A0=FAlg(V0)A^0 = \mathcal{F}_{\mathsf{Alg}}(V^0) is an algebra of nodes and A1=FAlg(V1)A^1=\mathcal{F}_{\mathsf{Alg}}(V^1) is an algebra of directed edges.

view this post on Zulip Eric Forgy (Dec 14 2020 at 02:36):

(I'm shaky on this one.)

We can consider another free functor

FSpan1:AlgSpan1(Alg)\mathcal{F}_{\mathsf{Span}_1}: \mathsf{Alg}\to\mathsf{Span_1(Alg)}

so that the composite

FSpan1FAlgFVectG:XSpan1(Alg)\mathcal{F}_{\mathsf{Span_1}}\circ\mathcal{F}_{\mathsf{Alg}}\circ\mathcal{F}_{\mathsf{Vect}}\circ\mathcal{G}: X\to\mathsf{Span_1(Alg)}

consists of two objects A0,A1A^0,A^1 and morphisms consists of composable spans

A0sA1tA0.A^0\overset{s}{\leftarrow} A^1\overset{t}{\rightarrow} A^0.

view this post on Zulip Matteo Capucci (he/him) (Dec 14 2020 at 12:15):

Whats up with the last functor? It seems it does nothing!

view this post on Zulip Eric Forgy (Dec 14 2020 at 18:51):

Yeah. I had something else written there and edited it and now I am confused myself. That is why I prefaced it "I am shaky on this one" :) I am not sure about that last step.

view this post on Zulip Eric Forgy (Jan 09 2021 at 21:44):

Since I started this journey, things have changed a little bit (thank goodness!).

For one, I am no longer using the traditional definition of a directed graph as a functor XSetX\to\mathsf{Set} as described above. Instead, now I think of a directed graph as an endomorphism in Span(Set)\mathsf{Span(Set)}, which is captured nicely via a functor
{}
G:NSpan(Set)G:\mathbb{N}\to\mathsf{Span(Set)}
{}
with
{}
G()=V,G(1)=E:VV.G(\bullet) = V,\quad G(1) = E:V\to V.
{}
Given a span of sets
{}
VEVV\leftarrow E\rightarrow V
{}
we can construct a cospan of algebras
{}
KVKEKVK^V\leftarrow K^E\rightarrow K^V
{}
or (I think) a span of vector spaces
{}
K[V]K[E]K[V].K[V]\leftarrow K[E]\rightarrow K[V].
{}
Both can be thought of as functors, i.e.
{}
K:SetAlgK,VKVK^-: \mathsf{Set\to Alg}_K,\quad V\mapsto K^V
{}
and
{}
K[]:SetVectK,VK[V].K[-]: \mathsf{Set\to Vect}_K,\quad V\mapsto K[V].
{}
Since I'm trying to do this incrementally, it probably makes sense to think about K[V]K[V] a bit since KVK^V is dual to K[V]K[V] :thinking:
{}
So I think I'll spend some time thinking about
{}
NSpan(Set)Span(VectK).\mathbb{N}\to\mathsf{Span(Set)\to Span(Vect}_K).