第五部分 一阶逻辑等值演算与推理

2023-12-24 15:15

本文主要是介绍第五部分 一阶逻辑等值演算与推理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

基本等值式

例1 将下面命题用两种形式符号化, 并证明两者等值:

例2 将公式化成等值的不含既有约束出现、又有自由出现

例3 设个体域D={a,b,c}, 消去下述公式中的量词:

例4 求下列公式的前束范式

推理的形式结构

定义5.3 自然推理系统

构造推理证明的实例 

例5 在自然推理系统 中构造下面推理的证明, 取个体域R:

 例6 在自然推理系统 中,构造推理的证明

基本要求 

定义 5.1 A , B 是两个谓词公式 , 如果 A B 是永真式 , 则称 A B 等值 , 记作 A B , 并称 A B 等值式
基本等值式
第一组 命题逻辑中 16 组基本等值式的代换实例
例如
¬¬∀ xF ( x ) ⇔∀ xF ( x ),
xF ( x ) →∃ yG ( y ) ⇔ ¬∀ xF ( x ) ∨∃ yG ( y )
第二组
(1) 消去量词等值式
D ={ a 1 , a 2 , … , a n }
xA ( x ) A ( a 1 ) A ( a 2 ) A ( a n )
xA ( x ) A ( a 1 ) A ( a 2 ) A ( a n )
(2) 量词否定等值式
¬∀ xA ( x ) ⇔ ∃ x ¬ A ( x )
¬∃ xA ( x ) ⇔ ∀ x ¬ A ( x )
(3) 量词辖域收缩与扩张等值式 .
A ( x ) 是含 x 自由出现的公式, B 中不含 x 的自由出现
关于全称量词的:
x ( A ( x ) B ) ⇔ ∀ xA ( x ) B
x ( A ( x ) B ) ⇔ ∀ xA ( x ) B
x ( A ( x ) B ) ⇔ ∃ xA ( x ) B
x ( B A ( x )) B →∀ xA ( x )
关于存在量词的:
x ( A ( x ) B ) ⇔ ∃ xA ( x ) B
x ( A ( x ) B ) ⇔ ∃ xA ( x ) B
x ( A ( x ) B ) ⇔ ∀ xA ( x ) B
x ( B A ( x )) B →∃ xA ( x )
(4) 量词分配等值式
x ( A ( x ) B ( x )) ⇔ ∀ xA ( x ) ∧∀ xB ( x )
x ( A ( x ) B ( x )) ⇔ ∃ xA ( x ) ∨∃ xB ( x )
注意: 无分配律
1. 置换规则
Φ ( A ) 是含 A 的公式 , 那么 , A B , Φ ( A ) Φ ( B ).
2. 换名规则
A 为一公式,将 A 中某量词辖域中个体变项的所有约束 出现及相应的指导变元换成该量词辖域中未曾出现过的个 体变项符号,其余部分不变,设所得公式为 A ,则 A ′⇔ A .
3. 代替规则
A 为一公式,将 A 中某个个体变项的所有自由出现用 A 未曾出现过的个体变项符号代替,其余部分不变,设所得 公式为 A ,则 A ′⇔ A

1 将下面命题用两种形式符号化, 并证明两者等值:
(1) 没有不犯错误的人
解 令 F ( x ) x 是人, G ( x ) x 犯错误 .
¬∃ x ( F ( x ) ∧¬ G ( x )) x ( F ( x ) G ( x ))
¬∃ x ( F ( x ) ∧¬ G ( x ))
⇔ ∀ x ¬ ( F ( x ) ∧¬ G ( x))         量词否定等值式
⇔ ∀ x ( ¬ F ( x ) G ( x))         置换规则
⇔ ∀ x ( F ( x ) G ( x))         置换

(2) 不是所有的人都爱看电影
解 令 F ( x ) x 是人, G ( x ) :爱看电影 .
¬∀ x ( F ( x ) G ( x )) x ( F ( x ) ∧¬ G ( x ))
¬∀ x ( F ( x ) G ( x ))
⇔ ∃ x ¬ ( F ( x ) G ( x))         量词否定等值式
⇔ ∃ x ¬ ( ¬ F ( x ) G ( x))         置换规则
⇔ ∃ x ( F ( x ) ∧¬ G (x))         置换规则
2 将公式化成等值的不含既有约束出现、又有自由出现
的个体变项 : x ( F ( x , y , z ) →∃ yG ( x , y , z ))
x ( F ( x,y,z ) →∃ yG ( x,y,z ))
⇔ ∀ x ( F ( x,y,z ) →∃ tG ( x,t,z))         换名规则
⇔ ∀ x t ( F ( x,y,z ) G ( x,t,z))         辖域扩张等值式
或者
x ( F ( x,y,z ) →∃ yG ( x,y,z ))
⇔ ∀ x ( F ( x,u,z ) →∃ yG ( x,y,z))         代替规则
⇔ ∀ x y ( F ( x,u,z ) G ( x,y,z))         辖域扩张等值式
这两个例子很好的解释了换名规则和代替规则
3 设个体域D={a,b,c}, 消去下述公式中的量词:
(1) x y ( F ( x ) G ( y ))
x y ( F ( x ) G ( y ))
( y ( F ( a ) G ( y ))) ( y ( F ( b ) G ( y ))) ( y ( F ( c ) G ( y )))
(( F ( a ) G ( a )) ( F ( a ) G ( b )) ( F ( a ) G ( c ))) (( F ( b ) G ( a )) ( F ( b ) G ( b )) ( F ( b ) G ( c ))) (( F ( c ) G ( a )) ( F ( c ) G ( b )) ( F ( c ) G ( c )))
解法二
x y ( F ( x ) G ( y ))
⇔ ∀ x ( F ( x ) →∃ yG ( y )) 辖域缩小等值式
⇔ ∀ x ( F ( x ) G ( a ) G ( b ) G ( c ))
( F ( a ) G ( a ) G ( b ) G ( c )) ( F ( b ) G ( a ) G ( b ) G ( c )) ( F ( c ) G ( a ) G ( b ) G ( c ))
(2) x yF ( x,y )
x yF ( x,y )
⇔ ∃ x ( F ( x,a ) F ( x , b ) F ( x , c ))
( F ( a,a ) F ( a , b ) F ( a , c )) ( F ( b,a ) F ( b , b ) F ( b , c )) ( F ( c,a ) F ( c , b ) F ( c , c ))
定义 5.2 A 为一个一阶逻辑公式,若 A 具有如下形式 Q 1 x 1 Q 2 x 2 Q k x k B 则称 A 前束范式 ,其中 Q i (1 i k ) B 为不含量词 的公式 .
例如
x ¬ ( F ( x ) G ( x ))
x y ( F ( x ) ( G ( y ) H ( x , y ))) 是前束范式
¬∃ x ( F ( x ) G ( x ))
x ( F ( x ) →∃ y ( G ( y ) H ( x , y ))) 不是前束范式,
定理 5.1 (前束范式存在定理)
一阶逻辑中的任何公式都存在与之等值的前束范式
4 求下列公式的前束范式
(1) ¬∃ x ( M ( x ) F ( x ))
¬∃ x ( M ( x ) F ( x ))
⇔ ∀ x ( ¬ M ( x ) ∨¬ F ( x )) (量词否定等值式)
⇔ ∀ x ( M ( x ) →¬ F ( x ))
后两步结果都是前束范式,说明公式的前束范式不唯一

(2) xF ( x ) ∧¬∃ xG ( x )
xF ( x ) ∧¬∃ xG ( x )
⇔ ∀ xF ( x ) ∧∀ x ¬ G ( x ) 量词否定等值式
⇔ ∀ x ( F ( x ) ∧¬ G ( x )) 量词分配等值式
xF ( x ) ∧¬∃ xG ( x )
⇔ ∀ xF ( x ) ∧∀ x ¬ G ( x ) 量词否定等值式
⇔ ∀ xF ( x ) ∧∀ y ¬ G ( y ) 换名规则
⇔ ∀ x y ( F ( x ) ∧¬ G ( y )) 辖域收缩扩张规则
(3) xF ( x ) →∃ y ( G ( x , y ) ∧¬ H ( y ))
xF ( x ) →∃ y ( G ( x , y ) ∧¬ H ( y ))
⇔ ∀ zF ( z ) →∃ y ( G ( x , y ) ∧¬ H ( y )) 换名规则
⇔ ∃ z y ( F ( z ) ( G ( x , y ) ∧¬ H ( y ))) 辖域收缩扩张规则
⇔ ∀ xF ( x ) →∃ y ( G ( z , y ) ∧¬ H ( y )) 代替规则
⇔ ∃ x y ( F ( x ) ( G ( z , y ) ∧¬ H ( y )))
推理的形式结构
1. A 1 A 2 ∧…∧ A k B
若次式是永真式 , 则称推理正确 , 记作 A 1 A 2 ∧…∧ A k B
2. 前提 : A 1 , A 2 , , A k
结论 : B
推理定理 : 永真式的蕴涵式
第一组 命题逻辑推理定理的代换实例
, xF ( x ) ∧∃ yG ( y ) ⇒ ∀ xF ( x )
第二组 基本等值式生成的推理定理
, xF ( x ) ⇒¬¬∀ xF ( x ), ¬¬∀ xF ( x ) ⇒∀ xF ( x )
¬∀ xF ( x ) ⇒∃ x ¬ F ( x ), x ¬ F ( x ) ⇒ ¬∀ xF ( x )
第三组 其他常用推理定律
(1) xA ( x ) ∨∀ xB ( x ) ⇒ ∀ x ( A ( x ) B ( x ))
(2) x ( A ( x ) B ( x )) ⇒∃ xA ( x ) ∧∃ xB ( x )
(3) x ( A ( x ) B ( x )) ⇒ ∀ xA ( x ) →∀ xB ( x )
(4) x ( A ( x ) B ( x )) ⇒ ∃ xA ( x ) →∃ xB ( x )
1. 全称量词消去规则 ( -)
xA ( x)或∀ xA ( x )
———    ———
A ( y)      ∴ A (c )
其中 x , y 是个体变项符号 , c 是个体常项符号 , 且在 A x 不在 y y 的辖域内自由出现
2. 全称量词引入规则 ( +)
    A( x )
————
∴∀ xA ( x )
其中 x 是个体变项符号 , 且不在前提的任何公式中自由出现
3. 存在量词消去规则 ( -)
 A( x ) B
—————
∴∃ xA ( x ) B
其中 x 是个体变项符号 , 且不在前提的任何公式和 B 中自由 出现
4. 存在量词引入消去规则 ( +)
A(y)          或      BA(y)
————         —————
∴∃ xA (x)         ∴B →∃ xA ( x )
A(c)          或      BA(c)
————         —————
∴∃ xA (x)         ∴B →∃ xA ( x )

其中 x , y 是个体变项符号 , c 是个体常项符号 , 且在 A y c 不在 x x 的辖域内自由出现 .
定义5.3 自然推理系统
推理规则 :
(1) 前提引入规则
(2) 结论引入规则
(3) 置换规则
(4) 假言推理规则
(5) 附加规则
(6) 化简规则
(7) 拒取式规则
(8) 假言三段论规则
(9) 析取三段论规则
(10) 构造性二难推理规则
(11) 合取引入规则
(12) - 规则
(13) + 规则
(14) - 规则
(15) + 规则
构造推理证明的实例 
例5 在自然推理系统 中构造下面推理的证明, 取个体域R:
不存在能表示成分数的无理数 . 有理数都能表示成分数 .
所以 , 有理数都不是无理数 .
F ( x ): x 是无理数 , G ( x ): x 是有理数 , H ( x ): x 能表示成分数 .
前提 : ¬∃ x ( F ( x ) H ( x )), x ( G ( x ) H ( x ))
结论 : x ( G ( x ) →¬ F ( x ))
证明 :
¬∃ x ( F ( x ) H ( x))         前提引入
x ( ¬ F ( x ) ∨¬ H (x))         ①置换规则
x ( F ( x ) →¬ H (x))         ②置换规则
F ( x ) →¬ H ( x)         ③ ∀-
x ( G ( x ) H ( x))         前提引入
G ( x ) H ( x)         ⑤ -
H ( x ) →¬ F (x)         ④置换规则
G ( x ) →¬ F ( x)         ⑥⑦假言三段论
x ( G ( x ) →¬ F ( x))         ⑧ +
要特别注意使用 - + - + 规则的条件
例6 在自然推理系统 中,构造推理的证明

人都喜欢吃蔬菜.但不是所有的人都喜欢吃鱼.所以, 在喜欢吃蔬菜而不喜欢吃鱼的人

F ( x ): x 为人, G ( x ): x 喜欢吃蔬菜, H ( x ): x 喜欢吃鱼
前提: x ( F ( x ) G ( x )), ¬∀ x ( F ( x ) H ( x ))
结论: x ( F ( x ) G ( x ) ∧¬ H ( x ))
证明:用归谬法
(1) ¬∃ x ( F ( x ) G ( x ) ∧¬ H ( x))         结论否定引入
(2) x ¬ ( F ( x ) G ( x ) ∧¬ H ( x))         (1)置换规则
(3) ¬ ( F ( y ) G ( y ) ∧¬ H ( y))         (2)∀−
(4) G ( y ) → ¬ F ( y ) H ( y)         (3)置换规则
(5) x ( F ( x ) G ( x))         前提引入
(6) F ( y ) G ( y)         (5)∀−
(7) F ( y ) → ¬ F ( y ) H ( y)         (4)(6)假言三段论
(8) F ( y ) H ( y)         (7)置换规则
(9) y ( F ( y ) H ( y))         (8)∀ +
(10) x ( F ( x ) H ( x))         (9)置换规则
(11) ¬∀ x ( F ( x ) H ( x))         前提引入
(12) 0         (10)(11)合取
注意:
如果不明白什么是置换规则可以去看第二部分命题逻辑等值演算,简单来说置换规则就是基本等值式
基本要求 
深刻理解并牢记一阶逻辑中的重要等值式 , 并能准确而熟 练地应用它们
熟练正确地使用置换规则、换名规则、代替规则
熟练地求出给定公式的前束范式
深刻理解自然推理系统 N L 的定义,牢记 N L 中的各条推理 规则,特别是注意使用 ∀− + + ∃− 4 条推理规则的 条件
能正确地给出有效推理的证明

第五部分与第三部分命题逻辑的推理理论比较相似 ,都是对推理定律的使用

这篇关于第五部分 一阶逻辑等值演算与推理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/532207

相关文章

poj 2976 分数规划二分贪心(部分对总体的贡献度) poj 3111

poj 2976: 题意: 在n场考试中,每场考试共有b题,答对的题目有a题。 允许去掉k场考试,求能达到的最高正确率是多少。 解析: 假设已知准确率为x,则每场考试对于准确率的贡献值为: a - b * x,将贡献值大的排序排在前面舍弃掉后k个。 然后二分x就行了。 代码: #include <iostream>#include <cstdio>#incl

笔记整理—内核!启动!—kernel部分(2)从汇编阶段到start_kernel

kernel起始与ENTRY(stext),和uboot一样,都是从汇编阶段开始的,因为对于kernel而言,还没进行栈的维护,所以无法使用c语言。_HEAD定义了后面代码属于段名为.head .text的段。         内核起始部分代码被解压代码调用,前面关于uboot的文章中有提到过(eg:zImage)。uboot启动是无条件的,只要代码的位置对,上电就工作,kern

项目实战系列三: 家居购项目 第四部分

购物车 🌳购物车🍆显示购物车🍆更改商品数量🍆清空购物车&&删除商品 🌳生成订单 🌳购物车 需求分析 1.会员登陆后, 可以添加家居到购物车 2.完成购物车的设计和实现 3.每添加一个家居,购物车的数量+1, 并显示 程序框架图 1.新建src/com/zzw/furns/entity/CartItem.java, CartItem-家居项模型 /***

逻辑表达式,最小项

目录 得到此图的逻辑电路 1.画出它的真值表 2.根据真值表写出逻辑式 3.画逻辑图 逻辑函数的表示 逻辑表达式 最小项 定义 基本性质 最小项编号 最小项表达式   得到此图的逻辑电路 1.画出它的真值表 这是同或的逻辑式。 2.根据真值表写出逻辑式   3.画逻辑图   有两种画法,1是根据运算优先级非>与>或得到,第二种是采

码蹄集部分题目(2024OJ赛9.4-9.8;线段树+树状数组)

1🐋🐋配对最小值(王者;树状数组) 时间限制:1秒 占用内存:64M 🐟题目思路 MT3065 配对最小值_哔哩哔哩_bilibili 🐟代码 #include<bits/stdc++.h> using namespace std;const int N=1e5+7;int a[N],b[N],c[N],n,q;struct QUERY{int l,r,id;}que

UMI复现代码运行逻辑全流程(一)——eval_real.py(尚在更新)

一、文件夹功能解析 全文件夹如下 其中,核心文件作用为: diffusion_policy:扩散策略核心文件夹,包含了众多模型及基础库 example:标定及配置文件 scripts/scripts_real:测试脚本文件,区别在于前者倾向于单体运行,后者为整体运行 scripts_slam_pipeline:orb_slam3运行全部文件 umi:核心交互文件夹,作用在于构建真

关于断言的部分用法

1、带变量的断言  systemVerilog assertion 中variable delay的使用,##[variable],带变量的延时(可变延时)_assertion中的延时-CSDN博客 2、until 的使用 systemVerilog assertion 中until的使用_verilog until-CSDN博客 3、throughout的使用   常用于断言和假设中的

PyInstaller问题解决 onnxruntime-gpu 使用GPU和CUDA加速模型推理

前言 在模型推理时,需要使用GPU加速,相关的CUDA和CUDNN安装好后,通过onnxruntime-gpu实现。 直接运行python程序是正常使用GPU的,如果使用PyInstaller将.py文件打包为.exe,发现只能使用CPU推理了。 本文分析这个问题和提供解决方案,供大家参考。 问题分析——找不到ONNX Runtime GPU 动态库 首先直接运行python程序

牛客小白月赛100部分题解

比赛地址:牛客小白月赛100_ACM/NOI/CSP/CCPC/ICPC算法编程高难度练习赛_牛客竞赛OJ A.ACM中的A题 #include<bits/stdc++.h>using namespace std;#define ll long long#define ull = unsigned long longvoid solve() {ll a,b,c;cin>>a>>b>

VB和51单片机串口通信讲解(只针对VB部分)

标记:该篇文章全部搬自如下网址:http://www.crystalradio.cn/thread-321839-1-1.html,谢谢啦            里面关于中文接收的部分,大家可以好好学习下,题主也在研究中................... Commport;设置或返回串口号。 SettingS:以字符串的形式设置或返回串口通信参数。 Portopen:设置或返回串口