Jacob Mather
Jul 10, 2017 · 2 min read

It finally hit me — the reason for this.

It’s because the system that is attempting to be modeled must not be subjected to the same side-effect constraints as the constraining system.

When we need to monitor a process over time (which is a side effect of our constraining system, the Universe), instead of watching it actively, we should check on it asynchronously in a way which can return a deterministic result within the timeframe (context) in which we are concerned.

So, that means then, we must determine a way to inspect the process without altering it. We do this by wrapping it within another context which is different from the current one in some significant way: say, create a separate parallel thread of execution which we can then monitor in a way that does not affect the result of the process we are trying to determine the status of.

In short, I guess, a lot of the trick to managing complexity is realizing this: In Schrodinger’s hypothetical process, where you create a context (a box), an instance of a value (the cat, whose value is alive), and a process (the poison, which decays life), and then execute it (closing the box, triggering the context into separate execution via encapsulation), the theoretical system is fully isolated. The point of interaction for us is when the box is opened, but the cat, and the poison, had an experience entirely unto themselves in isolation.

The cat knew it was dead the moment it happened, regardless of when we opened the box. Check too soon though, and the cat will leap out! Adding or removing energy to a process before it was complete will change the process. Inspecting the process requires observation which naturally changes the process itself.

So, I guess, I can model a solution for a time based problem, but the solution isn’t going to look anything like the problem you want solved — because it can’t, or it wouldn’t work.

Incidentally, if you WANT to model a system which occurs over time, I’ve realized I accidentally built a way to do it: https://github.com/jmather/scope.js

Jacob Mather

Written by

I discover heuristic based interfaces to enhance communication between mankind, and machine-kind, with the fundamental assumption that I am probably wrong.