布尔逻辑

使用方式

使用集合代数作为介绍布尔逻辑的一种方式。还使用文氏图来展示各种布尔逻辑陈述所描述的集合联系。

设 X 是一个集合:

元素是一个集合的成员。表示为 <math>\in</math>。如果它不是这个集合的元素,表示为 <math>\notin</math>。

全集是集合 X,有时表示为 1。注意使用全集这个词意味着"虑及的所有元素",同"现有的所有元素"一样不是必然的。

空集或 null 集合是没有元素的集合,表示为 <math>\varnothing</math>,有时表示为 0。

一元算符应用于一个单一的集合。有一个一元算符叫做逻辑非(NOT)。它的作用是采用补集。

二元算符应用于两个集合。基本的二元算符是逻辑或(OR)和逻辑与(AND)。它们进行集合的并集和交集。还有其他衍生的二元算符,比如逻辑异或(XOR)(排他的或)。

子集表示为 A <math>\subseteq</math> B,意味这在集合 A 中所有元素都在集合 B 中。

真子集表示为 A <math>\subset</math> B,意味着在集合 A 中的所有元素都在集合 B 中,并且两个集合不等同。

超集表示为 A <math>\supseteq</math> B,意味着在集合 B 中的所有元素都在集合 A 中。

真超集 表示为 A <math>\supset</math> B,意味着在集合 B 中的所有元素都在集合 A 中,并且两个集合不等同。

例子

设图像为集合 A 包含"全集"中所有偶数(二的倍数),集合 B 包含"全集"中所有三的倍数。则两个集合的交集(在集合 A AND B 中所有的元素)将是"全集"中所有六的倍数。

集合 A 的补集(所有不在集合 A 中的元素)是"全集"中所有的奇数。

把运算连接起来

尽管在任何布尔运算中都最多有两个集合参与,从这个运算所形成的新集合可以接着与其他集合联合起来实现另外的布尔运算。使用前面的例子,我们可以定义一个新集合 C 作为"全集"中所有五的倍数的集合。所以 "集合 A AND B AND C" 将是"全集"中所有 30 的倍数。如果为了更方便,我们可以把集合 AB 当作集合 A 和 B 的交集,或者说"全集"中所有六的倍数的集合。那么我们可以称 "集合 AB AND C" 是"全集"中所有 30 的倍数的集合。我们接着进一步的把这个结果叫做集合 ABC。

使用圆括号

尽管任何数目的逻辑 AND(或任何数目的逻辑 OR)可以被连接在一起而没有歧义,AND 和 OR 和 NOT 的组合可以导致歧义的情况。在这种情况情况下,可以使用圆括号来分清运算的次序。永远是最内的括号内的运算先进行,随后是外层的括号以此类推,直到在所有的括号内运算都完成。接着进行括号外的运算。

性质

为两个主要的二元运算的符号定义为 <math>\land / \cap</math> (逻辑与/交集)和 <math>\lor / \cup</math> (逻辑或/并集),把单一的一元运算的符号定义为 <math>\lnot</math> / ~ (逻辑非/补集)。我们还使用值 0 (逻辑假/空集)和 1 (逻辑真/全集)。下列性质适用于布尔代数和布尔逻辑二者:

<math>a \lor (b \lor c) = (a \lor b) \lor c </math> <math>a \land (b \land c) = (a \land b) \land c </math> 结合律

<math>a \lor b = b \lor a </math> <math>a \land b = b \land a </math> 交换律

<math>a \lor (a \land b) = a </math> <math>a \land (a \lor b) = a </math> 吸收律

<math>a \lor (b \land c) = (a \lor b) \land (a \lor c) </math> <math>a \land (b \lor c) = (a \land b) \lor (a \land c) </math> 分配律

<math>a \lor \lnot a = 1 </math> <math>a \land \lnot a = 0 </math> 互补律

<math>a \lor a = a</math> <math>a \land a = a </math> 等幂律

<math>a \lor 0 = a </math> <math>a \land 1 = a </math> 有界律

<math>a \lor 1 = 1 </math> <math>a \land 0 = 0 </math>

<math>\lnot 0 = 1 </math> <math>\lnot 1 = 0 </math> 0 和 1 是互补的

<math>\lnot (a \lor b) = \lnot a \land \lnot b</math> <math>\lnot (a \land b) = \lnot a \lor \lnot b</math> de Morgan 定律

<math> \lnot \lnot a = a </math> 卷绕律(involution

真值表

布尔逻辑只使用两个值 0 和 1,这两个值的交集和并集可以使用真值表定义如下:

<math>\cap</math> 0 1

0 0 0

1.0 1

<math>\cup</math> 0 1

0 0 1

1.1 1

也可以建立涉及多个输入和其他布尔运算的更复杂的真值表。

真值表应用在逻辑中,解释 0 为假,1 为真,<math>\cap</math> 为与,<math>\cup</math> 为或,而 &not; 为非。

其他记号

可以使用各种样式的基本算符来表达布尔逻辑。AND(与)、OR(或)、NOT(非)是最直觉的。数学家、工程师和程序员经常使用 + 表示或,<math>\cdot</math> 表示与(因为在某些方面这些运算类似于在其他代数结构中的加法和乘法,并且这种记号使熟悉普通代数的人易于得到积之和范式)。非也表示为在要否定的表达式顶上的一个横线。

另一种记号使用"交"表示与使用"并"表示或。但是这会导致混淆,因为术语"并"也经常用于合并集合的另一个布尔运算,它包括了与和或二者。

布尔术语的基本数学使用

在联立方程的情况下,它们是用暗含的逻辑与连接的:

x + y = 2

AND

x - y = 2

同样适用于联立不等式:

x + y < 2

AND

x - y < 2

大于等于号(<math>\ge</math>)和小于等于号(<math>\le</math>)可以假定包含了一个逻辑或:

X < 2

OR

X = 2

加/减号(<math>\pm</math>),在平方根的解的情况下,可以被看作是逻辑或:

WIDTH = 3

OR

WIDTH = -3

在计算机中布尔逻辑定义若干布尔逻辑函数,有时候称为操作符。每个函数根据一个或者更多的输入,用一个逻辑算法来计算输出值。该算法根据输入所取真和假的组合来决定什么时候输出真(0真1假;1真0假。相对的)。每个逻辑函数类似于一个现实世界的逻辑运算,可以用来定义各种逻辑的情况。

1 非(NOT)

函数:NOT 仅是一个否定;输出与输入的相反。(NOT函数仅有一个输入,故称为一元函数或者一元操作符)。当输入为假,输出是真,反之亦然。NOT函数逻辑上表达一个条件的反面。

2 与 ( AND)

函数:AND 可以有任意多个输入,但最少是两个。仅当AND函数的第一个、第二个和第三个输入等都是真,它的输出才是真。

3 或 (OR)

函数:OR可以有任意多个输入,但最少是两个。OR函数无论何时只要一个输入中出现了真,输出就是真。

4 异或 (XOR)

函数:XOR是OR的变体。仅当一个输入或者另一个输入是真,但不是两者都为真(既如果输入是不同的),它的输出才为真。

(0)

相关推荐

  • 程序员学数学读哪本书?

    在互联网一直流传了一个这样的段子-- "一流程序员靠数学,二流靠算法,三流靠逻辑,四流靠SDK,五流靠Google和StackOverFlow,六流靠百度和CSDN.低端的看高端的就是黑魔法 ...

  • SCL语言基本语法规则:表达式

    SCL:Structured Control Language,结构化控制语言. SCL是一种类似于计算机高级语言的编程方式,只是这种语言编写的程序,可以在PLC中运行.如果学过C语言或者VB语言,就 ...

  • 精通Excel数组公式012:布尔逻辑:AND和OR

    excelperfect 导言:本文为<精通Excel数组公式(学习笔记版)>中的一部分内容节选.如果你想要系统学习并熟练掌握Excel数组公式,可以到知识星球App的完美Excel社群下 ...

  • 一款工具,提升你的逻辑思维能力

    内容来源:本文为六人行图书出品书籍<培养你的逻辑脑>书摘,作者为宋欣桐,笔记侠作为合作方,经出版社审核授权发布. 作者简介:宋欣桐,个人发展学会专家合伙人,工商管理硕士,知名考研辅导机构一 ...

  • 心理学: 老实人活该被欺负? 原来他们是这样的生存逻辑

    生活中经常存在这样一些人,他们相对胆小懦弱,害怕竞争,不敢表达,总是吃亏,不会拒绝,我们把这类人,统称为"老实人". 所谓"可怜之人必有可恨之处",这种人看着可 ...

  • 财务经理必须具备的表达逻辑,对工作很有帮助(建议收藏)

    作为财务经理,在努力负责公司的所有账务的同时,也需要一些职场的沟通.不仅是对老板的,还有对员工的,要处理好在公司的人际关系. 小编特地收集了干货满满的表达框架,将结构和逻辑完美结合,让你轻松表达要点, ...

  • 陈辉:字与画的逻辑关系

           中国文字是从新石器时代远古人类的图画中分流而来的,进而演变成为象形文字,再经过抽象提炼,以线条为主要艺术表达形态,是独立发展成型的一个艺术门类.书法和绘画之间因为很多的共性,始终存在着相 ...

  • 长销的秘密:螺蛳粉和酱香酒的走红逻辑

    我是在南昌读的大学.作为一个地地道道的北方人,南昌拌粉是我对米粉这种食物最早的认识,至今也是最美好的回忆之一.工作以来,因为出差的关系,打卡过众多省市的米粉,诸如长沙米粉.桂林米粉.柳州螺蛳粉.重庆酸 ...

  • 强推5本无敌流网络小说:咱别管什么逻辑,看得爽才是硬道理

    相信很多朋友看小说,就是一个简单的目的:消遣时间.既然是消遣时间,就希望看一些轻松愉快,不要来什么压力现实的东西. 好不容易看个小说,要是看得不爽,那还不如花时间去看名著呢!所以小白文事实上是有着存在 ...

  • 人性最荒唐的四大逻辑

    ▲ 音乐与美文的跨界混搭,你有调,我有谱. 人性最荒唐的四大逻辑 1 好人难做 你做了一辈子好事,忽然干了一件"坏事",那么你一生做的所有好事都会被清空,大家会指着鼻子骂你. 但是 ...

  • 《天幕红尘》叶子农的出离智慧的底层逻辑是什么?

    #21天图文打卡挑战# <道德经>道生一,道是先天地生的,混沌,一则是万千万物发展的规律,天道.地道.人道,王道.世道.平常道,每个道中都有一个一,而这个一就是规律,规则. 道生一.一生二 ...