论文标题

过程,系统和测试:定义上下文等价

Processes, Systems and Tests: Defining Contextual Equivalences

论文作者

Aubert, Clément, Varacca, Daniele

论文摘要

在该立场论文中,我们想提供并捍卫一个新的模板来研究程序之间的等效性 - 在特定的过程代数框架以进行并发计算的特定框架中。我们相信,我们的分层开发模型将阐明与程序员和测试人员的任务和责任之间经常隐含的区别。它还将启发跨流程代数的现有问题,就像通信系统的计算一样多样化,$π$ -calculus(也在其分布式版本中)或移动设备。我们的区别首先是在三个概念上分离的实体中的过程本身开始,我们呼吁\ emph \ emph \ emph and consystem and} consystem and}, \ emph {tests}。虽然已经深入研究了可以观察到的角色和在一致性定义中的副标,但事实是\ emph {不是每个过程都可以测试每个过程},并且\ emph {测试人员应该可以访问与程序员相比奇怪地进行的,或者不经常进行拼写。位置 - 扮演多个不同的角色,但据说总是\ enquote {保持相同}。我们用一个简单的Java示例,\ enquote {forther}并发语言来说明我们的语句,但也用$λ$ - calculus和现有的同意语言来备份它。

In this position paper, we would like to offer and defend a new template to study equivalences between programs -- in the particular framework of process algebras for concurrent computation.We believe that our layered model of development will clarify the distinction that is too often left implicit between the tasks and duties of the programmer and of the tester. It will also enlighten pre-existing issues that have been running across process algebras as diverse as the calculus of communicating systems, the $π$-calculus -- also in its distributed version -- or mobile ambients.Our distinction starts by subdividing the notion of process itself in three conceptually separated entities, that we call \emph{Processes}, \emph{Systems} and \emph{Tests}. While the role of what can be observed and the subtleties in the definitions of congruences have been intensively studied, the fact that \emph{not every process can be tested}, and that \emph{the tester should have access to a different set of tools than the programmer} is curiously left out, or at least not often formally discussed.We argue that this blind spot comes from the under-specification of contexts -- environments in which comparisons takes place -- that play multiple distinct roles but supposedly always \enquote{stay the same}.We illustrate our statement with a simple Java example, the \enquote{usual} concurrent languages, but also back it up with $λ$-calculus and existing implementations of concurrent languages as well.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源