Is there a sensible way of composing "non-instantaneous" functions?

107 Views Asked by At

If we try to implement a function $\mathbb{R}^n \rightarrow \mathbb{R}$ using real-world devices gadgets, there'll inevitably be a delay between changing the input values and seeing the desired change in the output value. We could try to model this using a first-order differential equation. Think of $\mathbb{R}^n$ as a smooth manifold $A$ and a $\mathbb{R}$ as a smooth manifold $B$. we want to define that a "non-instantaneous map" $f : A \rightarrow B$ is a way of assigning to each $a \in A$ a corresponding autonomous first-order differential equation $f(a)$ that moves us non-instantaneously toward the desired output value in $B$. We can formalize this as follows:

Definition. Given smooth manifolds $A$ and $B$, a non-instantaneous function $A \rightarrow B$ is a smooth function $f:A \times B \rightarrow TB$, where $TB$ is the tangent bundle of $B$, such that for all $a \in A$, the function $f(a,-) : B \rightarrow TB$ is a section of the bundle projection $TB \rightarrow B$.

By currying $f$ into the form $A \rightarrow (B \rightarrow TB),$ we see that this really just a clever way of assigning a vector field $f(a)$ to each $a \in A$, and since vector fields are basically first-order autonomous differential equations in disguise, this is a reasonable definition.

Now, I guess there's a reasonable way to compose such things, yielding a category. But honestly, I cannot see it. (In fact, I can't even see how to implement identity morphisms.)

Question. Is there a sensible way of composing non-instantaneous functions as defined above? If not, what is the correct definition of non-instantaneous functions, such that composing them becomes possible and we get a category?