笔记19 练习28中的布尔表达式

笔记19 练习28中的布尔表达式

 

这一部分撞到我较为熟悉的内容了,ex28中每一段代码,就是一个完整的陈述语句。完整陈述句的特征,那就是它一定在真值上有一个确定的值,要么真,要么假。

构成语句的基本单位称为原子语句,你再也不能拆分了,如果要拆分,拆分后的结果就不是语句而是语词。

而用连接词连接而成的语句则是复合语句,它可以由原子语句构成,也可以由复合语句构成。只要你熟悉那些基本连接词的真值表,这些代码涵义就很好理解。连接词连接的只能是语句,所以,连接词左右两边都是语句,由not来否定的那些由括号来限定的符号串也是语句。

习题27中列出了4个连接词,分别是“并非”(not),“或者”(or),并且(and),还有“非或”(not or)。前面3个好理解,不用多做解释。这里特别说明一下“非或”。这个连接词实际上是对于“或者”连接词的否定,所以,你只要看看“或者”的真值表,和那个“非或”的真值表对着干就ok了。用教材的话讲,就是给它连接的那个语句值取反。

在练习28中由连接词组合成的表达式,可以是具体的语句,也可以是语句的值。在ex28的第一个语句,True and True这个复合语句中,True表述的是一个语句的值,因为任何一个陈述句都有真值,说它表示的是一个真语句,应该更为准确。这是在更为抽象普遍的意义上对于语句对象的运用,True有点像python中的一个变元,这个变元对应于一个语言中的任意一个真语句。所以在这个意义上,这个真值语句实际上也是一个函数。对于False,自然是完全类似的理解。

除了这个True和False之外,一个数学公式也是一个语句。所以,在这个练习28中,由等值符号==和不等值符号!=符号连接的数字也好,字符串也好,文字也好,它们都属于语句,一看就知道这些语句是取真值还是假值。例如2==1,自然是假值。而1 !=0,自然是真值。这些语句实际上就是真值变元所对应的具体语句,很容易判定语句的值。但在实际的自然语言当中,这样的判定就不是那么容易。所以,这个现实的世界之中,就常常有对于同样语句的不同理解,进而形成不同的观念群落。

布尔语句的训练真是一个逻辑体操,这个体操经过了几百年才形成今天这样的计算机语言。三百年前的莱布尼兹,他在德国,大概没有想到他的字符语言的构想会成为布尔代数。而大约200年前的布尔,他在英国,大概也没有想到,他把逻辑放到代数之中形成的布尔代数,然后由弗雷格、罗素、皮尔斯等人弄成成熟的符号逻辑。进而启发香农的逻辑电路理论,从而引发延续近100年的信息科技浪潮。

由此而大大提升了人类的智慧水准,让人类的科技传布全球,传布太空,人类的智慧真的很了不得。2020/04/19

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值