I think it's a bit bad practice to mix your model data with the model functions/state
this is wiring, you can wire the pattern in any way you'd like
The constraints of the pattern are only:
This factoring is "unique", you just can't make it up (IMHO)
You can define formalisms on top of it, but you cannot decide arbitrarily what the foundation is, it is foundational.
you can't throw up any formalism in the air and say that one works too,
My point is that TLA+ is a formalism which can be used to describe any state machine as we know it, therefore I claim it is foundational.
Except that there is a very, very fundamental difference here
SAM state machines are not of the kind (S1,A,S2)
If that was the case, you would be correct
As I mentioned the structure of (S1,A,S2) is an approximation
The SAM pattern can be described as a Mathematical expression (formula):
V = S( vm(M.present(A(data))), nap(Model) )
However, that expression is only a logical expression that describes the sequence in which the elements of the pattern are invoked.
Where S(), vm(), A() and nap() are pure functions with respect to the model.