什么是逻辑,什么是"逻辑或";"逻辑非";"逻辑与"

  “!”(逻辑非)、“&&”(逻辑与)、“||”(逻辑或)是三种逻辑运算符。“逻辑与”相当于生活中说的“并且”,就是两个条件都同时成立的情况下“逻辑与”的运算结果才为“真”。“逻辑或”相当于生活中的“或者”,当两个条件中有任一个条件满足,“逻辑或”的运算结果就为“真””逻辑非“就是指本来值的反逻辑运算符把各个运算的变量(或常量)连接起来组成一个逻辑表达式。
  逻辑运算符有4个,它们分别是什么是逻辑:!(逻辑非)、||(逻辑或)、&&(逻辑与)^(异或)。在位运算里面还有&(位与)、|(位或)的运算。什么是逻辑运算--逻辑运算用来判断一件事情是“对”的还是“错”的,或者说是“成立”还是“不成立”,判断的结果是二值的,即没有“可能是”或者“可能不是”,这个“可能”的用法是一个模糊概念,在计算机里面进行的是二进制运算,逻辑判断的结果只有二个值,称这二个值为“逻辑值”,用数的符号表示就是“1”和“0”。
  其中“1”表示该逻辑运算的结果是“成立”的,如果一个逻辑运算式的结果为“0”,那么这个逻辑运算式表达的内容“不成立“。

   布尔逻辑得名于 George Boole,他是 College Cork 大学的英国数学家,他在十九世纪中叶首次定义了逻辑的代数系统。现在,布尔逻辑在电子学、计算机硬件和软件中有很多应用。在 1937 年,Claude Shannon 展示了布尔逻辑如何在电子学中使用。
  

集合代数和文氏图

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

设 X 是一个集合:

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

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

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

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

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

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

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

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

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

性质

为两个主要的二元运算的符号定义为 \land / \cap (逻辑与/交集)和 \lor / \cup (逻辑或/并集),把单一的一元运算的符号定义为 \lnot / ~ (逻辑非/补集)。
  我们还使用值 0 (逻辑假/空集)和 1 (逻辑真/全集)。

布尔就是有2个值的量

它属于逻辑

2022-06-09

2022-06-09