宝水的72松博客

Just another 七十二松 (72pines) weblog

理论计算机科学漫谈

Posted by 宝水 on 十二月 15th, 2007

 sir: 理论计算机科学漫谈 (zz)
发信人: sir (sir), 信区: Mathematics
标  题: 理论计算机科学漫谈(1)
发信站: 南大小百合 (Thu Nov 30 11:08:08 2000) , 转信

早就答应russel的,今天有点时间,把欠债还上。

计算机科学和数学的关系有点奇怪。二三十年以前,计算机科学基本上还是数学的一个分
支。而现在,计算机科学拥有广泛的研究领域和众多的研究人员,在很多方面反过来推动
数学发展,从某种意义上可以说是孩子长得比妈妈还高了。

但不管怎么样,这个孩子身上始终流着母亲的血液。这血液是the mathematical underpi
nning of computer science(计算机科学的数学基础),– 也就是理论计算机科学。

现代计算机科学和数学的另一个交叉是计算数学/数值分析/科学计算,传统上不包含在理
论计算机科学以内。所以本文对计算数学全部予以忽略。


———————————————————————

                     梦里不知身是客, 一晌偷欢

———————————————————————
※ 来源:.南大小百合 http://bbs.nju.edu.cn [FROM: 130.132.21.12]

发信人: sir (sir), 信区: Mathematics
标  题: 理论计算机科学漫谈(2)
发信站: 南大小百合 (Thu Nov 30 11:23:19 2000) , 转信

最常和理论计算机科学放在一起的一个词是什么?答:离散数学。这两者的关系是如此密
切,以至于它们在不少场合下成为同义词。

传统上,数学是以分析为中心的。数学系的同学要学习三四个学期的数学分析,然后是复
变,实变,泛函等等。实变和泛函被很多人认为是现代数学的入门。在物理,化学,工程
上应用的,也以分析为主。

随着计算机科学的出现,一些以前不太受到重视的数学分支突然重要起来。人们发现,这
些分支处理的数学对象与传统的分析有明显的区别:分析研究的对象是连续的,因而微分
,积分成为基本的运算;而这些分支研究的对象是离散的,因而很少有机会进行此类的计
算。人们从而称这些分支为“离散数学”。“离散数学”的名字越来越响亮,最后导致以
分析为中心的传统数学分支被相对称为“连续数学”。


———————————————————————

                     梦里不知身是客, 一晌偷欢

———————————————————————
※ 来源:.南大小百合 http://bbs.nju.edu.cn [FROM: 130.132.21.12]

发信人: sir (sir), 信区: Mathematics
标  题: 理论计算机科学漫谈(3)
发信站: 南大小百合 (Thu Nov 30 11:30:37 2000) , 转信

离散数学经过几十年发展,基本上稳定下来。一般认为,离散数学包含以下学科:

1) 集合论,数理逻辑与元数学。这是整个数学的基础,也是计算机科学的基础。

2) 图论,算法图论;组合数学,组合算法。计算机科学,尤其是理论计算机科学的核心是
算法,而大量的算法建立在图和组合的基础上。

3) 抽象代数。代数是无所不在的,本来在数学中就非常重要。在计算机科学中,人们惊讶
地发现代数竟然有如此之多的应用。


———————————————————————

                     梦里不知身是客, 一晌偷欢

———————————————————————
※ 来源:.南大小百合 http://bbs.nju.edu.cn [FROM: 130.132.21.12]

发信人: sir (sir), 信区: Mathematics
标  题: 理论计算机科学漫谈(4)
发信站: 南大小百合 (Thu Nov 30 11:44:35 2000) , 转信

但是,理论计算机科学仅仅就是在数学的上面加上“离散”的帽子这么简单吗?一直到大
约十几年前,终于有一位大师告诉我们:不是。

D.E.Knuth(他有多伟大,我想不用我废话了)在Stanford开设了一门全新的课程Concrete
Mathematics。 Concrete这个词在这里有两层含义:

第一,针对abstract而言。Knuth认为,传统数学研究的对象过于抽象,导致对具体的问题
关心不够。他抱怨说,在研究中他需要的数学往往并不存在,所以他只能自己去创造一些
数学。为了直接面向应用的需要,他要提倡“具体”的数学。

在这里我做一点简单的解释。例如在集合论中,数学家关心的都是最根本的问题–公理系
统的各种性质之类。而一些具体集合的性质,各种常见集合,关系,映射都是什么样的,
数学家觉得并不重要。然而,在计算机科学中应用的,恰恰就是这些具体的东西。Knuth能
够首先看到这一点,不愧为当世计算机第一人。

第二,Concrete是Continuous(连续)加上discrete(离散)。不管连续数学还是离散数学,
都是有用的数学!


———————————————————————

                     梦里不知身是客, 一晌偷欢

———————————————————————
※ 来源:.南大小百合 http://bbs.nju.edu.cn [FROM: 130.132.21.12]

发信人: sir (sir), 信区: Mathematics
标  题: 理论计算机科学漫谈(5)
发信站: 南大小百合 (Thu Nov 30 12:09:50 2000) , 转信

前面主要是从数学角度来看的。从计算机角度来看,理论计算机科学目前主要的研究领域
包括:可计算性理论,算法设计与复杂性分析,密码学与信息安全,分布式计算理论,并
行计算理论,网络理论,生物信息计算,计算几何学,程序语言理论等等。这些领域互相
交叉,而且新的课题在不断提出,所以很难理出一个头绪来。

下面随便举一些例子。

由于应用需求的推动,密码学现在成为研究的热点。密码学建立在数论(尤其是计算数论)
,代数,信息论,概率论和随机过程的基础上,有时也用到图论和组合学等。

很多人以为密码学就是加密解密,而加密就是用一个函数把数据打乱。这就大错特错了。
现代密码学至少包含以下层次的内容:

第一,密码学的基础。例如,分解一个大数真的很困难吗?能否有一般的工具证明协议正
确?

第二,密码学的基本课题。例如,比以前更好的单向函数,签名协议等。

第三,密码学的高级问题。例如,零知识证明的长度,秘密分享的方法。

第四,密码学的新应用。例如,数字现金,叛徒追踪等。


———————————————————————

                     梦里不知身是客, 一晌偷欢

———————————————————————
※ 来源:.南大小百合 http://bbs.nju.edu.cn [FROM: 130.132.21.12]

发信人: sir (sir), 信区: Mathematics
标  题: 理论计算机科学漫谈(6)
发信站: 南大小百合 (Thu Nov 30 12:18:32 2000) , 转信

在分布式系统中,也有很多重要的理论问题。

例如,进程之间的同步,互斥协议。一个经典的结果是:在通信信道不可靠时,没有确定
型算法能实现进程间协同。所以,改进TCP三次握手几乎没有意义。

例如时序问题。常用的一种序是因果序,但因果序直到不久前才有一个理论上的结果….
..

例如,死锁没有实用的方法能完美地对付。

例如,……


———————————————————————

                     梦里不知身是客, 一晌偷欢

———————————————————————
※ 来源:.南大小百合 http://bbs.nju.edu.cn [FROM: 130.132.21.12]

发信人: sir (sir), 信区: Mathematics
标  题: 关于死锁 Re: 理论计算机科学漫谈(6)
发信站: 南大小百合 (Fri Dec  1 07:40:11 2000) , 转信

【 在 pie (燃烧吧,小宇宙!) 的大作中提到: 】

: 【 在 probe (农民) 的大作中提到: 】

: 我简单地觉得与“熵”这个东西有关

没有这么复杂。关键在效率:对付死锁的方法,例如死锁检测,都非常严重地减低效率,
以至于得不尝失,因为死锁并不是一种经常出现的现象。所以在全局上,一般都用所谓“
鸵鸟算法”,也就是假装什么都不会发生。在局部上,例如你要设计一个访问共享数据的
算法,那么你就要证明你的算法在局部上是deadlock free。至于它会不会导致全局的死锁
,就烦不了许多了。


———————————————————————

                     梦里不知身是客, 一晌偷欢

———————————————————————
※ 来源:.南大小百合 http://bbs.nju.edu.cn [FROM: 130.132.21.12]

———————————————-
Three passions, simple but overwhelmingly strong,
have governed my life: the longing for love, the
search for knowledge, and unbearable pity for the
suffering of mankind.
                            - Bertrand Russell

One Response to “理论计算机科学漫谈”

  1. windfarer Says:

    来你这儿转转,嘿嘿,加油啊

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>