布尔逻辑

✍ dations ◷ 2025-09-19 01:59:32 #逻辑,代数逻辑,布尔代数,形式逻辑系统

布尔逻辑(英语:Boolean algebra)得名于乔治·布尔,他是爱尔兰科克的皇后学院的英国数学家,他在十九世纪中叶首次定义了逻辑的代数系统。现在,布尔逻辑在电子学、计算机硬件和软件中有很多应用。在1937年,克劳德·艾尔伍德·香农展示了布尔逻辑如何在电子学中使用。

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

设是一个集合:

设图像为集合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的组合可以导致歧义的情况。在这种情况下,可以使用圆括号来分清运算的次序。永远是最内的括号内的运算先进行,随后是外层的括号以此类推,直到在所有的括号内运算都完成。接着进行括号外的运算。

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

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

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

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

同样适用于联立不等式:

在把英语句子转换成形式的布尔语句的时候要小心。很多英语词语不精确的意义可能导致多种逻辑结果,例如英语单词NOT(非):“所有闪光的东西不是金子。”可以解析为以下不同的逻辑表达:

作为英语单词的AND(与)和OR(或)在特定情况下是可以互换使用的:

还要注意在英语中单词OR(或)可以分别对应于逻辑表达中的或(OR)(此亦彼亦)和异或(XOR)(此即彼非),具体意思要依赖于上下文进行判断:

在规定计算机程序或者电子电路时,如何使用英语准确描述其功能逻辑是个关键问题。例如,对于功能“程序应校验申请者已经选择取了男性或女性单选框”,应当被当作一个异或(非此即彼)逻辑(即“程序应校验申请者已经选择取了男性或女性选项,并且此二选项互相排他”),则程序语句须特别限定“二者之间只有一个能被选择”来确保校验功能的实现;假如将其混为或逻辑(此亦彼亦),则该校验功能有可能被错误地实现,造成申请者同时选择两个选项、而校验依然通过。

在其他非技术语言的情况下,对于一段英语文字的解释可能包含更多的不确定性,可能需要深入探讨、以确保明晰该段文字背后所含的逻辑意义的多种可能性。

布尔逻辑还在电子工程中的电路设计中使用;这里的0和1表示在数字电路中某一个位的不同状态,典型的是高和低电压。使用包含变量的表达式描述电路,并且对于这些变量的所有的值两个这种表达式是等价的,当且仅当对应的电路有相同的输入-输出行为。进一步的说,每种可能的输入-输出行为都被建模为适合的布尔表达式。

基本的逻辑闸比如与闸、或闸、非闸可以单独使用,或者联合成与非闸、或非闸和异或闸来控制数字电子和电路。这些闸的串联或并联控制了运算的优先级。

关系数据库使用SQL语言,或者其他特定于数据库的语言,来进行查询,它可以包含布尔逻辑。对于这种应用,在表中每个记录都可以被当作"集合"的"元素"。例如,在SQL中,下列SELECT语句被用来从在数据库中的表格中检索数据:

在有多个运算出现的时候,可以使用圆括号来明确的指定布尔运算发生的次序:

在需要的时候可以使用嵌套的圆括号。

联合两个(或更多)表格的任何布尔运算在关系数据库术语中都被称为连接。

对于这种应用,在互联网上的每个web页面都被当作是"集合"的"元素"。各种在线搜索引擎使用各自不同的语法。下面描述Google使用的语法。

相关

  • 统计学统计学是在数据分析的基础上,研究测定、收集、整理、归纳和分析反映数据数据,以便给出正确消息的科学。这一门学科自17世纪中叶产生并逐步发展起来,它广泛地应用在各门学科,从自
  • 正电子发射电脑断层扫描正电子发射计算机断层扫描(英语:Positron emission tomography,简称PET)是一种核医学临床检查的成像技术。PET技术是当前唯一的用解剖形态方式进行功能、代谢和受体显像的技术,具
  • 特伦蒂诺-上阿迪杰特伦蒂诺-上阿迪杰(意大利语:Trentino-Alto Adige,发音:,德语:Trentino-Südtirol; 拉登语:Trentin-Südtirol),非正式名称特伦蒂诺-上阿迪杰/南蒂罗尔,是意大利北部的一个自治区。自
  • 欧罗巴龙欧罗巴龙属(属名:Europasaurus)是种原始腕龙科恐龙,属于蜥脚下目,是种四足草食性恐龙。它们生存于侏罗纪启莫里阶的德国北部,地质年代约1亿5400万年前。欧罗巴龙被认为是种因岛屿
  • 段成式段成式(803年?-863年),字柯古,唐代博物学家、诗人、官员。邹平(今属山东滨州)人。后随父徙宜城。世家子弟,遍览群书,善于佛学。官至太常少卿。段成式善于诗歌骈文,与李商隐、温庭筠齐名
  • 花王戒《花王戒》(韩语:화왕계)是《三国史记·列传第六》收录的新罗文人薛聪所作的一篇骈文寓言(《东文选》亦以《讽王书》之题名收录此文)。薛聪是“新罗十贤”之一,写过很多文章,但只有
  • 项城市项城市,是中华人民共和国河南省周口市下辖的一个县级市。全市面积1083平方公里,总人口121(2011年)万人,共辖有466个行政村。项城市位于河南省东南部,居黄河冲积平原南部,淮河主要支
  • 小嶝岛小嶝岛为中国福建外海岛屿,行政区划上属中华人民共和国福建省厦门市翔安区大嶝街道。小嶝岛本属泉州府同安县翔风里,1912年属思明县,1914年属金门县。1949年被解放军占领。2003
  • 花耶菜花椰菜(学名:Brassica oleracea L. var. botrytis L.、英语:Cauliflower),又称菜花、椰菜花,十字花科芸薹属的物种,是一种常见的蔬菜,是甘蓝的变种。花椰菜的头部为白色或绿色花序,与
  • 宿务岛宿务岛是菲律宾的岛屿,距离首都马尼拉587公里,由宿务省负责管辖,属于维萨亚斯群岛的一部分,长250公里、宽45公里,面积4,468平方公里,最高点海拔高度约1,000米,2007年人口3,850,989