The Lambda Calculus: Reduction
Posted on April 20, 2013 by oubiwann

The λ-Calculus Series
- A Brief History
- A Quick Primer for λ-Calculus
- Reduction Explained
- Church Numerals
- Arithmetic
- Logic
- Pai rs and Lists
- Combinators
What we're going to see in this post:
- Why is reduction useful?
- What is reduction?
Well, in a nutshell, lambda reduction is what allows us to get useful results in a lambda calculus. In other words, lambda reduction is how we do actual computation in a lambda calculus. If we want to gain any sort of practical insight from the lambda calculus, we're going to need reduction.
The analog to elementary algebraic manipulation is very strong: variable manipulation, simplification of terms, solving systems of equations, etc. When we learn to do these things at the beginning of secondary school, most of us have to practice with countless examples before we ultimately gain a strong intuition for elementary algebra and can work with equations easily and naturally. This resulted in a skill that we can apply to many areas of our lives where we need to find the answer to something that involves a complicated relationship with one or more other things.
In lambda calculus, instead of systems of equations that represent relationships between variables, we have a system whose focus is expressing computation itself. (Though it can, of course, be used perform algebraic manipulations.) As such, reduction is useful because it allows us to better and more clearly analyze our computational expressions.
What Is Lambda Reduction?
There are three types of reduction: alpha, beta, and eta. Simply put:
- beta reduction is variable substitution;
- alpha reduction is essentially clarification/disambiguation of variable scope;
- eta reduction says that two functions are the same if and only if they give the same result no matter what arguments are given.
Author | oubiwann |
---|---|
Date | April 20, 2013 |
Time | 18:33:08 |
Category | |
Tags | lambda calculus math programming λ-calculus |
Line Count | 1 |
Word Count | 373 |
Character Count | 3009 |
Comments?
This blog doesn't use standard (embedded) comments; however, since
the site is hosted on Github, if there is
something you'd like to share, please do so by
opening a
"comment" ticket!