Saturday, October 07, 2006

寓理于算,不证自明

有许多这类例子。
如《九章算术》中的凫雁相逢(凫就是野鸭):

“今有凫起南海,七日至北海;雁起北海,九日至南海。今凫雁俱起,问何日相逢?
答曰:三日十六分日之十五”

中国古代数学喜欢把各种实际问题分类,概括为算法。算法就是解决一类有共同特征的问题的规范程序。凫雁相逢的算法叫作“齐同术”:“按此术,置凫7日一至,雁9日一至,齐其至,同其日。定63日凫9至,雁7至。今凫雁俱起而问相逢者,是为共至。并齐以除同,即得相逢日。”

翻译成现在的伪代码形式:
(1)同其日; # 把63天作为同其日
(2)齐其至; # 63天凫9至,而雁7至
(3)并齐; # 并齐7 + 9
(4)并齐以除同; # 并齐以除同就是 63除以16
(5)得相逢日; # 得答案

在现代组合学中使用算法作为证明的过程已经成立标准方法,如图论中的一个基本定理“最大流-最小割”定理(Max-flow Min-cut
Theorem)也叫Ford-Fulkerson Algorithm,就是这样的。这跟中算的“寓理于算,不证自明”的方法不谋而合!

中国古代数学区别于公理化数学的最重要的特征在于,中国数学是面向算法的,根据各类实际问题的共同特征概括为规范的算法,所以中国数学主要是研究算法的:如今有术、衰分术、更相减损术、变分术、方程术、盈不足术、割圆术、方程术、大衍求一术和勾股术等等。

以下可做参考。
来源:http://www.frchina.net/data/detail.php?id=12125
作者:傅海伦
出处:北大科学史与科学哲学

“中 国的筹算体系和模式在宋元时期达到数学的高峰在很大程度上是算法机械化达到最高水平。贾宪三角和增乘开方法是对《九章》以来开方程序的重大提高和创造, 秦九韶的正负开方术又把增乘开方法发展到十分完备的境地,其大衍求一术也是在历代对"上元积年"推算基础上将"物不知数"问题解法发展到最一般的机械化程 序。李冶的天元术更是对列方程算法的重大改进和突破,同时也是几何代数化思想的完美体现。从天元术到四元术,是解一般高次方程向多元高次方程组发展的必然 结果和要求。因此,中国在宋元时期算法机械化达到空前的高水平,是与传统数学文化价值观的要求相一致的,是中国筹算文化排列模式和变换技术长期积累后的自 然发展,它是中国筹算体系下的数学计算以快速、准确、简洁解决一类具体问题而发展自己的操作运演的必然趋势和结果。

中 国古代数学的筹算体系和机械化特色,决定了它不可能形成如同欧几里德《几何原本》那样完整的演绎逻辑系统,而由于筹算本身的直觉启示、模型构造性特点以及 特殊的运演排列的结构和形式,决定了中国古代数学是以解决实际问题为目的的抽象模型化方法、化归方法,概括出一般原理、原则用以解决一大类问题的归纳和演 绎方法相结合的有机统一,决定了中算的"寓理于算"、算理结合的主要特色。由于中算的"寓理于算"常常是将"理"寓于"法"中,许多中算算法如更相减损 术、变分术、盈不足术、割圆术、方程术、大衍求一术等等,算法步骤精细,一步一步推导十分明确,有"不证自明"的效用,而对几何问题同样是采取几何代数化 的形数结合,"寓理于算"。开平方、开立方和解高次方程的方法,都由几何模型导出,从图验法到宋元算家的演段法,其本质相同,但更测重于阐明算法的合理性 而不是阐明几何关系。”

No comments: