This passage is a bit confusing because it's not correct that every natural number has a primitive root (e.g. consider n = 8): For example, using only typing it is possible to define ... the type (n : ...