Logic 变成否定形式

Logic 变成否定形式,logic,negation,first-order-logic,Logic,Negation,First Order Logic,我不熟悉逻辑,也喜欢学习人工智能。我很难把下面的句子转换成否定形式。我已经试过了,但仍有困惑。请帮助我以下结果是否正确 (i) If you can swim across the river then you can swim to the island. (ii) If the connector is loose or it is unplugged machine will not work. 我的作品 (i) If you can't swim across the river

我不熟悉逻辑,也喜欢学习人工智能。我很难把下面的句子转换成否定形式。我已经试过了,但仍有困惑。请帮助我以下结果是否正确

  (i) If you can swim across the river then you can swim to the island.
 (ii) If the connector is loose or it is unplugged machine will not work.
我的作品

(i) If you can't swim across the river then you can't swim to the island
     ¬ swim(across_the_river)  →  ¬ swim(island)



(ii) If the connector is not loose or it is plugged machine will work.
     ¬ [ loose(connector)   ∨ unplugged (connector) ]  → ¬ not_work(machine)
“如果你能游过河,你就可以游到岛上去。”

让我们把“你可以游过河”的命题A和“你可以游到岛上”的命题B分别称为

然后原句对应A->B

这类练习的想法是,你“分解”这些含义->并获得只有“不”、“和”和“或”的公式

我们可以通过注意以下几点开始分解:

  • “A->B”与“(不是A)或B”(定义->)
所以“not(A->B)”=“not((非A)或B)”

现在,我们要“移入”更接近命题的“非”,以避免对复杂公式的否定。外部不否定析取(“或”),因此我们可以使用德摩根定律“将其移入”更接近命题:

  • “not(P或Q)”与“(not P)和(not Q)”相同
如果我们认为p是“非A”,Q是B,我们可以把“非(非A)或B)”改写成“(非(非A))和(非B)”。A上的两个否定相互抵消,我们得到“A和(不是B)”

因此,对原句的否定对应于“A而非B”,这给了我们:

“你可以游过河,但你不能游到岛上”

这是直观的;这句话反驳了原来的说法,因为如果你能游过河并且你不能游到岛上,那么如果你能游过河那么你能游到岛上就不是真的了

对于第二句话,“如果连接器松动或未拔出,机器将不工作”,我们将其称为“连接器松动”命题L,“连接器未拔出”命题U,“机器将工作”命题W

然后这个句子对应于“L或U->非W”

因此,使用与第一句相同的规则,对它的否定是“(L或U)而不是(不是W)”。就像我们之前否定B一样,我们否定了“非W”,得到了双重否定“非W”

两个负片相互抵消,我们得到“(L或U)和W”

因此,英语否定句是否定的

“接头松动或拔出,机器正常工作”


这再一次直观地否定了原始命题,因为这基本上是说这两个条件导致机器不工作是不正确的。

一个句子是否定形式是什么意思?请在你的帖子中添加一个定义,以避免混淆。我投票将这个问题作为离题题来结束,因为它是关于逻辑/数学的,而不是直接关于编程/编码/编程工具/软件算法的。