基于契约的Web服务发现与组合:分包关系研究
1. 分包预序与最大关系
在服务组合中,我们需要一种关系来确保服务的安全替换,避免死锁和活锁。首先,我们证明了所有分包预序族都包含在 ${⪯_{I,O} |I, O \subseteq N}$ 中,并且这个关系族也是一个分包预序族,是最大的。
在之前,我们引入了输入 - 输出分包关系 $⪯ {I,O}$,并证明它是最大的分包预序族。通过命题 7,我们可以假设 $I = N$,从而得到一个更简单的关系 $⪯ {O}$,即 $⪯_{N,O}$,我们称其为分包关系。它只有一个参数,表示预期上下文可以执行输出的名称集合。
1.1 分包关系的定义
定义 12 给出了分包关系的定义:对于一组输出通道名称 $O \subseteq N$,如果对于所有 $P \in P_{sys,O}$,都有 $(C||P)↓ \Rightarrow (C’||P)↓$,则称合同 $C’$ 是合同 $C$ 关于 $O$ 的分包,记作 $C’ ⪯_{O} C$。
然而,由于该定义对所有可能的并行进程 $P$ 进行了全称量化,在实际证明中难以直接使用。为了解决这个问题,我们引入了 should - testing 理论。
1.2 Should - testing 理论
should - testing 与标准的 must - testing 的主要区别在于考虑了公平性。在标准 must - testing 中,一个(不公平的)无限计算如果永远不会产生成功结果,也会被观察到;而在 should - testing 中则不会。
超级会员免费看
订阅专栏 解锁全文
3430

被折叠的 条评论
为什么被折叠?



