Church Encoding - Church Pairs

Church Pairs

See also: Cons

Church pairs are the Church encoding of the pair (two-tuple) type. The pair is represented as a function that takes a function argument. When given its argument it will apply the argument to the two components of the pair.

Formal definition in lambda calculus:

pairλx.λy.λz.z x y
fstλp.p (λx.λy.x)
sndλp.p (λx.λy.y)

An example:

fst (pair a b) ≡ (λp.p (λx.λy.x)) ((λx.λy.λz.z x y) a b) ≡ (λp.p (λx.λy.x)) (λz.z a b) ≡ (λz.z a b) (λx.λy.x) ≡ (λx.λy.x) a b ≡ a

Read more about this topic:  Church Encoding

Famous quotes containing the word church:

    What is a wife and what is a harlot? What is a church and what
    Is a theatre? are they two and not one? can they exist separate?
    Are not religion and politics the same thing? Brotherhood is religion,
    O demonstrations of reason dividing families in cruelty and pride!
    William Blake (1757–1827)