嘘つき・正直者パズル:騎士と悪党のなぞなぞを解説

ある島の住人は全員、正直者か嘘つきのどちらかです。正直者はいつも本当のことを言います。嘘つきはいつも嘘をつきます。あなたは何人かの島民に会い、自分やほかの人について言うことを聞いて、誰がどちらなのかを見抜きます。
これが嘘つき・正直者パズルで、英語では「騎士と悪党(knights and knaves)」と呼ばれます。論理学者レイモンド・スマリヤンが1978年の著書 What Is the Name of This Book?(邦題『この本の名は?』)でこの設定を有名にし、日本でおなじみの「正直村と嘘つき村」のような「1人は嘘つき、1人は正直者」のなぞなぞにも受け継がれています。以下では、ルール、ほとんどの問題が解ける解き方、そしてオリジナルの7問を答え付きで紹介します。
ルール
- 島民は全員、正直者か嘘つきのどちらかです。問題で特に言われない限り、両方だったり、それ以外だったりすることはありません。
- 正直者の発言はすべて本当です。
- 嘘つきの発言はすべて嘘です。だいたい嘘ではなく、完全に嘘です。
- それぞれ何人いてもかまいません。嘘つき2人が並んでいることも、正直者3人がそろっていることもあります。
嘘つきと正直者がちょうど1人ずつのなぞなぞは特別なケースで、最初からヒントが1つ組み込まれています。
解き方:仮定して確かめる
- 1人を選び、正直者だと仮定します。その人の発言は本当になります。それがほかの人にとって何を意味するかをたどります。
- ほかの発言をすべて確かめます。どこかで矛盾が出たら、仮定が間違っていたということです。
- 次に同じ人を嘘つきだと仮定し、発言を嘘として、同じようにたどります。
- 矛盾しなかったほうが答えです。両方とも矛盾しなければ、正体がわからないまま残る人がいます。
解きながら、名前の下に正直者なら○、嘘つきなら×を書いていきましょう。
覚えておきたい発言
よく出てくる発言があり、覚えておくとかなり時間を短縮できます。ここではAが話し手、Bは別の人です。
| Aの発言 | わかること |
|---|---|
| 「私は正直者だ」 | 何もわかりません。正直者は本当のこととして、嘘つきは嘘として言えます。 |
| 「私は嘘つきだ」 | ありえません。正直者なら嘘を言ったことになり、嘘つきなら本当のことを言ったことになります。 |
| 「Bは嘘つきだ」 | AとBは別の種類です。ただし、まだどちらがどちらかはわかりません。 |
| 「Bと私は同じ種類だ」 | Aが何であれ、Bは正直者です。 |
| 「私たちは2人とも嘘つきだ」 | Aは嘘つきで、Bは正直者です。 |
| 「私たちのうち少なくとも1人は嘘つきだ」 | Aは正直者で、Bは嘘つきです。 |
もうひとつ、ひっかけに注意しましょう。「私たちは2人とも正直者だ」の反対は「少なくとも1人は嘘つきだ」で、「2人とも嘘つきだ」ではありません。嘘つきが「〜で、しかも〜」や「2人とも」を使った発言をするとき、嘘なのは一部だけでかまいません。
挑戦してみよう:7問
答えはそれぞれの問題のすぐ下にあります。先に考えたい人は、手で隠して読んでください。
1. 2人の島民。 Aは「Bは正直者だ」と言います。Bは「Aと私は別の種類だ」と答えます。
答え: 2人とも嘘つきです。Aが正直者だとすると、Bも正直者になり、「別の種類だ」というBの発言は正直者による嘘になってしまいます。よってAは嘘つきで、Aの発言は嘘なので、Bも嘘つきです。2人は同じ種類なので、Bの発言も嘘になり、すべてつじつまが合います。
2. 3人のつながり。 まずAが「Bは嘘つきだ」。次にBが「Cは嘘つきだ」。そしてCが「AとBは2人とも嘘つきだ」。
答え: Aは嘘つき、Bは正直者、Cは嘘つきです。Aを正直者だとすると、Bは嘘つきなので、Cは正直者になります。でも正直者のCが、Aを嘘つきと呼ぶことになります。矛盾です。よってAは嘘つきで、Bは正直者、Cは嘘つきです。Bが正直者なのでCの発言は嘘になり、すべて成り立ちます。
3. どちらか一方だけ。 Aは「BとCのうち、ちょうど1人が正直者だ」と言います。Bは「Aは嘘つきだ」と言います。Cは「Bは正直者だ」と言います。
答え: Aは嘘つきで、BとCは2人とも正直者です。もしBが嘘つきなら、Aは正直者で、嘘つきのBを正直者と呼んだCも嘘つきになります。するとBとCに正直者が1人もいないので、正直者のAの発言が間違っていることになります。よってBは正直者です。するとAは嘘つきで、Cは本当のことを言っています。BもCも正直者なので、Aの発言は成り立ちません。
4. 人数を数える。 1人目は「私たち3人のうち、正直者はちょうど1人だ」と言います。2人目は「私たち3人のうち、正直者はちょうど2人だ」と言います。3人目は「私たち3人は全員嘘つきだ」と言います。
答え: 1人目が正直者で、残りの2人は嘘つきです。正直者は自分を嘘つきとは言わないので、3人目は正直者ではありません。よって3人目の発言は嘘で、正直者は少なくとも1人います。1人目と2人目が両方正しいことはありえないので、2人のうち正直者は多くても1人です。つまり正直者は全部でちょうど1人で、それは1人目が言ったとおりです。
5. 半分だけの答え。 Aは「私たちのうち、ちょうど1人が正直者だ」と言います。Bは黙っています。
答え: Bは嘘つきで、Aはどちらの可能性もあります。Aが正直者なら、Aがその1人の正直者で、Bは嘘つきです。Aが嘘つきなら、正直者の数は1人ではないので、Bも正直者ではありえません。どちらの場合も成り立ち、どちらでもBは嘘つきです。「Aはわからない」というのが正しい答えです。
6. 門番1人、扉2つ。 一方の扉は出口へ、もう一方は罠へつながっています。その間に門番が1人立っていて、正直者か嘘つきのどちらかです。「はい」か「いいえ」で答えられる質問を1回だけできます。何と聞けばいいでしょう?
答え: 左の扉を指して、「この扉は安全かと私が聞いたら、あなたは『はい』と答えますか?」と聞きます。正直者は、自分の正直な答えについて正直に答えます。嘘つきは、自分がつくはずの嘘についてさらに嘘をつくので、2つの嘘が打ち消し合います。どちらの場合も、「はい」なら左の扉が安全です。
7. スパイを加える。 3人います。正直者1人、嘘つき1人、そして好きなときに嘘をついたり本当のことを言ったりできるスパイ1人です。Aは「私はスパイだ」と言います。Bは「Aは本当のことを言っている」と言います。Cは「私はスパイではない」と言います。
答え: Aが嘘つき、Bがスパイ、Cが正直者です。正直者は自分がスパイだとは言わないので、Aは正直者ではありません。Aがスパイで本当のことを言っているとしましょう。するとBの発言は本当なので、Bは正直者で、Cは嘘つきです。でもそうなると、Cの「私はスパイではない」は本当になり、嘘つきには言えない発言です。よってAは嘘つきで、嘘をついています。Bはその嘘を本当だと言っているので、Bも嘘をついています。嘘つきはもういるので、Bはスパイです。Cが正直者です。
Verity or Falsityも同じ論理
Verity or Falsityは、こうしたパズルをもとにしたデイリーゲームです。目の前に3つの扉があり、その横にそっくりな双子の子猫が立っています。1匹はいつも本当のことを言い、もう1匹はいつも嘘をつきます。各問題では2〜4行のセリフが出てくるので、安全な扉を選びましょう。ハズレの扉の向こうでは、陽気なおばけが「BOO」と叫ぼうと待っています。
嘘つきはいつもちょうど1匹なので、島のパズルにはないヒントがあります。嘘つきを見つければ、もう1匹は正直者です。1匹目を正直者として扱い、扉の話のつじつまが合うか確かめましょう。合わなければ、その1匹が嘘つきです。
新しいなぞなぞは毎日5問。全員共通で、1問目から5問目にかけて難しくなります。夜によっては、なぞなぞの途中で時計が真夜中を告げ、双子の役割が入れ替わります。チェッカーで、どのなぞなぞにも安全な扉がちょうど1つ、ありうる嘘つきがちょうど1匹であることを確認しています。練習用に、エンドレスのHallwayと、絵で出題されるKidsモードもあります。

ほかのロジックゲーム
大人向けロジックパズルのガイドでは10種類を例題付きで紹介していて、答え付きなぞなぞの最後には定番の門番2人のなぞなぞがあります。
kekplayでは、Purrzzleは猫を置いていくデイリー配置パズル、Who's Sus? Mansion Partyは手がかりからいたずら犯を見つけるゲーム、Meme Brainはひっかけ問題がいっぱいのゲームです。ほかにもパズルゲームのページにそろっています。


