Curry-Howard同构的并行或并发程序的当前状态是什么?


9

在吉拉德的证明和类型中,我们可以阅读:

从算法的角度来看,后续的演算不具有Curry-Howard同构性,因为有许多编写相同证明的方式。这使我们无法将其用作类型化的演算,尽管我们瞥见了这种可能与并行性相关的深层结构。λ

证明和类型,JY Girard(页28)

但是我们也可以阅读(关于线性逻辑)

从计算机科学的角度来看,它为懒惰,副作用和内存分配[GirLaf,Laf87,Laf88]问题提供了一种新方法,并有望应用于并行性。

证明和类型,JY Girard(第149页,Yves Lafont撰写)

并行程序如何与Curry-Howard同构关联?目前对此有何想法?

Answers:


7

并行的逻辑框架是包括它的后代,像一个有趣的领域线性MELDLolliMon。这是基于直觉线性逻辑的。

古典线性逻辑具有与线性化学文摘机(CHAM)的连接,例如由基于线性化学文摘机的交互网络演算所描述的,该演算明确将结果描述为Curry-Howard类型的结果。

λμ

无论如何,这仍然是一个活跃的研究领域。最近有很多关于该主题的论文。上面甚至没有提到分离逻辑的更多子结构方面,也没有提到关注命令式编程语言的相应Hoare类型理论。例如,对于事务并发Towards类型理论语义,您可以跟踪其引用以进行先前的工作。

(有点儿学问,其中大多数都集中在并发性上,而不是并行性本身。)


好。我编辑了我的问题标题,以使其范围更广。我不知道并发与Curry-Howard有链接。但是并行性呢?
鲍里斯(Boris)

在Curry-Howard的功能编程视图中,任何(纯)并行都会在证明重写的级别上发生,并且通常很多(任何时候有多个redex)。您可以添加诸如Haskell的注释par来对其进行控制(即,默认情况下可以使用较少并行的归约顺序,可以有选择地使它更平行),但是它们没有逻辑意义。
德里克·埃尔金斯

4

对于一般的并发来说,有一个非常活跃的研究领域,我试图在此回复中进行总结:https : //cs.stackexchange.com/a/102711/98901

我在下面在此处添加对并行性的评论。


Avron [1996]引入了hypersequents的概念,即判决中的sequents的集合。

GHG|H|PGHP|PG|H

我们刚刚开始对此进行语义解释,但是这种并行性是显而易见的:并行组合的语义允许从两个过程中看到同时动作,并且在论文中有一个定理指出这两个过程需要等待另一个执行至少一些动作(准备定理)。同时扩展到两个以上的动作似乎很简单。(键入已经允许这样做,但是该论文中的语义并未完全利用它。)

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.