数理論理学の問題に対する解決策の検証

Aug 17 2020

質問は次のとおりです。

刑事は犯罪の4人の目撃者にインタビューしました。探偵は、それらのインタビューがどのように行われたかに基づいて、次のように結論付けました。

  1. 執事が真実を語っているのなら、料理人もそうしています。
  2. 料理人と庭師の両方が真実を語ることはできません。
  3. 庭師と便利屋は両方とも嘘をついていません。
  4. 便利屋が真実を語っているなら、料理人は嘘をついているに違いありません。

問題は、探偵は各個人が嘘をついているかどうかを把握できるかどうかです。理由を説明してください。


回答:

ここでは、誰かが真実かどうかだけを検討しています。したがってeither True or False、可能な場合はいずれでも、変数を取得して、そこから戻ることができます。cookはそのような変数の1つです[Trueは特定の人が真実を語っていることを意味し、Falseは正反対を意味します]。

cookTrueと見なす場合は、handymanFalseである必要があります(ステートメント#4)。声明#3、によるgardenerhandyman、我々はすでに知っているように、両方、同時にFalseにすることはできませんhandyman(つまり嘘)Falseで、gardener真である必要があります。

gardenerステートメント#2によると、がTrueの場合、cookFalseである必要があります。これは私たちの最初の仮定cook、つまり真実、つまり真実を語ることと矛盾します。それは私たちをcook偽りに任せます。

それcookが誤りであり、事件が解決したとだけ言うことはできません。これcookは、がFalseの場合、handymanはTrueであるためです。しかし、これはステートメント#3を2つの異なるルートに分岐させます。

gardenerそして、handyman手段がいずれかのどちらかそれらのいずれかに該当する、またはその両方が両方ともFalseの、ではありません。handymanTrueで、まずは考えるgardenerFalseです。今、私たちは再び同じ状況にあり、どちらかが偽であるか、両方が偽です。cookがTrueの場合、最初の仮定と矛盾するため、cookTrueにすることはできません。それは私たちをcookFalse`に任せます。これにより、論理的に正しい仮定の最初のセットが得られます。書き留めておきましょう。

cook = False
handyman = True
gardener = False
butler = False

今、私たちはgardener真であると考えています。gardenerがTrueの場合、cookFalseである必要があります。これで、別のソリューションセットができました

cook = False
handyman = True
gardener = True
butler = False

2つの論理的に正しい解決策を比較すると、考えられるケースが複数あるため、探偵は各個人が嘘をついているかどうかを判断できないと簡単に推測できます。


方法は面倒ですか?同じことを達成する他の方法はありますか?すべてが独学であるため、異なる用語を使用することは今のところ私には異質です。誰かが私を正しい方向に向けることができれば、私は感謝します。

回答

4 WilliamElliot Aug 17 2020 at 11:20

前提。
bはcnot
-cまたはnot-
ggまたは
hhはnot-cを意味します

仮定しない-g。したがって、
h; not-c:not-b。

アスネg。したがって、
not-c:not-b。

結論。
料理人と執事は嘘をついています。
料理人か便利屋のどちらかが真実を語っています。
どちらかが嘘をついているかどうかは判断できません。

2 PatrickStevens Aug 17 2020 at 15:56

別の方法で同じ答えを得るには:

上から始めて先に進むと、Butler-trueはCook-true(1)はGardener-false(2)を意味し、Handyman-true(3)はCook-false(4)を意味します。執事は嘘をついています。さらに、矛盾は純粋にバトラー真の含意(「クック真」)から生じたので、実際に料理人も嘘をついています。

次に、条件1、2、および4が空になり、条件3が唯一の残りの制限になります。

StinkingBishop Aug 17 2020 at 18:03

問題は、探偵は各個人が嘘をついているかどうかを把握できるかどうかです。理由を説明する

ここで答えなければならない唯一の質問が上記の質問である場合、答えが何であるか(真または偽)に応じて、別の証明を書き留めます。

  • 答えが「本当:探偵は誰が嘘をついているのかを決めることができる」である場合、問題の状態が1つの特定の解決策を暗示していることを証明する必要があります。(これは基本的にあなたがあなたの質問でやってきたことです。)

  • ただし、答えが「:探偵は誰が嘘をついているのか判断できない」の場合、書き留める必要があるのは、少なくとも2つの異なる嘘のリストだけで、どちらも問題の状態と一致しています。

ここでの答えは誤りなので、証拠として書き留める必要があるのは次のとおりです。

嘘をついている人は(執事、料理人)または(執事、料理人、庭師)または(執事、料理人、便利屋)である可能性があるため、探偵は誰が嘘をついているのかを判断できません。これら3つの可能性はすべて、問題の状態と一致しています。

もちろん、これら3つの可能性にどのように到達したを書き留めておくことは非常に有益教育的です。ただし、その部分を省略しても、証明の有効性が低下することはありません(ただし、間違いなく、証明がはるかに醜くなります)。また、これがコンテスト(または試験)の問題であるかどうかによっては、そのような解決策は、その「理由」が完全に説明されていないため、完全な解決策として受け入れられない場合があります。数学的には、しかし、それは正しい答えでしょう。