UNIT-TYPE ::= unit-type SPEC* SPEC
A unit type is written:
SP1×...×SPn -> SPWhen the list SPEC* of argument specifications is empty, the unit type is simply written `SP'.
A unit satisfies a unit type when it is a persistent function that maps compatible tuples of models of the argument specifications SP1, ..., SPn to models of their extension by the result specification SP.