A map from strings to types.
Decides whether the symbol with the given identifier should be a variable or constant, and what its type should be.
Decides whether the symbol with the given identifier should be a variable or constant, and what its type should be.
Either IsVar(type) or IsConst(type).
Returns the type of the symbol with the given identifier.
Returns the type of the symbol with the given identifier.
The name of the symbol.
Returns true iff the symbol with the given identifier is a variable.
Returns true iff the symbol with the given identifier is a variable.
The name of the symbol.
A map from strings to types.
A signature based on a map: The identifiers for which the map is defined are constants, the rest are variables.
A map from strings to types.