今天继续说自然演算规则。
不过说之前先说一点题外话:每个人都有自己喜欢的东西,虽然大家都是搞开发的,不过最喜欢的也很可能不一样。你是牛人我也是牛人,只不过我们牛逼的地方不一样,我们都没有必要为了超过对方而去努力学习自己不稀罕的东西。 ——————谨以此开题吧。
上一篇数理逻辑之 自然演算规则(一) 说道了合取规则,应该还蛮简单的吧。
看第二个规则:(Ⅱ)双重否定规则
直觉上,一个公式与它的双重否定 所表达的内容是一样的。例如,
It is not true that it does not rain. 和It rains. 是一回事。
知道“It rains.”, 如果愿意,我们可以用更复杂的方式来陈述这一事实。“ It is not true that it does not rain. ” 因此我们得到下面的双重否定引入与消去规则:
既然我们都能看懂合取规则,这个也可以吧:两条规则,第一条是引入规则,第二条是消去规则。
我们来看一个例子:例5 证明相继式 p, ﹁﹁(q∧r) |— ﹁﹁p∧r是有效的
1 p 前提假设 2 ﹁﹁(q∧r) 前提假设 3 ﹁﹁p ﹁﹁i 1 4 q∧r ﹁﹁e 2 5 r ∧e2 4 6 ﹁﹁p∧r ∧i 3,5
前两行是前提,第三行对第一行使用了双重否定引入规则,第四行对第二行使用了双重否定消去规则,第五航对第四行使用了前面学过的合取规则,第六行根据合取规则得到了结论。证明完毕!
嗨列位看官,能不能别喊“太简单了吧”。规则就是这么简单,但是你要把每一条都秒懂才是难的。
下条是(Ⅲ) 蕴含消去规则
这个也比较简单,通过两个前提得到一个显而易见的结论。比如
p: It rained. p→q: If it rained, then the street is wet. q: The street is wet.
如果我们知道天下雨,而且我们知道天下雨街道就会湿。那么我们综合这两则信息就能得出“街道确实湿了”的结论。这说明,根据我们通常的直觉,蕴含消去规则的合理性是显而易见的。
我们再看另一个例子(来自于程序设计)
p: The value of the program’s input is an integer. p→q: If the program’s input is an integer, then the program output a boolean.
在这个例子中,如果程序输入是一个整数,我们可以断定程序输出是一个布尔值。
要强调的是:p的出现是绝对必要的。如果输入不是整数,即使程序满足p→q, 我们无法得到q。
例6 证明相继式 p, p→q, p →(q → r) |— r是有效的
1 p 前提假设 2 p→q 前提假设 3 p →(q → r) 前提假设 4 q→r →e 1,3 5 q →e 1,2 6 r →e 5,4
这个太简单了我都不想解释了,不过呀强调的一点是第六行是对第五行和第四行使用了蕴含消去规则,而不能写成→e 4,5。规则就是规则,我们很机械。
(Ⅳ) MT规则
我去,咋这么大只啊?不好意思,图片没处理好。
这个规则会让你想起曾经反复使用的逆否命题。不过千万不要和别人说MT规则就是逆否命题和原命题等价的意思,因为写法完全不同。
例7 证明相继式 p→(q→r), p, ﹁r |— ﹁q 是有效的
1 p→(q→r) 前提假设 2 p 前提假设 3 ﹁r 前提假设 4 q→r →e 2,1 5 ﹁q MT 4,3
我们在第五行根据第四行和第三行得出来了结论,好简单!
例8 证明相继式 ﹁ p→q, ﹁q |— p 是有效的.
1 ﹁ p→q 前提假设 2 ﹁q 前提假设 3 ﹁﹁p MT 1,2 4 p ﹁﹁e 3
第三行得到一个诡异的结论,第四行使用双重否定消去等到了证明。
谨记,我们不能从前两行直接得出第四行,因为没有这样的规则。
不知道走到这里感觉怎么样。如果你依然头脑完全清新,说明你是一枚牛人。
不过后面来的规则可能会让你措手不及。
既然这样,我们先歇一下,做两个小题:
思考题: 证明下列相继式 是有效的. ① ﹁ p→q, ﹁ q |— p ② p → ﹁q , q |— ﹁ p
记住千万不要无中生有,使用自己创造的规则。题目越简单,往往会出现很多自编自导的规则。
相关推荐
莱布尼兹在此期间提出了建立数理逻辑的思想,主张将推理的正确性简化为计算过程,并使用符号语言代替自然语言,将符号的形式与含义分离,从而实现了推理规则的演算化。 - **布尔代数**:布尔将代数系统应用于逻辑...
### 数理逻辑基础知识点梳理 #### 一、命题逻辑的基本概念 **1.1 命题及其符号化** - **1.1.1 命题的含义** - 定义:命题是能够判断真假的陈述句。 - 特点:命题必须能够明确地给出一个真或假的结果,不能包含...
集合论是数理逻辑和现代数学的基础之一,其中包含了各种关于集合的基本概念,如子集、真子集、空集等。 - **归纳定义和归纳证明**:归纳是一种常用的数学证明方法,通常包括基础步骤和归纳步骤两个部分。归纳定义则...
数理逻辑,作为数学的一个分支,致力于用数学的语言和方法来研究人类的推理过程,它强调符号化和形式化,即将逻辑中的基本概念、判断和推理转化为符号表达,并通过公理体系来刻画推理规则。这一领域又被称为符号逻辑...
高等数理逻辑是计算机科学和数学的一个重要分支,它研究逻辑推理系统、形式语言和证明理论,为计算机程序设计、人工智能、理论计算机科学等领域提供了坚实的理论基础。2018年的高等数理逻辑课程可能涵盖了以下核心...
数理逻辑是数学的一个分支,它研究形式推理的规则和结构。这门学科结合了逻辑学、集合论和计算理论的元素,对于计算机科学、哲学和数学等领域的深入理解至关重要。哈尔滨工业大学(深圳)2019年的数理逻辑试卷为我们...
数理逻辑是数学的一个分支,主要研究推理规则和证明理论,它是计算机科学、哲学和数学逻辑基础的重要领域。哈工大(威海)的数理逻辑课件提供了深入学习这一主题的宝贵资源。以下是对该课程内容的详细概述: 1. **...
数理逻辑是计算机科学中的一个基础且至关重要的领域,它主要研究数学推理的结构、性质和形式化。哈工大徐永东老师的“数理逻辑”课件为学习这一领域提供了丰富的资源。以下是对该课件中可能涵盖的知识点的详细说明:...
数理逻辑是数学的一个分支,主要研究形式系统、推理规则和证明理论。它结合了数学、哲学和计算机科学,为理解和表达数学证明提供了一种精确的框架。许道云老师的数理逻辑课件,作为贵州大学的教学资源,旨在帮助学生...
数理逻辑是数学基础的重要分支,它研究推理的规则和形式系统。哈尔滨工业大学的数理逻辑试卷涵盖了命题逻辑和谓词逻辑两个主要部分,旨在测试学生的逻辑推理能力和符号转换技巧。 命题逻辑是逻辑学的基础,它关注的...
- **工具语言**: 传统逻辑使用自然语言,数理逻辑使用符号语言。 - **理解难度**: 传统逻辑较为直观易懂,数理逻辑更加抽象。 #### 第2章 命题演算形式系统 **2.1.1 命题** - 定义: 能够唯一确定真假值的陈述句。 ...
逻辑演算在此后得到了发展,甘岑的自然推理系统和逻辑演算的元理论,如公理独立性、一致性和完全性的研究,都极大地推进了数理逻辑的深入。 命题逻辑是数理逻辑的核心部分之一,它以原子命题为基本单位,分析命题的...
#### 二、数理逻辑的主要内容 数理逻辑主要包括以下几个方面: - **逻辑演算**:研究逻辑公式如何按照一定的规则进行推导。 - **证明论**:探讨证明的有效性及其形式化过程。 - **模型论**:研究逻辑公式在不同...
### 数理逻辑基础知识点解析 #### 一、命题逻辑(Propositional Logic) **1. 内容概述** - **简单命题与复合命题** - 命题(logic proposition)是指一个能被断定为真或假的陈述句,但不能既真又假。例如,“北京是...
离散数学是计算机科学的基础,其中数理逻辑是核心部分之一。数理逻辑,也称为符号逻辑,是对人类推理规则的严谨数学分析。它源于传统逻辑,由亚里士多德开创,关注如何使用概念、进行判断和推理。然而,数理逻辑...
### 数理逻辑基础知识点解析 #### 一、命题逻辑概览 **1.... - **简单命题与复合命题**: 在数理逻辑中,一个完整的陈述句如果能够被...理解并掌握这些基本概念和规则,对于深入学习数理逻辑以及其他相关领域都至关重要。
在数理逻辑中,我们通常会遇到命题符号化、公式类型判断、推理正确性检验以及逻辑等值演算等问题。 1. **命题符号化**: - 命题符号化是将自然语言中的陈述转化为逻辑表达式的过程。例如,"小刘既不怕吃苦,又爱...
数理逻辑的学习要求掌握命题逻辑的基本概念、符号化技巧、推理规则以及等值演算方法。这些知识点不仅在理论上有重要意义,也在计算机科学的多个领域,如人工智能、编程语言理论、数据库理论等中发挥着重要作用。通过...