数理逻辑—范式

简介: 数理逻辑—范式

正文


简单析取式与简单合取式


定义:

仅由有限个命题变项或其否定构成的析取式称为简单析取式。仅由有限个命题变项或其否定构成的合取式称为简单合取式


例如:

p、¬ p、p ∨ q 、p ∨ ¬ q 、¬ p ∨ q ∨ rr等都是简单析取式;

p 、¬ p 、p ∧ q、p ∧ ¬ q、¬ p ∧ q ∧ r 等都是简单合取式。


由以上定义可以得到两点结论:

  1. 一个简单析取式重言式,当且仅当它同时含有一个命题变项及其否定;
  2. 一个简单合取式矛盾式,当且仅当它同时含有一个命题变项及其否定。



例如:

简单析取式p ∨ ¬ q ∨ q 是重言式;简单合取式p ∧ ¬ q ∧ q 是矛盾式。



析取范式与合取范式


定义:

仅由有限个简单合取式构成的析取式称为析取范式;仅由有限个简单析取式构成的合取式称为合取范式


例如:

p∨q∨¬r、¬ p ∨ ¬ q ∨ r、( p 1 ∧ ¬ q 1 ) ∨ ( ¬ p 1 ∧ p 2 ) ∨ ( p 1 ∧ p 2 ∧ p 3 ) 是析取范式;

p ∧ q ∧ ¬ r 、¬ p ∧ ¬ q ∧ r 、( p 1 ∨ ¬ q 1 ) ∧ ( ¬ p 1 ∨ p 2 ) ∧ ( p 1 ∨ p 2 ∨ p 3 )是合取范式;


由以上定义可以得到两点结论:


一个析取范式是矛盾式,当且仅当它的每个简单合取式都是矛盾式;

一个合取范式是重言式,当且仅当它的每个简单析取式都是重言式。


范式存在定理与范式求解


范式存在定理:

任一命题公式都存在着不唯一的与之等值的析取范式和合取范式。


根据范式存在定理,可知任一命题公式都能通过等值演算求出与之等值的析取范式与合取范式。步骤如下:


消去→ 和↔:

p → q ;⟺  ¬ p ∨ q

p ↔ q ⟺  ( ¬ p ∨ q ) ∧ ( p ∨ ¬ q )


否定号的消去或内移:

¬¬p⟺q¬ ( p ∧ q )

¬ p ∨ ¬ q⟺¬p∨¬q

¬ ( p ∨ q ) ⟺¬ p ∧ ¬ q


使用分配率。对析取范式应使用∧对∨的分配率;对合取范式应使用∨对∧的分配率。

举例:求( ( p ∨ q ) → r ) → p的合取范式和析取范式

解:

0000000000000000.png


主析取范式与主合取范式


定义:

如果公式A 的析取范式中的简单合取式全是极小项,则称该析取范式为主析取范式;如果公式A 的合取范式中的简单析取式全是极大项,则称该合取范式为主合取范式。


极小项与极大项


极小项定义:

在有n 个命题变项的简单合取式中,若每个命题变项及其否定有且仅有其中一个出现一次,则称这样的简单合取式为极小项。


通常极小项的命题变项用1表示,命题变项的否定用0表示,这就组成了一段二进制码,按二进制码的大小进行排序后用小写字母m ( m i n i m u m ) 加从0开始递增的脚标命名,例:m 0 、m 1

例如:2个命题变项p 、q 可形成4个极小项;3个命题变项r 、s 、t 可形成8个极小项


000000000000.png

极大项定义:

在有n 个命题变项的简单析取式中,若每个命题变项及其否定有且仅有其中一个出现一次,则称这样的简单析取式为极大项。

通常极大项的命题变项用0表示,命题变项的否定用1表示,这就组成了一段二进制码,按二进制码的大小进行排序后用大写字母m ( m a x i m u m ) 加从0开始递增的脚标命名,例:m 0 、m 1

例如:2个命题变项p 、q 可形成4个极小项;3个命题变项r 、s 、t 可形成8个极大项

000000000.png


主范式存在定理:

任何命题公式都有唯一的主析取范式或主合取范式。


求解主范式的步骤:


求出析取范式或合取范式

扩展命题变项,将简单合取式(简单析取式)扩展为极小项(极大项)形式

合并重复项

求余项,求出主析取范式后余下的项就是主合取范式的组成项,求出主合取范式后余下的项就是主析取范式的组成项


例如:求( ( p ∨ q ) → r ) → p的主析取范式与主合取范式主范式

解:

0000000.png00000.png

相关文章
|
8天前
|
算法 测试技术 开发者
编程范式之争:面向对象与函数式的较量
在当今软件开发领域,面向对象编程(OOP)和函数式编程(FP)是两种备受瞩目的主流编程范式。本文将比较这两种范式的特点和优势,并探讨如何在实际项目中进行选择。
|
8天前
|
设计模式
编程范式之争:面向对象编程与函数式编程的对决
在软件开发领域,面向对象编程(OOP)和函数式编程(FP)一直是两种主要的编程范式。本文将探讨这两种编程风格的优缺点,比较它们在不同场景下的适用性,并提供选择合适编程范式的指导原则。
25 0
|
8天前
|
机器学习/深度学习 人工智能 自然语言处理
软考之专家系统的概念
软考之专家系统的概念
15 0
|
8天前
|
并行计算 数据处理 开发者
编程范式的抉择:面向对象编程与函数式编程的对决
在当今的软件开发领域,面向对象编程(Object-Oriented Programming,OOP)和函数式编程(Functional Programming,FP)是两种重要的编程范式。本文将比较并探讨这两种编程范式的特点、优势和适用场景,以帮助开发者在编程选择上做出明智的决策。
|
10月前
|
JavaScript Java 程序员
编程范式之我见
作为开发者想必都知道,编程范式是指编程语言所支持的不同编程风格或编程思想,它们可以影响程序的结构、组织和运行效率。但是,随着编程语言和技术的不断发展,一些编程范式已经过时了,需要改进或被替代。接下来,我将分享个人关于编程范式的看法,探讨不同编程范式的优点和缺点,以及如何选择适合自己的编程范式。
100 1
编程范式之我见
|
程序员 Go
编程范式(一):结构化编程
编程范式(一):结构化编程
387 0
|
存储 关系型数据库 数据库
数据库范式与反范式设计,是一门艺术
在日常业务研发过程中,我们常常需要与数据库表打交道。设计范式是数据表设计的基本原则,对于数据表的设计范式,我们特别容易忽略它的存在。很多时候,当数据库运行了一段时间之后,我们才发现数据表设计上有问题。然后重新调整数据表的结构,需要做数据迁移,还有可能影响程序处理的业务逻辑,甚至系统的正常服务运行。
数据库范式与反范式设计,是一门艺术
|
机器学习/深度学习 数据可视化
L0范式、L1范式、L2范式解释通俗版
L0范式、L1范式、L2范式解释通俗版
552 0
L0范式、L1范式、L2范式解释通俗版
|
机器学习/深度学习 算法框架/工具
揭秘:深度网络背后的数学奥秘
不要怪我没有告诉你,数学不好千万不要乱点。
1698 0
微积分的思想-化繁为简
你知道计算器如何求解三角函数么?你知道计算器如何求解1.1的0.1次方么?你知道如何把圆周率π精确到任意小数点位么? 我们今天就以这三个经典的小问题展开,一起探究微积分的思想。
3218 0

热门文章

最新文章