2013年3月18日 星期一

最艱深的邏輯難題

以下是一道學界公認為可能是最艱深的邏輯難題:

3個神 -- 老實神蠱惑神」,非按序下分左中右並排而坐,閣下未知3個神誰是誰。3個神皆有問必答,其中老實神」言出必真,「蠱惑神」只講反話,「」每一次說話均隨機選擇說真話或反話。閣下的任務是透過向神發問3道只須答「對」或「錯」的問題,而1道問題只可向1個神發出(當然,閣下可以向同一個神發多於一道問題,亦即是不一定須要每一個神都要問勻),並只由被問的神作答,然後根據神方給出3道問題的答案,去確認3個神到底誰是誰。雖然3個神都聽得懂閣下的說話,但是3個神只會說閣下聽不懂的神語。神語中,「對」、「錯」的發音是「哪」、「吒」,但未知「哪」是「對」、「吒」是「錯」,還是「哪」是「錯」、「吒」是「對」。

在下在過度強烈的好奇心驅使下,已先行參閱過答案(現在多少感到有點後悔)。誠然,要「一鋪過」具體地給出完整的答案,即使對一個受過正式邏輯訓練的人而言,也非易事。然而,先嘗試構想發問3道問題應採取的方向與策略、問題需要先後獲取甚麼的資料以助作出相應的邏輯推理,相信還是可以及挺有趣的。

Enjoy.

11 則留言:

  1. 補充:閣下可根據前一道問題所得的答案,去選擇向哪一個神問下一道問題。

    回覆刪除
  2. PART I

    Let me disclose my time spent on solving this problem:
    (1) 2 hours before sleep,
    (2) on waking up the next morning, I spent 10 minutes to write down all the logical reasoning and answers.

    My feeling: This is not too difficult.

    I might have heard about this puzzle once before without asking details and of course without even thinking about how and why I should solve this kind of problems.

    Since HWan takes it as the most difficult logic challenge, HWan's advice arouses my interest. Here below is the solution:

    Let
    "T" stands for God being honest always telling the truth
    "L" stands for God being dishonest always telling lies
    "A" stands for God being always ambivalent

    Whether they answer in sound "na" for yes or no, or "ja" for yes or no should be immaterial to our judgement. The trick is to ask a question in compound statement form. An answer "na" and "na" may appear difficult to be distinguished from an answer "ja" and "ja" in a single step of questioning, as they may both mean "yes" and "yes" or "no" and "no". BUT they both can definitely be distinguished from an answer of "na" and "ja" or "ja" and "na"

    To "A", all questions are answerable, be they valid or invalid, complete or incomplete, meaningful or non-meaningful. "A" simply utters either "na" or "ja" which in other words, are also non-meaningful (i.e. ambivalent, not helpful like noise).

    In answering questions like:
    Are you T, L, or A?

    T's answer must be, sequentially, Y (yes), N (no), and N (no).

    L's answer must be, sequentially, Y, N, Y.

    A's answer can be, sequentially, Y/N, Y/N, Y/N. (any combination)

    One more crucial point**:-

    To questions like:

    Are you.... ? (An example of incomplete question which is still a question)

    T will be silent (i.e. no answer given).

    L will be silent (i.e. no answer given because there is nothing to deny or lie about).

    A will still utter Y/N

    (to be continued)

    回覆刪除
  3. PART II

    NOW let us proceed:
    ROUND [1] question to anyone, say P1
    Are you T and A?

    P1's answers can be
    Y and N if P1 is "T"
    Y and N if P1 is "A"
    implying
    ("T" U "A"), that is, "T" union "A".
    Situation “S1t”

    P1's answer can also be
    Y and Y if P1 is "L" (a liar)
    Y and Y if P1 is "A"
    implying
    ("L" U "A"), that is "L" union "A".
    Situation “S1l”

    P1's answer can also be
    N and N if P1 is "A", and "A" only. Situation “S1a”
    N and Y if P1 is "A", and "A" only. Situation “S1a”

    回覆刪除
  4. PART III

    Under “S1a” when P1 has already been known as "A" in a single step above:-
    ROUND [2] question to any of the remaining two, say P2
    Ask P2: Are you T and A?

    Answers
    Y and N means P2 must be "T", >> P3 must be "L"
    so P1, P2, and P3 are identified as "A", "T", and "L" in consequence.

    If under situation “S1l”,
    the ROUND [2] question to any of the remaining two, say P2 is the same-
    Ask P2: Are you T and A?

    Answers
    Y and N means P2 must be "T", implying P3 must be "L" U "A" (either L or A). Don't forget that P1 is also "L" U "A" (either L or A) under “S1l”

    To distinguish P1 and P3 here is easy with a 3rd question to P3.
    ROUND [3] question to P3:
    Are you... ? (an incomplete question)

    If P3 utters Y/N, P3 must be "A" >> P1 must be "L", as P2 is known "T".
    If P3 is silent, P3 must be "L" >> P1 must be "A" since P2 has already been identified as "T".

    In the ROUND [2] question to P2 above:
    Are you T and A?
    There may also be other answers as continued below:

    Y and Y means P2 must be either "L" or "A".
    Since both P1 and P2 now are "L" U "A", P3 must be "T"

    To distinguish P1 and P2 is easy with the same ROUND [3] question to P2 as similarly illustrated above:
    Are you.... ? (an incomplete question)

    If P2 utters Y/N, P2 must be "A", implying P1 must be "L"
    If P2 is silent, P2 must be "L", implying P1 must be "A"
    In both, P3 already known as "T"

    In ROUND [2] question to P2 above:
    Are you T and A, there may be also answer as
    N and N
    Since N and N signifies "A", and "A" only, so P2 must be "A", P3 must be "T" because P1 can only be "L" (please see above). We do NOT even need a ROUND [3] question here.

    回覆刪除
  5. PART IV

    What about if situation is “S1t” instead of either or as delineated above? Then under situation “S1t”, the ROUND [2] question to P1 again will be:

    Are you... ? (an incomplete question)

    If P1 is silent >> P1 must be "T". Situation “S2t”
    If P1 utters Y/N >> P1 must be "A". Situation “S2a”

    If under “S2t”, we have ROUND [3] question as below to one of the remaining two, say P2:

    Are you... ? (an incomplete question)
    If P2 is silent >> P2 must be "L" >> P3 must be "A" since P1 is known "T".
    If P2 utters Y/N >> P2 must be "A" >> P3 must be "L" since P1 is known "T".

    If under situation “S2a”, we have ROUND [3] question to any of the remaining two, say P2, as below:

    Are you T and A?
    Answer
    Y and N means P2 must be "T">> P3 must be "L" as P1 is known "A" already.
    Y and Y means P2 must be "L" >> P3 must be "T" as P1 is known "A" already.

    回覆刪除
  6. Before I successfully published my PART II and the rest, I found out that there are some symbols that are not publishable and are automatically being wiped out from my "paste" script last night.

    Perhaps there may be readers who prefer to see my solutions involving "ja"(J) and "na"(N) rather than yes (Y) and no (N), and also there may be queries that my trick of compound statement in the formulated question should be answered NOT in compound form but just in a single "ja" or "na" sound.

    The above concerns and queries will not pose and problem to my established reasoning analysis or affect validity of my explanation as further illustrated below:

    PART I remains the same and applicable. Only I need to change the symbols as said here.

    In answering questions like:
    Are you T, L, or A? We can assume J is for yes, N is for no for the time being. It just does not matter as later on we can prove it in the process.

    T's answer must be, sequentially, J (yes), N (no), and N (no).
    L's answer must be, sequentially, J, N, J.
    A's answer can be, sequentially, J/N, J/N, J/N. (any combination)

    One more crucial point**:-

    To questions like:

    Are you.... ? (An example of incomplete question which is still a question)

    T will be silent (i.e. no answer given).
    L will be silent (i.e. no answer given because there is nothing to deny or lie about).
    A will still utter J/N

    (to be continued)

    回覆刪除
  7. PART II

    Please note that in giving a single answer towards a question composed of compound statements in two parts:

    In logic
    J AND N implies N as an answer (True AND False cannot become true or J)
    J AND J implies J as an answer (True AND True becomes True or J)
    N AND N implies N as an answer (False AND False becomes False or N)

    ROUND [1]
    Ask P1: Are you T AND A?
    If P1 answers (J and N)>>N, then P1 belongs to "T" U "A" (Situation "S1t")
    If P1 answers (J and J)>>J, then P1 belongs to "L" U "A" (Situation "S1l")
    If P1 answers (N and N)>>N, then P1 belongs to "A" U "L" (if N is yes instead) (Situation Sl1)
    If P1 answers (N and J)>>J, then P1 belongs to "A" U "T" (if N is yes instead) (Situation St1)

    Under "S1t"
    ROUND [2] question
    Ask P1 again: Are you....? (an incomplete question)
    If P1: silent >> P1= T, Situation "S2t"
    If P1: J/N >> P1= A, Situation "S2at"

    Under "S2t" (that P1= T)
    ROUND [3] question to P2: Are you... ?
    If P2: silent >> P2= L, >> P3= A
    If P2: J/N >> P2= A, >> P3= L

    Under "S2at" (that P1= A)
    The ROUND [3] question to P2 should become: Are you T AND A?
    If P2: (J and N) >>N, then P2= T, P3 must be L
    If P2: (J and J) >>J, then P2= L, P3 must be T

    (to be continued)

    回覆刪除
  8. PART III

    Even if we do not know J= yes or N= yes, we can try under "St1" where we have assumed J= yes but now we change and assume N= yes instead. Result for "St1" below would be the same as that for "S1t"

    Under "St1"
    ROUND [2] Ask P1 again: Are you... ?
    If P1: silent >> P1= T. Situation "St2"
    If P1: J/N >> P1= A. Situation "Sa2"

    If under "St2" (that P1= T)
    ROUND [3]
    Ask P2: Are you... ?
    If P2: silent >> P2= L >> P3= A
    If P2: N/J >> P2= A >> P3= L

    If under "Sa2" (that P1= A)
    ROUND [3]'s question to P2 becomes: Are you T AND A?
    If P2: N AND J >> J where J is no, P2= T >> P3= L
    If P2: N AND N >> N where N is yes, P2= L >> P3= T

    The above clearly demonstrate that J or N for yes or no should be immaterial.

    (to be continued)

    回覆刪除
  9. PART IV

    Under the remaining and last situation "S1l"

    ROUND [2] question is to ask P1 again: Are you... ?
    If P1: silent >> P1= L. Situation "S2l"
    If P1: J/N >> P1= A. Situation "S2al"

    Under "S2l" (that P1= L)
    ROUND [3] is to ask P2: Are you....?
    If P2: silent >> P2= T >> P3= A
    If P2: J/N >> P2= A >> P3= T

    If under "S2al" (that P1= A)
    ROUND [3] question to P2 becomes: Are you T AND A?
    If P2: J AND N >> N, then P2= T >> P3= L
    If P2: J AND J >> J, then P2= L >> P3= T

    We need not try "Sl1" as it is same as "S1l", just like "St1" is same as "S1t".

    回覆刪除
  10. 作者已經移除這則留言。

    回覆刪除
  11. PART V

    The above logical reasoning, analysis and deduction do reveal some hints and insights in reality.

    (1) A liar who is consistently lying "without exception" under whatever occasions, is actually not too difficult to be figured out.

    (2) In this world, a "truth teller" of course will always insist that "Yes, I am a truth teller" AND "No, I am NOT a liar." BUT are such replies from a person meaningful??

    (3) Please do not forget that a "liar" will also always insist the same that "Yes, I am a truth teller" AND "No, I am NOT a liar."

    (4) If there are two such persons (T and L) alone, it seems not possible at all to distinguish them.

    (5) Persons " like A" who produce noise "blah-blah-blah", sometimes "yes", sometimes "no" without full and clear knowledge of this and that, however, form majority of the population that we call throng, or crowd. If they come together without discipline, they form a mob. The common crowd somehow can help us figure out T and L incidentally.

    (6) The risk to a person who lies is the "once and for all" effect of a self-inflicted permanent label "liar" on this person’s face, as soon as such act of dishonesty is found out. The self-inflicted damage is irrevocable. Therefore an act of dishonesty is also an act of stupidity!

    (7) A consistent "no-man" never fails to defend but a consistent "yes-man" is defenseless. Why?

    回覆刪除

注意:只有此網誌的成員可以留言。