Information calculated and used by the validator.
The validator calculates and uses information, such as types, and annotates the abstract syntax with some of this information. Here we introduce fixtypes for this information, and operations on those fixtypes.
We also introduce predicates over the abstract syntax, to check that the annotations from the validator are present. This is not the same as saying that the constructs are validated; the predicates just say that information of the right type is present.