数理逻辑:1、预备知识

17.1 命题和联结词

​ 命题:可以判定真假的陈述句。(则悖论,祈使句,疑问句都不是命题)

​ 原子命题:不能被分割为更小的命题的命题

例如:

  1. 2既是素数又是偶数

    可以由$p: 2 是素数, 2是素数, 2是素数,q: 2 是偶数,由 2是偶数,由 2是偶数,由p\land q$联结得来

  2. 只有在天晴时,我们才去郊游

    可以有 p : p: p:天晴, q : q: q:去郊游,由 q → p q\rightarrow p qp联结得来(q蕴含p,郊游时一定天晴,但天晴时不一定去郊游)

常用的联结词

  1. 非: ¬ \neg ¬,表示否定
  2. 合取: ∧ \land ,表示并且
  3. 析取: ∨ \lor ,表示或
  4. 蕴含: → \rightarrow ,表示“如果…,则…”的意思
  5. 等价: ↔ \leftrightarrow ,表示当且仅当

命题

​ 形式化的递归定义,

​ 命题是一个符号串,满足:

  1. 字母集中每个元素都是命题
  2. 如果 P , Q P,Q P,Q是命题,那么 ¬ P , P ∧ Q , P ∨ Q , P → Q , P ↔ Q \neg P,P\land Q,P\lor Q,P\rightarrow Q,P\leftrightarrow Q ¬P,PQ,PQ,PQ,PQ也是命题
  3. 有限次使用1和2

但我们注意到,如此定义,会出现形如 P ¬ , ∧ Q P\neg ,\land Q P¬,Q的命题,这在日常生活中是不存在的,但从代数的角度是可以的,为此需要引入泛代数的概念

17.2 泛代数

​ 困难的一节。

:在群论中,我们指出,集合 A A A上的 n n n元运算实际上就是一个 n n n元单值函数 t : A n → A t: A^n\rightarrow A t:AnA,其中 n n n在之后就称为 t t t的元。

​ 在群G中,定义一个一元运算 i : G → G i:G\rightarrow G i:GG求逆元,即 i ( a ) = a − 1 i(a)=a^{-1} i(a)=a1

​ 对于0元运算,实际上是从集合 A 0 A^0 A0(只有一个元素,通常记为 ∅ \varnothing 到A上的函数),即 t 0 : ∅ → A t_0:\varnothing\rightarrow A t0:A,因此0元运算实质上是唯一对应了 A A A上的某个元素,故0元运算通常可视为 A A A中的一个特殊元素。

​ 在群论中,定义0元运算 e ∗ : ∅ → G , e ∗ ( ∅ ) = e e^*:\varnothing \rightarrow G,e^*(\varnothing) =e e:G,e()=e,其中 e e e为单位元,实际上 e ∗ e^* e给出了群G的单位元,之后我们将 e ∗ e^* e看作单位元 e e e,也可以把 e e e看作0元运算。

定义1 类型

​ 设 a r ar ar为集合 T T T到非负整数集 N N N的函数,则称集合 T T T和函数 a r ar ar为一个类型,记为 T = ( T , a r ) T=(T,ar) T=(T,ar),简记为 T T T。此外,令 T n = { t ∈ T ∣ a r ( t ) = n } T_n=\{t\in T| ar(t) =n\} Tn={tTar(t)=n}

定义2 T-代数

​ A是一个集合,T是一个类型,T中每个元素 t t t对应于 A A A上的一个函数: t A : A a r ( t ) → A t_A:A^{ar(t)}\rightarrow A tA:Aar(t)A,则称集合 A A A { t A ∣ t ∈ T } \{t_A|t\in T\} {tAtT}构成类型 T T T的一个代数 A A A,称为T-代数,元素 t ∈ T n t\in T_n tTn称为 n n n元T-代数运算

定义3 T-代数相等

​ T-代数A,B相等 ⟺ ∀ t ∈ T , t A = t B \Longleftrightarrow \forall t\in T,t_A=t_B tT,tA=tB,记为 T A = T B T_A=T_B TA=TB

定义4 T-子代数

​ 设A是一个T-代数,B为A的子集,如果将A上的运算限制在B上仍然构成一个T-代数,即:对任意的非负整数n,任意的 t ∈ T n . b 1 , b 2 , ⋯ , b n ∈ B t\in T_n.b_1,b_2,\cdots,b_n\in B tTn.b1,b2,,bnB,有 t A ( b 1 , ⋯ , b n ) ∈ B t_A(b_1,\cdots,b_n)\in B tA(b1,,bn)B成立(封闭的),则称B是A的一个T-子代数

定义5 T-代数同态

​ 设A,B是T-代数, φ \varphi φ是从A到B的映射,若对任意 t ∈ T , a 1 , ⋯ , a n ∈ A ( n = a r ( t ) ) t\in T,a_1,\cdots,a_n\in A(n=ar(t)) tT,a1,,anA(n=ar(t)),有 φ ( t A ( a 1 , ⋯ , a n ) ) = t B ( φ ( a 1 ) , ⋯ , φ ( a n ) ) \varphi(t_A(a_1,\cdots,a_n))=t_B(\varphi(a_1),\cdots,\varphi(a_n)) φ(tA(a1,,an))=tB(φ(a1),,φ(an)),则称 φ \varphi φ为从 A A A B B B的同态映射,当 φ \varphi φ是满射时,称A和B市同态的。

​ 特别地,当 φ \varphi φ是同态映射,且可逆时,称 φ \varphi φ为同构映射,称 A , B A,B A,B是同构的,此时逆函数 φ − 1 \varphi ^{-1} φ1是从B到A的同构映射。

定义6 自由T代数

​ 设X是集合,G是一个T-代数, σ \sigma σ为X到G的函数,若对每个T-代数A和X到A的函数 τ \tau τ,都存在唯一的G到A的同态映射 φ \varphi φ,使得 φ σ = τ \varphi \sigma = \tau φσ=τ,则称 G G G(更严格地说是 ( G , σ ) (G,\sigma) (G,σ))是生成集X上的自由T-代数。X中的元素为生成元。

在这里插入图片描述

引理1 自由T-代数中的内射

​ 若 ( G , σ ) (G,\sigma) (G,σ)是X上的自由T-代数,则 σ \sigma σ是内射

定理1 自由T-代数存在性

​ 对任何集合X和类型T,存在X上的自由T-代数,并且这种T-代数在同构意义下是唯一的。

​ 证明是复杂的, P227

​ 其中,出现了T-代数的构造方式:

T-代数的构造方式

  1. G 0 = T 0 ∪ X G_0 =T_0\cup X G0=T0X,假定 T 0 ∩ X = ∅ T_0\cap X =\varnothing T0X=
  2. 假定 G r G_r Gr已经确定,则

G n = { ( t , a 1 , ⋯ , a k ) ∣ t ∈ T k , k > 0 , a i ∈ G r i , ∑ k r i = n − 1 } G_n=\{(t,a_1,\cdots,a_k)|t\in T_k,k>0,a_i\in G_{r_i},\sum ^k r_i =n-1\} Gn={(t,a1,,ak)tTk,k>0,aiGri,kri=n1}

​ 其中 G 0 G_0 G0可理解为原子命题, G n G_n Gn可理解为做了一些逻辑运算的若干个命题。

​ 例如:

p , q ∈ G 0 , ¬ p ∈ G 1 , p ∧ q ∈ G 2 p,q\in G_0,\neg p \in G_1,p\land q \in G_2 p,qG0,¬pG1,pqG2

​ 一个例子

在这里插入图片描述

注意,第一个元素为运算,例子中的 → \rightarrow 为二元运算,所以后面要选择两个元素,而由于 F F F是零元的,所以在 n > 0 n>0 n>0时,不能取F

由这种构造方式,我们可以自然地得到一个推论

推论1

​ 设G是可列集 X = { x 1 , x 2 , ⋯ } X=\{x_1,x_2,\cdots\} X={x1,x2,}上地自由T-代数,则G中每个元素都是某个有限子集 X n = { x 1 , ⋯ , x n } X_n=\{x_1,\cdots,x_n\} Xn={x1,,xn}所生成地自由T-代数中的元素。

定义 7 T-代数变量

​ 一个T-代数变量是一个自由T-代数的自由生成集的元素。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/15384.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

DNS的服务与部署(2)

1、dns的安装及开启 dnf install bind.x86_64 -y #安装 #Berkeley Internet Name Domain (BIND) systemctl enable --now named #启用dns服务,服务名称叫named firewall-cmd --permanent --add-servicedns #火墙设置 firewall-cmd --reload …

基于SSH的母婴用品销售管理系统带万字文档

文章目录 母婴商城系统一、项目演示二、项目介绍三、系统部分功能截图四、万字论文参考五、部分代码展示六、底部获取项目源码和万字论文参考(9.9¥带走) 母婴商城系统 一、项目演示 母婴商城系统 二、项目介绍 基于SSH的母婴商城系统 系统…

Tina-Linux -- 3. LVGL测试

参考韦东山 – Tina_Linux_图形系统_开发指南 Tina-linux lvgl 配置 环境配置 进入Tina-SDK根目录 source build/envsetup.sh lunch XXX平台名称 make menuconfigLVGL Gui --->Littlevgl --->< > lv_demo<*> lv_examples &#xff08;lvgl官方demo&#…

【区块链】fisco节点运维 更新ing

基于已完成的区块链系统与管理平台搭建工作&#xff0c;开展区块链节点的加入与退出运维工作&#xff0c;具体内容如下 以下只是举例子讲 如果有其他修改没举例出来可以留言 私信 主要以比赛出题的形式讲 区块链节点输出等级为警告级&#xff0c;并设置日志存储阈值为100MB并…

主机与VMware虚拟机共享文件夹

虚拟机M --> 设置 --> 选项 --> 共享文件夹 虚拟机里的共享文件夹需要挂载 sudo mount -t fuse.vmhgfs-fuse .host:/ /mnt/hgfs -o allow_other from 主机与VMware虚拟机共享文件夹&#xff1a;解决虚拟机找不到共享文件夹问题 - 知乎

C++实现的代码行数统计器

代码在GitHubMaolinYe/CodeCounter: C20实现的代码统计器&#xff0c;代码量小于100行&#xff0c;可以统计目录下所有代码文件的行数 (github.com) 前段时间到处面试找实习&#xff0c;有技术负责人的负责人问我C写过多少行&#xff0c;5万还是10万&#xff0c;用来评估熟练度…

Capture One Studio for Mac:打造完美影像的利器

对于摄影师而言&#xff0c;每一次按下快门都是一次对完美影像的追求。而Capture One Studio for Mac正是这样一款能够帮助你实现这一追求的利器。 Capture One Studio for Mac v16.4.2.1中文直装版下载 首先&#xff0c;Capture One Studio for Mac拥有出色的图像处理能力。它…

从零起航,Python编程全攻略

新书上架~&#x1f447;全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我&#x1f446;&#xff0c;收藏下次不迷路┗|&#xff40;O′|┛ 嗷~~ 目录 一、Python入门之旅 二、Python进阶之道 三、Python爬虫实战 四、Python数据分析利器 五…

kind: Telemetry

访问日志 访问日志提供了一种从单个工作负载实例的角度监控和理解行为的方法。 Istio 能够以一组可配置的格式为服务流量生成访问日志&#xff0c; 使操作员可以完全控制日志记录的方式、内容、时间和地点。 有关更多信息&#xff0c;请参阅获取 Envoy 的访问日志。 https:/…

TS+elementUI的表格做form校验写法(手机/邮箱号验证)

1.form表单写法 <template><div style"height:100%;width:100%;position:relative"><el-dialog title"编辑" :visible.sync"dialogVisible" width15% :close-on-click-modalfalse><el-form :model"form" :rule…

模块化程序设计(函数的定义、调用、参数传递、局部变量、全局变量)

函数的引入&#xff1a; 我们曾经学习了程序设计中的三种基本控制结构&#xff08;顺序、分支、循环&#xff09;。用它们可以组成任何程序。但在应用中&#xff0c;还经常用到子程序结构。 通常&#xff0c;在程序设计中&#xff0c;我们会发现一些程序段在程序的不同地方反复…

[python]当你认为python字符串的strip()或replace()不能删除空格或者换行符的时候,看这里

str "123 abc\r\n" 当你调用 str.strip() 或 str.replace("\n","")之后&#xff0c;发现空格或换行符还存在&#xff0c; 是因为strip()和replace()没有改变str本身的值&#xff0c;需要这样重新赋值&#xff1a; str str.strip() ...

RabbitMQ 发布订阅

RabbitMQ 发布订阅视频学习地址&#xff1a; 简单模式下RabbitMQ 发布者发布消息 消费者消费消息 Publist/Subscribe 发布订阅 在 RabbitMQ 中&#xff0c;发布订阅模式是一种消息传递方式&#xff0c;其中发送者&#xff08;发布者&#xff09;不会将消息直接发送到特 定的…

基于open3d对kitti数据集检测结果可视化

前言 KITTI数据集是自动驾驶和计算机视觉领域中一个广泛使用的基准数据集&#xff0c;它提供了丰富的传感器数据&#xff0c;包括激光雷达、相机和GPS等。Open3D是一个功能强大的3D数据处理和可视化库&#xff0c;支持多种3D数据格式。本文将介绍如何使用Open3D对KITTI数据集的…

Python常见数据类型处理

一、数据类型分类 Python3 中常见的数据类型有&#xff1a; Number&#xff08;数字&#xff09;String&#xff08;字符串&#xff09;bool&#xff08;布尔类型&#xff09;List&#xff08;列表&#xff09;Tuple&#xff08;元组&#xff09;Set&#xff08;集合&#xf…

详解 Spring MVC(Spring MVC 简介)

什么是 Spring MVC&#xff1f; Spring MVC 是 Spring 框架提供的一个基于 MVC 模式的轻量级 Web 框架&#xff0c;是 Spring 为表示层开发提供的一整套完整的解决方案&#xff0c;Spring MVC 使用了 MVC 架构模式&#xff0c;将 Web 层职责解耦&#xff0c;基于请求驱动模型&…

基于Java、SpringBoot和uniapp在线考试系统安卓APP和微信小程序

摘要 基于Java、SpringBoot和uniapp的在线考试系统安卓APP微信小程序是一种结合了现代Web开发技术和移动应用技术的解决方案&#xff0c;旨在为教育机构提供一个方便、高效和灵活的在线考试平台。该系统采用Java语言进行后端开发&#xff0c;使用SpringBoot框架简化企业级应用…

SpringCloud微服务之Nacos、Feign、GateWay详解

SpringCloud微服务之Nacos、Feign、GateWay详解 1、Nacos配置管理1.1、统一配置管理1.1.1、在nacos中添加配置文件1.1.2、从微服务拉取配置 1.2、配置热更新1.2.1、方式一1.2.2、方式二 1.3、配置共享1.3.1、配置共享的优先级 1.4、搭建nacos集群1.4.1、初始化数据库1.4.2、下载…

plt多子图设置

import matplotlib.pyplot as plt# 使用 subplots 函数创建一个 2x3 的子图网格 fig, axs plt.subplots(nrows2, ncols3, figsize(16, 10)) # 调整 figsize 来改变图像大小# 遍历每个子图&#xff0c;并绘制一些内容&#xff08;这里只是简单的示例&#xff09; for ax in ax…

React与Vue的区别?

一、区别: 1. 语法 Vue采用自己特有的模板语法&#xff1b; React是单向的&#xff0c;采用jsx语法创建react元素。 2.监听数据变化的实现原理不同 Vue2.0 通过Object.defineproperty()方法的getter/setter属性, 实现数据劫持, 每次修改完数据会触发diff算法(双端对比) …