数理逻辑:1、预备知识

news2024/11/26 2:55:26

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.coloradmin.cn/o/1693922.html

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

相关文章

AI模型抉择:开源VS闭源,谁主沉浮?

AI模型抉择:开源VS闭源,谁主沉浮? 😄生命不息,写作不止 🔥 继续踏上学习之路,学之分享笔记 👊 总有一天我也能像各位大佬一样 🏆 博客首页 怒放吧德德 To记录领地 &am…

C++字符编码 cppp-reiconv库使用详解

经常写一些控制台小程序,常常会遇到输出中文乱码的问题,在windwos下可以使用MultiByteToWideChar转换字符编码,但跨平台就需要cppp-reiconv这样的第三方字符编码处理库,且开源。 一、下载cppp-reiconv库的源码和静/动态库 GitHu…

Windows11搭建Flutter3开发环境

下载:https://docs.flutter.cn/get-started/install/windows/desktop?tabdownload 下载以后解压到C盘: 将bin目录添加到环境变量PATH: 打开终端,输入: flutter doctor执行下面的命令,同意安卓协议&am…

【linux】docker下nextcloud安装人脸识别插件

一、插件源码地址: GitCode - 开发者的代码家园 二、插件官网地址: Releases - Face Recognition - Apps - App Store - Nextcloud 三、插件安装教程: 1、查看本地nextcloud版本号 http://ipAddress:8080/settings/admin/overview 2、找…

GpuMall智算云:meta-llama/llama3/Llama3-8B-Instruct-WebUI

LLaMA 模型的第三代,是 LLaMA 2 的一个更大和更强的版本。LLaMA 3 拥有 35 亿个参数,训练在更大的文本数据集上GpuMall智算云 | 省钱、好用、弹性。租GPU就上GpuMall,面向AI开发者的GPU云平台 Llama 3 的推出标志着 Meta 基于 Llama 2 架构推出了四个新…

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 …

C# 拓展方法(涉及Linq)

拓展方法 定义一个扩展方法使用扩展方法例如再举个例子终极例子 注意事项与Linq 在C#中,扩展方法是一种特殊的静态方法,允许开发者向现有类型“添加”新的方法,而无需修改该类型的源代码或创建新的派生类型。这种机制提供了一种更为灵活的方式…

解禁谷歌等浏览器禁止网站使用麦克等媒体设备

1、浏览器地址栏输入chrome://flags/ 微软的chromium内核的edge浏览器,既可以输入:chrome://flags/ ,也可以输入edge://flags/ 2、打开后,界面如下 3、输入搜索,unsafe,并启用、输入需要启用的网址

【算法】前缀和——寻找数组的中心下标

本节博客是用前缀和算法图解“寻找数组的中心下标”,有需要借鉴即可。 目录 1.题目2.题意3.前缀和求解4.示例代码5.细节6.总结 1.题目 题目链接:LINK 2.题意 我们以示例1为例来图解一下题意: 3.前缀和求解 根据已有经验,我…

低功耗蓝牙模块轻松实现智能防丢器

低功耗蓝牙模块,作为集成蓝牙无线技术功能的PCBA板,主要用于短距离无线通讯,已经成为物联网无线传输发展的中坚力量。随着蓝牙技术不断更新换代,越来越多的智能可穿戴设备出现在我们的生活中,智能手环,智能…

634 · 单词矩阵

链接&#xff1a;LintCode 炼码 - ChatGPT&#xff01;更高效的学习体验&#xff01; . - 力扣&#xff08;LeetCode&#xff09; 题解&#xff1a; class Solution { public: struct Trie {Trie() {next.resize(26, nullptr);end false;} std::vector<Trie*> next; b…

2024最新php项目加密源码

压缩包里有多少个php就会被加密多少个PHP、php无需安装任何插件。源码全开源 如果上传的压缩包里有子文件夹&#xff08;子文件夹里的php文件也会被加密&#xff09;&#xff0c;加密后的压缩包需要先修复一下&#xff0c;步骤&#xff1a;打开压缩包 》 工具 》 修复压缩文件…

2024-05学习笔记

最近的学习大多都是和mysql的索引相关的 1.mvcc mvcc是不需要手动配置&#xff0c;是mysql的一个机制 在事务开启时&#xff0c;对涉及到的数据加一个隐藏列&#xff0c;隐藏列对应的值&#xff0c;就是事务id 如果当前是修改操作&#xff0c;就copy一份原来的数据到新的一行…

Atlas 200 DK(Model 3000)安装MindSpore Ascend版本

一、参考资料 mindspore快速安装 二、重要说明 经过博主多次尝试多个版本&#xff0c;Atlas 200 DK&#xff08;Model 3000&#xff09;无法安装MindSpore Ascend版本。 三、准备工作 1. 测试环境 设备型号&#xff1a;Atlas 200 DK(Model: 3000) Operating System Vers…

【Go专家编程——内存管理——内存分配】

1.内存分配 1.1 基础概念 编写过C语言的读者一定指导malloc()函数用于动态申请内存&#xff0c;其中内存分配器使用glic提供的ptmalloc2。 内存分配器 c语言的ptmalloc2google的tcmallocfacebook的jemalloc后两者在避免内存碎片和性能上均比glibc有较大优势&#xff0c;在多…

VBA即用型代码手册:删除Excel中空白行Delete Blank Rows in Excel

我给VBA下的定义&#xff1a;VBA是个人小型自动化处理的有效工具。可以大大提高自己的劳动效率&#xff0c;而且可以提高数据的准确性。我这里专注VBA,将我多年的经验汇集在VBA系列九套教程中。 作为我的学员要利用我的积木编程思想&#xff0c;积木编程最重要的是积木如何搭建…

HTTP响应的基本概念

目录 HTTP响应中的一些信息 HTTPS HTTP响应中的一些信息 状态码&#xff1a;描述了这次HTTP请求是否成功&#xff0c;以及失败的原因。 1&#xff09;200 ---OK 表示这次访问成功了。 2&#xff09;404 ---Not Found 表示客户端请求的资源在服务器这边不存在。 3&a…

93.网络游戏逆向分析与漏洞攻防-游戏技能系统分析-增强技能信息显示后进行分析

免责声明&#xff1a;内容仅供学习参考&#xff0c;请合法利用知识&#xff0c;禁止进行违法犯罪活动&#xff01; 如果看不懂、不知道现在做的什么&#xff0c;那就跟着做完看效果&#xff0c;代码看不懂是正常的&#xff0c;只要会抄就行&#xff0c;抄着抄着就能懂了 内容…

Pytorch深度学习实践笔记3

&#x1f3ac;个人简介&#xff1a;一个全栈工程师的升级之路&#xff01; &#x1f4cb;个人专栏&#xff1a;pytorch深度学习 &#x1f380;CSDN主页 发狂的小花 &#x1f304;人生秘诀&#xff1a;学习的本质就是极致重复! 视频来自【b站刘二大人】 目录 1 梯度下降&#…

html简述——part1

HTML概述 HTML&#xff08;HyperText Markup Language&#xff09;是一种用于创建网页的标准标记语言&#xff0c;具体指超文本标记语言。它不是一种编程语言&#xff0c;而是一种标记语言&#xff0c;用于描述网页的结构和内容。通过HTML&#xff0c;开发者可以定义网页的标题…