“复合命题由一个或多个简单命题合成,那么其合成的方式,我们称之为‘联结词’。比如,‘这张卡片不是奴隶’,‘这张卡片是16岁以上的男人’,‘这张卡片是原籍福建或海南的人’,这是三个复合命题。”
“第一个命题,是对‘这张卡片是奴隶’这一简单命题的一种否定,合成方式是‘非’;第二个命题,由‘这张卡片是16岁以上的人’和‘这张卡片是男性’两个简单命题构成,合成方式是‘与’,也就是两个简单命题同时为‘真’时,复合命题为‘真’;而第三个命题,由‘这张卡片是原籍福建的人’和‘这张卡片是原籍海南的人’两个简单命题构成,合成方式是‘或’,也就是两个简单命题中的任意一个为‘真’时,复合命题为‘真’。”
“所以,我们有了联结多个命题使之成为更大命题的三种手段,与,或,非。其实还有另外两种,不过暂时与分类机的设计无关,这里先略过。”
“我们用符号来表示命题和联结词,则任何一项查询,都能表示为一个表达式。显然,令表达式为‘真’的卡片,就是我们要寻找的卡片。而分类机的作用,就是对所有卡片,判断这个表达式是否为‘真’。”
“因此,凡是我们的分类机能够判断‘真/假’的表达式,就是我们能够解决的问题,凡是我们的分类机无法判断真假的表达式,就是我们不能解决的问题。”
“这就是我们对这一问题的初步抽象。”
冯诺在黑板上写下了几个奇怪的符号v(或)、∧(与)、┐(非),看起来像是旋转了90度的大于号和小于号,还有倒过来的拉丁字母l。
“好,现在可以写一下
‘原籍福建或海南的人’这一命题的表达式了,海南是100,福建是122,所以我们令
命题a:‘地区码第1位为1’,
命题:‘地区码第2位为0’,
命题c:‘地区码第3位为0’,
命题d:‘地区码第2位为2’,
命题:‘地区码第3位为2’,
则,复合命题的表达式为:‘(a∧∧c)v(a∧d∧)’。”
“我们的分类机是如何判断真假的呢?是通过检验穿孔卡是否穿孔,也就是说,分类机的每个读卡单元,能够判断复合命题中的一个简单命题的真假。同时,通过一个控制继电器,我们可以让每个读卡单元,判断仅有1个‘非’联结词的复合命题,也就是一个简单命题的非命题的真假。”
“假如我们仅有1个读卡单元,那么仅此而已。但是现在我们有10个读卡单元,所以事情要复杂一些。不过仍然是可以分析的。请大家注意,每个读卡单元侧面的卡袋,装入的卡片的特点:
k号卡袋中的卡片,是1~k-1号命题的‘非’命题的‘与’、再‘与’k号命题。
经过k号读卡单元的剩余卡片,是满足1~k号所判断的命题的‘非’命题的‘与’。
1~k号卡袋里面的卡片,合起来是满足1~k号所判断的命题的‘或’。
假设我们的读卡单元所判断的简单命题(或简单命题的非命题)为p1,p2,...,p10。
则我们所能够判断的命题表达式为:
1号卡袋:p1
2号卡袋:┐p1∧p2
3号卡袋:┐p1∧┐p2∧p3
4号卡袋:┐p1∧┐p2∧┐p3∧p4
...
10号卡袋:┐p1∧┐p2∧...∧┐p9∧p10
最终剩余卡片:┐p1∧┐p2∧...∧┐p10
最后由于这些卡片被彼此分开,所以我们最终可以自由选择任意多个卡袋的卡片合在一起,也就是上述表达式之间的‘或’;其中最重要的,是从1~k号的连续k个卡袋中的卡片合在一起,其结果为:p1v...vpk,即以p1为开头的连续‘或’运算;
而经过k号读卡单元后机器上剩余的卡片,可表示为┐p1∧...∧┐pk,即以┐p1为开头的连续‘与’运算。”
“所以,凡是能变换成上述形式表达式的命题,就是分类机能够查找的,否则,就是分类机不能查找的。”
“我给加奈出的问题,找出三亚大区除奴隶以外的卡片,可以分解成如下的简单命题或简单命题的非命题:
命题a:‘地区码第1位不为1’,
命题:‘地区码第2位不为0’,
命题c:‘地区码第3位不为0’,