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.
Blake Pollard said:
Yea, systems or systems engineering definitely has emerged as a (still fairly broad) sub-community of ACT and cybernetics is a cool even broader umbrella.
From what I have seen of the tools people are using, systems engineering approaches seem to be more about resource sharing and cybernetics is more about "everything is a lens if you squint." I think that @Sophie Libkind's talk on Resource Sharing Machines proposed a path forward for unifying these two approaches. @Evan Patterson and @David Spivak have been talking a lot recently about how undirected wiring diagrams are the natural language for hypergraph categories, which are inherently undirected like . I get the feeling that lenses and "open systems are machines" are good for modeling things that have an obvious orientation with a few loops, like a controller with feedback, but resources sharing is good for something that is inherently unoriented like heat diffusing through a material in all directions simultaneously.
Yea, I definitely like thinking of the type of composition of identifying places in a Petri net with SEIRD semantics 'resource sharing,' although infected people are a weird kind of resource. The lens or comb story fits in terms of system context, subsystem update, and then system context update, especially if souped up with Poly's ability to change interface type, although I have to dig into this more still. The directedness bit is always a bit slippery for me, but I think that is how the world works.
Those infinitesimal stochastic matrices we love from the Markov process can be understood as descritizations of the heat equation/laplacian. For closed Markov processes, the steady state distribution can be written down explicitly as a product over rates of a sum over all spanning trees. But the real role the spanning trees play is something that can be directed. If you pick any point on a tree you can direct all the other edges toward or away from that point, and that is how they appear in the steady state formula. So even for something as 'undirected' as heat flow, direction enters the game, but somewhat as an artifact of our attempt to compute something we thing is useful/meaningful.
But yea that is a bit different from the type of directionality you see in control systems, but then again that is also somewhat an artifact of our design. Is the plant subservant to the controller or vice-versa?
Cf. the classical duality of game semantics, where one player is the "Player" and the other is the "Opponent" but the distinction is arbitrary, and there is a duality functor that interchanges the roles
Yea, right and do you think of that as an example of agent/environment duality and is the latter something that has been defined at some level of generality in the lens world?
James Fairbanks said:
Blake Pollard said:
Yea, systems or systems engineering definitely has emerged as a (still fairly broad) sub-community of ACT and cybernetics is a cool even broader umbrella.
From what I have seen of the tools people are using, systems engineering approaches seem to be more about resource sharing and cybernetics is more about "everything is a lens if you squint." I think that Sophie Libkind's talk on Resource Sharing Machines proposed a path forward for unifying these two approaches. Evan Patterson and David Spivak have been talking a lot recently about how undirected wiring diagrams are the natural language for hypergraph categories, which are inherently undirected like . I get the feeling that lenses and "open systems are machines" are good for modeling things that have an obvious orientation with a few loops, like a controller with feedback, but resources sharing is good for something that is inherently unoriented like heat diffusing through a material in all directions simultaneously.
I think the indexed double categorical framework can shed a bit of light on this distinction between the "directed" composition of lenses and the "undirected" composition of spans. The base of the indexed double category is your double category of "interfaces" -- these could be lens-y or span-y, depending on choice. Representable indexed double functors take lens-y systems into span-y "resource sharing" systems in a variety of ways depending on the representing system. But there are also indexed double functors which take "undirected" span-y systems, like Baez-Pollard-etc. open Markov processes, and turn them into lens-y systems. So these two approaches are not so obviously opposed.
Sophie and I have been talking about how we can bring our two frameworks, which are very close in spirit, together. Sophie's interfaces (to use my terminology) are both lens-y and span-y at the same time, and they relate appropriately by adding.
The lens composition is directed not by the distinction between input and output conceived of as resource flows, but by the disctinction between parameter and variable. The directedness (with its feedback) is given by understanding how parameters may depend on variables. So the orientation in the lens framework comes from the dependency relationship, which is naturally directed, but not related at all to "flow" in the system.
The span composition is based on the idea of variable sharing. It is undirected in that it does not make a distinction between parameter and variable; even the parameters are treated as variables. Again, this doesn't really have to do with "flow" through the system, but is better when one does not want to take the normative step of separating certain variables of the system as "control variables" or parameters.
Blake Pollard said:
Yea, right and do you think of that as an example of agent/environment duality and is the latter something that has been defined at some level of generality in the lens world?
On of my favorite examples of a simple lens-based composition of systems is this two box diagram:
If we label one box "Agent" and one box "Environment", this exhibits the co-dependency relationship: the agent is affected by the environment, and acts in it; this act changes the environment, which then reacts to the agent. But this diagram is symmetric, so we could just slide the boxes around!
I'm not sure this is the agent-environment duality you're looking for, but its like the player-opponent duality in the sense that it is based on which way one focuses on the situation.
I’m glad this has started a good discussion, we are all circling around these ideas, that computation is traditionally directed from inputs to outputs but systems are just coupled. We introduce direction in order to compute, but then we have to take it out by introducing feedback.
David Jaz said:
On of my favorite examples of a simple lens-based composition of systems is this two box diagram...
This is also one of my favourite examples, and is how I think of this 'duality' (and the player/opponent one), too.
Drawing it like this really shows off the symmetry!
Also also cf. the slide in my talk that says that if is traced monoidal then satisfies the conditions to be a context functor
Sophie Libkind said:
Drawing it like this really shows off the symmetry!
(Sophie, what's your workflow like for posting drawings on Zulip? Do you do it straight from your phone?)