读《GEB》第八章《印符数论》,看到有趣的问题:如何用 TNT 中的符号表示“ 是  的某次方”和“ 是  的某次方”?思考不解,上网搜索。
第一个问题很快搜到,不难理解。只需说: 的大于一的因数都是偶数。也就是:
把  换成任意素数,此方法都能用。此外,也有一种更繁琐但更容易理解的说法: 的质因数都是 。在此不表。
第二个问题就难多了,因为  不是素数。书上说「这一个需要有极大的聪明机智才能翻译成我们的记法中的东西」。中文互联网上似乎还没有解答,不过我搜到了 Stack Exchange 上的答案,于是将其思路记录在此。
法一
这是较为通用的办法,可以参阅「How is exponentiation defined in Peano arithmetic?」。
首先,原命题为:存在 ,使得 。
求 ,只要找到数列满足如下条件,那么  就是所求:
关键问题就是:如何用数表示有限数列?答案是:中国剩余定理。
现有数列 。令 ,令 ,则  两两互质。根据中国剩余定理,存在  使得:
于是, 这两个数就表示了数列 。要取得  所表示的数列的第  项,求  除以  的余数就是。
由此说明,有限数列都可以被表示。但请注意,存在其他的  和  也可以表示 ,上面所述只是其中之一。此外,取超出末尾的项会得到类似乱码的没有意义的数字。
对于所有  和  ,若满足上面那个条件,则  所表示的数列的第  项为 。显然是有满足条件的。其中只用到了取数列某项的操作,无需计算  和 。
法二
这是较为巧妙的特殊方法,但无需用到复杂的定理。
法一使用中国剩余定理表示数列,法二则是使用某素数进制数。
以某素数  进制下的数  表示数列,那么不能直接判断特定的某一位数是否等于某某,只能判断是否存在某一位数等于某某,即判断数列中是否含有某某数。因此,它无法避免乱序和重复,实质上是表达了一个有限集合而非数列。并且,集合中不能有零,因为任何进制数都有无穷多前导零,为避免其干扰,判断时直接排除了零。而且,集合中不能有大于  的数。好在,我们无需知道具体的指数,而且我们根本不需要零,而且足够大的  总是存在的。
如果,对于某集合中的所有数 ,或者 ,或者集合中存在  使得 ,那么,集合中所有数都是  的某次方。
有  表示了集合,有 。若  是素数,且 ,且存在  使得  为  的某次方,且 ,且 ,则  属于该集合。
对于所有  和 ,若  表示的集合中所有数都是  的某次方,且  属于集合,则  是  的某次方。
原书有讲素数的判断。某数是某素数的某次方,使用开头方法即可。