|
|
|
|
|
by mmarx
3382 days ago
|
|
Presburger arithmetic[0] is powerful enough to describe the natural numbers with addition, yet still consistent and complete.
On the other hand, Robinson arithmetic[1] lacks induction, but axiomatizes addition and multiplication, and that is sufficient to make it incomplete.
Thus, the problem is not that you can describe the set of natural numbers, or induction, but the interaction between addition and multiplication. [0] https://en.wikipedia.org/wiki/Presburger_arithmetic
[1] https://en.wikipedia.org/wiki/Robinson_arithmetic |
|
(An amusing practical solution to the halting problem is to run two interpreters in parallel, with one running twice as fast as the other. If their states match after starting, the program is in a loop. This trick was sometimes used in the batch computing era to catch beginner student programs that were in a loop before they wasted much CPU time. Programs with long cycles wouldn't be caught, but that was usually not the problem with beginner programs.)