全LOTOS的符号语义与双模拟
1. 引言
LOTOS是一种消息传递进程代数,它结合了基本LOTOS进程语言和ACT ONE等式抽象数据类型语言。其标准语义会将进程中的每个数据变量用对应类型的所有可能值进行实例化,这会导致无限分支的转换系统,给自动化推理带来困难。虽然标准方法能轻松实现多路同步,但存在诸多缺点,如难以使用标准模型检查技术、丢失进程动作的一致性信息、无法对部分或数据参数化的行为表达式进行推理等。
解决该问题的方法有三种:
- 暴力去除数据,但会改变进程行为。
- 构建数据类型的进程表示,但进程仍为无限分支。
- 采用符号方法,如消息传递CCS的符号语义。
之前的工作在处理递归进程和实现方面存在问题,本文对定义进行了修订,旨在定义一个完整的符号框架,包括符号语义、逻辑、关系和工具,同时保留LOTOS的独特特征。
2. LOTOS的独特特征
LOTOS与大多数标准进程代数(特别是消息传递CCS)有三个显著区别:
- 多路(广播)同步 :两个动作同步时,结果动作可能参与进一步同步。LOTOS中用!和?分别表示提供单个值或一组值的事件。在底层转换系统中,通过将数据编码到!和?事件的转换中来实现多路同步。
- 值协商 :当g?x : S和g?y : S同步时,x和y会绑定到相同的值。
- 选择谓词 :可以限制数据,若谓词求值为假,则事件无法发生。与其他进程代数不同,选择谓词可引用当前事件中的数据。
这些特征使得直接应用符号转换和双模拟的概念变
超级会员免费看
订阅专栏 解锁全文
27

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



