1+1=2背后隐藏着形式抽象
小学时,老师问:张三一个苹果,李四一个苹果,他们两苹果放一起有几个苹果。
我们现在知道,这是 1+1 = 2的算术题,但是自以为很明白背后,忽视了另外一个更大的道理,即所谓灯下黑,以为自己找到答案了,就没有想到后面还有更深的道理,没有追问第一性原理。
我们重新梳理一下上下文:
- 张三一个苹果,李四一个苹果,他们两苹果放一起有2个苹果。
- 1+1 = 2
从直觉上看,这两段文字符号描述,明显第二种符号描述又少又精确,信息量少,也就是压缩了,这样节能又方便,缺点时,压缩带来损失,称为“有损压缩”。
回到我们主线,这两段文字比较下来,数字符号远远比文字符号更抽象。
那么这种抽象、或者称为压缩代表什么?
- 形式化
将第一段现实生活中的案例提取了数字形式,损失了“苹果”、“张三”和“李四”等有意义的内容。
这一步抽象对于很多孩子非常艰难,因为我们都是靠眼睛看世界、生存于这个世界,动物也是,一旦放弃那些有意义的内容,等同于我们的眼睛变成盲人,我们依赖生存的拐杖没有了,走出这第一步,对于很多人来说,意味着重生。
可惜高中教育并不能帮助我们走出这一步,反而让我们更深地陷入这个认知陷阱,更加依赖我们的眼睛,更加追求有意义的内容,没有发生的事情如果说出来,那是谣言,我们坚信我们与真相站在一起,反对一切谣言 谎言,其实我们自己已经陷入欲速则不达的认知陷阱中。
好了,说了这么多,你可能还不明白我们所说的“房间内有头大象”,我认为指出了小房间里藏着一头大象,你还是没有明白,没有看到,以为我在指鹿为马,那么说明你还处于实体认知陷阱中。
我再重新强调一下主线:
- 我们从一个生活常识,去除了很多内容词语
- 压缩成了简单数字。
这个过程称为形式化。
如果这一个例子还不能明白,那么重复发生几次,也许我们能发现一种模式,下面再看看另外一个例子。
实数与代数
如果说,实数已经是一种形式化抽象,那么代数则是实数基础上又一次形式化抽象。
- 实数类似实体,用数字 1、2的数字抽象代表实际世界中的物体
- 代数则类似数据表之间的关系,它研究的是实体(实数)之间的关系,所以关系数据库是代数的。
现在我们有了两次形式化抽象,从现实中的苹果语义形式化跳跃了两次:
- 1+1=2
- 1与1之间的关系:加号+
下面是关于我之前概念中几个重要概念求chatGPT论证:
1、代数是研究实数关系吗?
代数不仅仅是研究实数的关系。代数是数学的一个广泛分支,研究的是各种类型的数和数学对象之间的运算规则、性质和关系。这包括但不限于实数的关系。
代数研究的范围
- 实数和有理数的关系:这包括基本代数中常见的操作,如解方程、因式分解、多项式运算等。这些操作主要涉及实数和有理数。
- 复数:代数还研究复数及其运算。复数是形如 a+bia + bia+bi 的数,其中 iii 是虚数单位,aaa 和 bbb 是实数。复数的引入扩展了代数的研究范围,允许解决一些在实数范围内无法解决的问题。
- 抽象代数:代数也包括对更抽象的数学结构的研究,如群、环、域等。这些结构不再局限于具体的数值,而是研究各种集合与其运算规则。这些概念适用于很多不同的数学领域,超出了实数的范围。
- 线性代数:线性代数研究的是向量空间及其线性映射。这里的对象可以是实数、复数,甚至是更抽象的对象。线性代数应用广泛,如在物理、计算机科学和工程中都有重要应用。
代数的确研究实数之间的关系,但它的研究范围远不止于此。代数还涉及到复数、矩阵、向量空间,以及更为抽象的数学结构和概念。因此,代数是一个更广泛的领域,涵盖了对各种数学对象及其关系的研究。
2、代数=实数+上下文?
这个表达方式有些简化,但它可以在一定程度上帮助理解代数与实数之间的关系。我们可以把它理解为:
- 实数:是代数中的一个具体部分,代表数轴上的所有点,包括有理数和无理数。
- 上下文:这里可以理解为代数中的各种规则、运算、符号、结构以及它们之间的关系和应用。
代数的实际含义
代数不仅仅是研究实数,还包括研究符号和规则,这些符号可以代表实数、复数、变量,甚至更抽象的对象。代数处理这些符号和对象之间的关系和运算。
如果用公式类比
代数 ≠ 实数 + 上下文 更合适的表达可能是:
- 代数 ≈ 数学对象(如实数、复数、变量等)+ 运算规则 + 关系 + 结构
解释
- 实数:是代数中的一个重要部分,特别是在初等代数中,涉及实数的运算、方程求解等。
- 上下文:可以理解为代数所涉及的广泛内容,包括运算规则(如加减乘除)、方程、不等式、函数、矩阵、向量等。这个上下文还包括代数的各种应用和扩展,比如抽象代数中研究的群、环、域等。
总结
那么这些与DDD有什么关系?
- DDD = 实体数据模型 + 上下文BC
虽然关系数据库中,可以通过外键表达数据之间的关系,但是这只是最终结果输出,至于为何产生这种结果?这些原因就是业务逻辑和上下文,它存在于代码之中。
- DDD就是对这部分“业务逻辑和上下文”进行详细重点突出强调。
领域模型不只是简单的数据模型,它是数据模型的来源,大多数人只见过数据模型,很少人设计过领域模型。
- 意图被代码细节扰乱了
- 意图需要从隐藏的背后用形式化方法抽象出来。
形式化抽象可以说催生了文明:
- 建筑是凝固的音乐,音乐是流动的建模:这句话是在形式上的比较,建筑中流畅的线条是否与音乐音符和音调很类似呢?
- 印象派绘画是光的形式抽象,在许多印象派画作中,它们共同点是“追光”,用各种内容表达了光线这种形式铺撒在万物上的绚丽。
- 中国水墨画抽象出黑白形式,用它来表达山水、静物和生活各种内容。