Skip to content

Missing assignments #1195

Answered by Kukovec
timimin asked this question in Q&A
Dec 31, 2021 · 12 comments · 12 replies
Discussion options

You must be logged in to vote

I've attached a reworked version of Paralocks, that contains some comments within.
In short, the primary reason why Apalache is slow on your examples, is that you're frequently using what effectively amounts to anti-patterns in Apalache - iterative object mutation. This is not uncommon for people who come to TLA+ with previous experience in programming languages.

In other words, when defining an expression Y from X, instead of saying "Y is an expression with properties a,b,c,...", you tend to define all the intermediate steps of transforming X into Y: "X is slightly changed into X1 (e.g. by adding one element to a set, or via EXCEPT), which is changed into X2, etc. until Xn = Y".
TLC like…

Replies: 12 comments 12 replies

Comment options

You must be logged in to vote
0 replies
Comment options

You must be logged in to vote
5 replies
@Kukovec
Comment options

@timimin
Comment options

@Kukovec
Comment options

@timimin
Comment options

@Kukovec
Comment options

Comment options

You must be logged in to vote
2 replies
@Kukovec
Comment options

@timimin
Comment options

Comment options

You must be logged in to vote
0 replies
Comment options

You must be logged in to vote
0 replies
Comment options

You must be logged in to vote
0 replies
Comment options

You must be logged in to vote
2 replies
@timimin
Comment options

@Kukovec
Comment options

Answer selected by timimin
Comment options

You must be logged in to vote
0 replies
Comment options

You must be logged in to vote
0 replies
Comment options

You must be logged in to vote
1 reply
@Kukovec
Comment options

Comment options

You must be logged in to vote
0 replies
Comment options

You must be logged in to vote
2 replies
@Kukovec
Comment options

@timimin
Comment options

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
2 participants