Note [The PatersonSize of a type]

GHC/Tc/Utils/TcType.hs:2213 compiler 1 ticket

The PatersonSize of type is something we can compare, with `ltPatersonSize`,
to determine if the Paterson conditions are satisfied for an instance
declaration.  See Note [Paterson conditions] in GHC.Tc.Validity.

There are some wrinkles

(PS1) Once we get into an implicit parameter or equality we
      can't get back to a class constraint, so it's safe
      to say "size 0".  See #4200.

      We do this with isTerminatingClass

References 1

Referenced by 3