Unknowns comments on AI cooperation in practice - Less Wrong

26 Post author: cousin_it 30 July 2010 04:21PM

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

Comments (157)

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

Comment author: Unknowns 30 July 2010 07:27:17PM 0 points [-]

I've looked at the argument, and it seems to me that Tim Tyler is right, the first case depends on the implementation of "proves (code, maxsteps)."

Regarding the second case, suppose A runs through checking for proofs, and doesn't find any. It then is about to output a 0. But in this case, it is impossible that B should output a 1, because then B would have a proof that A and B output the same thing, and this would be false. Therefore B also must output a 0. Therefore A and B output the same thing. So we should add a line of code to A to express this: "If A is about to output 0, then output 1, because it is proved (by the above reasoning) that A and B output the same thing." The same code should be included in B, and so both will output 1.

Comment author: cousin_it 30 July 2010 07:37:57PM *  1 point [-]

Your proposed change will make A always output 1, and thus become a rather poor player in the Prisoner's Dilemma. You don't want to cooperate with everybody.

Comment author: Unknowns 30 July 2010 07:39:24PM 0 points [-]

However, B will as well, and you do want to cooperate with everybody who cooperates with you, so my proposed change works very well.

Comment author: JGWeissman 30 July 2010 07:43:21PM 2 points [-]

you do want to cooperate with everybody who cooperates with you

Not if they will cooperate regardless of what you do. Then you can win more by defecting.

Comment author: Unknowns 30 July 2010 07:44:35PM 0 points [-]

A knows B's source code, and so it knows that B will only output a 1 if A and B output the same thing, i.e. only if A and B both output 1.

Comment author: cousin_it 30 July 2010 08:29:26PM *  3 points [-]

No, A doesn't know that because it doesn't know B's proof checker is correct.

You really have to be triple extra careful when talking about this stuff. I'm trying to.

Comment author: Unknowns 30 July 2010 08:32:57PM 0 points [-]

Yes, I see that.

Comment author: Vladimir_Nesov 31 July 2010 10:38:26AM *  0 points [-]

I've looked at the argument, and it seems to me that Tim Tyler is right, the first case depends on the implementation of "proves (code, maxsteps)."

I replied here.

Comment author: Unknowns 31 July 2010 01:14:22PM 1 point [-]

I changed my mind anyway.