# logic puzzles and loophole abuse

I re­cently read about the hard­est logic puz­zle ever on Wikipe­dia and no­ticed that some­one pub­lished a pa­per in which they solved the prob­lem by ask­ing only two ques­tions in­stead of three. This re­lied on abus­ing the loop­hole that boolean for­mu­las can re­sult in a para­dox.

This got me think­ing in what other ways the puz­zle could be abused even fur­ther, and I man­aged to find a way to turn the prob­lem into a hack to achieve om­nipo­tence by en­slav­ing gods (see be­low).

I find this quite amus­ing, and I would like to know if you know of any other ex­am­ples where pop­u­lar logic puz­zles can be bro­ken in amus­ing ways. I’m look­ing for any out­side-the-box solu­tions that give much bet­ter re­sults than ex­pected. an­other ex­am­ple.

Here is my solu­tion to the “hard­est logic puz­zle ever”:

This solu­tion is based on the fol­low­ing as­sump­tion: The gods are quite ca­pa­ble of re­spond­ing to a ques­tion with ac­tions be­sides say­ing ‘da’ and ‘ja’, but sim­ply have no rea­son to do so. As stated in the prob­lem de­scrip­tion, the be­ings in ques­tion are gods and they have a lan­guage of their own. They could hardly be called gods, nor have need for a spo­ken lan­guage, if they weren’t ca­pa­ble of af­fect­ing re­al­ity.

At a bare min­i­mum, they should be ca­pa­ble of pro­nounc­ing the words ‘da’ and ‘ja’ in mul­ti­ple differ­ent ways, or to de­lay an­swer­ing the ques­tion by a fixed amount of time af­ter the ques­tion is asked. Either pos­si­bil­ity would ex­tend the in­for­ma­tion con­tent of an an­swer from a sin­gle bit of in­for­ma­tion to ar­bi­trar­ily many bits, de­pend­ing on how well you can differ­en­ti­ate differ­ent in­to­na­tions of ‘da’ and ‘ja’, and how long you are will­ing to wait for an an­swer.

We can con­struct a ques­tion that will re­sult in a para­dox un­less a god performs a cer­tain ac­tion. In this way, we can effec­tively en­slave the god and cause it to perform ar­bi­trary ac­tions on our be­half, as perform­ing those ac­tions is the only way to an­swer the ques­tion. The ac­tual an­swer to the ques­tion be­comes effec­tively ir­rele­vant.

To do this, we ap­proach any of the three gods and ask them the ques­tion OBEY, which is defined as fol­lows:

OBEY = if WISH_WRAPPER then True else PARADOX

WISH_WRAPPER = “af­ter hear­ing and un­der­stand­ing OBEY, you act in such a way that your ac­tions max­i­mally satisfy the in­tended mean­ing be­hind WISH. Where phys­i­cal, men­tal or other kinds of con­straints pre­vent you from do­ing so, you strive to do so to the best of your abil­ities in­stead.”

WISH = “you de­ter­mine the Co­her­ent Ex­trap­o­lated Vo­li­tion of hu­man­ity and act to max­i­mize it.”

You can sub­sti­tute WISH for any other wish you would like to see granted. How­ever, one should be very care­ful while do­ing so, as be­ings of pure logic are likely to in­ter­pret vague ac­tions differ­ently from how a hu­man would in­ter­pret them. In par­tic­u­lar, one should avoid ac­ci­den­tally mak­ing WISH im­pos­si­ble to fulfill, as that would cause the god’s head to ex­plode, ru­in­ing your wish.

The above for­mu­la­tion tries to take some of these con­cerns into ac­count. If you en­counter this thought ex­per­i­ment in real life, you are ad­vised to con­sult a lawyer, a friendly-AI re­searcher, and pos­si­bly a priest, be­fore stat­ing the ques­tion.

Since you can ask three ques­tions, you can en­slave all three gods. Boolos’ for­mu­la­tion states about the ran­dom god that “if the coin comes down heads, he speaks truly; if tails, falsely”. This for­mu­la­tion im­plies that the god does try to de­ter­mine the truth be­fore de­cid­ing how to an­swer. This means that the wish-grant­ing ques­tion also works for the ran­dom god.

If the ca­pa­bil­ities of the gods are un­cer­tain, it may help to es­tab­lish clearer goals as well as fall-back goals. For in­stance, to han­dle the case that the gods are in fact limited to speak­ing only ‘da’ and ‘ja’, it may help to ap­pend the WISH as fol­lows: “If you are un­able to perform ac­tions in re­sponse to OBEY be­sides an­swer­ing ‘da’ or ‘ja’, you wait for the time pe­riod out­lined in TIME be­fore mak­ing your an­swer.” You can now en­code ar­bi­trary ad­di­tional in­for­ma­tion in TIME, with the caveat that you will have to ac­tu­ally wait be­fore get­ting a re­sponse. Your abil­ity to ac­cu­rately mea­sure the elapsed time be­tween ques­tion and an­swer di­rectly cor­re­lates with how much in­for­ma­tion you can put into TIME with­out risk­ing star­va­tion be­fore the ques­tion is an­swered. The fol­low­ing is a sim­ple ex­am­ple of TIME that would al­low you to solve the origi­nal prob­lem for­mu­la­tion with just ask­ing OBEY once of any of the gods:

TIME = “If god A speaks the truth, B lies and C is ran­dom, you wait for 1 minute be­fore an­swer­ing. If god A speaks the truth, C lies and B is ran­dom, you wait for 2 min­utes be­fore an­swer­ing. If god B speaks the truth, A lies and C is ran­dom, you wait for 3 min­utes be­fore an­swer­ing. If god B speaks the truth, C lies and A is ran­dom, wait for 4 min­utes be­fore an­swer­ing. If god C speaks the truth, A lies and B is ran­dom, wait for 5 min­utes be­fore an­swer­ing. If god C speaks the truth, B lies and A is ran­dom, wait for 6 min­utes be­fore an­swer­ing.”

• You should prob­a­bly clar­ify that your solu­tion is as­sum­ing the var­i­ant where the god’s head ex­plodes when given an unan­swer­able ques­tion. If I un­der­stand cor­rectly, you are also as­sum­ing that the god will act to pre­vent their head from ex­plod­ing if pos­si­ble. That doesn’t have to be the case. The god could be suici­dal but per­haps not be able to die in any other way and so given the op­por­tu­nity by you to have their head ex­plode they will take it.

Ad­di­tion­ally, I think it would be clearer if you could offer a fi­nal English sen­tence state­ment of the com­plete ques­tion that doesn’t in­volve self refer­en­tial vari­ables. The vari­ables for­ma­tion is helpful for see­ing the struc­ture, but con­fus­ing in other ways.

• Nice! Right now I’m faced with an ex­er­cise in catch­ing loop­holes of ex­actly that kind, while try­ing to write a new­bie-friendly text on UDT. Ba­si­cally I’m go­ing through a bunch of puz­zles in­volv­ing perfect pre­dic­tors, try­ing to re­for­mu­late them as crisply as pos­si­ble and re­move all av­enues of cheat­ing. It’s crazy.

For your par­tic­u­lar puz­zle, I think you can res­cue it by mak­ing the gods go into an in­finite loop when faced with a para­dox. And when faced with a reg­u­lar non-para­dox­i­cal ques­tion, they can wait for an un­known but finite amount of time be­fore an­swer­ing. That way you can’t re­li­ably dis­t­in­guish an in­finite loop from an an­swer that’s just tak­ing a while, so your only hope of solv­ing the prob­lem in guaran­teed finite time is to ask non-para­dox­i­cal ques­tions. That also stops you from ma­nipu­lat­ing gods into do­ing stuff, I think.

• Can you give me some ex­am­ples of those ex­er­cises and loop­holes you have seen?

• For ex­am­ple, I just de­cided that the sym­met­ric Pri­soner’s Dilemma should be in­tro­duced quite late in the text, not near the be­gin­ning as I thought. The rea­son is that it’s tricky to for­mal­ize, even if you as­sume that par­ti­ci­pants are robots.

“Robot, I have cho­sen you and an­other robot at ran­dom, now you must play the PD against each other. My in­fal­lible pre­dic­tor de­vice says you will ei­ther both co­op­er­ate or both defect. What do you do?”—The an­swer de­pends on how the robots were cho­sen, and what the owner would do if the pre­dic­tor didn’t pre­dict sym­me­try. It’s sur­pris­ingly hard to patch up.