Krivineの表記法の利点は何ですか?


9

-calculusの構文を提示するときに、関数の適用にKrivineの表記法を使用している人がいるのを見ました。例えば、λ -term λ F λ X λ Y F X 、Y(それが実際に意味するように、通常の慣例左に機能アプリケーション関連付けることと、λ fはλ X λ Y F X Y )が書き込まれるλ fはλ X λ yのλλλf.λx.λy.f x yλf.λx.λy.((f x) y)(それが実際に意味することは同様の慣例で λ fはλ X λ yとF X Y)。一番内側の fの周りにもう1組の括弧があることの意味がわかりません。なぜ人々は通常のものではなくクリヴィーネの表記法を使うのですか?λf.λx.λy.(f) x yλf.λx.λy.((f) x) yf

回答:


13

私はあなたがラムダ計算からのクリヴィネの表記法:タイプとモデルを意味していると思います。

この表記法はデータ表現として使用され、ラムダ項に関する多くのアルゴリズムを実装し、正しいことを証明するのを簡単にします。つまり、ラムダ項、それを引数 f [ e 1e 2e n ]のリストとともにヘッド fとして表示したい。fe1e2en f[e1,e2,,en]

たとえば、2つの項fを比較するとします。 gfe1engt1tnfg(ei,ti)

このアイデアの形式化については、CervesatoとPfenningの論文A Linear Spine Calculusを参照してください。


0

λ x. λ y. x (x (x y))λx λy (x)(x)(x)y

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.