On Tuesday, August 30, 2022 at 8:56:48 PM UTC-7 ns wrote:
Apologies if I'm rehashing a subject that has been thoroughly hashed, but I am looking at translating some LTL formulas into TLA+. In particular the formulas are assertions to a model checker and may contain the X operator. So you may see something like [] (x>0 --> X x=1) along with some fairness assumption about the model. Now as it stands it won't translate to TLA+, but if I insist on it saying [] ((x>0 /\ x=K)--> X (x=1 \/ x=K))
ie ensuring a stutter step is always allowed, is it correct to translate this as
[] [IF x>0 THEN x'=1 \/ x'=x]_<<x>> ?
Thanks!