順序型
上の説明では type(A, <A) をきちんと定義したことにはならない。なぜなら、全順序集合の "形" とは何かが定義されていないからである。(※) をみたすようにすべての全順序集合 (A, <A) に対して type(A, <A) を定義する方法として、まず次のようなものが考えられる。それは、(A, <A) と同型な順序集合全体の集合を type(A, <A) と定義する方法である。実際、このように定義すれば (※) が成り立つことが示せるので何の問題もないように思えるかもしれない。だが、この方法には一つ大きな欠点がある。それは、A が空集合でない限り (A, <A) と同型な順序集合全体の集合というものは存在しないことが(集合論の公理から)示されるということである。つまり、そのような集まりはあまりに大きすぎるため集合になることができないのである。したがって上のような仕方で type(A, <A) を定義することはできない。そこで、この方法を少し修正して次のように順序型を定義する:
全順序集合 (A, <A) に対して type(A, <A) とは、(A, <A) と同型な順序集合のうちで階数が最小のもの全体の集合である。type(A, <A) を (A, <A) の順序型と呼び、ある全順序集合の順序型であるものを単に順序型と呼ぶ。