(10)逻辑与开关

一:三段论

亚里士多德认为:逻辑是与真理相关的某种事物,逻辑是在追求真理的一种方法,因此逻辑被人们认为是一种哲学形式。

亚里士多德逻辑学的基础是三段论:

所有男人都必有一死;

苏格拉底是男人;

因此,苏格拉底必有一死。

在三段论中,首先假设前两个条件是正确的,依此推断出第三个条件也是正确的

二:传统代数与布尔代数

大多数人都是通过逻辑思考问题,如果我们找到了一种数学方法来描述逻辑,那么我们就可以用数学描述大脑的工作了。这在当时非常先进。

传统的代数,是处理数字的,比如豆腐的重量,苹果的数量,火车行驶的距离等等。


布尔将代数从数的概念中抽离出来,使其更加抽象。布尔代数,计算的不是数,而是,后来被称为集合

如:我们可以使用M代表公猫,使用F代表母猫。在布尔代数中,也有+和x。我们知道了在传统代数中,如何乘除,那么在类中如何乘除呢?

其实,在布尔代数中,没有实际意义上的乘和除。

+代表两个集合的并集,为了区别传统代数,使用U表示并集。

x代表两个集合的交集;为了区别传统代数,使用∩表示交集。

在布尔代数中,1代表全集,0表示空集。

布尔代数,与传统代数最大的区别就是这样一个表达式:

FXF=F   即F与F的交集还是F,而在传统代数FXF=F^2。

再次说明:布尔将代数从数的概念中抽离出来,使其更加抽象。布尔代数,计算的不是数,而是类,后来被称为集合

三:布尔代数的应用

假设你现在进入了一家宠物店。

对店员说:“我想要一只公猫,已经绝育的,白色褐色都可以,或者一只母猫,已绝育,除了白色任何颜色都可以,或者,只要是黑猫都可以。”

M:公猫   N:绝育  W:白色  T:褐色  F:母猫   B:黑色

店员于是列出了你的集合:

(M X N X (W+T)) + (F X N X(1-W))+B:

为了便于自然语言的交流:我们将并集换成OR,将交集换成AND,1-换为NOT

(M AND N AND (W OR T))

OR 

(F AND N AND NOT W)

 OR B

当然,为了更简便,我们可以使用数字来代替。

此时,店员拿出来了一只未绝育的褐色公猫

(1 X 0 X(0+1)) + (0 X 0 X (1-0))+0

化简:0+0+0=0  显然,不符合要求(默认0未NO,1未YES

根据此计算标准,店员又拿出一只猫:灰色母猫,绝育

带入公式,等于1.符合要求。

终于选好了一只猫,那么,选猫的时候,能不能不计算,使用电路来表示呢?

两个开关串联,是 与 AND 

两个开关并联,是 或 OR

(M AND N AND (W OR T))

OR 

(F AND N AND NOT W)

OR B

这样,这个式子就可以使用开关电路来表示了。

AND串联,OR并联。只要按照店员的连接方式,就可以将电路连接好,灯泡亮,则选择成功,灯泡不亮,则失败。







你可能感兴趣的:((10)逻辑与开关)