任意命题公式的真值表
命题公式及其真值表

第二节 命题公式及其真值表在上节中,用,,p q r L 表示确定的简单命题。
简单命题又称为命题常项或命题常元。
命题常项有确定的真值。
在数理逻辑中,不仅要研究具体的逻辑关系,还要研究抽象的逻辑关系,因而不仅要有命题常项,还要有命题变项。
称真值可以变化的简单陈述句为命题变项或命题变元,仍然用,,p q r L 表示命题的变项。
命题常项、命题变项及联结词可按下述定义合式的公式。
定义2.1 (1)单个的命题变项(或常项)是合式公式;(2)若A 是合式公式,则(¬A )也是合式公式;(3)若A ,B 是合式公式,则(A ∧B ),(A ∨B ),(A →B ),(A ↔B )也是合式公式;(4)有限次地应用(1)~(3)形成的符号串都是合式公式。
这样定义的合式公式也称为命题公式,简称公式。
单独使用(¬A ),(A ∧B ),(A ∨B ),(A →B ),(A ↔B )时,外层括号可以省去,即可写成¬A ,A ∧B ,A ∨B ,A →B ,A ↔B 。
在定义 2.1.中出现的A ,B L 是用来表示任意的合式公式的。
在以下的论述中出现的A ,B ,C 等也同样是用来表示任意公式的。
定义2.2 设1p ,2p L ,n p 是出现在公式A 中的全部的命题变项,给1p ,2p L ,np 各指定一个真值,称为A 的一个赋值或解释。
若指定的一组真值使A 的真值为1,则称这组真值为A 的成真赋值(或成真解释)。
若指定的一组真值使A 的真值为0,则称这组真值为A 的成假赋值(或成假解释)。
本书中对含n 个命题变项的公式的赋值形式做如下规定:(1)设A 中含的命题变项为1p ,2p L ,n p ,赋值12n a a a L (i a 为0或1)是指11p a =,22p a =,L ,n n p a =。
(2)若出现在A 中的命题变项为p ,q ,r ,L ,赋值12n a a a L 是指1p a =,2q a =,L ,即按字典顺序赋值。
命题、联结词、命题公式与真值表

1、一些基本概念 逻辑、命题、真值
2、联结词 3、命题公式 4、真值表
问题?
一、命题的定义
命题P——不关心其具体涵义,只关心其值的 真值
命题变元——定义域:真、假 命题常元——T和F 命题公式(也称命题,合式公式)——含命题变元
的断言,由以下规则生成: (1)单个原子公式是命题。 (2)若A、B是命题公式,┐A、A∧B、A∨B、
pq
qp (qp) q (qp) qp
00
1
0
1
01
0
0
1
10
1
0
1
11
Hale Waihona Puke 111回顾一下:五个联结词真值表
否定
等价(双条件)
合取
析取
蕴涵(条件)
几个相关概念
1、合式公式的层次:
0层
1层
2层
3层
pq
qp (qp) q (qp) qp
00
1
0
1
01
0
0
1
10
1
0
1
11
1
1
1
几个相关概念
A(BC) (D E)
1 01
10
p
2、什么情况下,下面论述为真:
q
说小王不会唱歌或小李不会跳舞是正确的,而
说如果小王会唱歌,小李会跳舞是不正确的。
(p q) (pq)
综合问题1
Key:
A→B、AB也是命题公式。 (3) 有限步应用条款(1)(2)生成的公式。
例:下列符号串都是命题公式
下列符号串是否为命题公式?
命题、联结词、命题公式与真值表
命题公式真值表

说明:
(1)命题变元是没有真假值的,只有当命题变元用 确定的命题代入时,才得到一个命题,命题的真值 依赖于代换变元的那些命题的真值;
1-3 命题公式与翻译
(2) 不是所有由命题变元 ,常元 ,联结词和括号组成的字符串 都能成为命题公式.例如, P , P (Q ) 等不是命题公式.
定义 1-3.1 命题演算的合式公式,规定为: (1)单个命题变元本身是一个合式公式; (2)如果 A 是合式公式,那么 A 是合式公式; (3)如果 A 和 B 是合式公式,那么
1-3 命题公式与翻译
2、命题的翻译
练习 将下列命题符号化: (1)她既聪明又用功. (2)他虽聪明但不用功. (3)虽然这次语文考试的题目很难,但是王丽还是取得了好成绩. (4)张三或李四都可以做这件事. (5)一公安人员审查一起案件,事实如下,请将案件事实符 号化: 张三或李四盗窃了机房的一台电脑,若是张三所为,则作案 时间不能发生在午夜前;若李四的证词正确,则午夜时机房 的灯未灭; 若李四证词不正确,则作案时间发在午夜前; 午夜时机房的灯全灭了.
分配律
P (Q R) ( P Q) ( P R)
吸收律
P ( P Q) P , P ( P Q) P
1-4 真值表与等价公式
4.基本等价公式
德·摩根律 同一律 零律 否定律 (互补律) 条件式转化律 双条件转化律
( P Q) P Q , ( P Q) P Q
1-3 命题公式与翻译
1、命题公式(合式公式)
定义 1 由命题变元、常元、联结词、括号以规定的格式联结 起来的字符串称为命题公式,也称合式公式.命题公式中的命 题变元称为命题公式的分量.
例如,若 P 和 Q 是命题变元, 则下面式子均是命题公式
命题公式

• (III)有限次地应用(I)、(II)形成的符号串是
命题公式(简称公式)。
• 注:该定义为递归形式;
公式即表示命题的符号串。
例子
• 例2.2.1
(P Q) (P Q R) 是否为命题公式?
• 例2.2.2 判断下列符号是否为命题公式. • (1) (P Q) (Q S ) • (2) ((R Q) P) (Q P) • ( 3) ( R P ) • (4) P ( R )
否则称这组值为成假指派.
• 说明:n个命题变元的公式,共有 2n 个指派. • 定义2.2.3 将公式的在所有指派下所取的真值列成
表,称为真值表.
• 真值表构造步骤如下: • (1)所有命题变元,列出 2n 组指派,从0...0开始,按二
进制,直到1...1为止.
• (2)计算出各指派下各层次的真值,最后计算出公式的
二、命题的符号化
• 命题符号化时要注意: • (1)善于确定简单命题, • 如“我和小王是同学”是一个简单命题. • (2)辨析自然语言中的联结词 • 如:狗急跳墙,应理解为:狗急了,:狗才跳墙 • (3)注意自然语言常有歧义性
例子
• 例2.2.4
不去了. 如果周日天气好,我们就去镜泊湖旅游,否则就
真值,写在最后一列.
• A与B真值表是否相同,看真值表最后一列,而不考虑中
间过程.
• 真值表的构造请看例题.
( P Q) (P Q) (P Q) R ( P Q) Q R
P Q (P Q) ( P Q) ( P Q) (P Q)
0 0 1 1 0 1 0 1 1 1 0 1 1 1 0 1 1 1 1 1
用真值表法判断命题公式

用真值表法判断命题公式命题公式是数理逻辑中的一个重要概念。
在推理和证明中,判断一个命题公式的真假性是非常重要的。
其中,真值表法是一种常用的方法。
本文将介绍真值表法的基本原理和应用。
一、命题公式的基本概念命题是一个陈述句,它要么是真的,要么是假的。
例如,“今天下雨了”、“1+1=2”、“苹果是红色的”等都是命题。
在数理逻辑中,命题通常用字母p、q、r等来表示。
命题公式是由命题符号和逻辑符号组成的符号串。
命题符号表示命题,逻辑符号表示命题之间的关系。
逻辑符号包括非()、合取(∧)、析取(∨)、条件(→)、双条件()等。
例如,p∧q表示p和q都为真时,整个命题为真。
二、真值表法的基本原理真值表法是用来判断命题公式真假性的一种方法。
它的基本原理是列出所有可能的命题符号取值组合,并按照逻辑符号的运算规则计算出整个命题的真值。
真值表的每一行对应一个命题符号取值组合,最后一列为整个命题的真值。
例如,对于命题公式p∨q,可以列出如下的真值表:p q p∨q----------------T T TT F TF T TF F F其中,T表示真,F表示假。
在该真值表中,第一列和第二列分别代表p和q的取值,第三列代表整个命题的真值。
在第一行中,p 和q都为真,所以整个命题为真。
三、真值表法的应用真值表法可以用来判断任意命题公式的真假性。
下面以两个例子来说明其应用。
例一:判断(p→q)∧(q→p)是否为重言式。
首先,列出该命题公式的真值表:p q p q p→q q→p (p→q)∧(q→p)--------------------------------------------------------T T F F T T TT F F T F F FF T T F T T TF F T T T T T在该真值表中,最后一列的值都为真。
因此,该命题公式是重言式。
例二:判断(p∨q)→(p∧q)是否为永假式。
首先,列出该命题公式的真值表:p q p∨q p∧q (p∨q)→(p∧q)------------------------------------T T T T TT F T F FF T T F FF F F F T在该真值表中,最后一列的值都不为假。
命题、联结词、命题公式与真值表

A(BC) (D E)
1 01
10
p
2、什么情况下,下面论述为真:
q
说小王不会唱歌或小李不会跳舞是正确的,而
说如果小王会唱歌,小李会跳舞是不正确的。
(p q) (pq)
综合问题1
Key:
2、赋值、成真(假)赋值、指派
pq
qp
00
1
赋值
01
0
10
1
11
1
成真赋值
指派
(qp) q (qp) qp
0
1
0
1
0
1
1
1
练习1:求命题公式的真值表
1、P∧Q)→R
2、┐((P∨Q)∧P)
3、Q∧(P→Q)→P
4、设p,q的真值为0;r,s的真值为1,求下列
命题公式的真值
(1)P∨(Q∧R)
A→B、AB也是命题公式。 (3) 有限步应用条款(1)(2)生成的公式。
例:下列符号串都是命题公式
下列符号串是否为命题公式?
命题、联结词、命题公式与真值表
1、一些基本概念 逻辑、命题、真值
2、联结词 3、命题公式 4、真值表
一、真值表
真值表: 公式A在所有赋值下的取值情况列成的表
例 给出公式的真值表: A= (qp) qp 的真值 表
pq
qp (qp) q (qp) qp
00
1
0
1
01
0
0
1
10
1
0
1
11
1
1
1
回顾一下:五个联结词真值表
否定
等价(双条件)
合取
析取
蕴涵(条件)
几个相关概念
求给定命题公式的真值表并根据真值表求公式的主范式

求给定命题公式的真值表并根据真值表求公式的主范式(求给定命题公式的真值表并根据真值表求公式的主范式)专业网络工程班级 1202班学号 12407442姓名张敏慧2013.12.14目录一.实验目的 .......................................................3二.实验内容 (3)求任意一个命题公式的真值表 ..................................................................... ..... 3 三.实验环境 (3)四. 实验原理和实现过程(算法描述) (3)1.实验原理 ..................................................................... ...................................... 3 2.实验流程图 ..................................................................... .................................. 5 五.实验代码 (6)六. 实验结果 (14)七. 实验总结 (19)- 1 -一.实验目的本实验课程是网络工程专业学生的一门专业基础课程,通过实验,帮助学生更好地掌握计算机科学技术常用的离散数学中的概念、性质和运算;通过实验提高学生编写实验报告、总结实验结果的能力;使学生具备程序设计的思想,能够独立完成简单的算法设计和分析。
熟悉掌握命题逻辑中的真值表、主范式等,进一步能用它们来解决实际问题。
二.实验内容求任意一个命题公式的真值表,并根据真值表求主范式详细说明:求任意一个命题公式的真值表本实验要求大家利用C/C,,语言,实现任意输入公式的真值表计算。
一般我们将公式中的命题变元放在真值表的左边,将公式的结果放在真值表的右边。
真值表和逻辑等价

例 证明 证明 列出真值表如下表所示。
P Q P Q Q P (P Q) (Q P) P Q
FF T
T
T
T
FT T
F
F
F
TF F
T
F
F
TT T
T
T
T
由表知,P Q (P Q) (Q P) 。
下面列出一些常用的逻辑等价公式,可用真值
表验证它。
1)对合律 2)幂等律 3)结合律
(德摩根律)
(P Q) (Q P)
PQ
(对合律) (等值公式)
定义9 设A是命题公式,且A中仅有联结词 ,,
在A中将 ,,T , F 分别换成,, F,T 后所的
得命题公式 A*称为A的对偶式。
对偶原理:设A,B为仅有命题变元和联结词
,, 构成的命题公式,A* 为A的对偶式,B*
为B的对偶式;如果 A B ,则 A* B* 。
的真值总是真,称这样的命题公式为永真式。记 作T,如上例中 (P Q) P 就是永真式。
如果命题公式在分量不同的指派下,其对应 的真值总是假,称这样的命题公式为永假式。 定义8 在真值表中,两个命题公式A和B,在分量 的不同指派下,其真值总是相同的,则称这两个 命题公式A和B是逻辑等价的,记作 A B 。
4)交换律 5)分配律
6)吸收律
P P P P P, P P P
(P Q) R P (Q R) P(Q) R P (Q R) PQ QP PQQP
P (Q R) (P Q) (P R) P (Q R) (P Q) (P R) P (P Q) P
数学
每处)而得到命题公式D,则C D 。
例 证明 (P Q) PQ
证明 因为 P Q (P Q) (Q P) (等值公式)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验报告
实验名称:任意命题公式的真值表
实验目的与要求:通过实验,帮助学生更好地掌握计算机科学技术常用的离散数学中的概念、性质和运算,包括联结词、真值表、运算的优先级等,提高学生编写实验报告、总结实验结果的能力,培养学生的逻辑思维能力和算法设计的思想,能够独立完成简单的算法设计和分析,进一步用它们来解决实际问题,帮助学生学习掌握C/C++语言程序设计的基本方法和各种调试手段,使学生具备程序设计的能力。
实验内容提要:求任意一个命题公式的真值表
实验步骤:(一)、关于命题公式的形式和运算符(即联结词)的运算
首先根据离散数学的相关知识,命题公式由命题变元和运算符(即联结词)组成,命题变元用大写字母英文表示(本次试验没有定义命题常元T和F,即T、F都表示命题变元),每个命题变元都有两种真值指派0和1,对应于一种真值指派,命题公式有一个真值,由所有可能的指派和命题公式相应的真值按照一定的规范构成的表格称为真值表。
目前离散数学里用到的包括扩充联结词总共有九种,即析取(或)、合取(与)、非、蕴含、等值、与非、或非、异或、蕴含否定,常用的为前五种,其中除了非运算为一元运算以外,其它四种为二元运算。
所以本次实验设计时只定义了前五种运算符,同时用“/”表示非,用“*”表示合取,用“+”表示析取,用“>”表示蕴含,用“:”表示等值,且这五种运算符的优先级依次降低,如果需用括号改变运算优先级,则用小括号()改变。
以下为上述五种运算符运算时的一般真值表,用P和Q表示命题变元:1.非,用“/”表示
2.合取(与),用“*”表示
3.析取(或),用“+”表示
4.蕴含,用“>”表示
5.等值,用“:”表示
(二)、命题公式真值的计算
对于人来说,计算数学表达式时习惯于中缀表达式,例如a*b+c,a*(b+c)等等,而对于计算机来说,计算a*b+c还好,计算a*(b+c)则困难,因为括号的作用改变了运算的顺序,让计算机识别括号而改变计算顺序显得麻烦。
经理论和实践研究,用一种称之为后缀表达式(逆波兰式)的公式形式能让计算机更容易计算表达式的真值。
例如上面的a*(b+c),其后缀表达式为abc+*,计算时从左边开始寻找运算符,然后按照运算符的运算规则将与其相邻的前面的一个(非运算时为一个)或两个(其它四种运算为两个)操作数运算,运算结果取代原来的运算符和操作数的位置,然后重新从左边开始寻找运算符,开始下一次计算,比如上式,从左边开始寻找运算符,先找到+,则计算b+c,结果用d表示,这时后缀表达式变为ad*,又重新开始从左边开始寻找运算符,找到*,则计算a*d,
运算结果保存在原来ad*所占的位置,即a位,也就是第一位。
实验结果与结论:(1)、非运算
(2)、与运算
(3)、或运算
(4)、蕴含
(5)、等值
(6)综合公式
写这个程序花了不少时间,而且时间相对集中,除了上课外,在电脑前都是在做这个,连续做了几天。
刚开始时并没有完全按照软件设计的步骤去写,而是知道总体方框后,一个模块一个模块去求解,至于每个模块怎么写,则是在写的过程中逐步建立和完善的。
有些知识没有学到,比如如何求逆波兰式,只得借书回来看,上网找到的资料不够详细或者几乎没解释,难以理解。
当然了,程序是自己写的,自己看得懂就好多了,别人又不一定要看,所以我也没加多少注释。
求得逆波兰式后,不知自己怎么想的,好像知道怎么计算它的值,看书之后真是那样求解的,突然间有种莫名的喜悦。
刚开始也没有实现蕴含和等值的功能,因为对与、或、非更熟悉,所以只处理了这部分,实现这部分的功能后,才把蕴含和等值的功能加上去,这时就简单得多了,只是稍稍补充和改动就可以了。
而主析取范式和主合取范式也是这样的,刚开始并没有求这个部分,只是在最后时才加上去的。
只不过实现了前面的要求,后面的就显得简单多了。
本程序有个缺点就是,没有用动态分配内存的方法,只是定义了一般够用的数组容量,容量为100个字符,这样的话造成硬件资源的浪费,灵活性不够。
这次试验让我学到了一些新知识,也让我认识到自己在编程方面的一些不足。
以后继续努力!
成绩评定:
实验日期:
指导教师签名:。