Jonathan - great questions!

The framework we're discussing right now can't explain "inhibition". In biochemistry, "inhibitors" often work by binding to one of the reactants. But this only happens in a context where our reactions have "rates" associated to them. That is, we might have reaction \$$X \otimes Y \to A\$$ that occurs with such a high rate that \$$X \otimes Y \to Z \otimes Y\$$ rarely gets a chance to happens, because the rate of \$$X \to Z\$$ is lower. More precisely: if there are enough \$$Y\$$s around, most of the \$$X\$$s bind to the \$$Y\$$s and form \$$A\$$s before they get a chance to become \$$Z\$$s. In the framework discussed near the start of Chapter 2 - namely, symmetric monoidal posets - reactions don't have rates attached to them.

For the same reason, this simple framework can't explain how catalysts in chemistry increase the rates of reactions. It can only explain situations where a reaction is impossible without a catalyst, but becomes possible with it.

I've been thinking a lot about [open reaction networks with rates](https://johncarlosbaez.wordpress.com/2017/07/30/a-compositional-framework-for-reaction-networks/), so you can click the link to read more about those if you're curious. That's a framework that can handle inhibition!