What TLA+ can and can't check

29 points by hwayne


ahelwer

You can definitely see that some things are more ergonomic to express in TLA+ than others; like my reachability properties post was indeed unhinged! I've been using TLA+ for more than a decade, have been paid to work on the core tools, and am probably in like the top 5-10 people worldwide for TLA+ knowledge - and I still didn't understand how to express reachability until writing that blog post the other day. So I do think it is valid to say some things can be technically expressed but are definitely not ergonomic.

I wonder whether this is inherent to the formalism, or maybe the formalism can be extended to make these ergonomic, or by doing so we fall afoul of the same age-old branching-time vs. linear-time logic debate that has been raging (or at least gently warming) since Arthur Prior (in an excellent example of nominative determinism) came up with temporal logic in the 1950s. At very least TLC could be easily extended to check basic reachability properties, but not in a way where they could be composed with other properties.