我喜欢追本溯源,渴望真理,而不至被表象迷惑。
这篇文章未写完。可能计划读一下《计算机的数学基础》这本书再写。
计算机的数学基础
形式语言与自动机理论、可计算理论、逻辑学和程序设计理论,都是研究计算模型的。它们之间也是相互关联的,共同构成了现代计算机科学技术的理论基础。这些理论都是属于数学学科的。
形式语言与自动机理论、可计算理论和逻辑学的研究都始于20世纪初叶,特别是20世纪30年代的数学家Church(邱奇)、GMel(哥德尔)、Kleene(克林)、Post(波斯特)以及Turing(图灵)等人的杰出工作催生了现代电子数字计算机的硬件和软件的诞生。
程序设计理论的研究相比则要迟一些,是20世纪后半叶现代电子数字计算机以及程序设计语言和软件诞生之后的事情了。它是专门研究程序设计语言和程序设计方法的数学理论。这些工作对于计算机科学的实践和理论的发展有着深远的影响。比如,图灵机模型就被证明是现代电子数字计算机的理论模型。这些先驱者的工作在今天看来似乎是很平常的,它们的思想渊源甚至并不为今天众多的计算机的使用者所知道。但是这些先驱者的工作确实是应该被那些从事计算机科学技术的工作者们所熟悉、所掌握的。
语言和逻辑
人类由猿进化成人,成为灵长类的智慧生物,是进化的奇迹。语言在数百万年的进化进程中,在人类这台大自然打造的“生物机器”中,也不断的进化,相互促进,形成目前人类拥有的——自然语言。
语言,我认为它的本质是承载信息的载体。它可以装载情感、请求、命令、陈述等。
自然语言是丰富而复杂的,同一句话,不同的语境、时间、预期所要传递的信息是多样的。这里面很多段子就不一一罗列了。根本原因是自然语言属于人类,它适应人类文明。自然语言的信息传递,依赖于外界环境。语言和它所传递的信息之间,没有一对一的关系,就像算命先生算命,用些模棱两可的话说给你听,还有些星座算命也是一样的,听、读的人接受信息的背景差异,导致相同语言传递的信息千差万别。
语言的诞生,促进了文明发展,萌生了逻辑、推理。先哲用语言讲理,随着理讲得越多,人们发现要讲好道理,首先要做好陈述。没有可靠的陈述作为前提,再完美的论证过程也只是空中楼阁。因此逻辑学逐渐放大研究视野,将语法和词汇承载的信息也纳入到研究范畴中。他们(我不知具体是哪些人)得出:人类使用的陈述句、疑问句、感叹句、祈使句,在着重考虑陈述和论证,就只需要陈述句了。小学学过的,各种句型互转就明白。比如:“你是谁?”,陈述句为:“我希望知道你是谁”。感叹句:“好美的女子!”,陈述句:“女子的美丽让我感叹”。
逻辑、推理进步,让自然语言作为信息传递载体做了一次丢弃,仅留下陈述句。本身语言其实就是一种和承载信息间的“指代”和“映射”。接下来对陈述句的组成部分进行拆解,仅仅做简单拆解。
代词。所谓代词就是用于代替对象的词汇,替代具体的对象出现在语句中并表示被代替的对象。比如,“月球绕地球公转,它的自转周期和地球自转周期相同”。“月球”指代我们想指代的那个对象,“它”指代月球,代词可以是指代的指代,代词的作用和语境有关。
名词。词典中约定词汇含义的方法是用一个固定句式的语句来描述它。比较简单的做法是用“某词是什么意思”的句式把词汇的含义表达出来。
谓词。一类可以将语句中其他成员建立起联系的词。“我喜欢你“,“我在写”,“我写文章”。(个人理解,可能不当)。
接下来讨论语言中的逻辑。单纯的判断你一句话是否是真或假,是没有固定结论的,因为结论依赖于说话的场景。所以,在纯逻辑层面,我们去讨论真假,就只关注语言内部的自恰性了。所以,论述的起点,它必然是整个推理的基石。在没有任何已知前提的情况下,逻辑不能给我们任何新的知识。因此必须在已经有一些已知信息的情况下,我们才能运用逻辑。题外话,基石在很多科幻电影,比如“西部世界”中很多接待员的底层都一个他们行为的基石概念。
先哲们逐步定义了一门叫数理逻辑的学科。 其研究对象是对证明和计算这两个直观概念进行符号化以后的形式系统。
https://baike.baidu.com/item/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%A7%91%E5%AD%A6%E7%9A%84%E6%95%B0%E5%AD%A6%E5%9F%BA%E7%A1%80/866204?fr=aladdin