Note carefully
The reversal of the two examples, depending on whether the subtype relation is on the left or the righthand side of the function arrow
Cardelli argues this leads to the basic rule for subtyping of functions:
- if S’ <= S and T <= T’ then S ? T <= S’ ? T’
- Because you can generally constrain the domain of a function and unconstrain the range of a function, without harming the function