Está en la página 1de 2

Cálculo Lambda.

Es el más pequeño lenguaje universal de programación, consiste


en en una regla de transformación simple (sustituir variables) y un esquema simple
para definir funciones.

El cálculo lambda se puede decir que es equivalente a las máquinas Turing porque es
capaz de evaluar y expresar cualquier función computable. Church había querido
hacer un sistema formal completo para modelizar la matemática pero después separó
el cálculo lambda y lo ideó para que estudiara la computabilidad.

Sumario

 1 Surgimiento
 2 Definición Informal
 3 Definición formal
o 3.1 Sintaxis
 4 Variables libres y ligadas
 5 α-conversión
 6 β-reducción
 7 η-conversión
 8 Conclusiones
 9 Véase También
 10 Fuentes

Surgimiento
Originalmente, Church había tratado de construir un sistema formal completo para
modelizar la Matemática; pero cuando éste se volvió susceptible a la paradoja de
Russell, separó del sistema al cálculo lambda y lo usó para estudiar la computabilidad,
culminando en la respuesta negativa al problema de la parada.

Definición Informal
Considérese las siguientes dos Funciones. Por un lado, la Función Identidad I(x) = x,
que toma un único argumento, x, e inmediatamente devuelve x. Por otro lado, la
función suma S(x,y) = x + y, que toma dos argumentos, x e y, y devuelve la suma de
ambos: x + y. Usando estas dos funciones como ejemplo, es posible hacer algunas
observaciones útiles acerca de varias ideas fundamentales del cálculo lambda.

La primera observación es que las funciones no necesitan ser explícitamente


nombradas. Esto es, la función S(x,y) = x + y puede ser reescrita como una función
anónima: x,y → x + y (que se lee: «el par de x e y se mapea a x + y»). Del mismo
modo, I(x) = x puede ser reescrita de forma anónima como x → x, que se lee: «el
argumento x se mapea a sí mismo».
La segunda observación es que el nombre que se asigne a los argumentos de la
función es generalmente irrelevante. Esto es, x → x e y → y expresan la misma
función: la función identidad. Del mismo modo, x,y → x + y y u,v → u + v expresan la
misma función: la función suma.

Una tercera observación es que toda función que requiere dos argumentos, como por
ejemplo la función suma, puede ser reescrita como una función que acepta un único
argumento, pero que devuelve otra función, la cual a su vez acepta un único
argumento. Por ejemplo, x,y → x + y puede ser reescrita como x → (y → x + y). Esta
transformación se conoce como currificación, y puede generalizarse para funciones
que aceptan cualquier número de argumentos. Esta puede parecer oscuro, pero se
entiende mejor mediante un ejemplo. Considérese la función suma no currificada:
x,y → x + y

Al tomar a los números 2 y 3 como argumentos, se obtiene:


2+3

Lo cual es igual a 5. Considérese ahora la versión currificada de la función:


x → (y → x + y)

Si se toma al número 2 como argumento, se obtiene la función:


y→2+y

Y tomando luego al número 3 como argumento, se obtiene:


2+3

Lo cual es igual a 5. De modo que la versión currificada devuelve el


mismo resultado que la versión no currificada. En el cálculo
lambda, todas las expresiones repres

También podría gustarte