etareduction
Eta-reduction, or eta-conversion, is a transformation in the lambda calculus that identifies a function that simply applies another function to its argument. The basic eta-reduction rule states that the term λx. f x can be simplified to f, provided x is not a free variable in f. The corresponding eta-expansion is the opposite direction: f can be expanded to λx. f x when x is not free in f.
Eta-reduction expresses a form of functional extensionality, where two functions are considered equal if they give
In practice, eta-reduction is subject to context. It requires that the bound variable x does not occur
Example: (λx. g x) reduces to g if x is not free in g. Conversely, g can
See also: beta-reduction, beta-normal form, eta-expansion, lambda calculus, functional extensionality.