System F(または別の正規化された型付きλ計算)内で等価を決定することは可能ですか?


18

型付けされていないラムダ計算の等価性を決定することは不可能であることを知っています。HPの引用Barendregt、HP The Lambda Calculus:its Syntax and Semantics。北オランダ、アムステルダム(1984)。β

AとBが互いに等しくない、等式の下で閉じられている空でないラムダ項のセットである場合、AとBは再帰的に分離できません。Aが等式で閉じられたラムダ項の自明でないセットである場合、Aは再帰的ではありません。したがって、問題「M = x?」を決定することはできません。特定のMについても同様です。また、Lambdaには再帰モデルがありません。

System Fなどの正規化システムがある場合、与えられた2つの用語を減らし、それらの正規形が同じであるかどうかを比較することにより、「外部から」等価を決定できます。ただし、「内部から」実行できますか?システム-Fコンビネータがあり 2つのコンビネータのためにこのようなことを我々が持っている場合は同じ標準形を持っている、とそうでありませんか?または、少なくともいくつかのに対してこれを行うことができますか?場合、が真になるようにコンビを構築するにはE M N E M N = 真の M N E M N = falseを M E M E M N N β MβEMNEMN=trueMNEMN=falseMEMEMNNβM?そうでない場合、なぜですか?

回答:


19

いいえ、できません。タイプの次の2人の住民を考えます。(AB)(AB)

M=λf.fN=λf.λa.fa

これらは区別され -normalフォームが、以来、ラムダ用語で区別することはできませんあるの-expansion、そして純粋な型付きラムダ計算で-expansionジャムの観測同値。N η M ηβNηMη

Codyは、 -equivalentでmod outした場合もどうなるかを尋ねました。パラメトリックのため、答えはまだ否定的です。タイプで次の二つの用語を考える:α η(α.αα)(α.αα)

M=λf:(α.αα).Λα.λx:α.f[α.αα](Λβ.λy:β.y)[α]xN=λf:(α.αα).Λα.λx:α.f[α]x

これらは -normal、 -long形式とは異なりますが、観察上は同等です。実際、はユニット型のエンコーディングであるため、この型のすべての関数は同等したがって、型のすべての関数は、拡張的に同等でなければなりません。η α βηα α.αα(α.αα)(α.αα)


2
OK、 -equivalence と同じ質問:)β,η
cody

11

Neelの完全に正しい答えに対する別の可能な答え:上記の条件が成立するようにシステムFに適切に型付けされたコンビネータあると仮定します。のタイプは次のとおりです。EEE

E:α.ααbool

それはそこにあることが判明した自由のための定理、このような用語は必ずしも表現していることをことを定数

T, t,u,t,u:T, E T t u=E T t u

特に、は常に真の関数または常に偽の関数であり、「平等決定者」になることはできません。E

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