2010-02-18 71 views
1

“如果你可以按下一个按钮获得100万美元,并且随机的人在世界某个地方死亡,你会按下按钮吗?”如何将此问题转换为布尔逻辑问题?

A =按下按钮

B =得到$ 100万

C =随机人死

以下是我认为它应该是:

如果A,那么B和C

根据原来的说法是:

(If A, then B) AND C 

If A, then (B AND C) 
+0

“如果你赢了一百万美元,那么一个随机的人死亡。“看起来相当简单,这与编程有什么关系?你是否试图实现它?请描述你的确切问题是什么(因为它涉及到编程) – 2010-02-18 03:28:26

+0

这似乎是布尔逻辑作业 – 2010-02-18 03:29:14

+0

我想写一个程序来查看结果 – Brandon 2010-02-18 03:30:47

回答

5

你已经正确识别三个命题变量:

  • P (X): “X按下按钮”
  • P (x):“x收到100万美元”。
  • P (x):“x导致随机人员死亡”。

你想表达句子问:“如果有人按下按钮,那么他们会收到一百万美元,一个人死亡。”乍一看,似乎P (x)⇒ P (x)∧ P (x)正确表达这一点。我们如何确定?让我们画一个真值表:

P1 P2 P3 P2^P3 P1 --> P2^P3 
---- ---- ---- --------- ---------------- 
T T T  T   T 
T T F  F   F 
T F T  F   F 
T F F  F   F 
F T T  T   T 
F T F  F   T 
F F T  F   T 
F F F  F   T 

注意,“你收到一百万美元导致死亡”只有当两个组成部分是真实不虚。这是有道理的;如果两部分都不成立,整体就不是这样。

还要注意整个陈述的真值Q:只要第二部分是假的,第一部分是真的,它就是假的。这是有道理的:如果你按下按钮,但是(1)没有出现百万美元(2)没有人死亡,Q暗示的预测是不正确的。所以我们的主张是正确的。

0

想想吧。为每个选项制定一个真值表。

提示:如果你不按下按钮,随机的人会死吗?

+0

这取决于你将圆括号分组在哪里 – Brandon 2010-02-18 03:31:47

+0

这就是为什么我问你这个问题**你需要看看情况并找出什么应该发生,并从中推导出哪种模型是正确的。 – 2010-02-18 03:33:15

0

我改变了主意。真正。这不是编程。这是道德逻辑。转到社区wiki。

0

在所有运算符相同且未指示逻辑分组的数学中,从左至右读取表达式。因此,如果按下按钮,您将收到100万美元,随机人员将死亡。