Hacker News new | ask | show | jobs
by davidrusu 4099 days ago
Let's reverse the numbers and make both boxes transparent.

If The Predictor suspects you will choose just box A, it'll put 1 million in box B and 1 thousand in box A, if it suspects you will take both A and B, it will put nothing anything in box B and 1 thousand in box A.

So now you standing in front of the two transparent boxes. You see that there is $1 million in box B, yet you still take just box A?

3 comments

In that scenario, the predictor will always "predict" that you will take both boxes.

The lack of information of box B, is exactly what makes the other case different. Then you need to only rely on thinking and you do not know if box B has a million dollars till you open it. If you risk taking two boxes, you will lose it.

---

Let me give another example to make the original scenario transparent.

Imagine I will write a function "decide(double content_of_A)" to decide whether B or both will be opened, given content of A.

Imagine you can examine the function beforehand, and you are super-intelligent compared to me, so any attempt to obfuscate the code in my part will be utterly useless and easily seen through.

And you are honest - in putting the $1M in box B if your analysis suggests that the decision function will only take B.

Note that my function gets called after you have placed the money, just as in the original scenario.

Would I not write the function to choose B? I would.

In that scenario, it wouldn't make a difference what you choose.

If you were so inclined to take Box B's million, Omega would never have put that million in the first place.

The only way for Omega to put that million there is if you weren't inclined to take Box B - despite the million being completely visible to you - in which case you lose anyway.

The situation where Omega gives you the million, and you take it, just never comes up. Can't fool it.

In that case, Box B would only be full if you're a very honest person, who'll take only Box B.