Constraint a type constructor to be lower than a monotype's head.
The constraint is posed on the raw monotype, after the nullness marker.
author: Daniel Bonniot
Perform type symbol substitution inside the constraint.
Does not need to create a new object, but must not
imperatively modify the constraint.
Parameters: map - a map from TypeSymbols to TypeSymbols an atomic constraint with substitution performed