Documentation

WellFormedness.Declarations

Pure structural/type-shape checks over a TypedPlusCal.Algorithm's declarations, no expression-walking or cross-module lookup needed:

Runs all three checks over a whole algorithm. The empty-globalState.variables check runs before the channel-shaped-entry check on globalState: every algorithm-level variables entry is already banned regardless of its type, so checking channel-shapedness first would report the misleading "declare it via channels/fifos instead" when the real problem is that no variables keyword is allowed there at all. The channel-shapedness check still runs afterward, but is a no-op there by construction.

Equations
  • One or more equations did not get rendered due to their size.
Instances For