我对Knights and Knaves和逻辑命题有疑问。如果我想要解决这个难题,我认为我有两种公民:骑士,他们总是说实话,和knaves,谁总是说谎。根据一些公民的言论,我必须决定他们是什么样的人。
有三种公民:a
,b
和c
,他们正在谈论自己:
a says: ”All of us are knaves.”
b says: ”Exactly one of us is a knight.”
要解决这个难题,我应该确定:什么样的公民是a,b和c?我应该通过使用命题逻辑对上面的两个话语进行建模来解决这个难题,我假设我可以使用p
来描述一个骑士,使用¬p
来描述一个knave。我该怎么做呢?对于那些在大学里没有做过任何明显离散数学的人的暗示?
答案 0 :(得分:1)
你可以创建一个Truth table, 首先看它,我可以说A必须是knave,B是骑士。因为如果A是一个骑士,他不能说他是个骗子(谎言),他也不能说是一切都是kn(不能说实话)所以B是骑士(如果B Knave他可以'说实话使A变成骗子,他必须是一个人,然后C就是一个Knave。
答案 1 :(得分:1)
A和C是Knaves。 B是骑士。
现在,我不认为你可以在命题逻辑中对这个论证进行建模。首先,请注意“我们所有人都是勇士”和“我们其中一个人是骑士”的陈述中的普遍和存在量词(“全部”和“完全一个”)。对于另一个,请注意A和B正在谈论自己。像这样的建模情况是历史上最难的问题之一(不是开玩笑!)。请查看以下链接以获取更多信息: