数理逻辑的推理及形式证明_第1页
数理逻辑的推理及形式证明_第2页
数理逻辑的推理及形式证明_第3页
数理逻辑的推理及形式证明_第4页
数理逻辑的推理及形式证明_第5页
已阅读5页,还剩119页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

修数理逻辑的推理及形式证明-CAL-FENGHAI.NetworkInformationTechnologyCompany.2020YEAR第一讲引言一、课程内容数理逻辑:是计算机科学的基础,应熟练掌握将现实生活中的条件化成逻辑公式,并能做适当的推理,这对程序设计等课程是极有用处的。集合论:数学的基础,对于学习程序设计、数据结构、编译原理等几乎所有计算机专业课程和数学课程都很有用处。熟练掌握有关集合、函数、关系等基本概念。代数结构:对于抽象数据类型、形式语义的研究很有用处。培养数学思维,将以前学过的知识系统化、形式化和抽象化。熟练掌握有关代数系统的基本概念,以及群、环、域等代数结构的基本知识。图论:对于解决许多实际问题很有用处,对于学习数据结构、编译原理课程也很有帮助。要求掌握有关图、树的基本概念,以及如何将图论用于实际问题的解决,并培养其使用数学工具建立模型的思维方式。讲课时间为两个学期,第一学期讲授数理逻辑与集合论,第二学期讲授代数结构和图论。考试内容限于书中的内容和难度,但讲课内容不限于书中的内容和难度。二、数理逻辑发展史目的•了解有关的背景,加深对计算机学科的全面了解,特别是理论方面的了解,而不限于将计算机看成是一门技术或工程性的学科。•通过重要的历史事件,了解计算机科学中的一些基本思维方式和一些基本问题。数理逻辑的发展前期前史时期一一古典形式逻辑时期:亚里斯多德的直言三段论理论初创时期一一逻辑代数时期(17世纪末)资本主义生产力大发展,自然科学取得了长足的进步,数学在认识自然、发展技术方面起到了相当重要的作用。人们希望使用数学的方法来研究思维,把思维过程转换为数学的计算。莱布尼兹(Leibniz,1646~1716)完善三段论,提出了建立数理逻辑或者说理性演算的思想:•提出将推理的正确性化归于计算,这种演算能使人们的推理不依赖于对推理过程中的命题的含义内容的思考,将推理的规则变为演算的规则。•使用一种符号语言来代替自然语言对演算进行描述,将符号的形式和其含义分开。使得演算从很大程度上取决与符号的组合规律,而与其含义无关。布尔(G.Boole,1815~1864)代数:将有关数学运算的研究的代数系统推广到逻辑领域,布尔代数既是一种代数系统,也是一种逻辑演算。数理逻辑的奠基时期弗雷格(G.Frege,1848~1925):《概念语言一一一种按算术的公式语言构成的纯思维公式语言》(1879)的出版标志着数理逻辑的基础部分一一命题演算和谓词演算的正式建立。皮亚诺(GiuseppePeano,1858~1932):《用一种新的方法陈述的算术原理》(1889)提出了自然数算术的一个公理系统。罗素(BertrandRussell,1872~1970):《数学原理》(与怀特黑合著,1910,1912,1913)从命题演算和谓词演算开始,然后通过一元和二元命题函项定义了类和关系的概念,建立了抽象的类演算和关系演算。由此出发,在类型论的基础上用连续定义和证明的方式引出了数学(主要是算术)中的主要概念和定理。逻辑演算的发展:甘岑(G.仃6也6川的自然推理系统(NaturalDeductionSystem),逻辑演算的元理论:公理的独立性、一致性、完全性等。各种各样的非经典逻辑的发展:路易斯(Lewis,1883~1964)的模态逻辑,实质蕴涵怪论和严格蕴涵、相干逻辑等,卢卡西维茨的多值逻辑等。集合论的发展•看待无穷集合的两种观点:实无穷与潜无穷•康托尔(G.Cantor,1845~1918):以实无穷的思想为指导,建立了朴素集合论•外延原则(集合由它的元素决定)和概括原则(每一性质产生一集合)。•可数集和不可数集,确定无穷集合的本质在于集合本身能与其子集一一对应。能与正整数集合对应的集合是可数的,否则是不可数的。证明了有理数集是可数的,使用对角线法证明了实数集合是不可数的。超穷基数和超穷序数朴素集合论的悖论:罗素悖论公理集合论的建立:ZFC系统第三次数学危机与逻辑主义、直觉主义与形式主义集合论的悖论使得人们觉得数学产生了第三次危机,提出了数学的基础到底是什么这样的问题。罗素等的逻辑主义:数学的基础是逻辑,倡导一切数学可从逻辑符号推出,《数学原理》一书是他们这一思想的体现。为解决悖论产生了逻辑类型论。布劳维尔(Brouwer,1881~1966)的直觉主义:数学是心灵的构造,只承认可构造的数学,强调构造的能行性,与计算机科学有重要的联系。坚持潜无穷,强调排中律不能用于无穷集合。海T(Heyting)的直觉主义逻辑。希尔伯特(D.Hilbert)的形式主义:公理化方法与形式化方法,元数学和证明论,提倡将逻辑演算和数学证明本身形式化,把用普通的语言传达的内容上的数学科学变为用数学符号和逻辑符号按一定法则排列的一堆公式。为了消除悖论,要数学建立在公理化基础上,将各门数学形式化,构成形式系统,并证明其一致性,这是希尔伯特的数学纲领。数理逻辑的发展初期哥德尔(Godel,1906~1978)不完全性定理:一个足够强大的形式系统,如果是一致的则不是完全的,即有的判断在其中是不可证的,既不能断定其为假,也不能证明其为真。各种计算模型:哥德尔的递归函数理论,邱吉尔的演算,图灵机模型这些计算模型是计算机科学的理论基础,是计算机的理论模型。三、预备知识集合的基本概念•集合(set):集合是数学中最基本的概念之一,不能以更简单的概念来定义(define),只能给出它的描述(description)。一些对象的整体就称为一个集合,这个整体的每个对象称为该集合的一个元素(member或element)。用大写字母A,B,C等表示集合,用小写字母a,b,c等表示集合的元素aA表示:a是集合A的元素,或说a属于集合AaA表示:a不是集合A的元素,或说a不属于集合A•集合中的元素是无序的,不重复的。通常使用两种方法来给出一个集合:列元素法:列出某集合的所有元素,如:A={0,1,2,3,4,5,6,7,8,9}表示所有小于10的自然数所构成的集合B={a,b,…,z}表示所有小写英文字母所构成的集合性质概括法:使用某个性质来概括集合中的元素,如:•A={n|n是小于10的自然数}•C={n|n是质数}表示所有质数所构成的集合•集合由它的元素所决定,换句话说,两个集合A和B相等,记为A=B,如果A和B具有相同的元素,即a属于集合A当且仅当a属于集合B。.子集(subset):说集合A是集合B的子集,记为A=B,如果a属于集合A则a也属于集合B。因此A=B当且仅当AcB且B=A。说集合A是集合B的真子集(propersubset),如果AcB且A不等于B(A中B)。.空集(emptyset):约定存在一个没有任何元素的集合,称为空集,记为也有时也用{}来表示。按子集的定义,空集是任何集合的子集(为什么?)。幂集(powerset):集合A的幂集,记为软A),是A的所有子集所构成的集合,即:.P(A)={BIBcA}.例如,A={0,1},则P(A)={{},{0},{1},{0,1}},显然,对任意集合A,有人P(A)和AeP(A),补集(complementset):集合A的补集,记为A,是那些不属于集合A的元素所构成的集合,即A={xIxeA}。通常来说,是在存在一个全集U的情况下讨论集合的补集。全集U是所讨论的问题域中所有元素所构成的集合。,集合的并(union):集合A和B的并AuB定义为:AuB={xIxeA或者xeB},集合的并可推广到多个集合,设A「A2,…,解3是集合,它们的并定义为:A1uA2_uAn={xI存在某个z•,使得xeA.)•集合的交(in^ersec力on):集合A和B的并AcB定义为:AcB={xIxeA而且xeB},集合的交也可推广到多个集合,设A1,A2,…,An都是集合,它们的交定义为:A〃A2..2An={xI对所有的•,都有xeA.},集合的差(呦erence):集合A和B的差A-B定义为:A-B={xIxeA而且xeB}。2. 关系和函数的基本概念有序对(orderedpair):设A和B是两个集合,aeA,beB是两个元素,a和b的有序对,记为<a,b>,定义为集合{{a},{a,b}}。,设<a1,%>和<a2,b2>是两个有序对,可以证明<a1,b1>=<a2,b2>当且仅当a1=a2且b1=b2。(如何证?),有序对可推广到n个元素,设A1,A2,…,An是集合,a1eA1,a2eA2,…,aneAn是元素,定义有序n元组(。46%2n-tuple)<a1,a2,…,an>为<<a1,a2,••.,an_1>,an>,注意这是一个归纳(inductive)定义,将有序n元组的定义归结为有序n-1元组的定义。,显然有<a1,a2,…,an>=<b1,b2,…,bn>当且仅当a1=b1且a2=b2且…且an=b。n,集合的笛卡尔积(cartesianproduct):两个集合A和B的笛卡尔积AxB定义为:AxB={<a,b>IaeA且beB},例如,设A={a,b,c},B={1,2},则:AxB={<a,1>,<a,2>,<b,1>,<b,2>,<c,1>,<c,2>}笛卡尔积可推广到多个集合的情况,集合A1,A2,…,An的笛卡尔积定义为:A1xA2X…xAn={<a1,a2,…,an>Ia1eA1且a2eA2且…且.eAn},集合之间的关系(relation):定义n个集合A1,A2,…,An之间的一个n元关系R为集合A1,A2,…,An的笛卡尔积A1xA2x...xAn的一个子集。设<a1,a2,…,an>eA1xA2x...xAn,若<a1a2,…,an>eR,则称a1,a2,…,an间具有关系R,否则称它们不具有关系R。特别地:,当A1=A2=…=An=A时,称R为A上的n兀关系。,当n=2时,有口之人1以2,称R为A1与A2间的一个二元关系®naryrelation)。这时若<a1,a2>eR则简记为a1Ra2,否则(即<a1,a2>任R)记为a1Ra2。通常研究得最多的是二元关系,n元关系的许多性质可从二元关系的性质扩充而得到。如果没有特别指明的话,说R是一个关系则是指R是一个二元关系。,当n=1时,这时可认为R是集合A上满足某种性质的子集。,关系的一些性质:设R是A上的二元关系:,说R是自反的(re/lexive),如果对任意的aeA有aRa。,说R是反自反的(irre/lexive),如果对任意的aeA有aRa。,说R是对称的(symmetric),如果对任意的a,beA有若aRb则bRa。■说R是反对称的(antisymmetric),如果对任意的a,beA有若aRb且bRa贝1Ja=b。,说R是传递的(transitive),如果对任意的a,b,ceA有若aRb且bRc则aRco,说R是等价关系(equivalence),如果R是自反的、对称的和传递的。,集合之间的函数(/Unction,或说映射mapping):定义集合A到B的函数f是A和B的笛卡尔积AxB的一个子集,且满足若<x,y>ef及<x,z>ef则y=z。因此函数是A和B之间的一个特殊的二元关系。通常记集合A到B的函数f为f:AfB。,函数f:AfB的定义域(domain)dom(f)定义为:domf)={xI存在某个yeB使得<x,y>ef},函数f:AfB的值域(range)ran(f)定义为:ran(f)={yI存在某个xeA使得<x,y>ef},若<x,y>ef,通常记y为fx),并称y为x在函数f下的像(image),x为y在函数f下的原像。,函数也可推广到n元的情形:f:A1xA2x…xAnfB,意味着:f是A]XA2x...xAnxB的一个子集,且•<x1,々,…,%y>ef且<11,々,…,%z>ef贝Iy=z。,函数的一些性质:设f:A-B是集合A到B的函数:,说f是全函数(加㈤function),若domf)=A,否则称f是偏函数加"初function)。下面如果没有特别指明的话,都是指全函数。说f是满射(surjection,或说fmapsAontoB),如果ran(f)=B,即对任意的yeB都有原像。,说f是单射(injection,或说fisone-one),如果有f(x1)=f(i2)则x1=12,即对任意的yeB,如果它有原像的话,则有唯一的原像。,说f是双射Sjection,或说f是一对应),如果f既是满射,又是单射,即对任意的yeB,都有唯一的原像,同样根据全函数的定义,对于任意xeA都有唯一的像。这时可以定义f的逆函数(inversefunction),记为f-1:B-A,f-1(y)=x当且仅当fx)=y。显然f-1也是双射。,集合的基数(cardinalnumber)或说势:集合A的基数记为IAI,且有:,对于有限集合A,令A的基数为A中元素的个数。,定义无限集合,不直接定义基数,而是通过定义两个集合之间的等势关系来刻划集合的基数或势,说集合A和集合B是等势的(equipotent),如果存在一个从A到B的双射。根据双射的性质,可以证明等势是集合上的一个等价关系。,称与自然数集等势的集合为可列集(enumerable),有限集和可列集统称为可数集(countable)。,设A和B是有限集合,有IP(A)I=2iai,|AxBI-IAIxIBI。小结,下面以树的形式给出了以上主要概念之间的关系:集合

子集合的补、并、交、差有序对幂集笛卡尔积子集合的补、并、交、差有序对幂集笛卡尔积关系的自反、对称、传递性 函数单射、满射、双射归纳定义和归纳证明•一个集合的归纳定义(比血。小6definition)通常分为三步:归纳基:一些基本的元素属于该集合;归纳步:定义一些规则(或者说操作),从该集合中已有的元素来生成该集合的新的元素;最小化:该集合中的所有元素都是通过基本元素以及所定义的规则生成的,换句话说,该集合是由基本元素及规则所生成的最小的集合。・自然数集N的归纳定义:.归纳基:0是一个自然数,即0eN。.归纳步:若n是自然数,则n的后继也是自然数。记n的后继为succ(n),即若neN,则succ(n)eN。为方便起见,后面也记n的后继为n+1。. 最小化:所有的自然都通过步骤[1]和[2]得到,或者说自然数集是通过步骤[1]和[2]得到的最小集合。,这种定义方式可推广到对其他一些概念的定义,例如上述多个集合的并、交、笛卡尔积以及多个元素的有序n元组都可通过递归的方式定义。例如,对于多个集合的并可定义为:,归纳基:A1uA2={xIxeA1或者xeA2},归纳步:A1uA2…uAn=(A1uA2…uAn-1)uAn,这里不需要最小化,因为这里不是定义集合。,数学归纳法:关于自然数的许多性质都可通过数学归纳法来证明,对于性质R,如果它对0成立,而且如果对于n成立的话,能够得到它对于n+1也成立,那么性质R对所有的自然数成立。这种证明方法的正确性本身可通过自然数的归纳定义来得到证明:,定义集合S={neNI性质R对n成立},归纳基:根据上面的定义有0eS,归纳步:根据上面的定义有如果neS,则n+1eS,所以S是满足上面自然数集的归纳定义中的1、2点的一个集合,而自然数集N是满足这两点的最小集合,所以有N=S,而显然有SgN,所以S=N。,数学归纳法举例:使用数学归纳法证明1+2+…+n=(n*(n+1))/2,归纳基:当n=0时显然成立。,归纳步:如果对于n成立,则有1+2+…+n=(n*(n+1))/2(这称为归纳假设),现在要证对于n+1也成立。显然有:1+2+…+n+(n+1)=(n*(n+1))/2+(n+1) //根据归纳假设=(n*(n+1)+2*(n+1))/2=((n+1)*((n+1)+1))/2因此要证的公式对于n+1成立,所以对于所有的自然数成立。・显然在数学归纳法中,对于归纳基改为R对于自然数k成立,归纳步不变的话,则可证明R对于所有大于k的自然数都成立。,在数学归纳法中,也可将归纳步改为如果R对于所有小于n的自然数成立,则推出R对于n也成立,即归纳步是假设对于所有小于n的自然数性质R成立来导出性质R对于自然数n成立。这种形式的数学归纳法通常称为第二数学归纳法。形式系统,形式系统的定义:一个形式系统S由下列4个集合构成:,一个非空集合£S,称为形式系统S的字母表或说符号(Sy机3/)表;,一个由£S中字母的有限序列(字符串)所构成的集合FS,称为形式系统S的公式(Formula)集;,从FS中选取一个子集AS,称为形式系统S的公理(A羽0m)集;・FS上有一个部分函数集RS={RnIRn:FSxFSx...xFSfFS,n=1,2,…},称为形式系统S的规则(Rule)集,其中Rn:FSxFSx...xFSfFS是n元的部分函数,我们称其为n元规则。,形式系统中的定理(Theorem):,归纳基:teAS是形式系统S中的定理。,归纳步:11,12,…,tn是形式系统S中的定理,而Rne是S中的规则,那么Rn(11,12,…,tn)也是形式系统S中的定理。,对于形式系统中的规则Rn:FSxFSx...xFSfFS,通常表示成下面的形式: 11,12,…,tnRn(t1,12,…,tn),形式系统具有两个特征:,形式化实际上是一个可机械实现的过程,在它里面,符号、规则和演算等被表示得严密、精确。在形式系统S中,只能使用字母表£S中的符号,只承认公式集FS中的符号串的合理性,只能由公理集,根据规则推出有意义的东西来。,形式系统一旦完成,就成了符号串及根据规则进行的符号串的改写,系统与一切实际意义就毫不相干,或者说已经通过这种符号,从实际问题中抽象出了我们所需要研10究的内容。在形式系统内部,所能认识的只能是符号串及其改写,只能在形式系统外对这种符号串及规则赋予意义。,对象语言(。勿0以language)与元语言(Metalanguage):,数理逻辑所研究的是“数学推理”,而使用的方法也是数学推理,所以有必要区分这两个层次的推理。,把作为研究对象的“推理”形式化,使用形式语言来表示作为研究对象的“推理”的前提、结论和规则等,这种形式语言是我们所研究的对象语言。,另一方面,关于形式系统的性质、规律的表达和作为研究方面的推理方式使用另一种语言来表达,这个语言称为研究的元语言,通常使用半数学化的自然语言。,形式语言的语法(Syntax)与语义(Semantic):,形式语言的语法是构成形式系统的公式集、公理集和规则集的法则。,形式语言的语义是关于形式系统的解释和意思。,形式语言本身没有含义,但我们在构造它们时是假想它们能代表某种意义的,特别的当我们在选择形式系统的公理时,总是选择所研究的问题域中那些最为明显或最容易公认为正确的性质。习题.令集合A={nIn<10且n是奇数},B={nIn<10且n是素数},请回答下列问题:请用列元素的方法列出集合A和集合B,请问集合B是否是集合A的子集?请计算AuB、AcB、A-B、AxB以及P(A)(即A的幂集)。.设关系R={<a,b>Ia和b是互质的自然数},请问R是自反的吗对称的吗传递的吗为什么.设f:AfB是函数,R是A上的如下二元关系:R={<a,b>Ia,beA,f(a)=f(b)},证明R是A上的一个等价关系。. 使用数学归纳法证明:12+22+32+…切2=(n*(n+1)*(2n+1))/6115.设有函数f:NfNxN,f(n)=<n,n+1>,请问f是不是单射、满射或双射?5.*6.设R1和R2都是A上的等价关系,请问R1uR2和R1nR2是否还是A上的等价关系?如果是请证明,否则请举一反例。*7.设R是集合A上的等价关系,a£A,可定义:[a]={beAIaRb},称[a]为a关于R的等价类;A/R={[a]IaeA},称A关于R的商集。设函数f:AfA/R定义为对任意aeA有fa)=[a],请问R满足怎样的条件时f是单射?*8请给出<x,y,z>的集合方式的定义。若定义:[x,y,z]={{x},{x,y},{九y,z}},则如果有[xyyyz1]=[x2,y2,z2]是否意味着有x1=x2且y1=y2且z1=z212第二讲数理逻辑一、命题逻辑(PropositionalLogic).内容概述,简单命题与复合命题:什么是命题?命题联结词及其含义。,命题公式与赋值:命题逻辑公式的归纳定义,命题公式的真值表。,等值演算:命题公式的等值赋值,重要的等值式。,命题联结词的完备集:通过等值演算得到命题联结词的完备集和极小完备集。,命题公式的范式:析取范式与合取范式。,命题演算系统:使用命题逻辑公式进行推理的形式系统。,命题演算系统的语义与命题演算系统的元性质:注意区别形式系统的语法和语义。. 简单命题与复合命题,命题(proposition经典命题逻辑中,称能判断真假但不能既真又假的陈述句为命题。,命题对于命题逻辑来说是一个原始的概念,不能在命题逻辑的范围内给出它的精确定义,只能描述它的性质。,命题必须为陈述句,不能为疑问句、祈使句、感叹句等,例如下述句子为命题:1. 3是有理数 2. 8小于10133.2是素数4.乌鸦是黑色的下列句子不是命题:TOC\o"1-5"\h\z1. 这个小男孩多勇敢啊! 2. 乌鸦是黑色的吗?3. 但愿中国队能取胜。 4. 请把门开一开!下列句子不可能判断其为真或为假,所以也不是命题:1.x+y>10 2.我正在撒谎,命题必须具有真假值,从某种意义上来说,疑问句、祈使句、感叹句没有真假之分。但能判断真假,并不意味着现在就能确定其是真还是假,只要它具有能够唯一确定的真假值即可,例如下述陈述句是命题:1. 明年的中秋节的晚上是晴天 2.地球外的星球上存在生物3. 21世纪末,人类将居住在太空 4.哥德巴赫猜想是正确的,经典命题逻辑不区分现在已确定为真,还是将来可能确定为真这种情况,处理与时间有关的真值问题是时态逻辑的任务。经典命题逻辑也不区分是在技术上可以确定为真,还是现在的技术条件下不可以确定为真的这种情况,只承认在技术上,或者说能给出某种方法确定为真的那些东西才为真是直觉逻辑的观点。14,真命题和假命题:命题是为真或为假的陈述句,称这种真假的结果为命题的真值。如果命题的真值为真,则称为真命题,否则称为假命题。,命题常量与命题变量:使用符号来表示命题,通常用p,q或带下标来表示命题常量或者变量。如果命题符号p代表命题常量则意味它是某个具体命题的符号化,如果p代表命题变量则意味着它可指代任何具体命题。如果没有特别指明,通常来说命题符号p等是命题变量,即可指代任何命题。,简单命题与复合命题:不能分成更简单的陈述句的命题为简单命题或原子命题,否则称为复合命题,复合命题使用命题联结词联结简单命题而得到。,复合命题的联结词通常包括:,设p是任意命题,复合命题“非p”称为p的否定(非),记为「p。设p和q是任意命题,复合命题“p且q”称为p和q的合取(与),记为paq。设p和q是任意命题,复合命题“p或q”称为p和q的析取(或),记为pvq。设p和q是任意命题,复合命题“如果p则q”称为p蕴涵q,记为pTq。,设p和q是任意命题,复合命题“p当且仅当q”称为p与q等价,记为p»q。,上述定义中的非(negation)、合取(conjunction)、析取(d时unction)、蕴涵(implication)和等价(equivalence)是在命题逻辑中的术语,而弓1号中给出的复合命题是自然语言中的典型用法。当然,命题逻辑中符号化形式的复合命题在自15然语言中有许许多多的表达方法,这也是为什么自然语言有歧义的原因,参见教材中的各例题,并注意以下几点:•pVq的逻辑关系是pVq为真当且仅当p和q中至少有一个为真。但自然语言中的“或”既可能具有相容性,也可能具有排斥性。命题逻辑中采用了“或”的相容性。•pfq的逻辑关系是pfq为假当且仅当p为真,而q为假,称p为蕴涵式的前件,q为蕴涵式的后件。现实世界中的“如果…则…”与这种蕴涵有比较大的区别。简单命题逻辑中的这种蕴涵常常称为“实质蕴涵”,相对应地有“严格蕴涵(p严格蕴涵q,意味着p为真,则q不可能为假)”、“相干蕴涵”等。实质蕴涵意味着可从假的前提推出任何命题来,或两个不没有内在联系的命题之间存在蕴涵关系。■将日常生活中的陈述句符号化为命题逻辑中的公式是在今后的程序编写等课程中应用数理逻辑知识的重要基础。但就数理逻辑这门课程本身而言,我们只关心公式之间的真值关系,而不关心公式所具体指代的命题。■复合命题与简单命题之间的真值关系可用下表给出,其中0代表假,1代表真:pq「pp△qpVqpfqp—q00100110110110100010011011113. 命题逻辑公式【定义1.1】命题逻辑公式(propose力•。〃“/logicformula)由以下子句归纳定义:16. 归纳基:命题常量或命题变量是命题逻辑公式,称为命题逻辑公式的原子项。.归纳步:如果A,B是逻辑公式,则(「A)、(AaB)、(AvB)s(A-B)和(A»B)也是命题逻辑公式。. 最小化:所有的命题逻辑公式都通过1和2得到。□在这里我们隐含地使用的字母表是大小写的英文字母、命题联结符和园括号。英文字母还可带下标。其它的符号都不属于我们的符号表,即在命题逻辑公式中不能出现这些符号。后面我们将命题逻辑公式简称为命题公式,或在没有二义的情况下进一步简称为公式。【例子1.1】((pvq)f((「p)妗(qar)))是命题公式,它通过以下步骤生成:p是公式; 〃根据定义1.1的[1]q是公式; 〃根据定义1.1的[1](pvq)是公式; 〃根据定义1.1的[2](「p)是公式; 〃根据定义1.1的[2]r是公式; 〃根据定义1.1的[1]17

6.(qa6.(qar)是公式;//根据定义1.1的[2]((「p)妗(qar))是公式; 〃根据定义1.1的[2],以及4,6((pvq)T((「p)―(qar)))是公式。 //根据定义1.1的[2],以及3,7这种生成过程,可以形象地用下面的一棵树来表示:((Pvq)T((「p)—(qar)))(pvq) ((「p)—(qar))Z\ ,、 ,p/q (「p) (qar)p qr这种树在形式语言与自动机中就称为语法分析树。【反例1.2】,根据定义1.1,paq不是公式,因为两边没有园括号,根据定义1.1,(paqar)不是公式,实际上,由定义1.1生成的公式,每个命题联结符都会对应一对园括号。,显然(pqTr)、(qT(rAp)等都不是公式。【定理1.2】设R是某个性质,如果有:. 对于所有的原子项P,都满足性质R;.如果对任意的公式A和B都满足性质R,就有(「A)、(AaB)、(AvB)、(AtB)和(A—B)也满足性质R。18那么,所有的公式A就都满足性质R。□该定理的证明类似数学归纳法的证明,很容易根据定义1.1得到。【定义1.3]命题公式A的复杂程度deg(A)定义为:. 如果A是原子项,则deg(A)=0;. deg([A)=deg(A)+1;.deg(A*B)=max(deg(A),deg(B))+1,其中*代表a、vs“、》之一。 □此定义等价于教材p11的定义1.7。只不过我们在这里给出的是递归定义。使用归纳法,我们可证明下面定理:【定理1.4]deg(A)小于等于命题公式A中的命题联结符号的数目。【证明]根据命题公式A的结构进行归纳证明:归纳基:如果A是原子项,则根据定义1.3有deg(A)=0,显然定理成立。归纳步:假设定理对于命题公式A和B成立(归纳假设),记命题公式A中的命题联结符号数为Sym(A),即有deg(A)<Sym(A)和deg(B)<SyMB)。那么由于deg([A)=deg(A)+1,而Sym([A)=Sym(A)+1,所以定理对于「A也成立。同样由于deg(A*B)=max(deg(A),deg(B))+1,而Sym(A*B)=Sym(A)+Sym(B)+1,因而有deg(A*B)<Sym(A*B),从而定理对所有的命题公式都成立。□19【定理1.5】任意命题逻辑公式A中出现相等数目的左右园括号,实际上,左右园括号的个数都等于A中的命题联结符号数。□【定理1.6】任意命题逻辑公式A具有下列6种形式之一,且只具有其中一种形式:[1]. A为原子项; [2]. ([A) [3].(AaB)[4]. (AvB) [5]. (AfB). (A»B) □定理1.6的确切含义包括以下几点:任意命题公式必然具有上述6中形式之一;这6中形式都互不相同;如果(「A)与(「AJ相同,则必有A与A1相同;如果(A*B)与%*BJ相同,则必有A与A1相同,且B与b1相同。根据定理1.5和定理1.6,我们不难明白例子1.1是如何得到该其中命题公式的语法分析树的。实际上每个命题公式的最左边都是左园括号,如果从第二个符号不是左园括号,那么这个公式只有一个命题联结符。否则找与第二个左园括号配对的右园括号,从而将命题公式划分为这样的形式:((…)*(…)如果原来的命题公式为根的话,那么左右两边的两个命题公式分别为它的左右子树了,而且对这两个公式可作类似的分析,最后到原子项。在后面,为了书写方便起见,我们省略最外边的括号,并规定各个命题联结符的优先级别为「大于a,a大于v,v大于f,f大于分,从而可省略命题20公式中一些不必要的园括号,例如例子1.1中的公式可写为:pVqf「p»qar。不过在后面我们书写公式的原则是尽量简便,但又能让读者容易理解。而有关命题公式的性质的讨论,则只针对可由上面定义1.1所能生成的公式形式。上面讨论的命题公式的语法结构,下面讨论命题公式的赋值。【定义1.7]对命题公式的一次真值赋值t是从所有命题变量所组成的集合到集合{0,1}的函数。实际上,对于某个命题公式A来说,我们只关心t在A中的命题变量上的值。这里我们假定存在一个所有命题变量所组成的集合U,或者说我们所有命题公式中的变量都取之于集合U,我们记命题公式A中的所有命题变量所组成的集合为Vw(A)。设有一个真值赋值t:Uf{0,1},而对于命题公式A的真值赋值来说,我们只关心t在Vw(A)上的值。【例子1.3】对于命题公式A=((pvq)f((「p)»(qar))),有:Var(A)={p,q,r}这里不妨假定U=Var(A),真值赋值就是一个函数t:{p,q,r}f{0,1},例如可令:t(p)=0,t(q)=1,t(r)=0【定义1.8]命题公式A在真值赋值t:Uf{0,1}下的真值t(A)递归定义如下:. 如果命题公式A是一个命题常量p,则如果p为真,t(A)=1,否则t(A)=0;. 如果命题公式A是一个命题变量p,则t(A)=t(p). 若 t(A) =0则t(「A)=1,否则t(「A)=0。. 若 t(A) =t(B)=1,则t(AaB)=1,否则t(AaB)= 0。. 若 t(A) =t(B)=0,则t(AvB)=0,否则t(AvB)= 1。21

.若t(A)=0或者t(B)=1,则t(AfB)=1,否则t(AfB)=0。.若t(A)=t(B),贝1Jt(A»B)=1,否则t(A»B)=0。【例子1.3,续】对于命题公式A=((pvq)T((「p)妗(qar))),及真值赋值函数t:t(p)=0,t(q)=1,t(r)=0有:t(p)=0,t(q)=1;t(pvq)=1;义1.8的[5]t(「p)=1;义1.8的[3]t(r)=0;t(qar)=0;义1.8的[4]t((「p)妗(qar))=0;[7]t((pvq)T((「p)妗(qar)))=0;[6]因此命题公式A在上述真值赋值下的真值t(A)是0。//根据定//根据定//根据定//根据定//根据定//根据定//根据定义1.8的//根据定义1.8的命题公式的真值只与命题公式中所出现的命题变量的真值赋值有关,如果命题公式中含有n个命题变量,则对这些命题变量的真值赋值共有2n种不同情22

况,可通过一个表,列出在这所有情况下命题公式的真值,这种表称为该命题公式的真值表,例如上述命题公式A的真值表为:pqr(pvq)(「p)(qAr)((「p)»(qAr))((pvq)f((「p)»(qAr)))0000100100101001010110000111111110010011101100111101001111110100【定义1.9]如果命题公式A在任意的真值赋值函数t:Uf{0,1}下的真值t(A)都为1,则称命题公式A为永真式(Sm加。gy)(或称重言式);如果命题共A在任意的真值赋值函数下的真值都为0,则称A为矛盾式(contradiction);如果A不是矛盾式,则称为可满足式。【例子1.4]根据命题公式A=((pvq)-((「p)»(qar)))的真值表,我们知该命题公式是可满足式,但不是永真式。而公式B=((p-(qvp))vr)是永真式,其真值表为:pqr(qvp)(pf(qvp))((pf(qvp))vr)000011001011010111011111100111101111110111111111而公式(((「(pfq))Aq)Ar)(教材14页简写为「(pfq)AqAr)是矛盾式,其真值表为:pqr(pfq)(「(pfq))((「(pfq))Aq)(((「(pfq))Aq)Ar)0001000230011000010100001110001000100101010011010001111000【定义1.10]我们使用符号£来表示一组命题公式所构成的集合。定义£在真值赋值函数t:Uf{0,1}下的真值t(£)为:t(£)=1当且仅当对£中任意公式A有t(A)=1,否则定义t(£)=0(注意只要£中存在某个公式A使得t(A)=0,就有t(£)=0)。说£是可满足的,如果存在某个真值赋值函数t使得t(£)=1,这时称t满足£。【定义1.11】设£是一组命题公式的集合,说命题公式A是以£为前提的永真式,如果满足对任意满足£的真值赋值函数t都有t(A)=1,这时我们记为£-A。注意在定义1.11中,如果£为空集,则。卜A表示A为永真式,因为对于空集£来说,显然任意的真值赋值函数t都满足它(因为£中没有命题公式),从而。卜A意味着对任意的真值赋值函数t都有t(A)=1,即A为永真式。等值演算【定义1.12】当£={A1,A2,…,An}时,我们也记£M为A1,A2,…,An&A。如果有APB且BkA,则称命题公式A与B等值,记为AoB。实际上公式A与B等值记为AHB会更准确些,但教材采用了符号人。8,为了不会过于混淆,我们也使用这种记号。实际上,根据定义1.11,AoB就意味着对任意的真值赋值函数t有t(A)=1当且仅当t(B)=1,也就是24

说对任意的t有t(A)=t(B)。从而定义1.12与教材中关于命题公式等值的定义是等价的,即有下述定理:【定理1.13】AoB当且仅当A»B是永真式。□使用真值表,不难证明下面的定理:【定理1.14】设A,B,C是任意的命题公式,有:[1]. 双重否定律:[1]. 双重否定律:Ao-A)).等幂律: Ao(AvA)Ao(AaA).交换律: (AvB)o(BvA)(AaB)o(BaA)[4], 结合律: ((AvB)vB)o(Av(BvB))((AaB)aB)o(Aa(BaB)). 分配律: (Av(BaC))o((AvB)a(AvC))(Aa(BvC))o((AaB)v(AaC)). 德摩根律:(」(AvB))o((「A)a(「B)) (「(AaB))o((lA)v([B)).吸收律: (Av(AaB))oA(Aa(AvB))oA.零律: (Av1)o1(Aa0)o0.同一律: (Av0)oA(Aa1)oA.排中律: (Av(」A))o1.矛盾律: (Aa(「A))o0[12].蕴涵等值式:[12].蕴涵等值式:(A-B)o((」A)vB)25

25.等价等值式: (A»B)o((AfB)a(B-A)).假言易位:(A-B)o((「B)T「A)).等价否定等值式:(A»B)o((「A)»([B)).归谬论: ((AfB)a(A—(「B)))o(「A)□要注意的是,上述定理中的0代表真值为0的任意命题常量,而1代表真值为1的任意命题常量。由于命题联结符号a和v都满足结合律,因此我们可有如下的简写:A1AA2A...aA江A1VA2V-VAn根据以上简写,我们可推广定理1.13为以下定理1.15:【定理1.15】[1].A1,[1].A1,A2,.,AnPA当且仅当。卜((A1AA2A…AAn)-A)。. A#A2,…,AnPA当且仅当。卜((A1TA2f(.(An-A).))。【引理1.16】设有AoA和BoB',则有:. (「A)o(「A'). (AaB)o(A'aB'). (AvB)o(A'vB'). (AfB)o(A'fB'). (A»B)o(A'»B')□根据弓[理1.16,不难证明下面的置换规则:【定理1.17]设有BoC,而A'是命题公式A通过使用C替换A中出现的某些B(不需要是替换所有的B)而得到的命题公式,则有AoA'。26【证明】对命题公式A的结构进行归纳。首先如果B=A,则有C=A',从而有AoA'。归纳基:如果A是命题变量和命题常量,那么必有B=A,因此定理成立。归纳步:根据定理1.6,命题公式A必为如下5种形式之一:「A1,A1AA2,A1VA2,A1fA2,Ai»A2。设A的形式为-1A「如果B=A则定理成立,否则必有B出现A1中,将A1中的B用C替换后得到的为A;,按归纳假设有A产A;,再根据弓[理1.15有[A]=「A;。定理成立。若A的形式为A1*A2,则如果B=A则定理成立,否则必有B出现在A1或A2中,或同时出现在这两者中。设将A1中的B用C替换后得到的为A;,而将A2中的B用C替换后得到的为A2’,按归纳假设有A10Al和A2oA2',再根据弓[理1.15有AJA20Al*A2,即定理成立。□【定义1.18】如果命题公式A中只出现命题变量、命题常量、命题联结符号「、a和v则称为限制性(命题)公式。定义:.对于限制性公式A,将其中的命题联结符号A换成V,命题联结符号V换成a得到的公式称为A的对偶公式(曲Mformula),记为A却。.对于限制性公式A,将其中出现的所有原子项(命题变量或命题常量)p换成「p得到的公式称为A的内否式,记为A「。【例子1.5]设公式A=」((pvq)A(「r)),则:. A的对偶式A0P=」((pAq)v(「r)). A的内否式A「=「(((「p)v(「q))Ar)27【引理1.19】设公式A、B都是限制性公式,有:. (Aop)op. (Aop)op=A. (AvB)op=AopaBop. (AaB)op=AopvBop. (Aop)「=(A「)op(A「)「=A(AvB)「=A「vB」(AaB)「=A「aB「□弓[理1.19中的三(恒等号)表示两边的公式在(语法)形式上完全一样,例如(Aop)o=A表示对A的对偶公式Aop再做一次对偶操作得到的就是A本身。而(Ao)「三(A「)op表示对A做一次对偶操作得到Aop,然后再求Ao的内否式,得到的公式与先求A的内否式,然后再做对偶操作得到的公式完全一样,用代数学的术语来说,就是这两种操作可交换。弓[理1.19很容易根据定义1.18证明,也可直观理解弓[理1.19所代表的含义。读者可通过对一些公式求它的对偶式和内否式来验证弓I理1.19的每个恒等式,例如:【例子1.5,续】设公式A=」((pvq)A(「r)),则:. A0P=「((pAq)v([r)),(A0P)「=」(((「p)A([q))vr).A=」(((「p)v([q))ar),(A「)0P=」(((「p)a([q))vr)显然有(Aop卜三(A「)op。【定理1.20】设公式A是任意的限制性公式,有:. ([A)opo「(Aop) (「A)」o」(A」). (Aop)「o「A【证明】略□【推论1.21】设公式A和B都是限制性公式,有AoB贝1J(Aop)[o(B0P)[28【证明】 根据弓I理1.16及「(「A)oA不难得到AoB当且仅当「Ao「B。则:(Aop)「o-1A^o-1Bo(Bop)「□在定理1.14中已经看到了推论1.21的许多佐证,例如对于吸收律(Av(AaB))oA,其中(Av(AaB))的对偶公式是(「AA(「Av「B)),从而有(「Aa(「Av「B))o「A,这与第二个吸收律公式(Aa(AvB))oA是相同的,因为A、B代表任意命题公式。【例子1.6】验证下列等值式. ((p—q)-r)o((「qAp)vr). (p-(q-r))o((pAq)-r). ((pvq)-r)o((p-r)A(q—r)). ((pAq)-r)o((p-r)v(q-r)). (p-(qvr))o((p-q)v(p-r)). (p-(qAr))o((p-q)A(p-r))【证明】证明的思路有两种,第一种思路是通过列真值表,可看到上述等值式o的两边在任何真值赋值下都有相同的真值,从而完成上述等值式的验证。读者不妨自己按照这种思路进行证明。第二种思路是利用定理1.14中的基本等值式来证明。可以看到上述等值式主要是关于蕴涵的等值式,证明关于蕴涵的等值式的方法是利用定理1.14中的[12]将蕴涵化成只出现与、或、非的公式,再来验证它们的相等。. ((p-q)-r)o((「pvq)-r) //定理1.14中的[12]:蕴涵等值式o(「(「pvq))vr //定理1.14中的[12]:蕴涵等值式29

//德摩尔根律o(pA([q))v//德摩尔根律o(JqAp)vr). (p-(q—r))o(」pv(qfr))oJpvJqvr))o((「pv「q)vr)oJ(pAq)vr)用o((pAq)-r)用. ((pvq)-r)o(^(pvq)vr)o((「pA「q)vr)o((「pvr)A(「qvr))o((p-r)A(q-r)). (p-(qvr))o(「p)v(qvr)o(「p)vjp)v(qvr)o(」pvq)v(「pvr)o(p—q)v(p—r)(4)(6)留作练习//a的交换律////a的交换律//蕴涵等值式//蕴涵等值式//v的结合律//德摩尔根律,反向运//蕴涵等值式,反向运//蕴涵等值式//德摩尔根律//分配律与交换律//蕴涵等值式//蕴涵等值式//v的幂等律//v的交换律和结合律//蕴涵等值式(1).(2).」(A1VA2V...vAn)o([A1)a([A2)a...A([An(1).(2).」(A1AA2A-aAn)o(」A1)v([A2)v-v(」An)30【证明】对n实施数学归纳法,或直接从定理1.20[2]得到。□5.联结词的完全集【定义1.22】{0,1}上的n元函数f:{0,1}nf{0,1}就称为一个n元真值函数。联结词「实际上一个一元真值函数:户(0)=1,a(1)=0而联结词△、V、一和》则都是二元真值函数:fX(0,0)=0,f\(0,1)=0,f\(1,0)=0,f\(1,1)=1fV(0,0)=0,fV(0,1)=1,fV(1,0)=1,fV(1,1)=1ff(0,0)=1,ff(0,1)=1,ff(1,0)=0,ff(1,1)=1f^(0,0)=1,N(0,1)=0,H0)=0,H1)=1反过来,一个真值函数就可看成一个真值联结词。设f:{0,1}nf{0,1}是一个n元真值函数,则可如下定义一个n元真值联结词Nf:对于n个命题变元p1,p2,…,pn,命题公式Nf(p1,p2,…,pn)在真值赋值函数<11,12,…,tn>下的真值为f11,12,…,tn)。显然互不相同的n元真值函数的个数为22n,因此可定义22n个n元真值联结词,例如1元真值函数有四个:f1:0f0,1f0 f2:0f0,1f1 f3:0f1,1f0 f4:0f1,1f1而2元真值函数有16个,可定义16个真值联结词,而我们常用的只不过是其中的4个。现在的问题是,是否所有的真值函数都可使用常用的这5个真值联结词来表示呢?【定义1.23】设Q是联结词的一个集合,称Q为联结词的一个完全集,如果任意真值函数f都可用仅含Q中联结词的命题公式A来表示,即对A中命题变31元的任意一个真值赋值<t1,t2,…,tn>,A在<t1,12,…,tn>下的真值为f11,12,…,tn)o【定理1.24]{「,a,v,f}是联结词的一个完全集。【证明】根据定义1.23只要证明对任意n元真值函数都可由只含「、a、v和f的n元命题公式来表示即可。对真值函数的元数n进行归纳证明。归纳基:当n=1时,一元真值函数只有4个,可分别用pa(「p)、p、「p和pv(「p)来表示,因此定理成立。归纳步:假设当n=k时定理成立,要证n=k+1定理也成立。设fx1,x2,…,xk,xk+1)是一个k+1元真值函数,定义如下两个k元真值函数:f(x1,X2,…,Xk)=fX1,X2,…,Xk,0) 于2(x1,X2,…,Xk)=f(xx1,X2,。…,Xk,1)由归纳假设知f和f2都可由只含「、a、V和f的k元命题公式来表示,设它们分别可由A1和A2表示,且假定A1和A2中的k个命题变元为p1M2,…,pko现在我们证f可由a=((「pk+1)fA1)A(pk+1fA2)表示,其中pk+1是不同于p1,p2,…,pk的一个命题变元。即要证对命题变元p1M2,…,pk,pk+1的一个真值赋值<11,12,…,tk,tk+1>时,A的真值是f11,t2,…,tk,tk+1)o当tk+1=0时,即pk+1被赋值为0,这时((「pk+1)fA1)与A1等值,而(pk+1-八2)的真值为1,所以A与A1等值,而按归纳假设有A1的真值为f(t1,12,…,tk),即为fx1,x2,…,xk,0)。同理可证当tk+1=1时A的真值是fx1,x2,…,xk,1),从而A的真值是f11,12,…,%)o【推论1.25]{「,f},{「,修和{「,0都是联结词的完全集。32【证明】1.要证{「,f}是联结词的一个完全集,只要证任一命题公式可与一个只含「和一的命题公式等值,事实上有:(AvB)o((「A)-B) (AaB)o(「((「A)v([B))){「,a}是联结词的一个完全集,因为:(AvB)o(「((「A)a([B))) (A-B)o((「A)vB){「,v}是联结词的一个完全集,因为:(AaB)o(「((「A)v([B))) (A-B)o((「A)vB)事实上,上述每个集合都是极小的完全集,即不能再从集合中去掉任意一个联结词还能保持是完全集。□【定理1.26]{f,a,v,»}不是联结词的完全集。【证明】总取0值的真值函数不能由只含此联结词集中的联结词的命题公式来表达,因为这样的命题公式当所有命题变元都真值赋值为1时真值为1,不可能为0。 □6. 命题公式的范式1.27]将命题符号(代表命题变元或命题常量)或命题符号的否定统称为文字(liter)。!仅由有限个文字构成的析取式称为简单析取式。仅由有限个文字构成的合取式称为简单合取式。【例子1.8]文字、简单析取式与简单合取式:p,「q等为文字,也是一个文字的简单析取式和简单合取式pvq,pv(「q)等为两个文字的简单析取式,pvqv(「r为mj文字的简单析取式pAq,pA(「q)等为两个文字的简单合取式,pAqA(「r为mj文字的简单合取式33【定理1.28】一个简单析取式是永真式当且仅当它同时含一个命题符号及其否定,一个简单合取式是矛盾式当且仅当它同时含一个命题符号及其否定。□【定义1.29]由有限个简单合取式构成的析取式称为析取范式(disjunctivenormalform),由有限个简单析取式构成的合取式称为合取范式(conjunctivenormalform)。析取范式和合取范式统称为范式(normalform)。【例子1.9]析取范式和合取范式:(pAq)v(「pA「q),(pAr)v(qA「rAp)v(「rA「p)等是析取范式(pvq)A(「pv「q),(pvr)A(qv「rvp)A(「rv「p)等是合取范式根据定义1.18知,一个析取范式的对偶式是合取范式,一个合取范式的对偶式是析取范式。【定理1.30]一个析取范式是矛盾式当且仅当它的每个简单合取式都是矛盾式。一个合取范式是永真式当且仅当它的每个简单析取式都是永真式。【定理1.31](范式存在定理)任意命题公式都存在与之等值的析取范式与合取范式。求一个公式的范式的步骤如下:. 利用蕴涵等值式(AfB)o(「AvB)和等价等值式(A»B)o(「AvB)a(Av「B)消除公式中的联结词-和》,使得公式中只含有联结词「、A和V。. 利用双重否定律「「AoA和德摩尔根律将否定放到命题符号前。. 利用分配律,求析取范式利用a对V的分配律,求合取范式则利用V对A的分配律。34【例子1.9】求命题公式的析取范式和合取范式. 求(」pfq)A(p-r)的析取范式和合取范式. 求(p-q)v(pAr)的析取范式和合取范式【解答】(1)求(」p-q)A(p-r)的析取范式:(」pfq)A(p-r)o(「「pvq)A(「pvr) //蕴涵等值式o(pvq)A(「pvr)o(pA「p)v(pAr)v(qA「p)v(qAr) //双重否定律和分配律o(pAr)v(qA「p)v(qAr) //(pA「p)是矛盾式显然(」p-q)A(p-r)的合取范式为(pvq)Ajpvr)。(2)求(p-q)v(pAr)的合取范式:(pfq)v(pAr)o(「pvq)v(pAr)o(^pvqvp)A(^pvqvr)显然(p—q)v(pAr)的析取范式为(lp)vqv(pAr)。注意:一个命题公式的合取范式和析取范式不具有唯一性。【定义1.32】在含有〃个文字的简单合取式中,若每个命题符号和其否定不同时存在,而二者之一必须出现且只出现一次,且第i个命题变元或者否定出现在从左边算起的第i个位置上(若命题变元无下标,则按字典顺序排列),这样的简单合取式称为极小项。极小项是特殊的简单合取式。含〃个文字的极小项中,由于每个命题变元以原形或否定出现且仅出现一次,因此n个命题变元共可产生2n个不同的极小项。若在极小项中,将命题变元的原形对应1,否定对应0,则每个极小项唯一地对应一个二进制数,该二进制数的每一位正是使该极小项的真值为1的真值赋值。35

【例子1.10]两个命题变元p,q生成的4个极小项为:」pA「q对应00,记为m0pA「q对应10,记为m2为m2「pAq对应01,记为m1pAq对应「pAq对应01,记为m1pAq对应11,记「pA「qA「r对应000,记为m0「pA「qAr对应001,记「pAqA「r对应010,记为m2「pAqAr对应011,记为pA「qA「r对应100,记为m4pA「qAr对应101,记为pAqA「r对应110,记为m6pAqAr对应111,记为【定义1.33]若析取范式中的简单合取式都是极小项,则称该析取范式为主析取范式。【定理1.34]任何命题公式存在唯一的主析取范式。求一个公式的主析取范式是:先求该公式的一个析取范式。如果该析取范式的某个简单合取式A中既不含某个命题变元p,也不含它的否定「p,则该简单合取式变为如下形式:(Aap)v(Aa「p)。消除重复出现的命题变元或命题变元的否定,矛盾式及重复出现的极小项,并将每个极小项的命题变元或其否定按下标顺序或字典顺序排列。【例子1.11]求命题公式的主析取范式(1).求—pfq)A(pfr)的主析取范式(1).36(2). 求(p-q)v(pAr)的主析取范式【解答】(1)根据例子1.9知(「pfq)A(p-r)的一个析取范式是(pAr)v(qA「p)v(qz),我们将其中的每个简单合取式展开为含有所有命题变元的极小项的析取:(p^r)展开为(p^qAr)v(pA「qAr) (q^「p)展开为(^pAqAr)v(^pAqA^r)(qAr)展开为(pAqAr)v(「pAqAr)因此(「pfq)A(p-r)的主析取范式为(pAqAr)v(pA「qAr)v(「pAqAr)v(「pAqA「r),按极小项所对应的二进制数的大小重新排列为(「pAqA「r)v(「pAqAr)v(pA「qAr)v(pAqAr)。(2)根据例子1.9知(pfq)v(pAr)的一个析取范式为(「p)vqv(pAr),将其中每个简单合取式展开为含有所有命题变元的极小项的析取:(「p)展开为(「pAqAr)v(「pA「qAr)v(「pAqA」r)v(「pA」qA「r)q展开为(pAqAr)v(「pAqAr)v(pAqA「r)v(「pAqA「r) (pAr)展开为(pAqAr)v(pA「qAr)因此(pfq)v(pAr)的主析取范式为:(「pA「qA「r)v(「pA「qAr)v(「pAqA「r)v(「pAqAr)v(pA「qAr)v(pAqA「r)v(pAqAr)主析取范式也可从命题公式的真值表更容易地得到,对应地,根据命题公式的主析取范式也可容易地构造其真值表、判定其类型(矛盾式、可满足式还是永真式)等。关于极大项、主合取范式等有关内容学生根据教材自学。作业:教材p60的9,10,11,15,17。377.命题演算系统命题演算系统是研究利用命题逻辑公式进行推理的形式系统。这里的推理指的是前提和结论之间的逻辑关系,因此这种形式系统本身不注重前提本身的正确性,而关心的是是否能从前提有效地推出结论,讨论什么是结论的有效证明。前提本身的正确性要在赋予形式系统一定的解释的基础上才能确定,这种解释可以说是形式系统的语义。命题演算系统作为一个形式系统研究如何从公理,通过有限的规则来构造有效的证明,这种证明仅仅是符号的改写,本身没有什么含义。一个形式系统包括符号表、公式、公理及规则,符号表定义形式系统所使用的所有符号,公式是符号表上字符串,公式定义哪些字符串是形式系统所研究的合法对象。公理是构造一切证明的前提,公理本身的正确性在形式系统中不关心,认为是不证自明的公式。当然在构造形式系统的时候,公理的选择是一定的外在依据的。规则是从公理出发构造形式系统中定理的方法。定理就是从公理出发,使用规则能够构造出有效证明的公式,形式系统就是研究能够得到什么定理。【定义1.35]命题演算系统P定义为:P的符号表包括:. 命题变元:小写英文字母并可加下标.联结词:「、T.辅助符号:(,)(园括号)P的公式归纳定义为:.命题变元是公式38. 若A是公式,则(「A)也是公式. 若A和B是公式,则(AfB)也是公式. 所有公式都是通过有限次使用[1]、[2]和[3]得到。P的公理有如下三类:[A1].(Af(BfA))[A2].((Af(BfC))f((AfB)f(AfC))[A3].(((「A)T「B))-(B-A))P的规则只有一条:[M]. 分离规则:由A和(AfB)可得到B□【注解】关于以上定义,需要注意以下几点:在系统P中只使用联结词「和f,这使得系统P比较简单,但也失去了使用另外三个联结词A、▽和》的方便之处,为此可作如下约定,对于P中公式A和B:(AvB)代表((「A)fB) (AaB)代表(「((「A)v([B)))(A»B)代表((AfB)A(BfA))注意,a、▽和》不是系统P的符号,只不过是为了使用方便而弓|入的符号。上述给出的公理是一种模式,其中每一条公理实际上代表了无限多个公式,因为其中的A,B,C是一个符号,实际上可代表任意的公式,例如对于[A2],其中A可代表BfC得到:(((BfC)f(BfC))f(((BfC)fB)f((BfC)fC))注意在使用公式A替换公式B的符号C时,要将公式A替换B中所有的C。同样分离规则也是一个模式。39【定义1.36]命题演算系统P中的证明是由P中公式组成的一个序列:A1,A2,…,An使得对每个i(1V"n),下列两个条件之一成立:. Ai是公理,或者. Ai是由上述序列中Ai之前的某两个公式A广Ak(1<j,k<n)应用分离规则(M)得到。此时A#A2,…,An称为An的一个证明,而An称为P的一个内定理,记为卜An。□【注解】关于以上定义,需要注意以下几点:卜也不是P中的符号,只是用卜An来表明An是一个内定理。所谓的用两个公式Aj,Ak应用分离规则(M)得到,是指{Aj,Ak}={Aj,A,-Ai}或{%A卜}={Ak,A卜fAi}。若AyA2,…,An是An的一个证明,则对每个Ai(1<i<n)都有卜Ai。P的每个公理都是P中的内定理。要证明一个公式A为P的内定理,只要给出A的证明序列即可。【例子1.12】设A,B是P中的公式,证明:HA-B)f(AfA)【证明】. 卜Af(BfA) //公理[A1]. k(Af(BfA))f((AfB)f(AfA)) //公理[A2],其中C用A代替40

. HA-B)”(AfA)⑴和⑵【例子1.13】设A是P中的公式,证明:HA-A)【证明】. 卜AT(BfA)fA)公理[Al]. k(Af((BfA)-A))f((A-(B—A))f(A-A)). 卜((A-(B-A))f(AfA))分离规则(M)及⑴和(2).HA-(B-A)//公理[Al]⑸.Ha-a)〃分离规则(M)及⑶和(4)【定理1.37】设A,B,C是P中的三个公式:.若卜A,且卜AfB,则卜B[2],若HA^B,且卜B-C,则【证明】山就是分离规则。对于⑵,证明如下:.HbfotatbfC))[Al]⑵.Hb-。〃前提.HAf(Bf。)〃分离规则(M)及〃分离规则(M)及////公理[A2]//41

.HAf(BfC))f((A-B)f(AfC))//[A2]//.Ha-b)f(afc)//分离规则.卜(A-B)〃前提⑺.Ha-。//分离规则I以后称此定理的⑵为传递规则(Tr)。【例子1.15]证明:卜(「A)f(AfB)【证明】(1)• 卜([A)f ([A))//[Al]. 卜((「B)-(「A))f(A-B) //[A3]. 卜(「A)-(A-B)//传递规则【例子1.16]证明:[1]•kA.卜A—>(―।―iA)【证明】川的证明如下:. 卜(―।-iA)—>(-iA->―।―।―iA) 〃例子1.1542

[A3](2). 卜[A3](2). 卜(「A"[「A)f(「「A—A)//. 卜(「「A)f(「「A—A)//传递规则. 卜(「「A—(「「A'A))f((「「Ae「A)T」[A-A))〃[A2]⑸.卜(⑸.卜(一।―iA—>―।―iA)—>(―।―iA—>A)//分离规则. 卜(「「A"[A)//例子1.13. 卜(「「A-A)//分离规则[2]的证明如下:. 卜(i11A)—(1A)//[1]. 卜(「「「AeA)—(A"[A)//[A3]. 卜A"[A//分离规则【注解】通过以上例子,我们可发现在构造公式的证明中可使用如下方法:.可灵活地使用公理,公理中的每个符号代表的是无限多的公式,公理中某个符号的所有出现可用某个公式替换。但这与教材p43页的置换规则不同,教材没有为命题逻辑公式的推理建立形式系统,而是根据命题逻辑公式的真值43来讨论推理,因此有所谓的等值公式的置换,而我们这里所定义的形式系统还没有涉及到真值赋值,这里的证明仅仅是符号的改写。建立形式系统的方法更符合计算机的思维方式,因为程序从本质来说也是个形式系统,计算机将输入变换到输出也只是符号的改写,至于程序员所认为的程序功能,是程序员赋予程序的解释,这种解释计算机并不理解。也就是说,对于计算机学科,形式系统的推导和形式系统的含义是分开的,正是这种分离,才使得形式系统的推导可由计算机来机械地完成,而人们又可以赋予形式系统各种各样的解释来完成人们所需要的功能。.可使用分离规则和传递规则来构造证明。.可使用已经证明过的内定理作为前提,这相当于教材p43页的结论弓|入规则。.教材中所讨论的推理是在某种前提下的推理,下面我们在命题演算系统P中来定义这种推理。【定义1.38]设£是P中的一个公式集,称P中的公式序列:A#A2,…,nA为前提£下推出An的一个证明,如果对每个Z(1<"n),下列三个条件之一成立:. Ai是公理,或者. Af£,或者. Ai是由上述序列中Ai之前的某两个公式AjAk(1<j,k<n)应用分离规则(M)得到。此时记为£kAn。44【注解】对于上述定义,我们需要注意以下几点:.£中的公式不一定是P中的公理或内定理,也不一定是有限集合。可以说£是假设的前提,在前提£下的证明实际上是将£中的公式当作“临时公理”的一个证明。.易证:当£=。时,。卜A当且仅当卜A,或者说卜A就是没有前提的证明。.易证:对P中的任意公式A及公式集£和£’,若£匕£,且£'kA,则有£kA。.易证,若Ae£,则有£kA。【例子1.17]证明:{A,Bf(A-。}k(Bf。【证明】.A//前提. Af(BfA)//公理[A1]. (B-A)//分离规则:(1)和(2). (Bf(Af。)//前提. (B

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论