Questions tagged «operational-semantics»

1
我们可以严格区分编程语言中的句法和语义方法吗?
虽然讨论了强有力的规范化证明,但该评论将“规范形式模型”与“纯粹的句法方法”进行了对比。 这使我回到一个更基本的问题:面对基于语法的模型,我们仍然可以严格地区分句法和语义结构吗?代数的术语模型,一阶逻辑的Henkin模型呢?那么结构操作语义呢?由于术语模型可以与语法同构,因此很难进行明确区分。 在研究逻辑上的证明论与模型论之间的区别之前,我甚至对“静态类型系统是一种句法方法”的想法感到困惑。归根结底,类型系统会考虑类型,这是程序行为的抽象(对于依赖类型,则是任意精确的类型)。

1
Scheme的call / cc可以实现所有已知的控制流结构吗?
页面“高级方案:有些顽皮”指出: 延续是一个强大的控制流构造,几乎可以从 任何其他控制流结构中得出。 我以为Scheme的call/cc(*)与Peter Landin的J运算符相关,可以用于实现任何已知的控制流结构? 对于“控制流结构”,我特别考虑了Wikipedia对它们的描述,例如,异常,协程,绿色线程等。 具体来说,有没有使用不能实现的控制流结构的示例call/cc? (*)我无法挖掘出任何可以证明call/cc像J运算符一样强大的论文。 Felleisen的一篇论文(我还没有读过,并且承认很难完全理解它)对此进行了调查,似乎可以得出结论,即使它们处于不同的复杂性类别中,它们在形式上也是等效的。 (还请注意,我已根据以下评论更新了问题) 更新资料 基于下面@Neel的出色回答,我看了一些评论定界和不定界延续的网站,确实看来,尽管call/cc不定界是不够的。同时,第一级,分隔延续(像shift/reset)可以被使用,似乎表达任何控制流结构。

3
对于什么语言,已经有了观察对等理论?
对于正确性证明,我正在寻找的程序等价的可用概念为Barendregt的清纯型系统(的PTS); 缺少足够的特定类型系统。我的目标只是使用概念,而不是出于自身的原因对其进行研究。≅≅\cong 这个概念应该是“ 伸展 ” -特别是要证明,应该足以证明牛逼1Ť1个≅Ť2t1≅t2t_1 \cong t_2表示适当类型的所有值 v。Ť1个v ≅Ť2vt1v≅t2vt_1\; v \cong t_2\; vvvv 指称等价 指称等价很容易满足所有正确的引理,但是任意PTS的指称语义似乎颇具挑战性-对于系统F来说似乎已经很困难。 上下文/观察等价 那么显然的替代方法是各种形式的上下文等效(如果没有基础上下文可以区分它们,则两个术语是等效的),但是其定义不能立即使用。各种引理并不是很容易证明的。是否已为PTS证明过?或者,该理论是“显而易见的扩展”,还是有理由相信该理论会明显不同? 编辑:我没有说什么很难。 简单的部分:定义 定义等效性并不难,并且在许多论文中都有定义(至少从Plotkin 1975对PCF的研究开始,如果不是更早的话-来源可能是1968年Morris的博士学位论文)。我们如果对所有地面上下文Ç,c ^ [ 吨1 ] ≃ Ç [ 吨2 ] -也就是说,c ^ [ 吨1 ]和c ^ [ 吨2 ]给出相同的结果Ť1个≅Ť2t1≅t2t_1 \cong t_2CCCC[ Ť1个] ≃ Ç[ Ť2]C[t1]≃C[t2]C[t_1] \simeq C[t_2]C[t1]C[t1]C[t_1]C[t2]C[t2]C[t_2]。你有几个选择,这里有很多的替代品:例如,在强正火的语言,如果你有土黄的地面类型,你可以说,地面环境是那些回报土黄,然后意味着一个和b取相同的数字。对于非终止,对于合理的语言,使用“ X终止”作为观察就足够了,因为如果两个程序在观察终止时是等效的,那么在观察结果时它们也是等效的。a≃ba≃ba \simeq …

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.