[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

*From*: vit...@xxxxxxxxxx*Date*: Wed, 9 Nov 2016 17:48:16 -0800 (PST)*References*: <b7fdd1df-31e7-46f4-974e-7056aee9b83f@googlegroups.com> <8DFC3089-C81F-424D-B9BC-920666AAE3BC@gmail.com>

Dear Stephan,

very helpful, thank you!

Vitaliy.

On Wednesday, November 9, 2016 at 3:42:52 PM UTC+8, Stephan Merz wrote:

On Wednesday, November 9, 2016 at 3:42:52 PM UTC+8, Stephan Merz wrote:

Hello,triyng to check eventual action as e.g. <><<hr = 1 => hr' = 2>>_hr (for HourClock example).First, note that this formula is quite certainly not what you intend to verify. It is true of a behavior if eventually the variable hr changes value and its value in the first state is different from one. (An implication is true if the formula on its left-hand side is false.)Syntax analyses shows no errors, but then TLC says:"TLC threw an unexpected exception....Temporal formulas containing actions must be of forms <>[]A or []<>A"What formulation will be correct for eventual action?Well, TLC's error message is pretty explicit here. As explained in Specifying Systems (chapter 14.2.4), TLC checks only a subset of temporal formulas, and <><<A>>_v is not part of that subset. TLC can check that each of the following formulas holds of the HourClock specification (with fairness):<>(hr = 2)[]<><< hr=1 /\ hr' = 2 >>_hr<>[][ hr=1 => hr' = 2 ]_hrHope this helps,Stephan

**References**:**Eventual action***From:*vit . . .

**Re: [tlaplus] Eventual action***From:*Stephan Merz

- Prev by Date:
**Re: [tlaplus] Eventual action** - Next by Date:
**Re: TLA+ community event 2016** - Previous by thread:
**Re: [tlaplus] Eventual action** - Next by thread:
**Nondeterminism and equivalence** - Index(es):