We can draw a connection between the Haskell types and the natural numbers. This connection can be made assigning to every type the number of inhabitants it has.
Finite union types
For finite types, it suffices to see that we can assign a natural type to every number, based in the number of constr...