ちょっと間違い
forall a. (a -> T)は
{ ⊥, (\x -> T), (\x -> let _ = x in T), ... }
だった
つまり書く集合の内xをIntなどの具体的な型として
扱っていない項だけが残る