如何定义类型的对偶性?


12

在Wadler的递归类型中免费![1],他证明两种类型,X X F X × X,并声称它们是对偶的。他特别指出,类型X X X ˚F X X.(F(X)X)XX.(XF(X))×XX.X(XF(X))前者的对偶。似乎这里讨论的二元性在逻辑上不同于De Morgan的二元性。我想知道如何定义类型的对偶性,特别是针对上述三种类型,为什么第二种是第一种的对偶而第三种却没有。谢谢。

[1] http://homepages.inf.ed.ac.uk/wadler/papers/free-rectypes/free-rectypes.txt


我在这里不会有太大帮助,但这听起来是分类理论。
安东尼

Answers:


8

在这种情况下,对偶性是指在一种情况下采用最小固定点,而在另一种情况下采用最大固定点。我们应该在什么意义上理解G ^ = X X ˚F X × X是“至少”和“最大”递归方程的解˚F X XL=X.(F(X)X)XG=X.(XF(X))×XF(X)X

首先,ģ确实固定点(在某些技术假设其限制的性质˚F),因为比较映射v ˚F 大号大号瓦特G ^ ˚F ģ 由下式给出 vLGFv:F(L)Lw:GF(G)瓦特X ˚F X = ˚F λ ÿ X

vxXg=g(F(λh:L.hXg)x)
是同构。注意,当我们将 F应用于函数时,我们使用了 F是函子的事实,即,它是单调的。
w(X,(f,x))=F(λy:X.(X,(f,y)))(fx)
F

假设是任何解决˚F Ý ý与介导的同构ù ˚F Ý ÿ。然后我们有由α定义的 规范映射α L Y  和  β Y GYF(Y)Yu:F(Y)Y

α:LY and β:YG
β
αf=fYu
因此,大号至少因为我们可以从它映射到任何其他的解决方案,和 G ^最大的,因为我们可以从任何其它的解决方案将其映射。通过谈论初始代数和最终代数,我们可以使所有这些变得更加精确,但是我希望我的回答简短而甜美,而科迪无论如何都对代数进行了解释。
βy=(Y,(u1,y)).
LG

F(X)=1+A×XAA


LGFF(L)LGF(G)

vw

ww(X,(f,x))=F(λy:X.(X,(f,x)))(fx)

1
我以为您证明了这w'是同构,但是它给您有效的连系吗?(我猜应该这样,但是我可能是错的。。。)看起来好像广场不会上下班。
CA McCann 2012年

在他的注释:homepages.inf.ed.ac.uk/wadler/papers/free-rectypes/…中,Wadler提供了第一个版本。但是他的写法有些不同:w(X,(f,x))= F(展开X k)(fx)。这使得合并体的结构看起来更清晰,并且几乎立即给出了适当的核心屈折态的交换。正如camcann所说,我认为您的其他版本不会使这些方块上下班。
科迪2012年

7

ICF:CCF

  • AC
    α:F(A)A
  • 如箭头:正方形

    F-代数态

IFI

  1. in:F(I)I
  2. F(A,α)fold:IA

I=X.(F(X)X)Xfold

fold=λi:I.i A α:IA
inF,这可以看作是一个积极性要求。

FF

  • ZC
    ω:ZF(Z)
  • Fαβ

T

  1. out:TF(T)
  2. FZcofold:ZT

T=X.(XF(X))×X

cofold=λz:Z.(Z,ω,z):ZT
T=X.X(XF(X))

6

λπ

当您将类型转换(分解)为过程演算时,对偶变得简单:输入对输出是对偶的,反之亦然。对偶性没有更多。

πα=(Bool,Int)ααxx¯false,7α¯(v,w)vwα¯(bool,int)α¯xc(v,w).0

β=(int,(int))(v,w)vwβ¯=(int,(int))αα¯PαxQα¯xPQββ¯

X.(X,(X))(v,w)vXwXx

x(vw).w¯v
X.(X,(X))

通用量化在过程级别上意味着什么?有一个简单的解释:如果数据是由类型变量键入的,则不能将其用作输出的对象,而只能用作对象。因此,我们无法检查此数据,只能将其传递或忘记。

X.(X,(X))X.(X,(X))

[1,2,3]和其他一些难以访问的工作已经详细地阐明了这一理论,并且与极化线性逻辑及其对偶性概念在4中非常精确地相关。

λλπλπλ

π

π

π

4 K. Honda等,类型pi演算与极化证明网之间的精确对应关系

5 R. Milner,充当过程


1
回复:关于pointX。(X,(X)↑)↓类型居民的数量。π演算是否有“自由定理”的类似物?如果是这样,在哪里讨论?
Dominic Mulligan

1
您好@DominicMulligan,是的,这里有“自由定理”,我们在[1,2]中对此进行了一些研究。我认为朝这个方向可以说更多。
Martin Berger 2012年

1
@MartinBerger:您可以使用参数性来确定类型pi演算的过程等效的“正确”概念是什么吗?例如,在系统F中,参数逻辑关系对应于上下文对等。以此类推,我希望过程等效的任何概念与pi演算的参数逻辑关系相对应都会特别有趣。
Neel Krishnaswami 2012年

π

基于双仿真的表征对于实际推理很有用,因为它们不需要在所有情况下都封闭。
Martin Berger 2012年
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.