Lambda calculus (nonfiction): Difference between revisions
(Created page with "'''Lambda calculus''' (also written as λ-calculus) is a formal system in mathematical logic for expressing computation based on function abstraction and application using var...") |
No edit summary |
||
Line 1: | Line 1: | ||
'''Lambda calculus''' (also written as λ-calculus) is a formal system in mathematical logic for expressing computation based on function abstraction and application using variable binding and substitution. | '''Lambda calculus''' (also written as λ-calculus) is a formal system in mathematical logic for expressing computation based on function abstraction and application using variable binding and substitution. | ||
It is a universal model of computation that can be used to simulate any [[Turing machine (nonfiction)|Turing machine]], introduced by mathematician [[Alonzo Church (nonfiction)|Alonzo Church]] in | It is a universal model of computation that can be used to simulate any [[Turing machine (nonfiction)|Turing machine]], introduced by mathematician [[Alonzo Church (nonfiction)|Alonzo Church]] in 1936 as part of his research of the foundations of mathematics. | ||
Lambda calculus consists of constructing lambda terms and performing reduction operations on them. | Lambda calculus consists of constructing lambda terms and performing reduction operations on them. | ||
Line 7: | Line 7: | ||
In the simplest form of lambda calculus, terms are built using only the following rules: | In the simplest form of lambda calculus, terms are built using only the following rules: | ||
* x = Name : A character or string representing a parameter or mathematical/logical value | |||
* λx.M = Abstraction : Function definition (M is a lambda term). The variable x becomes bound in the expression. | |||
* M N = Application : Applying a function to an argument. M and N are lambda terms. | |||
producing expressions such as: (λx.λy.(λz.(λx.z x) (λy.z y)) (x y)). | |||
Parentheses can be dropped if the expression is unambiguous. | |||
For some applications, terms for logical and mathematical constants and operations may be included. | |||
== In the News == | == In the News == | ||
Line 20: | Line 28: | ||
== Nonfiction cross-reference == | == Nonfiction cross-reference == | ||
* [[Alonzo Church (nonfiction)]] | |||
* [[Mathematics (nonfiction)]] | * [[Mathematics (nonfiction)]] | ||
* [[Turing machine (nonfiction)]] | |||
External links: | External links: |
Revision as of 10:50, 18 November 2017
Lambda calculus (also written as λ-calculus) is a formal system in mathematical logic for expressing computation based on function abstraction and application using variable binding and substitution.
It is a universal model of computation that can be used to simulate any Turing machine, introduced by mathematician Alonzo Church in 1936 as part of his research of the foundations of mathematics.
Lambda calculus consists of constructing lambda terms and performing reduction operations on them.
In the simplest form of lambda calculus, terms are built using only the following rules:
- x = Name : A character or string representing a parameter or mathematical/logical value
- λx.M = Abstraction : Function definition (M is a lambda term). The variable x becomes bound in the expression.
- M N = Application : Applying a function to an argument. M and N are lambda terms.
producing expressions such as: (λx.λy.(λz.(λx.z x) (λy.z y)) (x y)).
Parentheses can be dropped if the expression is unambiguous.
For some applications, terms for logical and mathematical constants and operations may be included.
In the News
Fiction cross-reference
Nonfiction cross-reference
External links:
- Logarithm @ Wikipedia