[Haskell-cafe] why the name lambda calculus?
Alexander Solla
alex.solla at gmail.com
Tue Aug 23 22:55:15 CEST 2011
On Tue, Aug 23, 2011 at 10:58 AM, Ezra Cooper <ezra at ezrakilty.net> wrote:
> An algebra is a specific kind of structure which is itself formalized
> mathematically. I've never seen a formalization of the notion of "a
> calculus" and I believe it to be a looser term, as KC defined it.
>
> Specifically, an algebra consists of a set (or several "sorts" of sets) and
> operations that reduce pairs of elements from that set (or the pairs can be
> triples, etc.) back into the set. Usually that set corresponds to the
> "semantics" of the algebra, and syntactic equations like xy = yx exist in a
> different realm from the operations and their actions.
>
> Lambda calculus differs from an algebra by having a construct (lambda
> abstraction) that only makes sense if you know the syntactic structure of
> the term it applies to. That is, it has a binding construct. You could
> define lambda calculus as an algebra by taking the underlying set to be the
> syntax of the calculus itself, but that would require infinitely many
> operations (a lambda-binder for each variable) and equations, so perhaps
> that would be awkward.
>
> Pi calculus, like lambda calculus, has binders, while "process algebras"
> are usually defined via operations on processes. I believe this to be a
> general trait of things described as "calculi"--that they have some form of
> name-binders, but I have never seen that observation written down.
>
> I'm sure that an algebraist could give a more definite answer about this.
>
Aside from "the calculus", a calculus is just a language with syntactic
rules of inference/deduction. Indeed, "the calculus" was a calculus in this
sense way back when, before Riemann formalized the subject with deltas and
epsilons (that is, arguments about sequences and limits). I am referring to
the syntactic rules for manipulating derivatives and integrals which Liebniz
invented, such as "formal cancellation of derivatives": dy/dx * dz/dy =
dz/dx
An algebra is a model for a language that quantifies over objects and
function symbols on objects. For example, the "symmetric group S4" is an
algebra that models the symmetric group axioms.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20110823/c067eed7/attachment.htm>
More information about the Haskell-Cafe
mailing list