[魔力符号] 准备知识,与,参考书目
Trustno1
2007-03-08
Category theory is very dry. It is nevertheless a useful language to speak of certain things.
这是某一篇MIT上Category theory Lecture的开篇词.Category theory实质上没有太大的难度,但是它会涉及到其他数学分支的内容,比如说拓扑,域论.但是实际上和Computer Science想关的内容实际上绝大部分就包含在大学的数学基础课抽象代数或者离散数学里.找一本离散数学的书把如下的定义复习一遍,就足以进入Category theory的学习了: 1.集合论(这个地球银都知道吧) 2.关系/二元关系/等价关系/对称关系/传递关系/反对称关系 3.函数与各种映射(满,单,双) 4.格论:预序,偏序,界,半格,格,有界格 5.群论:半群,幺半群,群,群同态/同构 抽代方面的基础知识也就这么多,花个半天就能把这些基础知识温习一边乐.除此之外还需要看一些基于Typed-lambda calculus的程序语言.比如Haskell,OCaml.大学里学习基础数学的最让人头疼的问题就是从来不知道这些数学知识除了考试以外还有啥用.Category theory与程序语言,类型系统的关联很大,他是现在Computer science最重要工具之一.我们在谈论OO的时候,在谈论开放封闭原则的时候这些原则到底说的是什么?这也是现在Category theory中比较热门的研究点之一.当然这种学以致用的理念恐怕也就是在老外的教科书里才能找到了.我去年主要看的是这四本书 1. 这本书非常的基础,难度不高适合入门,但是缺点就是有些概念不是那么严谨.与计算机相关的部分也少 2. 这本书是讲述Category Theory的专题的数学著作,很厚涉及与Category theory的方方面面.但是这本书有一个特点就是在讲述一个定义的时候会举出很多的例子帮助你理解它.这是其他几本书所没有的. 3. 这本书是通过ML这个语言来讲解Category Theory与Computer Sicence的实践性结合来说是几本书最好的. 4. 从Category Theory与Computer Sicence的理论结合来说是非常棒的一本书,而且使用的术语概念也非常的严谨.但是读这本书是一个非常巨大的挑战,这本书的对象是计算机科学的硕士生很多本科生缺乏的数学知识他都是默认为基础知识,而且书中定理命题的证明的跳跃性相当大,有部分地方如果还有比较严重的印刷错误.但是我学的基本上是以这本书为主线,遇到不懂的跳跃的地方再参考另外三本再回过头来看就会比较明白. 这几本书网络上都能找到电子版,在驴子上就能download到自己搜搜吧. |
|
bigpanda
2007-03-08
等着把第二本书发出来,下个礼拜去Amazon订书,一起买回来。
第四本可以在这里下载: http://www.di.ens.fr/~longo/download.html |
|
Trustno1
2007-03-08
楼上的没有必要吧.这些书就是翻翻参考书罢了.我也不是数学专业出生写的东西不好不还是浪费钱?
|
|
bigpanda
2007-03-09
无所谓,我买书反正是公司报销,不花了也缴税了,自己也落不下几个子。
|
|
Trustno1
2007-03-09
既然如此
那么再介绍你一本书把 Category Theory for Computing Science 这本书在Wikipedia上与几何原本一起被列为最重要的数学书籍之一(可怜的中国数学就只有一本九章算术) 我翻了一下目录,居然看到了Grothendieck construction这种我们只能以四十五度角仰望的超级牛人的工作成果.但是级别依然是入门级,看来牛人们的脑袋我们还是起码有办法理解的.据说这本书最大的好处就是有超多的练习和非常完整的答案,这对我们这种外行人来说太重要了. 不过这本书我从没找到过电子版.貌似这本书从来不公开发行,你要去这里像他们订阅hard copy http://crm.umontreal.ca/pub/Ventes/CatalogueEng.html ,你要是买了也给我带一份吧. |
|
bigpanda
2007-03-12
行啊,怎么发给你啊?发短信联系我吧。
|