汉字 BPL:让记号参与思考

从熟悉的字义出发,把数学关系写成可组合、可执行的表达式。

Kenneth E. Iverson 把记号看作思考的工具。好的数学记号帮助我们看出共同结构,也让一个问题的解法提示另一个问题的解法。BPL 继承了 APL 的这个目标,用少量可组合的运算表达许多计算。

汉字为这种记号提供了熟悉的含义和紧凑的写法。我们读惯了连续的汉字,能够从中辨认有意义的组合。BPL 的汉字拼写沿用这个习惯。例如,平均数的定义可以一气写成 mean是加总除数。

本页讨论这些字怎样帮助表达数学思想。BPL 的语法和基本概念见快速入门。

先启用本次会话的汉字拼写,再运行下面的例子:

•prefs ["hanzi_aliases":$t]
mean是加总除数
mean 2 4 9
5

“mean 是加总除数”写出了平均数的关系:总和除以项数。是、加总、除、数 连在一起,各自的含义仍然可见。这个定义无需空格断开汉字。其他地方仍沿用 BPL 的空格规则。

这里探索的是有明确规则的数学记号。它借助熟悉的字义,并不要求每个表达式都符合日常汉语的语序。

从运算到运算方式

加、乘、除 的含义已经熟悉。用这些字写计算,读者可以直接从意义入手。

2加3
10加 1 2 3
5
11 12 13

在运算后面接上 总,表达“用它合成一个总结果”。加总 求和,乘总 求积。两者共有的计算方式由同一个字表达。

加总 2 3 4
乘总 2 3 4
9
24

累 则保留累积的过程。加累 是逐步累加,乘累 是逐步累乘。改变前面的运算,仍然保留同一种累积方式。

加累 2 3 4
乘累 2 3 4
2 5 9
2 6 24

把取较大值的 上 与 累 组合,便得到历史最大值。无须为它另记一个专用名称。

上累 3 1 4 2
3 3 4 4

遍:把同一件事做遍各组

各组都数一遍,写成 数遍,分别统计每组的项数。各组都求一次总和,写成 加总遍。同一个 遍 可以跟在 数 后面,也可以跟在已有的组合 加总 后面。

groups是[[1 2] [3 4 5]]
数遍 groups
加总遍 groups
[2 3]ₓ
3 12

总 合并成一个结果,累 保留逐步累积的结果,遍 分别处理每一项。掌握这几个组织计算的方式,就能与不同运算组合。加总遍 中的每个部分都能在别处复用。

让数学关系留在表达式中

己 提示“自身”。乘己 是自身相乘,也就是平方。平方和因而写成 加总乘己。

乘己 1 2 3
加总乘己 1 2 3
1 4 9
14

通常的数学记号写作 \(\sum_i x_i^2\)。汉字写法保留了求和与平方这两层关系,所用的 总、己 又能和别的运算组合。

开头的 mean是加总除数 同样保留了 \(\operatorname{mean}(x)=\operatorname{sum}(x)/\operatorname{count}(x)\) 的关系。总和与项数来自同一组数据,两者的比值就是平均数。读者能在表达式中辨认这几个部分,比较公式时也能直接看出哪些部分相同、哪些不同。

同一个乘,几种配对方式

逐项相乘、乘法表和内积都用到了乘法。把乘法保留在记号中,差别就集中在怎样配对、怎样合并。先看对应项相乘,再把乘积相加。

a是1 2 3
b是4 5 6
a乘b
加总 a乘b
a 加内乘 b
4 10 18
32
32

加内乘 直接说明内积的组成。乘 计算对应项的乘积,加 合并这些乘积。两个运算都写在式子里。

表 改用所有左右项两两配对。下面每行固定 a 中的一项,每列固定 b 中的一项。

a 乘表 b
 4  5  6
 8 10 12
12 15 18

再用 己 让两边都是从 1 到 9 的数,就得到熟悉的九九乘法表。乘、表、己 各自保留原来的含义。

乘表己至9
1  2  3  4  5  6  7  8  9
2  4  6  8 10 12 14 16 18
3  6  9 12 15 18 21 24 27
4  8 12 16 20 24 28 32 36
5 10 15 20 25 30 35 40 45
6 12 18 24 30 36 42 48 54
7 14 21 28 35 42 49 56 63
8 16 24 32 40 48 56 64 72
9 18 27 36 45 54 63 72 81

熟悉的含义,统一的组合

汉字通常以一个字对应一个完整的 BPL 符号。字义提示数学概念,组合规则确定计算。尽量让同一个字覆盖同一个符号的不同用法,可以减少需要记忆的词汇。含义相距太远时才另提供一个拼写。

汉字、原有符号以及适用的简繁体拼写可以混用。下面写的是同一次求和。

+/ 2 3 4
加总 2 3 4
加/ 2 3 4
9
9
9

mean是加总除数 可以作为一句紧凑的数学陈述来读。加总遍 把求和与分别处理放在同一个短式中。读者可以辨认组成部分,替换其中一个运算,再考察新的关系。这正是 Iverson 所追求的记号用途。汉字的熟悉含义与连续书写,为这样的思考提供了很合适的材料。