On Friday, February 10, 2023 at 11:49:01 PM UTC+8 Markus Kuppe wrote:
On 2/10/23 7:15 AM, Stephan Merz wrote:
> Invariants are evaluated concurrently with state space generation: by default, TLC stops generating new states when an invariant evaluates to false. One could certainly measure the time that TLC spends on evaluating the invariants but currently this is not done.
The TLC Profiler [1] provides insights into the evaluation frequency of
an invariant and its constituent formulas, as well as their memory
usage. Overriding certain parts of an invariant with a Java module
override can be beneficial, and the CommunityModules repository on
GitHub [2] is a great starting point for discovering operators with
overrides.
Markus
[1] https://tla.msr-inria.inria.fr/tlatoolbox/doc/model/profiling.html,
[2] https://github.com/tlaplus/CommunityModules