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.
I'm (re)reading a paper defining a certain type of dynamical system and trying to make sense of the set theoretic definitions in a more categorical light, but running into problems. I will present below a small snippet of the definition that illustrates some of my issue.
First the definitions as given set theoretically. Consider a set of state variables . Let , where is a set of Types we'd use to represent states (so perhaps Int
, Float
, char
, etc). Let be a function giving the initial value of each state variable. It is defined to be , so for each state variable it picks out a value in the Type that state variable is sent to.
How should I be thinking of formalizing the definition of ? Given that it's job is to pick out elements of a set, it really seems like it ought to be related to functions out of the terminal object into each Type in order to do that, but I'm not sure if this is a good approach to follow. Any advice?
@Kevin Arlin thanks for pointing me here!
Without any further context I would formalize as a functor from the discrete category into some category of types (which might just be the category of sets), and then is a natural transformation from the terminal such functor, just as you're suggesting. If types are sets, then you can also build up as a function where is the disjoint union of all the values of and then is a section of that is a function with This is a more intuitive picture, to my mind.
Thanks @Kevin Arlin , I'll try working with that idea, as well as typing out more of the context.
Kevin's second suggestion is what I would say. From a type-theoretic perspective, what you have is a "dependently typed function" or alternatively . In a category, the standard way to represent a dependently typed function is as a section of the projection from to .
Thanks Mike and Kevin! Given all the Types are always going to be sets, the second approach looks like the better one to follow. I appreciate the connection to type theory, I did realize $$Val_{0}$ should be a dependent function type but I'm too early in my type theory learning to see how any of it maps to category theory yet; it's very nice to get this information.
Kevin, is your the disjoint union of all types in ? To be absolutely concrete, say we had a Petri net with 3 places, then would send those 3 places to Int
, so would be Int
+ Int
+ Int
?
Not necessarily all the types in just all of them in the range of So your example is right.