Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "Lambda Calculus And its graphic representation. Brief Explanation of LC  What:  A series of expressions, constants, and variables written in prefix."— Presentation transcript:

1 Lambda Calculus And its graphic representation

2 Brief Explanation of LC  What:  A series of expressions, constants, and variables written in prefix notation  “Theoretical foundation of functional programing”  Why Lambda?  ^ -> λ

3 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

4 Fact Run-down  Alonzo Church  Publish in 1932  Purpose: Wanted to provide a formal foundation for logic  1933 Proved Inconsistent  Rosser & Kleene  Revision

5 Early History of LC  1930’s Entscheidungsproblem proven to have no answer (Church and Turing Independently)  Turing joins growing group of users

6 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)

7 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))

8 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]

9 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

10 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

11 Real World Uses  Basis for programing languages

12 Programing Languages and LC  May be useful for some functional paradigm programmers  Higher order  Lack of importance  Turing complete  Logical Paradigm

13 Why Graphic Representation?  Binds lambda calculus & emergent algebras  Marius Buliga  Emergent Algebras – some form of “distillation of differential calculus”

14 Set up Graphic LC  “Graphic lambda calculus consists of a class of graphs endowed with moves between them”  Unique path to root

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

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

17 Example of GLC  (λ x.(x y))(λx.(x y)) (assuming y to have some value)

18 Use #1 of GLC Ex. How crossing vectors may be represented in GLC  Convertibility of 2D graphs

19 Use #2 of GLC Reidemeister Moves Computable (Knot Theory)  Convertibility of 3D Graphs

20 Future of Functional Programing  Claims:  Few of this paradigm  F#  Little Need  On the Rise  An Aggregate

21 Future of LC  New Aggregates  Logical Paradigm  AI  Binding Mathematics

22 Sources  Historical references:  http://www.users.waitrose.com/~hindley/SomePapers_PDFs/200 6CarHin,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.pd f  http://www.cs.colorado.edu/~bec/courses/csci5535- s10/slides/meeting24a-encodings.6up.pdf

23 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

24 Sources  http://www.complex-systems.com/pdf/22-4-1.pdf  https://www.youtube.com/watch?v=_Q_suLwFbg8


Download ppt "Lambda Calculus And its graphic representation. Brief Explanation of LC  What:  A series of expressions, constants, and variables written in prefix."

Similar presentations


Ads by Google