本文选自山西出版传媒集团·书海出版社2023年8月出版的《围棋学导论》(何云波、陈祖源、胡廷楣、李喆 合著)。为便于阅览,段落、标点和图片略有增改,不变本意。
围棋的规则之争
当今围棋界并行着两种规则:中国规则与日本规则(应氏规则基本上就是中国规则),由于韩国的近代围棋来自日本,因此韩国采用的也是日本规则。两种规则虽然在结果上大同小异,但这小异有时也会影响到胜负,更重要的是这差异背后是对围棋认识的差异,因此就很难通过协商的方式来解决了。下面我们先来分析这规则差异的本质。
围棋规则的差异的核心是围棋结果计算什么?我们且不管中国规则、日本规则,就围棋论而言围棋应该计什么?可以计什么?首先第一个想法:计谁吃的子多,这显然是最直接的想法。但这有一个问题,如果你吃了他1个子,他吃了你2个子,然后面对还很空旷的棋盘他不下了,这棋你再怎么下就定格在他赢你1子了。因此在这种规则下需要加一个规定:不准弃权。第二个想法:计谁在棋盘上活的子多。最后必然双方把棋盘全部填满,点数即得结果。我们可以把前者称为死子规则,后者称为活子规则。不过其实这两个规则是一样的,双方同样的落子,不弃权,双方着子数一样,而结果棋盘上你的棋子比他少,那当然是因为他吃的棋子比你多,死子活子是一件事情的两个面。
从围棋本质出发计活子(或者计死子)无疑是最直接最简明,也是最无可置疑,不会有任何问题的。但这里有一个小小的遗憾,通常当棋下到疆域已定的时候就结束了,那些空的地方用棋子一个个地填进去实在是很无聊的,对之只能以假设填了来解释,这不免有感觉之不足。于是产生了一个新的设想:空属邻子,那就不必填了。加了一个空属邻子,规则的简明度降低了,但它却是有重要意义的,下面我们以计算机逻辑的方式来分析。在计算机里如果计活子,空不填它就是不算的,假设填了云云,计算机是不懂的。怎么办?计算机只能通过「围了的空与活子等同」的方式来实现空的填子,而这正是空属邻子。空届邻子规则与活子规则有一个差别,活子规则每块活棋必须留出2个眼位不能计算,因为那里落子要死棋。而空属邻子,眼当然也属邻子,计算机当然也一样。计算机要实现活子规则又不填空,那它必须先计算空属邻子,再来扣除眼位。因此,虽然在理论上活子规则更简明,但在实际上空属邻子规则更简明。而且空属邻子规则实现了全棋盘361个点均有所属,这在理论上也比活子规则更完满。
总之,活子规则和空属邻子规则都是正常的可以选择的规则,实际上前者就是中国古代规则,后者就是现代的中国规则。那么日本规则是怎么回事呢?日本规则是数空的,但终局点数时要把死子填到自己的空里去,也就是说日本规则是空减死子规则。对比中国规则的空加活子,如果联想到前面说到活子规则和死子规则其实一样,只是一件事情的两种表达方式。我们应该很快就能够明白,空减死子规则和空加活子其实是等同的,这就是中国规则和日本规则大同之本质原因。
那怎么会有小异呢?前面说过,死子规则需要加一个规定:不准弃权。而日本规则没有这一条,问题来了。举一个规则之争的最典型例子:粘劫收后。
图1-8如果到终局只剩下A、B两处官子时,黑最简单的下法是粘B位的劫,然后白A位收后终局。但按中国规则就会想到先占A位再打赢B位的劫则A、B两处均可得到。但在日本规则下A点没有价值,单官无目,粘劫收后没有意义。如果双方差别细微时,在中国规则下A位一子就可能有胜负逆转之别,而在日本规则下就没有了。
中国规则与日本规则的另一实际差异是单方权利的单官。
图 1-9
如图1-9是双活棋,但里面的4个空点黑已经不能着子,否则就要死棋。而白可以在其中选择下两子,如A、B。剩下来的两点才是公共点。也就是说这里白方有两子的单方权利。但按照日本规则,且不说双活无目,单官也无目,这两子的价值就没有了。
不同的规则产生不同的结果本是无话可说,但当有些结果日本人自己也无法接受时就出问题了。不能实证死活,这才是日本规则的命门。最著名的例子就是盘角曲四。盘角曲四劫尽乃亡,到棋局结束时补完劫材再开劫,棋就杀死了。但在日本规则下补劫材要损目,怎么办?于是就规定不用补劫材直接判死。判死已经显示了规则的无能,何况如果棋盘上有双活这样的劫材是补不掉的,对局者有可以交换的选择权利。其实不能实证死活的毛病并不是盘角曲四那样特殊情况才出现。
图 1-10
简单地说,如图1-10,黑一子自然是不能活的,但如果黑不承认是死的,你去吃它需要下4个子,要减4目。也就是说局终棋盘上的死子只要硬挺着,你要吃就减目。这自然是所有围棋人都无法接受的。对此,日本规则只好规定:「地中的对方的死子,没有必要将其围住后提取,可以不着手而直接提去。」
「不着手」怎么就可以「直接提去」?「不着手」怎么证明它是「死子」?这种诡辩逃避式的说辞,只认逻辑的计算机是不认可的,是不可能做到的。因此,围棋进入计算机的时代,日本规则就被边缘化了。举世瞩目的AlphaGo与李世石人机大战的新闻报道中有一则消息:「本次比赛采用中国规则,黑贴3又3/4子。」一个美国的公司在英国的一个团队开发的围棋程序,在韩国与韩国棋手比赛,却采用中国规则,就是明证。在日本规则下,另外还有一些令他们自己也无法解释、无所适从的情况,如「不提三目」、Matti Silvola问题等,读者可参见《围棋规则演变史》(陈祖源著,2007年上海文化出版社)。
而产生所有这些差异、疑难、疑惑的根本原因,就是计算时采用了「死子」规则却漏了「不准弃权」。如果加上了「不准弃权」,那么种种疑难、疑惑均不存在,当然如粘劫收后和单方权利单官等,也和中国规则一样了。因为死子和活子本来就是一件事情的两个方面,本来就应该是一样的。
那怎么会有这样的一个日本规则的呢?原来那死子规则本来就是活子规则的一个简化操作方式。一盘棋总是死子比活子少,而且通常要少好多,因此计算死子要简单得多。至少在唐朝的时候,这样的规则在中国就普遍地使用了。日本围棋学自中国,现代的日本围棋是由来中国学习的遣唐使带回去的,「围棋创自尧舜,由吉备公传来」,这是日本棋界公认的。这样的规则也成为了日本围棋的规则。唐朝的棋谱还有传到现在的,如唐代棋待诏阎景实对顾师言的「金花碗图」,上面有详细的胜负计算,就是空扣减死子的,但上面有一句「各一百二十二着」,明确指出双方落子数必须相等(读者可参见《围棋规则演变史》)。但日本在流传过程中渐渐地丢失了着子相等这个重要原则。这就是现代两种规则之争的本质所在。
欧美的围棋是由日本传过去的,现今从围棋的「go」到各种术语都还深深地印刻着日语词汇的痕迹,规则也是如此。但是随着对规则的深入研究,他们认识到了日本规则的问题,开始制定自己的规则。如美国、英国、法国等都有了自己的规则,仍然是日本式的数空规则,但是都加上了一条:着子相等,如弃权必须把弃权之子视作死子。也就是说,在结果上回归到和中国规则等同了。现在Alphago也用中国规则了。虽然日本、韩国还坚持着日本规则,但围棋规则之争的结果已经是明明白白的了。