ZFC in LEAN 之 前集(Pre-set)

        前集(Pre-set)的概念是相对于集合(Set),由数学家 Bishop 提出的。Bishop 认为定义一个集合需要三个步骤:

        1. 定义该集合的元素是如何构建的(Construction)。

        2. 定义集合中的两元素的相等关系(Equality)。

        3. 证明该相等关系是自反的(Reflexive)、对称的(Symmetric)、以及传递的(Transitive)。

        如果,在定义一个集合时,只满足了第一步,那么该集合称为前集(Pre-set),即,还未(not yet)称得上是集合(Set)。

        那么,对于前集(Pre-set),可以其基础上,像集合一样,定义关系(Relation)与函数(Function),称为 前关系(Pre-relation)与前函数(Pre-function)。其中,最大的区别在于,不保持(preserve)相等关系(Equality),即,a = b ∈ S,f(a) 与 f(b) 不要求相等(equals)。

        反过来说,也可以称函数(Function),是保持(preserve)相等关系的前函数。称保持相等关系的前函数满足外延性(Extensionality)。

        那么,看看 ZFC in Lean中,是如何定义前集(Pre-set)。

cb857101eb934aca97098136d245dbfd.png

        这里,需要抽象地理解上述的定义,就是,通过 PSet 的构建函数 PSet.mk,给定一个类型α,以及 索引函数 A: α → PSet,可以得到一个PSet元素,记 PSet α A。也可以,反过来理解,一个前集(PSet),它包含了一个基类型(underlying type),以及基于其基类(underlying type)的前集索引函数,其中,索引指向的所有前集是正被定义前集的元素(members)。

        还有一个注意的地方,就是 PSet: Type (u + 1),这里的 u+1 作用是以免 PSet 包含自身。

        那么,就会问,什么样的元素属于 PSet?类似,集合中,其最底层元素是空集,这里也有对于PSet,的空集,定义如下:

83758bfe687e44639d32e6e988b0606f.png

        然后,看看 PEmpty.elim 的定义:

2a29353738dd498393b84a691b89e2c5.png

        其中,PEmpty的定义如下:

09e3a2fe15f7428f8c5819bf93e20d1e.png

        这样,对照起来看,对于PSet,其 类型α 为 PEmpty,其前集索引函数为  PEmpty.elim。这就是 PSet的空集,也记 ∅。

        此时,就有了第一个 PSet 元素了,∅:PSet u,亦 empty: PSet u。

这里,有个有意思的知识点,因为,Lean里的类型宇宙并不累积的(Non-cumulative),因此,对于每层级类型宇宙 u,都会实例化其层级 u 为一个自然数,然后实例化其宇宙层次多态类型(universe-polymorphic type)。也就是,每层次的类型宇宙中,都存在一个实例化后的宇宙层次多态类型。对于 PSet来说,也是一样,即 PSet是宇宙层次多态类型,对于每层次的类型宇宙,都存在一个PSet类型,其中,∅是其元素。记,∅:PSet u。

 

 

 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

libaom 源码分析:AV1帧内预测 CfL 模式

CfL预测模式原理 从亮度到色度CfL 是一种色度帧内预测模式,通过建立共位重建亮度采样的线性函数来模拟色度采样;对于不同的色度采样格式(例如4:2:0和4:2:2),可能需要对重建的亮度像素进行子采样,以匹配色度…

C++核心编程和桌面应用开发 第十八天(一元/二元谓词 内建函数对象 算术/关系/逻辑仿函数 函数适配器/取反适配器/函数指针适配器/成员函数适配器)

目录 1.函数对象 1.1函数对象特点 2.谓词 2.1一元谓词 2.2二元谓词 3.内建函数对象 3.1算术仿函数 3.2关系仿函数 3.3逻辑仿函数 4.函数适配器 5.取反适配器 5.1一元取反适配器 5.2二元取反适配器 6.函数指针适配器 7.成员函数适配器 1.函数对象 概念&#xff…

Java后端面试内容总结

先讲项目背景,再讲技术栈模块划分, 讲业务的时候可以先讲一般再特殊 为什么用这个,好处是什么,应用场景 Debug发现问题/日志发现问题. QPS TPS 项目单元测试,代码的变更覆盖率达到80%,项目的复用性高…

P3-2.【结构化程序设计】第二节——知识要点:多分支选择语句

讲解视频: P3-2.【结构化程序设计】第二节——知识要点:多分支选择语句 知识要点:多分支选择语句 一、任务分析 已知某公司员工的保底薪水为500,某月销售商品的利润profit(整数)与利润提成的关系如下(单位:元)&#…

关于Android Studio Koala Feature Drop | 2024.1.2下载不了插件的解决办法

解决 androidStudio Settings->Plugins下载插件,点击install后没反应,同时插件描述相关显示不出来 第一步: 第二步: 点击设置,勾选Auto-detect proxy settings,输入网址 https://plugins.jetbrains.com…

UE中查“资源包因何变脏”的方式

“脏”(Dirty)的意思 当用户对一个资源包(关卡,或材质等美术资源)做出了修改,变得与磁盘上存储的内容有差异时,UE会对其“标脏”(Mark Dirty),显示为 * 符号…

leetcode 2710 移除字符串中的尾随零

1.题目要求: 2.题目代码: class Solution { public:string removeTrailingZeros(string num) {while(num[num.size() - 1] 0){num.pop_back();}return num;} };

Iceoryx2:高性能进程间通信框架(中间件)

文章目录 0. 引言1. 主要改进2. Iceoryx2 的架构3. C示例代码3.1 发布者示例(publisher.cpp)3.2 订阅者示例(subscriber.cpp) 4. 机制比较5. 架构比较6. Iceoryx vs Iceoryx2参考资料 0. 引言 Iceoryx2 是一个基于 Rust 实现的开…

10.30.2024刷华为OD

文章目录 HJ20 密码验证合格程序(难过全部例子 list取数左开有闭 [0,3) )HJ21 简单密码HJ22 汽水瓶 (数学游戏...)HJ23 (dic就是map,注意怎么用, 善用values()和keys()函数返回list)语法知识记录 (留意转换的字符怎么拼接) HJ20 密…

【问题记录】解决VMware虚拟机中鼠标侧键无法使用的问题

前言 有项目需要在Linux系统中开发,因为要测试Linux中相关功能,要用到shell,在Windows中开发太麻烦了,因此我选择使用UbuntuXfce4桌面来开发,这里我用到了Linux版本的IDEA,除了快捷键经常和系统快捷键冲突…

【337】基于springboot的校园失物招领系统

校园失物招领网站的设计与实现 摘要 近年来,信息化管理行业的不断兴起,使得人们的日常生活越来越离不开计算机和互联网技术。首先,根据收集到的用户需求分析,对设计系统有一个初步的认识与了解,确定校园失物招领网站…

彻底理解链表(LinkedList)结构

目录 比较操作结构封装单向链表实现面试题 循环链表实现 双向链表实现 链表(Linked List)是一种线性数据结构,由一组节点(Node)组成,每个节点包含两个部分:数据域(存储数据&#xff…

使用Docker Compose搭建多服务应用

使用Docker Compose搭建多服务应用 Docker Compose简介 安装Docker Compose 在Linux上安装Docker Compose 在macOS上安装Docker Compose 在Windows上安装Docker Compose 创建项目结构 Flask应用 安装依赖 Dockerfile 配置Docker Compose 构建和运行应用 访问应用 高级配置 环…

LLaMA系列一直在假装开源...

伙伴们,很奇怪~ 关于LLM的开源与闭源模型的竞争又开始愈发激烈。 众所周知,开源模型以其开放性和社区驱动的特点受到一部分用户的青睐,而闭源模型则因其专业性和性能优化被广泛应用于商业领域。由于大模型最近2年的突然兴起,开源…

i2c与从设备通讯编程示例之开发板测试

编译elf1_cmd_i2c程序 (一)设置交叉编译环境 (二)查看elf1_cmd_i2c文件夹Makefile文件。查看当前编译规则,i2c_demo是编译整个工程,clean是清除工程。 (三)在03_elf1_cmd_i2c文件夹…

开源办公软件 ONLYOFFICE 深入探索

文章目录 引言1. ONLYOFFICE 创建的背景1. 1 ONLYOFFICE 项目启动1. 2 ONLYOFFICE 的发展历程 2. 核心功能介绍2. 1 桌面编辑器2. 1. 1 文档2. 1. 2 表格2. 1. 3 幻灯片 2. 2 协作空间2. 3 文档编辑器 - 本地部署版 3. 技术介绍4. 安装5. 优势与挑战6. 个人体验7. 强大但不止于…

C++ -- 模板进阶

非模板类型参数 模板参数分为类型形参与非类型形参。类型形参:出现在模板参数列表中,跟在class 或 typename之类的参数类型名称。非类型形参:就是用一个常量作为类(函数)模板的一个参数,在类(函数)模板中将该参数当成常量来使用。…

【力扣】Go语言回溯算法详细实现与方法论提炼

文章目录 一、引言二、回溯算法的核心概念三、组合问题1. LeetCode 77. 组合2. LeetCode 216. 组合总和III3. LeetCode 17. 电话号码的字母组合4. LeetCode 39. 组合总和5. LeetCode 40. 组合总和 II小结 四、分割问题6. LeetCode 131. 分割回文串7. LeetCode 93. 复原IP地址小…

HarmonyOS 私仓搭建

1. HarmonyOS 私仓搭建 私仓搭建文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/ide-ohpm-repo-quickstart-V5   发布共享包[https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/ide-har-publish-0000001597973129-V5]…

LabVIEW 离心泵机组故障诊断系统

开发了一套基于LabVIEW图形化编程语言设计的离心泵机组故障诊断系统。系统利用先进的数据采集技术和故障诊断方法,通过远程在线监测与分析,有效提升了离心泵的预测性维护能力,保证了石油化工生产的连续性和安全性。 项目背景及意义 离心泵作…