《离散数学及其应用》
Application of Propositional Logic 练习题中的15(*)
Each inhabitant of a remote village always tells the truth or always lies. A villager will give only a "Yes" or a "No" response to a question a tourist asks. Suppose you are a tourist visiting this area and come to a fork in the road. One branch leads to the ruins you want to visit; the other branch leads deep into the jungle. A villager is standing at the fork in the road. Want one question can you ask the villager to determine which branch to take?
问路问题
百度上的回答 问路问题
分析
设 p: 左边通往遗址
p: 你的回答是是
提问: 如果左边通往的是遗址,那么你的回答是是。
真值表表示
p | q |
---|---|
F | F (1) |
T | F (2) |
T | T(3) |
F | T(4) |
对于说truth的人 ,p与q做的回答都是通一的。 如表中的(1), (3) 。
对于说lies的人,p与q做的回答刚好相反。如表中的(2), (4)。
原因分析
前提: p与q的提问回答的真值是相同的。
- 对于说truth 的人。回答永远与p, q原本的真假相同
如果回答是这样的 : 左边通往遗址,你的回答是否,本身是自相矛盾的。
2)对于说Lie的人。当p为真时,他对p的回答是F, 可是当回答q时,如果回答为F,那不是做出了与回答相同的回答。为了做出与p相反的回答,最终的回答却是T(这是对自己说谎)。
如表所示当回答的人说T(Yes)时,说明左边是遗址,当说F(No)时右边是遗址。
例
另一相似例子链接
有这样一个故事:在太平洋中有AB两个相邻的小岛。A岛居民都是诚实的人,B岛的居民都是骗子。当你问一个问题时,A岛的居民会告诉你正确的答案,而B岛的居民给你的答案都是错误的。一天,一个旅游者独自登上了两岛中的某个岛。他分辨不清这个岛是A岛还是B岛,只知道这个岛上的人既有本岛的居民又有另一岛的来客。他想问岛上的人“这是A岛还是B岛?”却又无法判断被问者的答案是否正确。旅游者动脑筋想了会一儿,终于想出一个办法,他只需要问他所遇到的任意一人一句话,就能从对方的回答中准确无误地断定这里是哪个岛。你能猜出旅游者所问的问题吗?
网上回答: “你是这个岛的居民吗?”
我的回答: "如何这个是A岛吗,那么你的回答是是吗?"
分析:
p | q |
---|---|
F | F (1) |
T | F (2) |
T | T(3) |
F | T(4) |
在A岛:
对于A岛的居民 (3)
对于B岛的居民 (4)
在B岛:
对于A岛的居民 (1)
对于B岛的居民 (2)
所以,当回答Yes的时候,这个是A 岛, 回答是No, 的时候这个是B岛.