数理逻辑 1.1-2
- 格式:ppt
- 大小:134.00 KB
- 文档页数:34
数理逻辑的一般介绍我们在中学时代就能进行一些证明了, 但并非所有的人都能回答到底什么是证明. 大概来说, 所谓的证明就是把认为某一断言是正确的理由明确地表述出来. 在这一过程中, 我们通常都需要把一些人们已接受的命题作为讨论的基础. 在此基础上, 如果我们能够把该断言推导出来, 该断言就是被认为是被证明了, 因而也就会被人们接受. 于是, 一个很自然的问题就是: 推导究竟为何物? 这个问题就属于逻辑的范畴.逻辑研究推理, 而数理逻辑则研究数学中所用的推理. 由于这种推理在计算机科学中有许多有广泛的应用, 数理逻辑也就成为计算机科学的重要基础之一.很明显, 我们不能够证明一切命题. 如上所述, 当我们证明某一断言(结论) 的时候需要一些其它的命题(前提)作为推理的基础. 我们还可以要求对这些前提进行证明. 如果一直这样要求下去, 或迟或早, 我们会遇这样的情况: 我们进行了“循环” 证明, 即把要证明的命题作为前提来使用, 或者我们无法再作任何证明, 因为没有更为明显的命题可以用来作为前提了.这样,我们就必须不用证明而接受某些命题,我们把这类命题称为“公理”; 其它由这些公理而证明的命题则被称为“定理”.所谓的命题, 直观上是关于某些概念之间的关系. 因而, 我们要求公理是那些根据概念可以明显地接受的命题. 由概念,公理和定理所组成的全体就是公理系统.以上对公理系统的描述要求我们知道公理系统的确切含义. 然而, 从推理的角度来说, 我们并不需要如此. 让我们来看下面的例子:(1).每个学生都是人,(2).王平是学生, (3).王平是人.我们可以由(1) 和(2)推导出(3), 也就是说,如果(1) 和(2)是正确的, 我们就可以断定(3)是正确的. 在这个推理过程中我们并不需要知道“王平”, “学生”, “人” 的含义如何, 把它们换成任何其它的名词, 这一推理都成立. 使(3) 成为(1) 和(2) 的逻辑推论是依据这样的事实: 如果(1)和(2)为真, 则(3)为真. 换句话说, 我们从命题的形式上就可以判断某一推理是否在逻辑上成立, 而无需考虑它的实际含义. 所以我们在研究逻辑的时候往往只需要进行形式的考察就行了, 不必考虑其含义.当我们对某一类研究对象指定了一个公理系统时, 这个公理系统所表示的含义就确定了. 但是在很多情况下, 我们会发现这个公理系统也适合于其它的一些对象. 于是当代数学建立了许多公理系统框架(如各种代数结构). 在这种公理系统框架中, 真正重要的并不是各种公理系统所表达的特定含义的不同, 而是它们的系统构造方面的区别. 这就告诉我们, 在对公理系统进行研究时, 仅对公理系统的形式进行考察是有实际意义的, 在某些情况下这种形式上的考察可以使我们的研究更具有一般性.基于如上认识以及其它的一些考虑(如从计算机科学的角度进行研究等), 我们将对公理系统的语法部分和语义部分进行分别研究. 公理系统的语义部分研究公理系统的含义, 它属于"模型论" 的研究范围, 我们将在今后作一些初步的介绍. 现在,我们对公理系统的语法部分进行粗略的描述.公理系统的语法部分称为形式系统. 它由语言, 公理和推理规则这样三个部分组成.任何推理必须在一定的语言环境中进行, 所以形式系统首先需要有它的语言. 自然语言(如英语, 中文等)具有很丰富的表达能力, 但通常会产生二义性. 例如"是" 在自然语言中可以表示“恒等” (如: 我们的英语老师是张卫国.), “属于” (如: 王小平是学生.), “包含” (如: 学生是人.) 等不同的含义. 同时, 我们还希望公理系统的语言结构能尽可能地反映它的语义并能有效地进行推理. 因而, 我们通常在形式系统中使用人工设计的形式语言.1设A 是一个任给的集合. 我们把A 称为字母表, 把A 中的元素称为符号. 我们把有穷的符号序列称为A的表达式. 一个以A 为其字母表的语言是A 的表达式集合的一个子集, 我们把这个子集中的元素称为公式. 因为我们希望这个语言能够表达我们所研究的对象, 我们要求公式能反映某些事实. 虽然理论上以A 为其字母表的语言可以是A 的表达式集合的任何子集, 我们将只讨论那些能将公式和其它表达式有效地区分开的语言. 我们将用L(F)表示公理系统F 的语言.形式系统的第二个部分是它的公理. 我们对公理的唯一要求是它们必须是该公理系统语言中的公式.最后, 为了进行推理我们需要推理规则. 每个推理规则确保某个公式(结论) 可由其它一些公式(前提) 推导出来.给定公理系统F, 我们可以把F 中的定理定义如下:1). F 的公理是F 的定理;2). 如果F 的某一推理规则的前提都是定理, 则该推理规则的结论也是定理;3). 只有1)和2)所述的是定理.这种定义方式和自然数的定义方式相类似, 称为广义递归定义. 它和通常的定义方式在形式上有所区别. 为了说明它的合理性, 我们对F的定理进行进一步的描述. 设S0 是F 的公理集. 根据1), S0 中的元素是定理. 设S1 是公式集, 它的元素都是F 的某一推理规则的结论, 而该推理规则的前提都是S0 中的元素. 根据2), S1 中元素是定理. 设S2 是公式集,它的元素都是F 的某一推理规则的结论, 而该推理规则的前提都是S0 或S1 中的元素. 根据2), S2 中元素是定理. 如此下去, 我们得到S2 ,S3 ,.... 最后, 设S N 是公式集, 它的元素都是F 的某一推理规则的结论, 而该推理规则的前提都是S0 或S1 ,...S N中的元素. 根据2), S N 中元素是定理并且我们得到了F中的所有定理. 我们将经常使用这种定义方式. 为了书写方便, 在今后的广义递归定义中我们将不再把类似3)的条款列出.如此定义的F 中定理为我们提供了一种证明方法. 当要证明F 中的定理都具有某一性质P 时, 我们可以采用下述步骤:1). 证明F 的公理都具有性质P;2). 证明如果F 的每个推理规则的所有前提具有性质P, 则它的结论具有性质P.这种证明方法称为施归纳于F的定理. 一般说来, 如果集合C 是由广义递归定义的, 我们可用类似的方法证明C中的元素都具有性质P. 这种证明方法称为施归纳于C中的元素. 2)中的前提称为归纳假设.现在我们就可以定义什么是证明了. 所谓F 中的一个证明是一个有穷的F 的公式序列, 该序列中的每一个公式要么是公理, 要么F 的某个推理规则以该序列中前面的公式所为前提而推导出的结论. 如果A 是证明P 的最后的公式, 则称P 是A 的证明.定理公式A 是F 的定理当且仅当A 在F 中有证明.证明首先根据定理的定义可以看出任何证明中的任何公式都是定理, 所以如果A 有证明, 则A 是定理. 我们施归纳于F 的定理来证明其逆亦真. 如果A 是公理, 则A 本身就是A 的证明. 如果A 是由F 的某一推理规则以B1 ,...,B n 为前提推导而得的结论, 由归纳假设, B1 ,...,B n 都有证明. 我们把这些证明按顺序列出来即可得到A 的一个证明. 证完今后, 我们将用 F .... 表示"....是F 的定理".一阶理论2今后, 我们将主要讨论一类特殊的公理系统. 这类公理系统称为一阶理论. 一阶理论是一种逻辑推理系统, 它具有很强的表达能力和推理能力, 并且在数学, 计算机科学及许多其它的科学领域中有广泛的应用. 事实上, 目前使用的大多数计算机语言和数学理论都是一阶理论.如前所述, 一阶理论的第一个部分是它的语言. 我们把一阶理论的语言称为一阶语言. 如同其它的形式语言一样, 一阶语言应包括一个符号表和一些能使我们把公式和其它表达式区分开的语法规则.首先, 我们定义一阶语言的符号表, 它由三类功能不同的符号组成. 它们是:a) 变元x,y,z,...;b) n元函数符号f,g,..., 及n元谓词符号p,q,...;c) 联结词符号和量词符号⌝,∨和∃.为了今后的方便, 我们假定一阶语言的变元是按一定顺序排列的, 并且我们把这种排列顺序称为字母顺序. 我们称0 元函数符号是常元符号. 注意: 一个任给的一阶理论并没有要求必须有函数符号: 一个一阶理论可能没有函数符号, 可能有有穷多个函数符号, 也可能有无穷多的函数符号. 我们要求任何一阶理论必须包括一个二元谓词符号, 并用"=" 来表示它. 和函数符号一样, 一个给定的一阶语言可能有有穷或无穷多个(甚至没有) 其它的谓词符号. 函数符号和除=外的谓词符号称为非逻辑符号, 而其它的符号称为逻辑符号.在定义公式之前, 我们必须先定义"项":(1.1) 定义在一阶语言中, 项是由下述广义递归方式定义的:a) 变元是项;b) 如果u1 ,...,u n 是项, f是n元函数符号, 则fu1 ...u n 是项.然后, 我们定义公式如下:(1.2) 定义在一阶语言中, 公式是由下述广义递归方式定义的:a) 如果u1 ,...,u n 是项, p是n元谓词符号, 则pu1 ...u n 是(原子) 公式,b) 如果u,v 是公式, x 是变元, 则⌝u, ∨uv 和∃xu是公式.如前所述, 相应于公式的定义, 我们有一种广义归纳的证明方法. 我们将把这种证明方法称为施归纳于长度. 有时我们还用施归纳于高度的证明方法, 而所谓的高度是公式中含有⌝,∨,和∃的数量.如果一个表达式b包括另一个表达式a, 则称第二个表达式a在第一个表达式b中出现, 即如果u,v,w 是表达式, 则v在uvw 中出现. 这里, 我们不仅要求a的符号都包括在b中, 而且要求这些符号的排列顺序和a一样并且中间不插有任何其它的符号. 我们把b包括a的次数称为a在b中出现的次数.接下来, 我们要讨论关于一阶语言的一些性质. 这种讨论不仅可以使我们加深对一阶语言的认识, 同时还能帮助我们理解其它的形式系统. 首先要考虑的是唯一可读性问题, 也就是说, 我们将要证明一阶语言中的任何公式不可能有不同的形式. 这一性质说明一阶语言在结构上是不会产生二义性的. 为了简化书写, 我们把公式和项统称为合式表达式. 于是, 根据定义可以知道所有的合式表达式都具有uv1 ...v n 的形式, 其中u 是n 元(函数或谓词) 符号, v1 ,...,v n 是合式表达式.我们说两个表达式u和v是可比较的, 如果存在一个表达式w (w 可以是空表达式) 使u=vw. 显然, 如果uv和u'v'是可比较的, 则u 和u'是可比较的; 如果uv和uv' 是可比较的, 则v 和v'是可比较的.3(1.3) 引理如果u1 ,...,u n ,u'1 ,...,u'n 是合式表达式(u1 和u'1 都不是空表达式), 而且u1 ...u n 和u'1 ...u'n 是可比较的,则对于一切i=1,...,n, u i =u'i .证明施归纳于u1 ...u n 的长度k.如果k=1, 则u1 ...u n 只有一个符号. 所以, n=1. 于是u1 ...u n =u1 且u'1 ...u'n =u'1 . 由于u1 和u'1 都是合式表达式, 它们只可能是变元或常元符号. 由于它们是可比较的, 所以u1 =u'1 .假定当k〈m时引理成立, 并设k=m.由于u1 是合式表达式, 我们可以把它写成vv1 ...v s , 其中v 是s 元符号, v1 ,...,v s 是合式表达式. 由上, u'1 和u1 是可比较的, v 也是u'1 的第一个符号. 于是, 由于u'1 是合式表达式, 它具有vv'1 ...v's 的形式. 由上所述的性质, v1 ...v s 和v'1 ...v's 是可比较的. 由于|v1 ...v s |<|u1 |≤|u1 ...u n |, 根据归纳假设, 对于一切j=1,...,s, v j =v'j , 所以, u1 =u'1 . 由此而得, u2 ...u n 和u'2 ...u'n 是可比较的, 且|u2 ...u n |<|u1 ...u n |, 所以, 由归纳假设, 对于一切i=2,...,n, u i =u'i .于是, 引理得证#(1.4) 唯一可读性定理每一个合式表达只能以唯一的方式写成uv1 ...v n 的形式, 其中, u 是n 元符号, v1 ,...,v n 是合式表达式.证明设w,w'是同一个合式表达式书写形式, 我们必须证明它们的结构是相同的. 首先, 它们必须都有相同的第一个符号,这样, u和n就唯一确定了, 从而, w=uv1...v n 且w'=uv'1...v'n, 其中v i ,v'j 是合式表达式(i,j=1,...,n). 我们还需证明对一切i=1,...,n, v i=v'i. 因为w 和w'是同一个表达式, 因而是可比较的. 于是, 根据引理(1.3), 对于一切i=1,...,n, v i=v'i #下面的定理说明如果一个合式表达式不可能由两个(或更多) 合式表达式的某些部分组成.(1.5) 引理合式表达式u中的任何符号w都是u中某一合式表达式的第一个符号.证明施归纳于u的长度k. 如果k=1, 则u是变元或常元符号. 于是任何在u中出现的符号就是u本身, 从而引理成立.假定当k<m时引理成立, 并设k=m.设u 是vv1 ...v n , 其中v是n元符号, v1 ,...,v n 是合式表达式. 如果w是v, 则它是u的第一个符号. 否则, 存在i=1,...,n, 使w 在v i 中出现. 由于|v i |<|u|, 根据归纳假设, w 是v i 中的某一合式表达式的第一个符号, 当然也是u中的某一合式表达式的第一个符号. 证完. #(1.6) 出现定理设u是n元符号, v1 ,...,v n 是合式表达式. 如果一个合式表达式v在uv1 ...v n 出现, 而且v不是整个uv1 ...v n , 则v在某一v i 出现.证明如果v的第一个符号就是定理中的u, 则v=uv'1 ...v'n , 其中v'1 ,...,v'n 是合式表达式, 且由定理条件, u和v是可比较的. 于是根据引理(1.3), 对于一切i=1,...,n, v i =v'i , 即v=uv1 ...v n . 矛盾.现假定v的第一个符号在某一v i 中出现. 根据引理(1.5), 该符号是某一合式表达式v'的第一个符号. 显然, v和v'是可比较的, 因而由引理(1.3), v=v', 即v在v i 中出现.4#为了方便起见, 我们今后将用大写字母A,B,...表示公式, 用f,g,...表示函数符号, 用p,q,...表示谓词符号, 用x,y,...表示变元, 用a,b,...表示常元符号.现在我们定义两类性质不同的变元, 即自由变元和约束变元.(1.7) 定义a) 如果x 在原子公式中出现, 则x是自由变元;b) 如果x是A 和B 中的自由变元, 且y 不是x, 则x 是⌝A, ∨AB和∃yA中的自由变元.a') x 是∃xA中的约束变元;b') 如果x是A 或B 中的约束变元, 则x 是⌝A, ∨AB和∃yA中的约束变元.注意: x可以在A 中既是自由变元又是约束变元.我们将用u[x/a]表示在表达式u 中将所有的自由变元x换成项a而得的表达式. 设A 是公式, 在很多情况下, A[x/a]关于a 所表示的含义与A 关于x所表示的含义是一样的, 但并非总是如此. 例如, 若A 是∃y=x2y, 而a 是y+1, 则A 是说x 是偶数, 但A[x/a]却不是说y+1是偶数. 这表明并非所有的代入都会保持原有的含义. 于是我们有下述定义:(1.8) 定义 a 被称为是在A 中可代入x的, 如果i) 如果A是原子公式,则a 是在A中可代入x 的;ii) 如果a 在B中可代入x 且对于a 中的任何变元y, ∃yB不含有自由变元x,则a 是在∃yB中可代入x 的;iii) 如果a 在A, B中可代入x, 则a 在⌝A和A∨B中是可代入x 的.今后, 当使用A[x/a] 时, 我们总是假定a是在A 中可代入x的. 类似地, 我们将用u[x1/ a1 ,...,x n/ a n ]表示在表达式u 中将所有的自由变元x1 ,...,x n 分别换成项a1 ,...,a n 而得的表达式, 同时还假定它们都是可代入的.在我们的一阶语言定义中项和公式的写法对于证明和理论分析比较方便, 但和通常的阅读方式不一致. 为了克服这一弱点, 我们引进一些定义符号:(A∨B) 定义为∨AB; (A→B) 定义为(⌝A∨B); (A&B) 定义为⌝(A→⌝B);(A↔B) 定义为((A→B)&(B→A)); ∀xA 定义为⌝∃x⌝A.注意: 定义符号只是为了方便而引进的记号, 它们不是语言中的符号. 当我们计算公式的长度时, 必须把它们换成原来的符号. 同样, 当用施归纳于长度或高度进行证明时也不能把它们作为符号来处理. 今后, 我们将在展示公式时用定义符号, 而在证明时用定义(1.1) 和(1.2).我们称:⌝A 为 A 的否定; A∨B 为 A 和B 的析取(A 或者B); A&B 为 A 和B 的合取(A并且B);A→B 为 A 蕴含B; A↔B 为A等价于B; ∃xA 为关于x的存在量词(存在x 使得A);∀xA 为关于x的全称量词(对一切x 使得A).作业:1) 施归纳于长度证明如果u是公式(项), x 是变元, a是项, 则u[x/a]是公式(项).2) 证明如果uv和vv'是合式表达式, 则v和v'中必有一个是空表达式.一阶理论的逻辑公理和规则形式系统的公理和规则可以分为两类: 逻辑公理和逻辑规则, 非逻辑公理和非逻辑规则. 逻辑公理和逻辑规则指的是那些所有形式系统都有的公理, 而非逻辑公理和非逻辑规则仅在5某些特定的形式系统中才有. 但是, 当形式系统足够丰富时,我们并不需要非逻辑规则. 假定在一个形式系统F 中有一条非逻辑规则使我们可以由B1 ,...,B n 推导出A, 只要F 有足够多的逻辑规则, 我们只需要在F 中加进一条公理B1 →...→B n →A (这里, B1 →...→B n →A表示B1 →(...→(B n →A)...).)就不再需要那条非逻辑规则了. 因此, 我们今后假定我们的形式系统中没有非逻辑规则. 今后我们将把逻辑规则简称为规则. 由于我们仅对形式系统进行一般讨论, 我们的兴趣主要是那些逻辑公理和规则.下面是逻辑公理:1) 命题公理: ⌝A∨A;2) 代入公理: A[x/a]→∃xA;3) 恒等公理: x=x;4) 等式公理: x1 =y1 →...→x n =y n →fx1 ...x n =fy1 ...y n ;或x1 =y1 →...→x n =y n →px1 ...x n →py1 ...y n .注意: 以上并不是仅有四条公理, 而是四类公理. 如命题公理并非一条公理, 而是对于任何公式A 我们有一条命题公理. 所以, 以上的公理实际上是公理模式.以下是规则:1) 扩展规则: 如果A, 则B∨A;2) 收缩规则: 如果A∨A, 则A;3) 结合规则: 如果A∨(B∨C), 则(A∨B)∨C;4) 切割规则: 如果A∨B且⌝A∨C, 则B∨C;5) ∃-引入规则: 如果A→B且x 不是B 中的自由变元, 则∃xA→B.如同上面的公理, 这些规则也不是五条规则, 而是五个规则模式.现在, 我们定义一阶理论如下:(1.9) 定义一个一阶理论T (简称理论T)是具有如下特征的形式系统:1) T 的语言L(T)是一阶语言;2) T 的公理是以上列出的四组公理和一些其它的非逻辑公理;3) T 的规则是以上列出的五组规则.由于一阶理论的逻辑符号, 逻辑公理和规则已经确定, 一阶理论之间的区别在于它们的非逻辑符号和非逻辑公理. 因此, 当我们希望讨论某一具体的一阶理论时只需要把它的非逻辑符号和非逻辑公理指明就行了.例.1) 数论NN 的非逻辑符号为: 常元0, 一元函数符号S, 二元函数符号+和*, 和二元谓词符号<. N 的非逻辑公理为:N1 Sx≠0; N2 Sx=Sy→x=y; N3 x+0=x; N4 x+Sy=S(x+y); N5 x*0=0;N6 x*Sy=(x*y)+x; N7 ⌝(x<0); N8 x<Sy↔x<y∨x=y; N9 x<y∨x=y∨y<x.2) 群GG 只有一个非逻辑符号, 即二元函数符号*. G 的非逻辑公理为:G1 (x*y)*z=x*(y*z); G2 ∃x(∀y(x*y=y)&∀y∃z(z*y=x)).根据我们在第一节所述, 一阶理论T 的定理可以定义为:1) 每一条命题公理, 代入公理, 恒等公理, 等式公理和非逻辑公理是定理;2) 如果A 是定理, 则A∨B是定理;3) 如果A∨A是定理, 则A 是定理;64) 如果A∨(B∨C) 是定理, 则(A∨B)∨C 是定理;5) 如果A∨B和⌝A∨C是定理, 则B∨C是定理;6) 如果A→B是定理且x 不是B 中的自由变元, 则∃xA→B是定理.与此对应, 我们可以用如下广义归纳法证明一阶理论T 中的定理都具有某一性质P:1) 每一条命题公理, 代入公理, 恒等公理, 等式公理和非逻辑公理具有性质P;2) 如果A 具有性质P, 则A∨B具有性质P;3) 如果A∨A具有性质P, 则A 具有性质P;4) 如果A∨(B∨C) 具有性质P, 则(A∨B)∨C 具有性质P;5) 如果A∨B和⌝A∨C具有性质P, 则B∨C具有性质P;6) 如果A→B具有性质P且x 不是B 中的自由变元, 则∃xA→B具有性质P.下面我们证明一阶理论的逻辑公理是相互独立的.(1.10) 定理一阶理论的逻辑公理和规则是互相独立的.证明当我们希望证明某一命题A 是独立于某个命题集Γ和规则集Δ时, 我们需要找到一个性质P 使A 不具有性质P, 而Γ中的每一命题具有性质P 且Δ中的每一规则保持性质P (即如果该规则的前提具有性质P, 则其结论具有性质P); 当我们希望证明某一规则R 是独立于Γ和Δ时, 我们需要找到一个性质P 使R 不保持性质P, 而Γ中的每一命题具有性质P 且Δ中的每一规则保持性质P. 这样就可以断言: 在由Γ为其公理集, Δ为其规则集的形式系统中, 每一定理都具有性质P. 由于A不具有性质P (或R 不保持性质P), 所以, A (或R)是不可能由Γ和Δ来证明的. 这样, A(或R)就独立于Γ和Δ了. 我们将根据这个思想来证明本定理.1) 对于命题公理. 定义f 如下:f(A)=T 若 A 是原子公式; f(⌝A)=F; f(A∨B)=f(B); f(∃xA)=T.可以证明: f(⌝⌝(x=x)∨⌝(x=x))=F, 而且对于任何可由其它的逻辑公理和规则证明的命题A, f(A)=T.2) 对于代入公理. 定义f 如下:f(A)=1 若A 是原子公式; f(⌝A)=1 如果f(A)=0, f(⌝A)=0 若f(A)=1;f(A∨B)=max{f(A),f(B)}; f(∃xA)=0.可以证明: f((x=x)→∃x(x=x))=0, 而且对于任何可由其它的逻辑公理和规则证明的命题A, f(A)=1.3) 对于恒等公理. 定义f 如下:f(A)=0 若A是原子公式; f(⌝A)=1 如果f(A)=0, f(⌝A)=0 若f(A)=1; f(A∨B)=max{f(A)},f(B); f(∃xA)=f(A).可以证明: f((x=x))=0, 而且对于任何可由其它的逻辑公理和规则证明的命题A, f(A)=1.4) 对于等式公理. 首先在L(T)中加进常元e1 ,e2 和e3 而得L'. 然后定义f 如下:f(e i =e j )=1 iff i≤j; f(⌝A)=1 如果f(A)=0, f(⌝A)=0 若f(A)=1; f(A∨B)=max{f(A),f(B)}; f(∃xA)=T iff 存在i 使f(A[x/e i ])=T .可以证明: f((x=y→x=z→x=x→y=z))=0, 而且对于任何可由其它的逻辑公理和规则证明的命题A, f(A[x/e i ])=1, 其中, x是A 中的自由变元.5) 对于扩展规则. 定义f 如下:f(A)=1 若 A 是原子公式; f(⌝A)=1 如果f(A)=0, 否则, f(A)=0; f(A∨B)=1 如果f(A)=f(⌝B), 否则f(A∨B)=0; f(∃xA)=f(A).可以证明: f((x=x∨(⌝(x=x)∨x=x)))=0, 而且对于任何可由其它的逻辑公理和规则证明的命题A, f(A)=1.6) 对于收缩规则. 定义f 如下:7f(A)=T 若 A 是原子公式; f(⌝A)=f(∃xA)=F; f(A∨B)=T.可以证明: f(⌝⌝(x=x))=F, 而且对于任何可由其它的逻辑公理和规则证明的命题A, f(A)=T.7) 对于结合规则. 定义f 如下:f(A)=0 若 A 是原子公式; f(⌝A)=1-f(A); f(A∨B)=f(A)*f(B)*(1-f(A)-f(B)); f(∃xA)=f(A).可以证明: f(⌝(⌝(x=x)∨⌝(x=x)))>0, 而且对于任何可由其它的逻辑公理和规则证明的命题A, f(A)=0.8) 对于切割规则. 定义f 如下:f(A)=1 若 A 是原子公式; f(⌝A)=1 如果f(A)=0或A是原子公式, 否则f(⌝A)=0; f(A∨B)=max{f(A),f(B)}; f(∃xA)=f(A).可以证明: f(⌝⌝(x=x)))=0, 而且对于任何可由其它的逻辑公理和规则证明的命题A, f(A)=1.9) 对于E-引入规则. 定义f 如下:f(A)=1 若A是原子公式; f(⌝A)=1 如果f(A)=0, f(⌝A)=0 若f(A)=1; f(A∨B)=max{f(A),f(B)}; f(∃xA)=T.可以证明: f(∃y⌝(x=x)→⌝(x=x))=0, 而且对于任何可由其它的逻辑公理和规则证明的命题A, f(A)=1.结构和模型现在我们讨论一阶理论的语义部分. 为此我们先引进一些集论的记号: 集合或类是把一些我们想要研究的对象汇集在一起, 从而我们可以把它看作是一个整体. 如果A 和B 是集合, 一个由A 到B 的映射 F (记作F: A→B)是一个A 和B 之间的对应, 在这个对应中A 中的每一个元素a 都对应着一个唯一的B中元素 b (称为F在a 上的值, 记作F(b) ). 我们把n个A 中元素按一定顺序排列而得的序列称为A 的一个n 元组, 并用(a1,...,a n )表示由A 中元素a1,...,a n 按此顺序排列的n 元组. 把由A 的所有n 元组成的集合记为A n, 然后把由A n 到B的映射称为由A 到B 的n元函数. 我们把A n 的子集称为A 上的n 元谓词. 如果P是A 上的n 元谓词, 则P(a1 ,...,a n )表示(a1 ,...,a n )∈P.真值函数根据我们对公式和项的定义, 我们可以先用函数符号和谓词符号以及变元构造一些简单的公式, 然后用联结词得到比较复杂的公式, 如"A 并且B" 等等. 我们用符号"&" 表示"并且", 即若A 和B 是公式, "A&B" 表示"A 和B同时成立".于是一个很自然的问题是怎样知道A&B 的真假? 这里, A&B 的一个很重要的特征是: 只需要知道A 和B 的真假就能确定A&B 的真假, 而不必知道A 和B 的具体含义. 为了表示这一特征, 我们引进真值. 真值是两个不同的字母T 和F, 而且当公式A 为真时, 我们用T 表示其真值; 当公式A 为假时, 我们用F 表示其真值. 于是, A&B 的真值就由A 和B 的真值确定了.有了真值的概念, 我们就可以定义真值函数了. 所谓的真值函数是由真值集T,F 到真值集T,F 的函数. 由此, 我们可以把以上的讨论叙述为: 存在二元真值函数H& 使得: 若a 和b 分别是A 和B 的真值, 则H& (a,b) 是A&B 的真值. 我们定义H& 为:H& (T,T)=T, H& (T,F)=H& (F,T)=H& (F,F)=F.我们用"∨" 表示"或者", 并定义H∨如下:8H∨(F,F)=F, H∨(T,F)=H∨(F,T)=H∨(T,T)=T.于是当a 和b 分别是A 和B 的真值时, H∨(a,b)就是A∨B的真值.我们用"→" 表示"如果...则...", 并定义H→如下:H→(T,F)=F, H→(F,F)=H→(F,T)=H→(T,T)=T.于是当a 和b 分别是A 和B 的真值时, H→(a,b)就是A→B的真值.我们用"↔" 表示"当且仅当", 并定义H↔如下:H↔(F,T)=H↔(T,F)=F, H↔(F,F)=H↔(T,T)=T.于是当a 和b 分别是A 和B 的真值时, H↔(a,b)就是A↔B的真值.我们用"⌝" 表示"非", 并定义H⌝如下:H⌝(F)=T, H⌝(T)=F.于是当a 是A 的真值时, H⌝(a)就是⌝A的真值.容易证明, &,→, 和↔可由⌝和∨定义. 事实上所有的真值函数都可以由⌝和∨定义.作业1. 证明: 任何真值函数f(a1 ,...,a n )都可以由H⌝和H∨定义.2. 设H d , H s 是真值函数, 其定义为:H d (a,b)=T 当且仅当a=b=F; H s (a,b)=F 当且仅当a=b=T.证明: 任何真值函数f(a1 ,...,a n )都可以由H d (或H s )定义.结构现在我们讨论一阶语言的语义部分(称为它的结构). 所谓一个语言的语义, 当然是表示该语言中所指称的对象范围和每一个词和句子所表达的含义. 一阶语言的语义也是如此. 如前定义, 一阶语言中的符号有函数符号和谓词符号, 这些都应在它的语义中有具体的含义. 把这些组合起来, 我们就可以得到如下定义:(1.11) 定义称三元组M=〈|M|,F,P〉是一个结构,如果:1) |M|是一个非空集合,它称为是L 的论域, |M| 中的元素称为是M 的个体;2) F是|M|上的函数集合;3) P是|M|上的谓词集合.定义设L是一阶语言,M是一个结构。
1学科介绍1.1 数理逻辑介绍1.1.1什么是数理逻辑?逻辑是探索、阐述和确立有效推理原则的学科,最早由古希腊学者亚里士多德创建的。
用数学的方法研究关于推理、证明等问题的学科就叫做数理逻辑。
也叫做符号逻辑。
数理逻辑的内容:1、命题逻辑系统2、一阶谓词逻辑系统命题演算是研究关于命题如何通过一些逻辑连接词构成更复杂的命题以及逻辑推理的方法。
命题是指具有具体意义的又能判断它是真还是假的句子。
如果我们把命题看作运算的对象,如同代数中的数字、字母或代数式,而把逻辑连接词看作运算符号,就象代数中的“加、减、乘、除”那样,那么由简单命题组成复和命题的过程,就可以当作逻辑运算的过程,也就是命题的演算。
AA->B=~AvB:BA→(B→A)这样的逻辑运算也同代数运算一样具有一定的性质,满足一定的运算规律。
例如满足交换律、结合律、分配律,同时也满足逻辑上的同一律、吸收律、双否定律、狄摩根定律、三段论定律等等。
利用这些定律,我们可以进行逻辑推理,可以简化复和命题,可以推证两个复合命题是不是等价,也就是它们的真值表是不是完全相同等等。
命题演算的一个具体模型就是逻辑代数。
逻辑代数也叫做开关代数,它的基本运算是逻辑加、逻辑乘和逻辑费,也就是命题演算中的“或”、“与”、“非”,运算对象只有两个数0和1,相当于命题演算中的“真”和“假”。
逻辑代数的运算特点如同电路分析中的开和关、高电位和低电位、导电和截至等现象完全一样,都只有两种不同的状态,因此,它在电路分析中得到广泛的应用。
利用电子元件可以组成相当于逻辑加、逻辑成和逻辑非的门电路,就是逻辑元件。
还能把简单的逻辑元件组成各种逻辑网络,这样任何复杂的逻辑关系都可以有逻辑元件经过适当的组合来实现,从而使电子元件具有逻辑判断的功能。
因此,在自动控制方面有重要的应用。
谓词演算也叫做命题涵项演算。
在谓词演算里,把命题的内部结构分析成具有主词和谓词的逻辑形式,由命题涵项、逻辑连接词和量词构成命题,然后研究这样的命题之间的逻辑推理关系。
1.1.2 四种命题1.1.3四种命题间的相互关系学习目标核心素养1.了解命题的四种形式,能写出一个命题的逆命题、否命题和逆否命题.(重点)2.理解并掌握四种命题之间的关系及其真假性之间的关系.(易混点)3.能够利用命题的等价性解决有关问题.(难点)借助命题的等价性解题培养数学抽象、逻辑推理素养.1.四种命题的概念及结构(1)四种命题的概念对于两个命题,如果一个命题的条件和结论分别是另一个命题的结论和条件,那么把这样的两个命题叫做互逆命题,如果恰好是另一个命题的条件的否定和结论的否定,那么把这样的两个命题叫做互否命题,如果恰好是另一个命题结论的否定和条件的否定,那么把这样的两个命题叫做互为逆否命题,把第一个叫做原命题时,另三个可分别称为原命题的逆命题、否命题、逆否命题.(2)四种命题结构2.四种命题间的相互关系(1)四种命题之间的关系(2)四种命题间的真假关系原命题逆命题否命题逆否命题真真真真真假假真假真真假假假假假由上表可知四种命题的真假性之间有如下关系:①两个命题互为逆否命题,它们有相同的真假性;②两个命题为互逆命题或互否命题,它们的真假性没有关系.思考:(1)“a=b=c=0〞的否定是什么?(2)在原命题、逆命题、否命题和逆否命题四个命题中,真命题的个数会是奇数吗?[提示](1)“a=b=c=0〞的否定是“a,b,c至少有一个不等于0〞.(2)真命题的个数只能是0,2,4,不会是奇数.1.命题“假设m=10,那么m2=100〞与其逆命题、否命题、逆否命题这四个命题中,真命题是()A.原命题、否命题B.原命题、逆命题C.原命题、逆否命题D.逆命题、否命题C[原命题正确,那么逆否命题正确,逆命题不正确,从而否命题不正确.应选C.] 2.给出以下命题:①假设一个四边形的四条边不相等,那么它不是正方形;②假设一个四边形的对角互补,那么它内接于圆;③正方形的四条边相等;④圆内接四边形的对角互补;⑤对角不互补的四边形不内接于圆;⑥假设一个四边形的四条边相等,那么它是正方形.其中互为逆命题的有________;互为否命题的有______;互为逆否命题的有________.③和⑥,②和④①和⑥,②和⑤①和③,④和⑤[互为逆命题有③和⑥,②和④;互为否命题有①和⑥,②和⑤;互为逆否命题有①和③,④和⑤.]3.命题p :假设x =π3,那么cos x =12,那么命题p 的逆命题为________;命题p 的否命题为________;命题p 的逆否命题为________.[答案] 假设cos x =12,那么x =π3 假设x ≠π3,那么cos x ≠12假设cos x ≠12,那么x ≠π3写出原命题的其他三种命题(1)假设sin α=12,那么tan α=3; (2)假设a +b 是偶数,那么a ,b 都是偶数;(3)等底等高的两个三角形是全等三角形;(4)当1<x <2时,x 2-3x +2<0;(5)假设ab =0,那么a =0或b =0.[解](1)逆命题:假设tan α=3,那么sin α=12. 否命题:假设sin α≠12,那么tan α≠ 3. 逆否命题:假设tan α≠3,那么sin α≠12. (2)逆命题:假设a ,b 都是偶数,那么a +b 是偶数.否命题:假设a +b 不是偶数,那么a ,b 不都是偶数.逆否命题:假设a ,b 不都是偶数,那么a +b 不是偶数.(3)逆命题:假设两个三角形全等,那么这两个三角形等底等高.否命题:假设两个三角形不等底或不等高,那么这两个三角形不全等.逆否命题:假设两个三角形不全等,那么这两个三角形不等底或不等高.(4)逆命题:假设x 2-3x +2<0,那么1<x <2.否命题:假设x ≤1或x ≥2,那么x 2-3x +2≥0.逆否命题:假设x2-3x+2≥0,那么x≤1或x≥2.(5)逆命题:假设a=0或b=0,那么ab=0.否命题:假设ab≠0,那么a≠0且b≠0.逆否命题:假设a≠0且b≠0,那么ab≠0.1.写出一个命题的逆命题、否命题、逆否命题的方法(1)写命题的四种形式时,首先要找出命题的条件和结论,然后写出命题的条件的否定和结论的否定,再根据四种命题的结构写出所求命题.(2)在写命题时,为了使句子更通顺,可以适当地添加一些词语,但不能改变条件和结论.2.写否命题时应注意一些否定词语,列表如下:原词语等于(=)大于(>)小于(<)是都是至多有一个否定词语不等于(≠)不大于(≤)不小于(≥)不是不都是至少有两个原词语至少有一个至多有n个任意的任意两个所有的能否定词语一个也没有至少有(n+1)个某一个(确定的)某两个某些不能[跟进训练]1.写出以下命题的逆命题、否命题和逆否命题,并判断它们的真假.(1)正数a的立方根不等于0;(2)在同一平面内,平行于同一条直线的两条直线平行.[解](1)原命题:假设a是正数,那么a的立方根不等于0,是真命题.逆命题:假设a的立方根不等于0,那么a是正数,是假命题.否命题:假设a不是正数,那么a的立方根等于0,是假命题.逆否命题:假设a 的立方根等于0,那么a 不是正数,是真命题.(2)原命题:在同一平面内,假设两条直线平行于同一条直线,那么这两条直线平行,是真命题.逆命题:在同一平面内,假设两条直线平行,那么这两条直线平行于同一条直线,是真命题.否命题:在同一平面内,假设两条直线不平行于同一条直线,那么这两条直线不平行,是真命题.逆否命题:在同一平面内,假设两条直线不平行,那么这两条直线不平行于同一条直线,真命题.四种命题的关系及真假判断否命题、逆否命题,在这4个命题中,真命题的个数为( )A .0个B .1个C .2个D .4个(2)判断命题“假设a ≥0,那么x 2+x -a =0有实根〞的逆否命题的真假.[思路点拨](1)只需判断原命题和逆命题的真假即可. (2)思路一 写出原命题的逆否命题→判断其真假思路二 原命题与逆否命题同真同假(即等价关系)→判断原命题的真假→得到逆否命题的真假(1)C [当c =0时,ac 2>bc 2不成立,故原命题是假命题,从而其逆否命题也是假命题;原命题的逆命题为“假设ac 2>bc 2,那么a >b 〞是真命题,从而否命题也是真命题,应选C .](2)[解] 法一:原命题的逆否命题:假设x 2+x -a =0无实根,那么a <0.∵x 2+x -a =0无实根,∴Δ=1+4a <0,解得a <-14<0, ∴原命题的逆否命题为真命题.法二:∵a≥0,∴4a≥0,∴对于方程x2+x-a=0,根的判别式Δ=1+4a>0,∴方程x2+x-a=0有实根,故原命题为真命题.∵原命题与其逆否命题等价,∴原命题的逆否命题为真命题.判断命题真假的方法(1)解决此类问题的关键是牢记四种命题的概念,正确地写出所涉及的命题,判定为真的命题需要简单的证明,判定为假的命题要举出反例加以验证.(2)原命题与它的逆否命题同真同假,原命题的否命题与它的逆命题同真同假,故二者只判断一个即可.[跟进训练]2.判断以下四个命题的真假,并说明理由.(1)“假设x+y=0,那么x,y互为相反数〞的否命题;(2)“假设x>y,那么x2>y2〞的逆否命题;(3)“假设x≤3,那么x2-x-6>0〞的否命题;(4)“对顶角相等〞的逆命题.[解](1)命题“假设x+y=0,那么x,y互为相反数〞的逆命题为“假设x,y互为相反数,那么x+y=0〞,那么逆命题为真命题,因为原命题的逆命题和否命题具有相同的真假性,所以“假设x+y=0,那么x,y互为相反数〞的否命题是真命题.(2)令x=1,y=-2,满足x>y,但x2<y2,所以“假设x>y,那么x2>y2〞是假命题,因为原命题与其逆否命题具有相同的真假性,所以“假设x>y,那么x2>y2〞的逆否命题也是假命题.(3)该命题的否命题为“假设x>3,那么x2-x-6≤0〞,令x=4,满足x>3,但x2-x-6=6>0,不满足x2-x-6≤0,那么该否命题是假命题.(4)该命题的逆命题为“相等的角是对顶角〞是假命题,如等边三角形的任意两个内角都相等,但它们不是对顶角.等价命题的应用[探究问题]1.命题“假设x≠1,那么x2-2x-3≠0〞的等价命题是什么,其命题真假如何?提示:等价命题为“假设x2-2x-3=0,那么x=1〞,其为假命题.2.当一个命题的条件与结论以否定形式出现时,为了研究方便,我们可以研究哪一个命题?提示:一个命题与其逆否命题等价,我们可研究其逆否命题.[例3]证明:函数f(x)是(-∞,+∞)上的增函数,a,b∈R,假设f(a)+f(b)≥f(-a)+f(-b),那么a+b≥0.[思路点拨]证明其逆否命题成立⇒原命题成立.[证明]原命题的逆否命题为“函数f(x)是(-∞,+∞)上的增函数,a,b∈R,假设a+b<0,那么f(a)+f(b)<f(-a)+f(-b)〞.假设a+b<0,那么a<-b,b<-a.∵f(x)在(-∞,+∞)上是增函数,∴f(a)<f(-b),f(b)<f(-a),∴f(a)+f(b)<f(-a)+f(-b).即原命题的逆否命题为真命题.∴原命题为真命题.1.假设一个命题的条件或结论含有否定词时,直接判断命题的真假较为困难,这时可以转化为判断它的逆否命题.2.当证明一个命题有困难时,可尝试证明其逆否命题成立.[跟进训练]3.判断命题“a,x为实数,假设关于x的不等式x2+(2a+1)x+a2+2≤0的解集是空集,那么a<2〞的真假.[解]原命题的逆否命题为“a,x为实数,假设a≥2,那么关于x的不等式x2+(2a+1)x +a2+2≤0的解集不是空集〞.判断真假如下:抛物线y=x2+(2a+1)x+a2+2的开口向上,根的判别式Δ=(2a+1)2-4(a2+2)=4a-7,因为a≥2,所以4a-7>0,即抛物线与x轴有交点,所以关于x的不等式x2+(2a+1)x+a2+2≤0的解集不是空集,故原命题的逆否命题为真,从而原命题为真.1.写四种命题时,可以按以下步骤进行:(1)找出命题的条件p和结论q;(2)写出条件p的否定¬p和结论q的否定¬q;(3)按照四种命题的结构写出所求命题.2.每一个命题都由条件和结论组成,要分清条件和结论.3.判断命题的真假可以根据互为逆否的命题真假性相同来判断,这也是反证法的理论基础.1.判断正误(1)命题“假设p,那么q〞的否命题为“假设¬p,那么¬q〞.( )(2)同时否定原命题的条件和结论,所得的命题是否命题.()(3)命题“假设A∩B=A,那么A∪B=B〞的逆否命题是“假设A∪B≠B,那么A∩B≠A〞.( )[答案](1)×(2)√(3)√2.命题“假设a>-3,那么a>-6〞以及它的逆命题、否命题、逆否命题中,真命题的个数为()A.1B.2C.3 D.4B[原命题是真命题,从而其逆否命题是真命题,其逆命题是“假设a>-6,那么a>-3〞,是假命题,从而其否命题也是假命题,故真命题的个数是2.]3.命题“假设m>1,那么mx2-2x+1=0无实根〞的等价命题是________.假设mx2-2x+1=0有实根,那么m≤1[原命题的等价命题是其逆否命题,由定义可知其逆否命题为:“假设mx2-2x+1=0有实根,那么m≤1〞.]4.写出以下命题的逆命题、否命题、逆否命题,并判断真假.(1)假设a>b,那么ac2>bc2;(2)在二次函数y=ax2+bx+c中,假设b2-4ac<0,那么该函数的图象与x轴无交点.[解](1)逆命题:假设ac2>bc2,那么a>b,真命题.否命题:假设a≤b,那么ac2≤bc2,真命题.逆否命题:假设ac2≤bc2,那么a≤b,假命题.(2)逆命题:在二次函数y=ax2+bx+c中,假设图象与x轴无交点,那么b2-4ac<0,真命题.否命题:在二次函数y=ax2+bx+c中,假设b2-4ac≥0,那么图象与x轴有交点,真命题.逆否命题:在二次函数y=ax2+bx+c中,假设图象与x轴有交点,那么b2-4ac≥0,真命题.。