Non-termination, my bad!<p>And of course that&#x27;s true! Trivially so, though, in that we could do the same by picking the counter to be 10 instead of 2^1000, since we don&#x27;t appear to care about changing the meaning of the program.<p>If we do, then we have to consider whether we want our equality to distinguish terminating and non-terminating programs. If it does distinguish, then non-terminating ones are impure.<p>Now, what I think you&#x27;re really asking for is a blurry edge where we consider equality module &quot;reasonable finite observation&quot; in which something different might arise.<p>But in this case you need partial information so we&#x27;re headed <i>right</i> at CRDTs, propagators, LVars, and all that jazz. I&#x27;m not for a single second going to state that there aren&#x27;t interesting semanticses out there.<p>Although I will say that CRDTs have really nice value semantics with partial information. I think it&#x27;s a lot nicer than the operational&#x2F;combining model.