Download presentation
Presentation is loading. Please wait.
Published byWalter Todd Modified over 9 years ago
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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.