我心中的“统一场”:关于状态机札记一则

现代社会的大分工,让行业之间竖起了越来越高的信息壁垒。不同学科领域的知识不断细分,一个人终其一生,也难以穷尽其万一。然而,就在这些看似迥异的领域深处,我却屡屡撞见同一副框架,一种朴素到几乎透明的结构:基本原子,加上变换规则。

数学里,数域中的数是原子,加法、乘法、指数……不同性质的运算便是不同的规则。素数不可再分,像一张网上的结,而每一个合数都是从单位元出发,沿乘法的路径辗转到达的终点。化学里,百余种基本元素是原子,化学键的断裂与重组是规则。它们构成了整个物质世界,每一种分子都是一个状态,每一则反应都是一条有向边。编程语言从设计之初就是一台自知的状态机:字符、token、语法节点一层层构成基本元素,而语法和语义则规定了转移的规则。代码写下那一刻,程序运行将在这些状态之间按规则辗转迁徙。自然语言也同样如此,词汇是原子,语法是规则,从起始符号出发,经由一系列重写,最终展开来成为我们能听懂的句子。

这些领域不同,底层的逻辑却一致。在计算机科学中,这套直觉恰好有一副精确的框架:状态机。一个确定型状态机,形式上由五个部分构成,可以记作一个五元组:

M=(Q,Σ,δ,q0,F)M=(Q,\Sigma,\delta,q_0,F)

其中,QQ是状态集,记录了系统所有可能的存在形态;Σ\Sigma是输入字母表,那些推动状态变迁的基本元素;δ:Q×ΣQ\delta: Q \times \Sigma \rightarrow Q是转移函数,定义在某个状态读到某个输入时,下一步该往哪里去;q0Qq_0 \in Q是初始状态,是所有故事的起点;FQF \subseteq Q是接受状态集,是所有合法终点的集合。

这种视角的迷人之处,在于它揭示了复杂性的起源。一小撮原子和一小组规则,反复应用,竟能生成无限广阔的可能性空间。素数无穷,分子无穷,程序无穷,句子也无穷……。有限的手段,却可以创造出无限的运用。而这,也给了我一种启示:探究某个系统时,如果面对巨大的复杂性不知所措,不妨向下寻找那些基本的元素和规则,或许会让我在迷雾中找到锚点

这副框架,大概就是我用来理解世界的“统一场”吧。