依存型理論における固定小数点

ほとんどの依存型理論は、2つの点で正当性という概念を目指しています。

  1. 型システムは決定可能でなければなりません。
  2. タイプシステムは一貫していなければなりません。例えば$ forall tau。 tau
    $は証明できません。

最初のトピックは、議論された少し。この要件を準決定性にリラックスさせることができます。
2番目の変数は望ましいプロパティとして議論されていませんが、多くの人が$ Type:Type $が
“実用的な”プログラミング言語に役立つと述べています。私はそのような「実用的な」プログラミング言語がどのように見えるかに興味を持ってきました。この質問では、「実用的」とは「計算上完全であり、いかなる種類の証明にも直接使用されることを意図しない」を意味します。それが正しい定義かどうかの議論は別の話題です。例えば、$
Pi A:Typeの固定ポインタ演算子を備えた構成の計算法。 (A 〜A)〜A
$は、このような「実用的な」プログラミング言語としての資格を与えます。そのような言語は矛盾していますが、型の安全性と計算上完全なものになります(私は思う)。

さらに、ほとんどのタイプシステムには、一般に「タイプセーフティ」と呼ばれる第3のプロパティがあります。このプロパティは、型付けされたプログラムが「スタックしない」ことを保証します(誰が私の引用を得たかわかりません)。実際には型の安全性に違反する方法が一般的にありますが、言語が型保証されていなければならないという「実用的」の定義に含めることにします。このような「実用的な」プログラミング言語では、一貫性は一般的には間違いですが、型安全性は依然として望ましい特性であり、例えばSystem-Fのようなシステムで達成しようとする主な特性です。このようなシステムでは、型の安全性が依然として満たされている間は、許可された型付き型の範囲ができる限り広げられます。理論に固定小数点項を加えることによって、これらのシステムを計算的に完全にすることができます。

従属型理論は、タイプと用語の間の線をほとんど完全にぼかす。 2つの間の残りの区別はちょうどどのタイプがちょうど$ tau:
mathcal {U} $のような項$ tau $であるかということである。ここで$ mathcal {U}
$は理論(あるいは累積階層)。この均一性は、審美的には非常に美しいものです。

固定小数点型や$ mu
$型として知られている型の項には、固定小数点のアナログがあります。そのようなタイプには、一般に、これらの固定小数点タイプの用語を操作するための「ラップ」および「アンラップ」という用語があります。これは、固定小数点と同じレベルの用語とは異なります。しかしこれは、$
Typeを持つシステムに固定小数点の項を加えることを検討するかのようにやや避けられないようです。Type
$実際に自然数のような有益な型を作ることはできません(しかし、 $ fin
$は非型式の項よりも再帰によって)。予期せぬ結果は、あなたの型チェッカーが無限にループしているだけです。例として、自然数を定義する試みとして、$
fix 、、Type 、、( lambda A:Type。1 +
A)$型を考えてみましょう。私はそれが終わるか、または有用なタイプを生成するように見えないいくつかの巧妙なトリックがない限り、私は紛失しています。思考は私の心に湧きます。タイプが何とか遅れて評価されれば、これはうまくいくと思いますが、それがどう機能するかについての明確なイメージはありません。

$ Type:Type
$を持ち、固定小数点タイプの使用が可能な準決定可能型システムを考慮した作品はありますか?固定小数点の用語と固定小数点の型を統一できますか?そのような場合、どのようにして最小かつ最大の固定小数点型を説明しますか?要するに、タイプセーフな
“実用的な”プログラミング言語に関する文献はありますか?理想的には$ Typeの場合はこれを見たいと思います:Type $

ベストアンサー

私はシステムの構造の数を減らすことが概念的な単純さのためのレシピではないとは確信していませんが、タイプと用語レベルの固定点の統一という考えは当然です。

このアプローチをとるシステムのための1つのソースは$ Pi Sigma $システムです:

$PiSigma$: Dependent Types Without the
Sugar
, Altenkirch, Danielsson, Löh and Oury.

また、これらのスライド等級再帰型と等価再帰型との間の類似性再帰型は、あなたが興味のある型レベル再帰の種類を具現化します(等再帰型は明示的な折り返しと展開を持ちます)。あなたが疑うように、等再帰型の型チェックは厳しいですが(不可能ではありません)。

最終的な発言として、等価再帰型をそうでなければ一貫性のあるシステムに追加しても、肯定性の制約が尊重されていれば、矛盾することはありません。

返信を残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です