Hacker News new | past | comments | ask | show | jobs | submit login

> A Gödel numbering is simply a mapping to integers (that is easily decoded).

"easily" is arguable. Sure, I could multiply/factor an enormous number and count how many copies of each prime it has, but I'd much rather concatenate/split some digits.




Factoring numbers is difficult. Manipulating digits is easy, or it looks that way, but this is partially an illusion resulting from the number being given to you with the digits already known.

If you have a quantity in mind but you're not sure what its digits are, it can be a lot of work to learn.


I don't know what you mean by "not sure what its digits are".

If you mean what base to represent the number in, that's no more arbitrary than knowing the exact way Gödel numbers use primes.


Maybe it's an unfair example but: the number of people on Earth. We know the quantity more or less, the leftmost digit in base ten, then it's a lot of work to figure out the other digits.


Definitely unfair, because we're discussing this as a way to encode and decode a string of numbers into a single number, no measurements involved.

And factoring the number of people on earth would be just as hard.


You don't need to factor, if you know the nth prime you can easily find what value is at the nth position.

If you're clever about the way you write your syntax tree you can limit the primes to below 13 or so. Don't think there are many useful language constructs that consist of more than 5 or so terms (I think you can limit it to 3 if you encode lists as (list a (list b (list c nil))).




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: