- #1
- 1,866
- 34
I do not understand the following extract on the semantics in the wikipedia article on lambda calculus:
Is D supposed to represent the semantics of the lambda calculus? If so, how? I would really appreciate an explanation of the whole text. They say the set of functions from D into D has greater cardinality than D, but this is not true in constructive mathematics, is it? The functions would only be computable functions, although not recursively enumerable, they are countable, is that not right? Perhaps the fact that they are not recursively enumerable poses the same difficulties as a higher cardinality would.
The fact that lambda calculus terms act as functions on other lambda calculus terms, and even on themselves, led to questions about the semantics of the lambda calculus. Could a sensible meaning be assigned to lambda calculus terms? The natural semantics was to find a set D isomorphic to the function space D → D, of functions on itself. However, no nontrivial such D can exist, by cardinality constraints because the set of all functions from D into D has greater cardinality than D.
In the 1970s, Dana Scott showed that, if only continuous functions were considered, a set or domain D with the required property could be found, thus providing a model for the lambda calculus.
This work also formed the basis for the denotational semantics of programming languages.
Is D supposed to represent the semantics of the lambda calculus? If so, how? I would really appreciate an explanation of the whole text. They say the set of functions from D into D has greater cardinality than D, but this is not true in constructive mathematics, is it? The functions would only be computable functions, although not recursively enumerable, they are countable, is that not right? Perhaps the fact that they are not recursively enumerable poses the same difficulties as a higher cardinality would.