単純に型指定されたラムダ項のベータ等価性は決定可能であることはわかっています。M、N:σ→τが与えられた場合、すべてのX:σ、について決定可能か?
単純に型指定されたラムダ項のベータ等価性は決定可能であることはわかっています。M、N:σ→τが与えられた場合、すべてのX:σ、について決定可能か?
回答:
私のコメントで述べたように、一般的な答えはノーです。
理解すべき重要な点(私はこれらについて学んでいるように見えるViclibについてこれを言います)は、すべてのプログラム/計算が決して終了しないプログラミング言語/マシンのセットを持つことは、その機能の平等(つまり、プログラム/マシンは同じ機能を計算します)は決定可能です。簡単な例:多項式クロックのチューリングマシンのセットを見てみましょう。定義により、このようなマシンはすべて、すべての入力で終了します。ここで、任意のチューリングマシンが与えられた場合、入力に文字列与えられた、シミュレートするチューリングマシンがあります固定入力(たとえば、空の文字列)でのの計算ステップ、および最大で終了する場合に受け入れるM 0 x | x | M M | x | N M 0 N M 0 N Mステップ、またはそれ以外の場合は拒否します。場合チューリングマシンで常にすぐに、拒否していることと(当然)両方の多項式-クロックされ、まだ我々がいるかどうかを決めることができればと同じ機能を計算(または、この場合には、同じ言語を決めます)、(これは任意のチューリングマシンです)が空の文字列で終了するかどうかを判断できます。
単純に型付けされた -calculus(STLC)の場合、STLCの表現力を測定することが上記の場合ほど簡単ではないことを除いて、同様の引数が機能します。私がコメントを書いたとき、90年代前半のHillebrand、Kanellakis、Mairsonによるいくつかの論文を覚えていました。これは、通常の教会整数型よりも複雑な型を使用することで、STLCで十分に複雑にエンコードできることを示しています。上記の引数が機能するための計算。実際に、必要な材料はすでに、Statmanの定理のMairsonの簡略化された証明にあることがわかります。
Harry G. Mairson、Statmanの定理の簡単な証明。Theoretical Computer Science、103(2):387-394、1992。(ここからオンラインで入手できます)。
その論文では、Mairsonは、任意のチューリングマシン与えられると、単純型のと -termが遷移関数をエンコードすることを示しています。(教会の整数に対するSTLCの非常に貧弱な表現力を頭に入れている場合、これはアプリオリでは明らかではありません。実際、Mairsonのエンコーディングは即時ではありません)。このことから、用語を構成することは難しくありませんσ λ δ M:σ → σ M
(ここで、は、での教会整数のタイプのインスタンス化です)そのため、最大ステップで終了する場合は減少します。空の文字列を入力するか、それ以外の場合は減らします。上記のように、で表されるが定数関数であると判断できた場合、空の文字列での終了を決定します。σ T M1 _ Mn 0 _ t M 0 _ M