invariant invariant update automation
In my everyday job, I often solve the following problem. Due to my contract, I cannot tell you what the exact task is, so I abstracted away the details with the help of category theory.
Let the objects e, i, w be given along with arrows T:w->w, W:e->w, I:e->i. The task is to find an arrow U for which the following diagrams commute:
Let me just name the objects and arrows with real names:
- U – update
- I – invariant projection
- W – window projection
- T – transformation
- w – window
- i – invariant
- e – entity
In other words, I write small automation scripts (U) to update entities represented in quite complex (and distributed) ways, at the same time respecting their consistency and other extra constraints. The task specification (T) usually operates with only a projection/subspace of the real entity space.
