Lambda Calculus And its graphic representation. Brief Explanation of LC What: A series of...

24
Lambda Calculus And its graphic representation

Transcript of Lambda Calculus And its graphic representation. Brief Explanation of LC What: A series of...

Page 1: Lambda Calculus And its graphic representation. Brief Explanation of LC  What:  A series of expressions, constants, and variables written in prefix.

Lambda Calculus And its graphic representation

Page 2: Lambda Calculus And its graphic representation. Brief Explanation of LC  What:  A series of expressions, constants, and variables written in prefix.

Brief Explanation of LC What:

A series of expressions, constants, and variables written in prefix notation

“Theoretical foundation of functional programing” Why Lambda? ^ -> λ

Page 3: Lambda Calculus And its graphic representation. Brief Explanation of LC  What:  A series of expressions, constants, and variables written in prefix.

Beginnings of LC Late 1800’s through 1920’s: foundations laid

Vorlesungen über die Algebra der Logik Schröder (1890–1905)

Calculus of relatives Löwenheim (1915)

Propositional calculus completeness Post (1921)

Attempt at Unification

Page 4: Lambda Calculus And its graphic representation. Brief Explanation of LC  What:  A series of expressions, constants, and variables written in prefix.

Fact Run-down Alonzo Church Publish in 1932 Purpose: Wanted to provide a formal foundation for logic 1933 Proved Inconsistent

Rosser & Kleene Revision

Page 5: Lambda Calculus And its graphic representation. Brief Explanation of LC  What:  A series of expressions, constants, and variables written in prefix.

Early History of LC 1930’s Entscheidungsproblem proven to have no answer

(Church and Turing Independently) Turing joins growing group of users

Page 6: Lambda Calculus And its graphic representation. Brief Explanation of LC  What:  A series of expressions, constants, and variables written in prefix.

LC Through the Years Computability and λ-definability

Turing (1937) 1940’s -1950 Little Interest

Kleene preferred other systems of computation 1958 -> present functional programming

LISP Not only for logicians 1960’s

Fitch (1958)

Page 7: Lambda Calculus And its graphic representation. Brief Explanation of LC  What:  A series of expressions, constants, and variables written in prefix.

LC Today LISP – not directly based on LC though much stems from it

Handles substitution through “dynamic binding” John McCarthy

Algol- a pure form of LC computing CHUCH – a pure form of LC, and first use of the leftmost –

first reduction (as apposed to call by value) ((λx. x x)(λx. x x))

Page 8: Lambda Calculus And its graphic representation. Brief Explanation of LC  What:  A series of expressions, constants, and variables written in prefix.

A More Complete Definition A mathematical and logical way to set up all subsequent

math functions based upon simple functions. Functions consist of expressions which take the following forms: [constant] [variable] [expression][expression]

Page 9: Lambda Calculus And its graphic representation. Brief Explanation of LC  What:  A series of expressions, constants, and variables written in prefix.

Example #1 of LC (λx.(λy. + x y) 5) ((λy. - y 3) 7)) (λx. + x 5) (- 7 3) = (λx. + x 5) 4 (+ 4 5) = 9

Page 10: Lambda Calculus And its graphic representation. Brief Explanation of LC  What:  A series of expressions, constants, and variables written in prefix.

Example #2 (((λf. (λx. f (f x))) (λy. (* y y))) 3) λx. (λy. (* y y)) ((λy. (* y y)) x) 3 λy. (* y y)) ((λy. (* y y)) 3 (λy. (* y y)) (* 3 3) (* 9 9) = 81

Page 11: Lambda Calculus And its graphic representation. Brief Explanation of LC  What:  A series of expressions, constants, and variables written in prefix.

Real World Uses Basis for programing languages

Page 12: Lambda Calculus And its graphic representation. Brief Explanation of LC  What:  A series of expressions, constants, and variables written in prefix.

Programing Languages and LC May be useful for some functional paradigm programmers

Higher order Lack of importance

Turing complete Logical Paradigm

Page 13: Lambda Calculus And its graphic representation. Brief Explanation of LC  What:  A series of expressions, constants, and variables written in prefix.

Why Graphic Representation? Binds lambda calculus & emergent algebras

Marius Buliga

Emergent Algebras – some form of “distillation of differential calculus”

Page 14: Lambda Calculus And its graphic representation. Brief Explanation of LC  What:  A series of expressions, constants, and variables written in prefix.

Set up Graphic LC “Graphic lambda calculus consists of a class of graphs

endowed with moves between them” Unique path to root

Page 15: Lambda Calculus And its graphic representation. Brief Explanation of LC  What:  A series of expressions, constants, and variables written in prefix.

Example of GLC λ x.x λ x.(λy.x)

Page 16: Lambda Calculus And its graphic representation. Brief Explanation of LC  What:  A series of expressions, constants, and variables written in prefix.

Example of GLC (λ x.(x x))(λx.(x x))

Page 17: Lambda Calculus And its graphic representation. Brief Explanation of LC  What:  A series of expressions, constants, and variables written in prefix.

Example of GLC (λ x.(x y))(λx.(x y))

(assuming y to have some value)

Page 18: Lambda Calculus And its graphic representation. Brief Explanation of LC  What:  A series of expressions, constants, and variables written in prefix.

Use #1 of GLC

Ex. How crossing vectors may be represented in GLC

Convertibility of 2D graphs

Page 19: Lambda Calculus And its graphic representation. Brief Explanation of LC  What:  A series of expressions, constants, and variables written in prefix.

Use #2 of GLC

Reidemeister Moves Computable (Knot Theory)

Convertibility of 3D Graphs

Page 20: Lambda Calculus And its graphic representation. Brief Explanation of LC  What:  A series of expressions, constants, and variables written in prefix.

Future of Functional Programing Claims:

Few of this paradigm F#

Little Need On the Rise

An Aggregate

Page 21: Lambda Calculus And its graphic representation. Brief Explanation of LC  What:  A series of expressions, constants, and variables written in prefix.

Future of LC New Aggregates Logical Paradigm

AI Binding Mathematics

Page 22: Lambda Calculus And its graphic representation. Brief Explanation of LC  What:  A series of expressions, constants, and variables written in prefix.

Sources Historical references:

http://www.users.waitrose.com/~hindley/SomePapers_PDFs/2006CarHin,HistlamRp.pdf

LC use and functionality: https://www.youtube.com/watch?v=v1IlyzxP6Sg https://en.wikipedia.org/wiki/Lambda_calculus http://wwwusers.di.uniroma1.it/~vamd/TSL/

typedlambdacalculi.pdf http://www.cs.colorado.edu/~bec/courses/csci5535-s10/slides/

meeting24a-encodings.6up.pdf

Page 23: Lambda Calculus And its graphic representation. Brief Explanation of LC  What:  A series of expressions, constants, and variables written in prefix.

Sources Functional Programming:

http://richardminerich.com/2012/07/functional-programming-is-dead-long-live-expression-oriented-programming/

http://homepages.inf.ed.ac.uk/wadler/papers/how-and-why/how-and-why.pdf

https://stackoverflow.com/questions/2835801/why-hasnt-functional-programming-taken-over-yet

Page 24: Lambda Calculus And its graphic representation. Brief Explanation of LC  What:  A series of expressions, constants, and variables written in prefix.

Sources http://www.complex-systems.com/pdf/22-4-1.pdf

https://www.youtube.com/watch?v=_Q_suLwFbg8