-1

システム F では、次の 3 つのタイプの違いは何ですか。forall と含意を含む 3 つの式は次のとおりです。

ここにテキストで再現:

∀X.((X → X) → (X → X))
∀X.((X → X) → ∀X.(X → X))
((∀X.X → X) → (∀X.X → X))

2番目のものは最初のものよりも一般的ですか?

4

1 に答える 1

0

forall量指定子のバインドの強さに依存します。()次の端末式 (変数または-block)にバインドすると仮定しましょう。

最初は(X0 -> X0) -> (X0 -> X0)where X0is a fresh type variable になります。

(X0 -> X0) -> forall X1. (X1 -> X1)2つ目はどこX0になるのかX1新鮮です。

3 番目の(bot -> X) -> (bot -> X)場所Xは古いバインディングで、ボットは無人forall X. Xです。

于 2016-02-08T16:12:25.457 に答える