3 ms·
I see what you mean but I think it is not totally correct to attribute this to a closed world assumption, after all state machines can have inputs and outputs.
by danbruc 6y ago
I see what you mean but I think it is not totally correct to attribute this to a closed world assumption, after all state machines can have inputs and outputs. I would say the important thing is that in most of those scenarios there is an external feedback loop, the output affects future inputs and this makes the behavior unpredictable as you do not know the sequence of inputs unless you can accurately model the effect of the output on the input.
On the other hand that is not really different from a scenario without external feedback where you just do not know the input - if you do not know the sensor input, you can not predict the movement of the actuator but it does not really make a difference whether you just do not know the sensor input for arbitrary reasons or because of unknown effects of the outputs via the actuator on the sensor inputs.
Thermal throttling is a similar example, there is a feedback loop between the computations you perform, the heat this generates, and how the processor reacts to the resulting temperature sensor inputs. The unknown variable is again the sensor input, whether due to heat from the die are me removing the cooling fins.
Row Hammer is an example where the physical implementation has additional state changes not intended by the designer and which are even subject to variation in the production process. If you are just modelling the intended behavior than the model we obviously not be correct in cases were the unintended behavior is relevant.
In the end I would say that a computer is just a state machine as long as you stay in a regime where the physical implementation is not relevant but at some point this will break. But I also think that this is pretty academic, modern computers are so complex that thinking about it as a state machine will almost always not be useful at all, even in the most well behaved scenarios without the physical implementation becoming relevant or complex external feedback loops.