本文主要是介绍【逻辑与计算理论】λ演算与组合子逻辑概念简介,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
【逻辑与计算理论】λ演算与组合子逻辑概念简介
一、λ演算基本概念入门
1.
通过我们前面的讨论可知:有两种函数,一种是一阶谓词逻辑中存在着的特殊函数——真值函数;另一类则是我们所熟悉的数学函数。通过学习λ演算,我们会学习另一类函数:高阶函数。
让我们从一阶逻辑起步。例如有这样一个句子:(p → ~q) ∧ r
如果这时我们用P代表这个句子,就有了下列等式:P = (p → ~q) ∧ r,它可看做是没有自变量的函数。因此,用P本身就可以代表一个无法影响句子内部的真值函数;一旦建立了这样的函数,我们就无法通过给变量赋值的方法再去改变句子内部成分的真值。所以,像P(x)这样的结构,毋宁说是给了函数P一个“窗口”,在这个“窗口”上,有一个对应句子内部成分的代理(alias),这时,通过这个代理就可以改变句子内部成分的真值从而改变整个句子的真值。
以上这个观点和我们过去所学的数学函数的概念不太一样,它是允许不带任何变量、也允许带和表达式内部无关的变量的一个函数。
2.
如果不再限于逻辑中的真值函数,对于一般的函数也可以具有这个特点。例如:f = x + y,g = x + y
这两个函数相等吗?现在只能说:不知道。因为我们不知道是否x和y已经赋值,如果对f来说,x = 3 y = 1,而对g来说 x = 8 y = -1,那么显然f≠g,如果x和y都没有赋值或者只有一个函数赋值,那么f是否等于g只能说是未定义;f=g当且当
这篇关于【逻辑与计算理论】λ演算与组合子逻辑概念简介的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!