AspiringKnitter comments on Rationality Quotes April 2012 - Less Wrong

4 Post author: Oscar_Cunningham 03 April 2012 12:42AM

You are viewing a comment permalink. View the original post to see all comments and the full post content.

Comments (858)

You are viewing a single comment's thread. Show more comments above.

Comment author: Eliezer_Yudkowsky 04 April 2012 08:10:47PM 25 points [-]

It surprises people like Greg Egan, and they're not entirely stupid, because brains are Turing complete modulo the finite memory - there's no analogue of that for visible wavelengths.

Comment author: AspiringKnitter 05 April 2012 06:05:40AM 23 points [-]

If this weren't Less Wrong, I'd just slink away now and pretend I never saw this, but:

I don't understand this comment, but it sounds important. Where can I go and what can I read that will cause me to understand statements like this in the future?

Comment author: Viliam_Bur 05 April 2012 09:15:23AM *  31 points [-]

When speaking about sensory inputs, it makes sense to say that different species (even different individuals) have different ranges, so one can percieve something and other can't.

With computation it is known that sufficiently strong programming languages are in some sense equal. For example, you could speak about relative advantages of Basic, C/C++, Java, Lisp, Pascal, Python, etc., but in each of these languages you can write a simulator of the remaining ones. This means that if an algorithm can be implemented in one of these languages, it can be implemented in all of them -- in worst case, it would be implemented as a simulation of another language running its native implementation.

There are some technical details, though. Simulating another program is slower and requires more memory than the original program. So it could be argued that on a given hardware you could do a program in language X which uses all the memory and all available time, so it does not necessarily follow that you can do the same program in language Y. But on this level of abstraction we ignore hardware limits. We assume that the computer is fast enough and has enough memory for whatever purpose. (More precisely, we assume that in available time a computer can do any finite number of computation steps; but it cannot do an infinite number of steps. The memory is also unlimited, but in a finite time you can only manage to use a finite amount of memory.)

So on this level of abstraction we only care about whether something can or cannot be implemented by a computer. We ignore time and space (i.e. speed and memory) constraints. Some problems can be solved by algorithms, others can not. (Then, there are other interesting levels of abstraction which care about time and space complexity of algorithms.)

Are all programming languages equal in the above sense? No. For example, although programmers generally want to avoid infinite loops in their programs, if you remove a potential for infinite loops from the programming language (e.g. in Pascal you forbid "while" and "repeat" commands, and a possibility to call functions recursively), you lose ability to simulate programming languages which have this potential, and you lose ability to solve some problems. On the other hand, some universal programming languages seem extremely simple -- a famous example is a Turing machine. This is very useful, because it is easier to do mathematical proofs about a simple language. For example if you invent a new programming language X, all you have to do to prove its universality, is to write a Turing machine simulator, which is usually very simple.

Now back to the original discussion... Eliezer suggests that brain functionality should be likened to computation, not to sensory input. A human brain is computationally universal, because (given enough time, pen and paper) we can simulate a computer program, so all brains should be equal when optimally used (differing only in speed and use of resources). In another comment he adds that ability to compute isn't the same as ability to understand. Therefore (my conclusion) what one human can understand, another human can at least correctly calculate without understanding, given a correct algorithm.

Comment author: AspiringKnitter 05 April 2012 07:51:31PM 6 points [-]

Wow. That's really cool, thank you. Upvoted you, jeremysalwen and Nornagest. :)

Could you also explain why the HPMoR universe isn't Turing computable? The time-travel involved seems simple enough to me.

Comment author: thomblake 05 April 2012 08:57:48PM 7 points [-]

Not a complete answer, but here's commentary from a ffdn review of Chapter 14:

Kevin S. Van Horn
7/24/10 . chapter 14
Harry is jumping to conclusions when he tells McGonagall that the Time-Turner isn't even Turing computable. Time travel simulation is simply a matter of solving fixed-point equation f(x) = x. Here x is the information sent back in time, and f is a function that maps the information received from the future to the information that gets sent back in time. If a solution exists at all, you can find it to any desired degree of accuracy by simply enumerating all possible rational values of x until you find one that satisfies the equation. And if f is known to be both continuous and have a convex compact range, then the Brouwer fixed-point theorem guarantees that there will be a solution.

So the only way I can see that simulating the Time-Turner wouldn't be Turing computable would be if the physical laws of our universe give rise to fixed-point equations that have no solutions. But the existence of the Time-Turner then proves that the conditions leading to no solution can never arise.

Comment author: Nick_Tarleton 06 April 2012 02:04:48AM 7 points [-]

I got the impression that what "not Turing-computable" meant is that there's no way to only compute what 'actually happens'; you have to somehow iteratively solve the fixed-point equation, maybe necessarily generating experiences (waves hands confusedly) corresponding to the 'false' timelines.

Comment author: tgb 10 April 2012 11:29:12PM 2 points [-]

Sounds rather like our own universe, really.

Comment author: johnswentworth 09 April 2012 10:52:42PM 3 points [-]

There's also the problem of an infinite number of possible solutions.

Comment author: faul_sname 13 April 2012 05:49:00AM 0 points [-]

The number of solutions is finite but (very, very, mind-bogglingly) large.

Comment author: AspiringKnitter 05 April 2012 11:14:25PM 2 points [-]

Ah. It's math.

:) Thanks.

Comment author: Nornagest 05 April 2012 06:42:10AM *  3 points [-]

A computational system is Turing complete if certain features of its operation can reproduce those of a Turing machine, which is a sort of bare-bones abstracted model of the low-level process of computation. This is important because you can, in principle, simulate the active parts of any Turing complete system in any other Turing complete system (though doing so will be inefficient in a lot of cases); in other words, if you've got enough time and memory, you can calculate anything calculable with any system meeting a fairly minimal set of requirements. Thanks to this result, we know that there's a deep symmetry between different flavors of computation that might not otherwise be obvious. There are some caveats, though: in particular, the idealized version of a Turing machine assumes infinite memory.

Now, to answer your actual question, the branch of mathematics that this comes from is called computability theory, and it's related to the study of mathematical logic and formal languages. The textbook I got most of my understanding of it from is Hopcroft, Motwani, and Ullman's Introduction to Automata Theory, Languages, and Computation, although it might be worth looking through the "Best Textbooks on Every Subject" thread to see if there's a consensus on another.

Comment author: MarkusRamikin 05 April 2012 07:06:07AM 0 points [-]

infinite memory space

Curious, does "memory space" mean something more than just "memory"?

Comment author: wedrifid 05 April 2012 10:05:50AM *  7 points [-]

infinite memory space

Curious, does "memory space" mean something more than just "memory"?

Just a little more specific. Some people may hear "memory" and associate it with, say, the duration of their memory rather than how many can be physically held. For example when a human is said to have a 'really good memory' we don't tend to be trying to make a claim about the theoretical maximum amount of stuff they could remember.

Comment author: Nornagest 05 April 2012 07:11:42AM *  2 points [-]

No, although either or both might be a little misleading depending on what connotations you attach to it: an idealized Turing machine stores all its state on a rewritable tape (or several tapes, but that's equivalent to the one-tape version) of symbols that's infinite in both directions. You could think of that as analogous to both memory and disk, or to whatever the system you're actually working with uses for storage.

Comment author: MarkusRamikin 05 April 2012 07:13:35AM *  0 points [-]

Right, I know that. Was just curious why the extra verbiage in a post meant to explain something.

Comment author: Nornagest 05 April 2012 07:15:02AM 1 point [-]

Because it's late and I'm long-winded. I'll delete it.

Comment author: jeremysalwen 05 April 2012 06:18:04AM 2 points [-]