世界上不可能有比二进制更简单的计数方法了,它只有两个数字:0和1.从单纯数学的角度来讲,它甚至比我们的十进制更合理。但是,我们人有10个手指,使用起来比二进制(或八进制)方便的多,所以在进化和文明发展过程中人类采用了十进制。二进制的历史其实很早,中国古代的阴阳学说可以认为是最早二进制的雏形。而二进制作为一个计数系统,则是公元前2-5世纪时由印度学者完成的,但是他们没有使用0和1计数。
到17世纪,德国伟大的数学家莱布尼兹进一步完善了二进制,并且用0和1表示它的两个数字,成为我们今天使用的二进制。二进制除了是一种计数的方式外,它还可以表示逻辑的“是”与“非”。这第二个特性在索引中非常有用。布尔运算是针对二进制,尤其是二进制第二个特性的运算,它很简单,可能没有比布尔运算更简单的运算了。尽管今天每个搜索引擎都宣称自己如何聪明,多么智能,其实从根本上讲都没有逃出布尔运算的框框。
布尔是19世纪英国的一位中学数学老师,还创办过一所中学。后来在爱尔兰科克的一所学院当教授。生前没有人认为他是数学家,虽然他曾经在《剑桥大学数学杂志》上发表过论文。布尔在工作之余,喜欢阅读数学论著,思考数学问题。1854年,布尔的《思维规律》一书出版,这本书第一次向人们展示了如何用数学的方法解决逻辑问题。在此之前,人们普遍认为数学和逻辑是两个不同的学科,今天联合国教科文组织依然把它们严格分开。
布尔代数简单的不能再简单。运算的元素只有两个:1(TRUE,真)和0(FALSE,假)。基本的运算只有“与”(AND)、“或”(OR)、和“非”(NOT)三种(后来发现,这三种运算都可以转换成“与非”AND-NOT一种运算)。
也许你会有疑问,这么简单的理论能解决什么实际问题。和布尔同时代的数学家也有同样的疑问。事实上,在布尔代数提出后80多年,它确实没有什么像样的应用,直到1938年香农在他的硕士论文中指出用布尔代数来实现开关电路,才使得布尔代数称为数字电路的基础。所有的数学和逻辑运算,加、减、乘、除、乘方、开方,等等,全都能转换成二值的布尔运算。正是依靠这一点,人类用一个个开关电路最终“搭出”电子计算机。数学的发展实际上是不断的抽象和概括的过程,这些抽象了的方法看似离生活越来越远,但是它们最终能找到适用的地方,布尔代数便是如此。
摘自吴军的《数学之美》,边学习边分享,如有不足恳请指正!