布尔-施罗德逻辑代数中的公设对应-- 布尔逻辑之六

由布尔奠定的逻辑代数,经过耶芳斯(Jevos)和皮尔斯(Pierce)等人的补充修订,成为现代逻辑的一个起点。
但布尔系统的完善,更得力于英美学圈之外的欧洲大陆学者,特别是德国数学家施罗德(Karl Ernst SchrÖder(1841-1902))的工作。施罗德批判性地修改了布尔的类逻辑,特别强调了逻辑加和逻辑乘观念之间的双向性。而这种双向性,也是耶芳斯在他19世纪晚期著作中引入逻辑代数之中的。
施罗德的逻辑代数著作,还特别借鉴了美国学者皮尔斯为这个领域所作的工作(有关皮尔斯的工作,准备稍后再表,此处略)。施罗德的《逻辑代数讲演集》(Lectures on the algebra of logic),融和了布尔,德摩根、耶芳斯、皮尔斯、亨廷顿还有许多欧美其它学者,在逻辑代数这门新学科中所作的各种贡献。因此,在这个意义上,逻辑代数虽然简称为布尔逻辑代数,但按照美国学者C.I刘易斯的意见,称作布尔-施罗德逻辑代数更为合理。(见《符号逻辑概览》第118页)
这个代数系统到施罗德那里,最重要的进展是采用欧氏几何的公理化模式,为系统建立公设。在C.I刘易斯的《符号逻辑概览》一书中,刘易斯借用施罗德和亨廷顿等人的工作,还有英国耶芳斯和美国皮尔斯的工作,给布尔系统增添了一个重要的关系概念:“包含于”或者称“蕴涵”概念。而亨廷顿,曾经为逻辑代数做过四种公设集合,刘易斯对其所做的第三种公设集合做了修改,把布尔-施罗德逻辑代数设置为九个公设。
这九个公设中,乘法“*”为初始运算,0为初始类,否定符号“-”也作为初始符号引进。然后,通过定义方式,从初始元素0引入1,从初始运算乘法借助德摩根定律引入加法。除乘法的交换律之外,还增加了乘法的结合律。最后,依据乘法,引入一个耶芳斯和皮尔斯创立的新符号:包含于“⊂”关系的符号。这个逻辑系统的公设,我将其缩写为BSP。
我照录BSP这九个公设并简介如下。

“公设为:
一个元素为a,b,c等等,关系为乘法“”的类别K,使得:
1.1 如果a和b是K中元素,那么a
b是K中元素,该公式唯一地由a和b来判定。
1.2 对任意元素a,aa = a。(布尔指数法则)
1.3 对任意元素a和b,a
b = ba。(乘法交换律)
1.4 对任意元素a,b和c,a
(bc) = (ab)c。(乘法结合律)
1.5 存在唯一元素0在K中,使得对于任意元素a,a
0 = 0。(引入布尔空符号nothing)
1.6 对于任意元素a,都存在一个元素-a,使得(这是引入布尔没有的否定符号)
1.6.1 如果x*-a = 0,那么 xa = x。(否定相乘为空,则肯定相乘的那个元素不变)
1.6.2 如果y
a = y,y*-a = y,那么y = 0。(古老的归谬法则)
1.7 def 1 = -0。(通过定义引入布尔的那个“全”类)
1.8 def a + b = -(-a * - b)(这是从否定和乘法出发给加法的定义,有点德摩根定律的味道)
1.9 a⊂b等价于a*b = a (这是引入布尔没有,莱布尼兹更没有想到的“包含于”,或者“蕴涵”符号,这里的“等价于”概念,是在等值概念基础上构建的另一个有关等同的概念。)”
(见《符号逻辑概览》第119页,其中圆括号部分的文字是我加的简介)

以这九个公设为基础,可以发展成为一个抽象的数学系统。上述公设中的等号“=”,是具有通常数学意义中的等号。它和公设中的乘法符号*,加法符号+和包含于符号⊂一样,都属于与公设一致的任意关系。布尔的逻辑代数之后,皮尔斯等人的关系逻辑也是值得关注的,这待布尔以后篇幅再议。
以这九个假设构成的演算系统,可以给出至少二种解释,如上篇曾谈到的。一种是类逻辑的解释,还有一种是命题逻辑的解释。此篇简略地给出类逻辑的解释,命题逻辑的解释则留待下篇。
“类”(classes)这个概念,在今天的计算机语言中使用频度很高,你要是学习python语言,几乎通篇都会看到类、对象、实例、方法、继承、多重继承、函数等这样一大串与类相关的词项集群。计算机语言中的类,也许和布尔的这个类逻辑有所关联吧。
那么,布尔的这个“类逻辑”究竟是个什么样的逻辑呢?
先对“类”这个常识语词做个解释。
在布尔代数中,我们有“全”和“无”这两个类,它们被假定为这个世界最大的一个类和最小的一个类。所有的东西都能够装进去,这就是最大的类。什么都没有,空空如也,这是最小的类。由此可以想象,在这个最大和最小之间还存有很多很多的东西,用语词来表示,通常是名词,特别是实在性的名词所表达的东西。而用数字来表达,就是从1到最大之间的那些可以用数字计算的东西。所有这些,都可以归到“类”这个概念之下。布尔的类之后,很快就出现了“集合”这个近似于“类”的概念,非常相近,几乎难以区分,但还是各有千秋。这也留待来日再说,此处暂且打住。
布尔代数,既是创新也是传承,它传承了古典逻辑有关词项的内涵与外延之分。在内涵与外延的意义上,布尔施罗德代数的类逻辑就是一种外延的逻辑。一个逻辑的类a,b,c等等,我们只是从外延的角度来看待它们,我们把a,b,c等“类”符号的内涵给抽象掉了,只注重类符号的外延,忽略掉类符号的内涵。
而所谓一个逻辑类符号a的外延,那就是看这个a是由哪些成员组成的,至于这些成员具有什么属性或者内涵则放置一旁,不予理会。这如同我篮框中的一堆苹果,不管它们好坏,也不管它们形状,反正是苹果没错,我只按个数来数一样。
由此就可以知道类逻辑的一般含义,那就是说,运算符号的载体是类符号的外延。
对于类符号的这种外延解释,立刻就产生和前述布尔-施罗德逻辑代数九个公设的对应公设。类逻辑的这个对应公设,我缩写为CLP。
立刻就可以看到BSP公设与CLP公设的对应。
BSP公设1有CLP公设1作为对应:
CLP1:如果ab是逻辑类,取其外延则有,a和b共同具有的成员也构成一个逻辑类。在ab中没有共同成员,这样构成的类就是空类0。(乘法公式形成公设)
BSP公设2-9有CLP公设2-9作为对应:
CLP2:aa共同具有的成员构成了类a本身。(乘法指数公设)
CLP3:a
b共同具有的成员等同于ba共同具有的成员。(乘法交换律公设)
CLP4:(a
b)c共同具有的成员,等同于a(bc)共同具有的成员。(这是乘法结合律公设)
CLP5:任意类a
0共同具有的成员等同于空类0。(空类0公设)
CLP6:对任意类a,存在其否定-a,a和-a构成全类,不包含在a之中,且使得:
CLP6.1:如果-a和任意x没有共同成员,那么,x的所有成员都对于x和a是共同具有的成员,或者x就包含在a中。(正好与BLP5对应)
CLP6.2:如果任意类y的所有成员对于y和a是共同具有的成员,并且也对y和-a是共同具有的,那么y一定是空类。
CLP7:全类,万事万物,是空类和无有的否定。(对应BLP7)
CLP8:a+b,这个表达式等同于-(-a*-b)(德摩根定律)
CLP9:a⊂b中,等价于:a*b=a。(包含于关系)

可以看到几乎是完全对应的公设,仅仅只是在表述上稍有不同,前者使用的是元素,后者使用的是类。
有了这些CLP公设之后,一批基本定理就可以证明出来。布尔施罗德代数作为类逻辑是其原初性的意图,但这个逻辑的解释除了类作为运算的载体这样的解释之外,还有一种命题的解释,运算的载体是命题。本篇也就省略掉对于这个类逻辑的诸多描述,把这个描述的篇幅留给命题逻辑,真正的现代逻辑开端,且待下篇。2020/06/11

布尔-施罗德逻辑代数中的公设对应-- 布尔逻辑之六相关推荐

  1. 布尔-施罗德逻辑代数中的命题逻辑-- 布尔逻辑之七(尾篇**)

    布尔-施罗德逻辑代数中的命题逻辑– 布尔逻辑之七(尾篇) 一.一级命题与二级命题 布尔在他的<思维法则研究>一书中,给出了他有关命题的一个新理论,建立在他的类逻辑演算的基础上.布尔不愧是想 ...

  2. python中字符串的布尔值_day02python中的基本数据类型-布尔值和字符串

    2.布尔值 真或假 1或0 3.字符串类型 "hello world" 字符串常用功能: -移除空白 -分隔 -长度 -索引 -切片 class str(basestring): ...

  3. 在Shell脚本中声明和使用布尔变量示例

    需要定义一个名为failed的bash变量,并将值设置为False.当从cron作业调用我们的脚本时,特定的任务可能会失败,然后我需要将failed转换为True.基于$failed,我需要发送一封电 ...

  4. Linux教程 - 在Shell脚本中声明和使用布尔变量示例

    需要定义一个名为failed的bash变量,并将值设置为False.当从cron作业调用我们的脚本时,特定的任务可能会失败,然后我需要将failed转换为True.基于$failed,我需要发送一封电 ...

  5. mysql可以存布尔_哪个MySQL数据类型用于存储布尔值

    由于MySQL似乎没有任何"布尔"数据类型,你滥用'哪种数据类型'来存储MySQL中的真/假信息? 特别是在写入和读取PHP脚本的上下文中. 随着时间的推移,我使用并看到了几种方法 ...

  6. java返回一个布尔值_关于java:返回布尔值的方法

    好的,所以我的问题是关于布尔值的回报. 对于我的Comp Sci作业,我必须使用方法制作课程注册程序,其中之一是添加课程方法. 基本上,您在目录中搜索该班级,如果匹配,则将其添加到学生时间表中,并返回 ...

  7. 二参数威布尔分布matlab,基于MATLAB的威布尔分布参数估计的图形界面设计

    基于 MATLAB 的威布尔分布参数估计的图形界面设计 唐军军, 姜年朝, 宋军, 徐艳楠, 刘达 (总参第六十研究所, 江苏 南京 210016) 摘 要: 基于 MATLAB 平台, 设计了一款集 ...

  8. 2.8 将一个整型变量的值赋给一个布尔型变量,再将这个布尔型变量的值赋给一个整型变量,得到的值是多少?

    试题描述 将一个整型变量的值赋给一个布尔型变量,再将这个布尔型变量的值赋给一个整型变量,得到的值是多少? 输入格式 一个整型范围内的整数,即初始时整型变量的值. 输出格式 一个整数,经过上述过程后得到 ...

  9. 计算机中逻辑运算用什么表示逻辑真,计算机逻辑运算和逻辑部.ppt

    <计算机逻辑运算和逻辑部.ppt>由会员分享,可在线阅读,更多相关<计算机逻辑运算和逻辑部.ppt(57页珍藏版)>请在人人文库网上搜索. 1.第二章计算机的逻辑运算符和逻辑设 ...

最新文章

  1. java加载图片到缓存_Android实现图片异步加载并缓存到本地
  2. 自动化监控--手动添加itme监控项详解
  3. Firefox3与WEB客户端开发相关的新特性
  4. c语言教程的辅导书,清华大学出版社-图书详情-《C语言程序设计案例教程学习辅导》...
  5. 暗影精灵4风扇转速调节_惠普暗影精灵 6、光影精灵 6 游戏本正式发布
  6. python自动化办公(五)实现将读取的excel数据写到word指定的地方:示例(劳动合同)
  7. war压缩命令_宝塔面板linux版解压WAR文件时,如何解压的三种方法介绍
  8. 公路多孔箱涵设计_双孔箱涵图集图纸
  9. python代码设计测试用例_《带你装B,带你飞》pytest成神之路2- 执行用例规则和pycharm运行的三种姿态...
  10. SQL数据库查询语句
  11. 常用运行命令win10
  12. vue刷新当前页面--provide / inject 用法
  13. 神经网络之反向传播算法(均方根反向传播算法RMSProp)
  14. python 均线斜率怎么计算_高频交易算法研发心得--均线算法
  15. frp点对点udp方式内网穿透ssh,不走服务器流量
  16. 电流源逆变器(CSI)的工作模态分析
  17. HTML5 - CSS背景属性、与CSS三大特性描述
  18. Subway UVA - 10691
  19. frp内网穿透服务使用
  20. 使用scp命令,远程上传下载文件/文件夹

热门文章

  1. 网站被K(降权)了怎么办?不妨试试这些方法
  2. 回顾腾讯电商路:马化腾之痛可否疗愈?
  3. 基于autojs7的亚丁号成语大家族辅助
  4. 网络安全需要掌握的知识有哪些?
  5. MoshUp安卓版来了
  6. 请不要忘记本质—ssl的握手方式
  7. R语言 grf包-heterogeneous treatment effect
  8. Acne Scarring Treatment
  9. 解决ROS包校验不符问题,国内易科ros源
  10. Exchange用户邮件状态跟踪