Question
When using CLI, how to have it show n-th level action trace name (and symbolic arguments names) when an error occurs?
Command: java -jar tla2tools.jar Test.tla
Normal
For example, with:
Spec == Init /\ [][Next]_<<AllStates>>
it shows:
State 1: <Initial predicate> ... State 2: <BuyComputer line 15, col 5 to line 15, col 23 of module Test> ... State 3: <BuyHouse line 17, col 3 to line 17, col 55 of module Test> ...
With condition
and with (if total cost is greater than 100, then do not visit state):
Spec == Init /\ [][Next /\ ((cost' > 100) => UNCHANGED <<AllStates>>)]_<<AllStates>>
it shows:
State 1: <Initial predicate> ... State 2: <Action line 15, col 5 to line 15, col 23 of module Test> ... State 3: <Action line 17, col 3 to line 17, col 55 of module Test> ...
The Action
should be BuyComputer
and BuyHouse
.
Desired with condition
State 1: <Initial predicate> ... State 2: <BuyComputer(Me) line 15, col 5 to line 15, col 23 of module Test> ... State 3: <BuyHouse(Neighbour) line 17, col 3 to line 17, col 55 of module Test> ...
with the functions defined as BuyComputer(who) == ...
and BuyHouse(who) == ...
.
Why
I'm trying to cut down the number of visited states where I know won't lead to an error.
In this case, it is when cost > 100
. I also want the action name instead of "unnamed action" for easier debugging.