24 April 2017:

1) This week Blake and I visited Metron Scientific Solutions. I only visited for a few hours, but Blake stayed for several days, including a hackathon where the Metron team tried to solve a search and rescue problem posed by DARPA!

One thing I did during my short stay was try to sell people on the vision of using operads to design systems 'a bit at a time'. Here 'a bit at a time' is meant in two ways. The basic idea is that a 'system' is an element of some algebra $A$ of some operad $O$. Then:

a) We can design small systems and stick them together using the operations of $O$ to get bigger systems, and

b) We can design systems at a high level of abstraction (meaning: not much detail) and then move to a lower level of abstraction (meaning: add extra details) with the help of a map of operads $O' \to O$. We do this by starting with an element of some algebra $A$ of $O$, and then choosing a way to 'lift' it to an element of some algebra $A'$ of $O'$. Here the primed guys are the ones with more detail.

The second point here is subtler than the first and I'm not really trying to explain it here, so don't feel bad if it doesn't make enough sense!

There were a lot of interesting discussions after I left. Blake summarized them for me... but very very briefly, it seems that:

a) we need to think harder about how to model "levels of abstraction", because this phrase means several different things,

b) we need to think more about how our "operads of communication networks" are connected to Spivak's "operad of wiring diagrams",

c) we should continue thinking about Petri nets. The operad of wiring diagrams has an algebra whose elements are open Petri nets. These have a bit of computational power, at least if we equip the Petri nets with suitable bells and whistles. Thus, we can use them to model many real-world gadgets, which may be handy as we move forwards in this project.