GHC.TypeNats
data Nat
class KnownNat n
natVal
natVal'
data SomeNat
someNatVal
sameNat
type x <= y
type family (m :: Nat) <=? (n :: Nat) :: Bool
type family (m :: Nat) + (n :: Nat) :: Nat
type family (m :: Nat) * (n :: Nat) :: Nat
type family (m :: Nat) ^ (n :: Nat) :: Nat
type family (m :: Nat) - (n :: Nat) :: Nat
type family CmpNat (m :: Nat) (n :: Nat) :: Ordering