Covariance
The covariant rule is different, swapping the function relationships
- if S’ <= S and T <= T’ then S’ ? T’ <= S ? T
This allows different programs to be written, but it cannot guarantee that a “do not understand” error will never arise
- Eiffel uses covariance checking
- It uses “system validity checking” to catch some type errors