互模拟(Bisimulation)

互模拟是衡量两个系统行为等价的重要概念,尤其在并发理论中。通过带标签的变迁系统(LTS)表示机器行为,互模拟关系介于图的同构和自动机的轨迹等价之间,提供了一种更为精确的过程等价性判断标准。文章探讨了互模拟的定义、背景及应用,并举例说明了为何图的同构和自动机的轨迹等价在某些情况下并不足够。
摘要由CSDN通过智能技术生成

互模拟(Bisimulation)

背景

首先考虑一个例子。现在我们有一台咖啡机,在咖啡机中投入一个硬币之后,顾客可以按下咖啡按钮和茶按钮,在按下咖啡(茶)按钮之后,顾客可以得到一杯咖啡(茶),从咖啡机中拿走咖啡或茶以后咖啡机回到最初的状态。假设该咖啡机坏了,我们要替换一台行为相同的咖啡机,那么我们如何保证替换的咖啡机一定是与原咖啡机行为相同的一台?在这个例子中我们需要回答三个问题:

  • 如何表示机器的行为?
  • 在什么意义之下两个机器是一样的?
  • 如何证明两个机器是一样的?

行为和过程(Behaviour and Process)

(1). 什么是机器的行为?机器的行为可以理解为我们能够观测到的机器与环境交互的整个流程。

(2). 什么是过程?
对于一个顺序执行的程序而言,它的过程可以看成一个数学对象——函数;而当考虑到并行程序时,过程就不能单纯地看成一个函数。

思考:程序语义分为估值语义(evaluation semantics)和变迁语义(transition semantics)在估值语义中,人们只关心程序运行前后的计算结果,在这个意义下,估值语义可以用函数来刻画;变迁语义关心的是程序运行过程中的每一次变迁,而这每一次变迁就对应于一个基本程序的执行。基本程序有时会涉及并行操作,因此,用过程来刻画变迁语义会更恰当。

对于如何定义过程以及在什么情况下过程的行为是等价的,目前还是尚未解决的问题,尤其是在并发理论中。

带标签的变迁系统(Labeled Transition System)

机器的行为用带标签的变迁系统来表示,定义如下:

一个带标签的变迁系统(LTS)是一个三元组 ( P , Act , T ) ( \mathcal{P},\text{Act}, \mathcal{T} ) (P,Act,T), 其中 P \mathcal{P} P 是状态(过程)的集合, Act 是动作的集合(有限或无限), T ⊆ ( P , Act , P ) \mathcal{T}\subseteq(\mathcal{P}, \text{Act},\mathcal{P}) T(P,Act,P) 是传递关系

LTS的例子参见下文。

行为的

互模拟(Bisilmulation)

LTS提供了讨论两个机器行为的基础,即对两个机器行为的讨论就转化为对两个LTS的讨论。
第一个自然的想法是借助于图论中图的同构,但是,图的同构要求太强。例如以下两个LTS的行为是一样的,但它们是不同构的:
LTS1
LTS2

我们也可以将LTS看成是自动机,因此,第二个想法是借助于自动机的轨迹等价,即考虑两个LTS接受的语言是否相同。然而自动机的轨迹等价要求又太弱。例如以下的两个LTS接受的语言是相同的,但是这两个LTS 的行为是不一样的
coffeemachine1
coffeemachine2
综上,对于两个LTS而言,我们要找到一个关系,这个关系需要比同构的条件弱,但要比轨迹等价的条件强。互模拟关系就是这样的一种关系。其定义如下:

一个关系 R \mathcal{R} R是状态(或过程)上的互模拟关系,如果对给定的状态

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值