λ計算
lambda calculus
ラムダ計算 - Wikipedia
Lambda calculus - Wikipedia
lambda-calculus in nLab
構文
變數記號 (identifier)$ a,b,\dotsは式である
λ抽象 (lambda abstraction)$ \lambda.變數記號.式は式である
函數適用 (application)$ 式~式は式である
代入$ 式[式/變數] は式である
$ 式[變數:=式] とも書く
括弧$ ()は適當に補ふ
束縛變數|自由變數 (free variable)
α-變換
ラムダ計算 - Wikipedia#α-変換
式$ M に變數$ y が自由に表れてゐないし、式$ M で變數$ y が既に束縛されてゐる場所に變數$ x が登場してゐないならば、$ \lambda x.M=\lambda y.M[y/x]
これを公理ではなく、定義上等しい$ \lambda x.M\equiv\lambda y.M[y/x] とする事も多い
β-簡約 (β-變換)
ラムダ計算 - Wikipedia#β-簡約
$ (\lambda x.M)~N=M[N/x]
η-變換
ラムダ計算 - Wikipedia#η-変換
公理として
式$ Mに變數$ xが自由に表れてゐない場合に$ \lambda x.M~x=M
推論規則として
外延性$ \frac{M~x=N~x}{M=N}({\rm ext})
體系
公理
$ \beta :$ (\lambda x.M)~N=M[N/x]
$ M=M
推論規則
$ \frac{M=N}{\lambda x.M=\lambda x.N}(\xi)
.
$ \frac{M=N}{M~L=N~L},$ \frac{M=N}{L~M=L~N}
.
$ \frac{L=M\quad M=N}{L=N}
.
$ \frac{M=N}{N=M}
encoding
Church encoding
Church encoding - Wikipedia
自然數。Church 數
ラムダ計算 - Wikipedia#自然数と算術
Church encoding - Wikipedia#Church numerals
$ 0:=\lambda f.\lambda x.x,$ 0~f~x=x
後者$ Sn:=\lambda n.\lambda f.\lambda x.f~(n~f~x),$ Sn~f~x=f~(n~f~x)
$ n:=\lambda f.\lambda x.f^n~x,$ n~f~x=f^n~x
Church booleans
ラムダ計算 - Wikipedia#論理記号と述語
Church encoding - Wikipedia#Church Booleans
眞$ \lambda x.\lambda y.x
僞$ \lambda x.\lambda y.y=0
Church pairs
ラムダ計算 - Wikipedia#対
Church encoding - Wikipedia#Church pairs
cons$ \lambda x.\lambda y.\lambda z.z~x~y
car$ \lambda p.p~(\lambda x.\lambda y.x)
cdr$ \lambda p.p~(\lambda x.\lambda y.y)
either
left$ \lambda x.\lambda l.\lambda r.l~x
right$ \lambda x.\lambda l.\lambda r.r~x
list
right folded
空 list$ \rm false
cons$ \lambda h.\lambda t.\lambda c.\lambda n.c~h~(t~c~n)
car$ \lambda l.l~(\lambda h.\lambda t.h)~{\rm false}
cdr$ \lambda l.\lambda c.\lambda n.l~(\lambda h.\lambda t.\lambda g.g~h~(t~c))~(\lambda t.n)~(\lambda h.\lambda t.t)
isNil$ \lambda l.l~(\lambda h.\lambda t.{\rm false})~{\rm true}
Scott encoding
Mogensen–Scott encoding - Wikipedia
Church encoding - Wikipedia#Represent the list using Scott encoding
ラムダ計算で代数的データ型を表現する方法 - @syamino はてなダイアリー
再歸を含まない data 型に於いては Church encoding と一致する
自然數
$ 0:=\lambda f.\lambda x.x
後者$ Sn:=\lambda n.\lambda f.\lambda x.n
list
left folded
空 list$ \rm false
cons$ \lambda x.\lambda y.\lambda z.z~x~y、car$ \lambda p.p~(\lambda x.\lambda y.x)、cdr$ \lambda p.p~(\lambda x.\lambda y.y) は Church pair と同じ
isNil$ \lambda l.l~(\lambda h.\lambda t.\lambda d.{\rm false})~{\rm true}
Boehm-Berarducci encoding
/mrsekut-p/Boehm-Berarducci Encoding
λ cube
單純型附きλ計算$ \lambda\to
λ-μ 計算
Lambda-mu calculus - Wikipedia
μ 演算子
μ operator - Wikipedia
mu-Operator -- from Wolfram MathWorld
μ-operator
ε計算
Epsilon calculus - Wikipedia
イプシロン計算ってなんですかぁ? こんなもんですよぉ - 檜山正幸のキマイラ飼育記 (はてなBlog)
ラムダ記法とイプシロン記法を組み合わせて関数を定義する - 檜山正幸のキマイラ飼育記 (はてなBlog)
? 確定記述子との關聯は
確定記述子ι
Free Logic (Stanford Encyclopedia of Philosophy)#5.1 Theories of Definite Descriptions
Definite description - Wikipedia
ι演算子
イオタとラムダ - Skinerrian's blog
量子λ計算
quantum lambda-calculus in nLab