领先的旋转栅门操作员是什么意思?


12

我知道不同的作者使用不同的表示法来表示编程语言的语义。实际上,盖伊·斯蒂尔(Guy Steele)在一段有趣的视频中解决了这个问题

我想知道是否有人知道领先的旋转门操作员是否具有公认的含义。例如,我不理解以下分母的开头的运算符:

x:T1t2:T2λx:T1.t2 : T1T2

有人可以帮我理解吗?谢谢。



哇,这个问题有超过“ 1k”的视图,比其他所有29个新问题的视图总和还多!正如我已经检查过的,“类型理论”标签和“名词语义”标签都不是前50种流行标签之一。我对这种现象背后的原因感到好奇。我没有头绪。@DW?我有一个元问题吗?
John L.

如果我没有记错的话,你必须移动的十字转门操作员(),在规则的结论,与λ X 牛逼1牛逼2。我还要添加标签λx:T1t2type-checking
mchar

3
@ Apass.Jack最终出现在热门网络问题中,因此受到了更多关注。
JAB

Answers:


20

在旋转闸的左侧,您可以找到局部上下文,这是有关手头变量类型的有限假设列表。

x1:T1,,xn:Tne:T

以上,可以是零,导致ë Ť。这意味着不对变量做任何假设。通常,这意味着e是类型T的闭项(没有任何自由变量)。ne:TeT

通常,您提到的规则是以更一般的形式编写的,其中的假设可能比问题中提到的假设更多。

Γ,x:T1t:T2Γ(λx:T1.t):T1T2

此处,表示任意上下文,并且Γ x T 1表示通过将附加假设x T 1附加到列表Γ而获得的扩展。通常要求x不出现在Γ中,以便扩展名不与先前的假设“冲突”。ΓΓ,x:T1x:T1ΓxΓ


7

作为对其他答案的补充,请注意,在类型派生中存在“暗示”三个级别。逻辑推导也是如此,因为两者之间实际上存在对应关系(称为Curry-Howard对应关系)。

λ

ABBAλλx.tABtBxA

λ


3

Env×Exp×Typ

t2T2 T1x

ΓΓEnv:VarTyp

请注意,无论是在前提中还是在规则的结论中,操作员均会保留其功能,而不论其出现在何处。


-1

XYYXXY


1
XYXY

1
水平条表示底部的物体是顶部物体的直接推导。尽管我同意您的例子中的无条件真理源于有条件真理,这看起来很奇怪……
David Richerby

x:T1(x:T1)(y:T2)
德里克·埃尔金斯

x:TΓx:TΓ

¬(x:A)(x:A)(y:B)(x:A)(y:B)x:A,y:Bt:Cy:B,x:At:Cx:Ay:Bt:C
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.