In TLC we can specify the behavioral spec as a temporal formula spec, and that is typically defined as
Spec === Init /\ [][Next]_vars /\ WF_vars(Next)
In this case,
- How does TLC know Init is the init function? And more specifically, how does it know Init must happen before any Next operation occurs?
- Is it by the order in which they are defined or by convention like if the name is Init etc?
Thanks,
JP