什么是行为等价性(Behavioral Equivalence)
简单来说,两个流程如果可以出现的行为(集)是一样的,那么它们就是等价的。然而,对于流程模型来说,还是存在几种等价性,这些等价性有些微妙的差别。下面介绍这几种等价性:行迹等价性(Trace Equivalence)、互仿真等价性(Bisimulation Equivalence or Bisimilarity)、弱互仿真等价性(Weak Bisimulation)和分支互仿真等价性(Branching Bisimulation Equivalence)。
行迹等价性(Trace Equivalence)
概念:如果两个流程可以生成的行迹的集合是相同,那么它们符合行迹等价性。
理解:行迹等价性只要求流程可以生成相同的行迹集合,但是在流程实际流动中,还是有一些区别,从流程模型上可以看出来。如下图中,流程(变迁系统)TS1和TS2是行迹等价的,但是TS1中,如果走到状态s3时,走到终态s4只有经过heaven的变迁;而在TS2中,在s6走到终态s7经过的变迁还是有heaven和hell。
remark:只需要行迹相互匹配,对非确定性、死锁不敏感。
还有一个完全行迹等价性(Completed Trace Equivalence),以后看到再补充(or 评论区欢迎补充)
互仿真等价性(Bisimulation Equivalence)
概念:互仿真等价性是比行迹等价性更严格的等价性,即如果两个系统能够互相模拟对方的每一步,那么它们是互仿真等价的。
理解:两个流程能够模拟对方的每一步(复现对方),并且对下一步流向有相同的选择(的集合)。比如下图中,流程变迁系统TS2和TS3,两个流程的状态通过虚线对应起来,可以模拟对方,并且它们流向下一个状态可以选择的变迁(的集合)是一样。满足互仿真等价性一定符合行迹等价性。
弱互仿真(Weak Bisimulation)
概念:弱互仿真等价性考虑了不可观察行为,或者说沉默变迁(silent transition),如果两个流程能够模拟彼此的每一步,并且流向下一个状态的选择是相同的,不考虑这个转移需要经过多少个沉默变迁(不论是下一状态之前或之后)。
分支互仿真等价性(Branching Bisimulation Equivalence)
概念:分支互仿真等价性比弱互仿真严格,即两个流程能够模拟彼此的每一步,并且流向下一个状态的选择是相同的,如果一个流程流经一个沉默变迁,那么另一个流程要么不执行,要么同样流经一个沉默变迁,但是两个流程必须具有相同的选择可以流向下一个状态。
后记:在行为比较的研究上面,相似性、继承性的研究也是一项挑战,如继承性的行迹继承性(Trace inheritance),相似性的基于集合相似性测度(如Jaccard系数),集合的确定可以是n-gram、n-long sub-sequences