User blog comment:C7X/CNF Comparison Algorithm/@comment-32213734-20200106184503/@comment-35470197-20200107140729

There are two ways to define normal forms: For example, the following is the definition of normal forms of ordinals below Γ_0. For example, the following is the definition of normal form expressions of ordinals below Γ_0. It does not include a circular logic, because I defined < on T before defining OT.
 * 1) To define an infinite family of relations of ordinals
 * 2) To define a recursive set of expressions.
 * 1) A 3-ary relation "=_{NF} +" is defined as a =_{NF} b + c <=> a=b+c, b and c are additive principal numbers, and b ≧ c.
 * 2) A 4-ary relation "=_{NF} + +" is defined as a =_{NF} b + c + d <=> a=b+c+d, b, c, and d are additive principal numbers, and b ≧ c ≧ d.
 * 3) An n-ary relation "=_{NF} \underbrace{+ \cdots +}_n" for n>4 is defined in a similar way.
 * 4) A 3-ary relation "=_{NF} φ_" is defined as a =_{NF} φ_b(c) <=> a = φ_a(b), a < φ_a(b), and b < φ_a(b).
 * 5) and so on.
 * 1) Define a set T of formal strings in the following way:
 * 2) ∈T.
 * 3) For any a,b∈T, (a,b)∈T.
 * 4) For any a,b∈T＼{}, a+b∈T.
 * 5) Call an element of T an expression.
 * 6) Define a map o:T→Γ_0, s→o(s) called interpretation in the following inductive way:
 * 7) If s=, then o(s) = 0.
 * 8) If s=(a,b) for some a,b∈T, then o(s) = φ_a(b).
 * 9) If s=a+(b,c) for some a∈T＼{} and b,c∈T, then o(s) = o(a) + o((b,c)).
 * 10) Through the interpretation o, every expression corresponds to an ordinal below Γ_0
 * 11) Define a binary relation s < t on T in the forllowing recursive way:
 * 12) If s =, then s < t is equivalent to t≠.
 * 13) Define the subset OT⊂T of normal form expressions in the following recursive way:
 * 14) ∈OT
 * 15) For any a,b∈T, (a,b)∈OT <=> a,b∈OT and a < (a,b) and b <(a,b).
 * 16) For any a∈T＼{} and b,c∈T, a+(b,c)∈OT <=> …
 * 1) For any a∈T＼{} and b,c∈T, a+(b,c)∈OT <=> …

In order to define "the comparison algorithm", we need to define normal form expressions. The first method is what Rathjen often used, but is quite complicated because you need to iterate the relations in order to define "normal form expressions". The second method is what Buchholz used, and is simple.