lambda演算系列搬运cgnail的blog,源blog连接为这里。
我们已经讲过直觉逻辑(intuitionistic logic)和它的模型;从无类型的Lambda演算讲到了简单类型化Lambda演算;终于,我们可以看看Lambda演算模型了。而这正是真正有趣的地方。
lambda演算系列搬运cgnail的blog,源blog连接为这里。
我们已经掌握了直觉逻辑(Intuitionistic Logic,IL),我们再回到lambda演算:我们已经得到了我们需要定义模型的逻辑工具。 当然,在没有更简单的事情了,对吧?
lambda演算系列搬运cgnail的blog,源blog连接为这里。
在昨天介绍了Lambda演算中的Y组合子(Y Combinator)之后,我认为展示一些你可以用组合子做的有趣的和有用的东西会比较有意思。
lambda演算系列搬运cgnail的blog,源blog连接为这里。
在前面的几个帖子里,我已经建立了如何把lambda演算变成一个有用的系统的点点滴滴。 我们已经有了数字,布尔值和选择运算符。我们唯一欠缺的是重复。
lambda演算系列搬运cgnail的blog,源blog连接为这里。
现在,我们在lambda演算中引入了数字,只差两件事情就可以表达任意计算了:一个是如何表达选择(分支),另一个是如何表示重复。在这篇文章中,我将讨论布尔值和选择,下一篇将介绍重复和递归。
lambda演算系列搬运cgnail的blog,源blog连接为这里。
所以,现在,让我们用lambda演算干点有趣的事。首先,为了方便起见,我将介绍些语法糖(syntactic sugar)来命名函数,以便下面遇到某些复杂的事情的时候方便我们阅读。
lambda演算系列搬运cgnail的blog,源blog连接为这里。
计算机科学,尤其是编程语言,经常倾向于使用一种特定的演算:Lambda演算(Lambda Calculus)。这种演算也广泛地被逻辑学家用于学习计算和离散数学的结构的本质。Lambda演算伟大的的原因有很多,其中包括:
we write $f/n$ to denote that the function symbol $f$ is $n$-ary.