*guest post by Eugene Lerman*

Hi, I’m Eugene Lerman. I met John back in the mid 1980s when John and I were grad students at MIT. John was doing mathematical physics and I was studying symplectic geometry. We never talked about networks. Now I teach in the math department at the University of Illinois at Urbana, and we occasionally talk about networks on his blog.

A few years ago a friend of mine who studies locomotion in humans and other primates asked me if I knew of any math that could be useful to him.

I remember coming across an expository paper on ‘coupled cell networks’:

• Martin Golubitsky and Ian Stewart, Nonlinear dynamics of networks: the groupoid formalism, *Bull. Amer. Math. Soc.* **43** (2006), 305–364.

In this paper, Golubitsky and Stewart used the study of animal gaits and models for the hypothetical neural networks called ‘central pattern generators’ that give rise to these gaits to motivate the study of networks of ordinary differential equations with symmetry. In particular they were interested in ‘synchrony’. When a horse trots, or canters, or gallops, its limbs move in an appropriate pattern, with different pairs of legs moving in synchrony:

They explained that synchrony (and the patterns) could arise when the differential equations have finite group symmetries. They also proposed several systems of symmetric ordinary differential equations that could generate the appropriate patterns.

Later on Golubitsky and Stewart noticed that there are systems of ODEs that have no group symmetries but whose solutions nonetheless exhibit certain synchrony. They found an explanation: these ODEs were ‘groupoid invariant’. I thought that it would be fun to understand what ‘groupoid invariant’ meant and why such invariance leads to synchrony.

I talked my colleague Lee DeVille into joining me on this adventure. At the time Lee had just arrived at Urbana after a postdoc at NYU. After a few years of thinking about these networks Lee and I realized that strictly speaking one doesn’t really need groupoids for these synchrony results and it’s better to think of the social life of networks instead. Here is what we figured out—a full and much too precise story is here:

• Eugene Lerman and Lee DeVille, Dynamics on networks of manifolds.

Let’s start with an example of a class of ODEs with a mysterious property:

**Example.** Consider this ordinary differential equation for a function

for some function It is easy to see that a function solving

gives a solution of these equations if we set

You can think of the differential equations in this example as describing the dynamics of a complex system built out of three interacting subsystems. Then any solution of the form

may be thought of as a **synchronization**: the three subsystems are evolving in lockstep.

One can also view the result geometrically: the diagonal

is an invariant subsystem of the continuous-time dynamical system defined by the differential equations. Remarkably enough, such a subsystem exists for *any* choice of a function

Where does such a synchronization or invariant subsystem come from? There is no apparent symmetry of that preserves the differential equations and fixes the diagonal and thus could account for this invariant subsystem. It turns out that what matters is the structure of the mutual dependencies of the three subsystems making up the big system. That is, the evolution of depends only on and the evolution of depends only on and and the evolution of depends only on and

These dependencies can be conveniently pictured as a directed graph:

The graph has no symmetries. Nonetheless, the existence of the invariant subsystem living on the diagonal can be deduced from certain properties of the graph The key is the existence of a surjective map of graphs

from our graph to a graph with exactly one node, call it and one arrow. It is also crucial that has the following lifting property: there is a unique way to lift the one and only arrow of to an arrow of once we specify the target node of the lift.

We now formally define the notion of a ‘network of phase spaces’ and of a continuous-time dynamical system on such a network. Equivalently, we define a ‘network of continuous-time dynamical systems’. We start with a directed graph

Here is the set of edges, is the set of nodes, and the two arrows assign to an edge its source and target, respectively. To each node we attach a phase space (or more formally a manifold, perhaps with boundary or corners). Here ‘attach’ means that we choose a function it assigns to each node a phase space

In our running example, to each node of the graph we attach the real line (If we think of the set as a discrete category and as a category of manifolds and smooth maps, then is simply a functor.)

Thus a **network of phase spaces** is a pair where is a directed graph and is an assignment of phase spaces to the nodes of

We think of the collection as the collection of phase spaces of the subsystems constituting the network We refer to as a **phase space function**. Since the state of the network should be determined completely and uniquely by the states of its subsystems, it is reasonable to take the total phase space of the network to be the product

In the example the total phase space of the network is while the phase space of the network is the real line

Finally we need to interpret the arrows. An arrow in a graph should encode the fact that the dynamics of the subsystem associated to the node depends on the states of the subsystem associated to the node To make this precise requires the notion of an ‘open system’, or ‘control system’, which we define below. It also requires a way to associate an open system to the set of arrows coming into a node/vertex

To a first approximation an **open system** (or **control system**, I use the two terms interchangeably) is a system of ODEs depending on parameters. I like to think of a control system geometrically: a control system on a phase space controlled by the the phase space is a map

where is the tangent bundle of the space so that for all is a vector tangent to at the point Given phase spaces and the set of all corresponding control systems forms a vector space which we denote by

(More generally one can talk about the space of control systems associated with a surjective submersion For us, submersions of the form are general enough.)

To encode the incoming arrows, we introduce the **input tree** (this is a very short tree, a corolla if you like). The input tree of a node of a graph is a directed graph whose arrows are precisely the arrows of coming into the vertex but any two parallel arrows of with target will have disjoint sources in In the example the input tree of the one node of of is the tree

There is always a map of graphs For instance for the input tree in the example we just discussed, is the map

Consequently if is a network and is an input tree of a node of then is also a network. This allows us to talk about the phase space of an input tree. In our running example,

Given a network there is a vector space of open systems associated with every node of

In our running example, the vector space associated to the one node of is

In the same example, the network has three nodes and we associate the same vector space to each one of them.

We then construct an interconnection map

from the product of spaces of all control systems to the *space of vector fields*

on the total phase space of the network. (We use the standard notation to denote the tangent bundle of a manifold by and the space of vector fields on by ). In our running example the interconnection map for the network is the map

The interconnection map for the network is the map

given by

To summarize: a dynamical system on a network of phase spaces is the data where is a directed graph, is a phase space function and is a collection of open systems compatible with the graph and the phase space function. The corresponding vector field on the total space of the network is obtained by interconnecting the open systems.

Dynamical systems on networks can be made into the objects of a category. Carrying this out gives us a way to associate maps of dynamical systems to combinatorial data.

The first step is to form the category of networks of phase spaces, which we call In this category, by definition, a morphism from a network to a network is a map of directed graphs which is compatible with the phase space functions:

Using the universal properties of products it is easy to show that a map of networks defines a map of total phase spaces in the *opposite* direction:

In the category theory language the total phase space assignment extends to a contravariant functor

We call this functor the **total phase space functor**. In our running example, the map

is given by

Continuous-time dynamical systems also form a category, which we denote by The objects of this category are pairs consisting of a phase space and a vector field on this phase space. A morphism in this category is a smooth map of phase spaces that intertwines the two vector fields. That is:

for any pair of objects in

In general, morphisms in this category are difficult to determine explicitly. For example if then a morphism from to some dynamical system is simply a piece of an integral curve of the vector field defined on an interval And if is the constant vector field on the circle then a morphism from to is a periodic orbit of Proving that a given dynamical system has a periodic orbit is usually hard.

Consequently, given a map of networks

and a collection of open systems

on we expect it to be very difficult if not impossible to find a collection of open systems so that

is a map of dynamical systems.

It is therefore somewhat surprising that there is a class of maps of graphs for which the above problem has an easy solution! The graph maps of this class are known by several different names. Following Boldi and Vigna we refer to them as **graph fibrations**. Note that despite what the name suggests, graph fibrations in general are not required to be surjective on nodes or edges. For example, the inclusion

is a graph fibration. We say that a map of networks

is a **fibration** of networks if is a graph fibration. With some work one can show that a fibration of networks induces a pullback map

on the sets of tuples of the associated open systems. The main result of Dynamics on networks of manifolds is a proof that for a fibration of networks the maps and the two interconnection maps and are compatible:

**Theorem.** Let be a fibration of networks of manifolds. Then the pullback map

is compatible with the interconnection maps

and

Namely for any collection of open systems on the network the diagram

commutes. In other words,

is a map of continuous-time dynamical systems, a morphism in

At this point the pure mathematician in me is quite happy: I have a theorem! Better yet, the theorem solves the puzzle at the beginning of this post. But if you have read this far, you may well be wondering: “Ok, you told us about your theorem. Very nice. Now what?”

There is plenty to do. On the practical side of things, the continuous-time dynamical systems are much too limited for contemporary engineers. Most of the engineers I know care a lot more about hybrid systems. These kinds of systems exhibit both continuous time behavior and abrupt transitions, hence the name. For example, anti-lock breaks on a car is just that kind of a system — if a sensor detects that the car is skidding and the foot break is pressed, it starts pulsing the breaks. This is not your father’s continuous time dynamical system! Hybrid dynamical systems are very hard to understand. They have been all the rage in the engineering literature for the last 10-15 years. Sadly, most pure mathematicians never heard of them. It would be interesting to extend the theorem I am bragging about to hybrid systems.

Here is another problem that may be worth thinking about: how much of the theorem holds up to numerical simulation? My feeling is that any explicit numerical integration method will behave well. Implicit methods I am not sure about.

And finally a more general issue. John has been talking about networks quite a bit on this blog. But his networks and my networks look like very different mathematical structures. What do they have in common besides nodes and arrows? What mathematical structure are they glimpses of?