读《编程的数学原理》

读《编程的数学原理》

读书目标

计算机程序其实就是一个形式系统

算法就是数学

  • 掌握编程范式
  • 组合与抽象
  • 集合与逻辑
  • 函数与关系
  • 组合与时序
  • 数理逻辑五个部分:逻辑演算、证明论、公理集合论、递归论、模型论

第一章自然数

  • 几何原本
  • 公理化系统
  • 皮亚诺公理(Peano Axioms)
  • 归纳公理
  • 皮亚诺算数系统
  • 自然数与计算机程序
  • 公理化的加法乘法定理
  • 递归函数
  • 累加与阶乘
  • 自然数同构
  • 自然数同构于数据结构

第二章递归

  • 欧几里得算法
  • λ \lambda λ演算
  • 计算模型
  • 图灵机
  • 可计算问题
  • 递归函数
  • 元数学:对计算本身进行形式化
  • 函数与函数的值
  • 表达式化简
  • 函数的“科里化”(Currying):认为所有的函数都只接受一个参数
  • λ \lambda λ表达式包括

<表达式> = <常量> 内置的常量,数字、布尔值等
| <变量> 变量名
| <表达式> <表达式> 应用
| λ \lambda λ<变量> . <表达式> λ \lambda λ抽象

  • λ \lambda λ抽象

  • λ \lambda λ变换规则

  • 自由变量与绑定

  • 环境与上下文

  • α \alpha α变换,变量名替换

  • β \beta

你可能感兴趣的:(CS,数学,数学,计算机)