When is a block diagram executable?
For example, consider the block diagram below which has an initial value on the blue block. I'd say this is _not_ executable.

On the left, the blue block has an initial value. No further execution is possible, as shown on the right.
After adding an initial value for the green block, the diagram loops forever. I'd say this _is_ executable.

So the initial conditions on a block diagram decide if the diagram is executable.
However, not all executable block diagrams are sound. Consider the diagram below which sets an initial value on the orange and red blocks.

These initial conditions are invalid as they cause blocks to have multiple values at each timestep.
Formally, towards a contradiction: Let $b(t)$ denote the value of block $b$ at time $t$ and let $b\langle x\rangle$ denote the output of block $b$ after being evaluated on some input $x$. Above, the initial conditions set $\text{red}(0)=x$ and $\text{orange}(0)=y$. However, as the output of $\text{red}$ feeds into the input of $\text{orange}$, $\text{orange}(0)$ is $\text{orange}\langle \text{red}(0)\rangle$ is $\text{orange}\langle x\rangle$. But this is a contradiction as $\text{orange}(0) = y$.
So we are left with another question. When is an executable block diagram sound?
I'll close with two more examples.
One: Is the diagram below containing two disconnected loops executable?

Verily, this will execute forever. But no blocks in the bottom loop take on a value. Need every block in a diagram take on a value for said diagram to be executable? Or perhaps diagrams must be composed of a single [connected component](https://en.wikipedia.org/wiki/Component_(graph_theory)) and this question has a false premise.
Two: Is a diagram which does not loop forever executable?

I feel the answer is yes. So perhaps a dynamical block diagram is one composed of [strongly connected components](https://en.wikipedia.org/wiki/Strongly_connected_component)? Should cadCAD support non-dynamical block diagrams?