“…A message always relates different events by causality (rule 8). 2 An event e 1 ∈ Ev e1 = Const ('e1',Ev) 3 Set of instances or lifelines I I = DeclareSort ('I') 4 An instance i 1 ∈ I i1 = Const ('i1',I) 5 Ev = i∈I Ev i cover = Function ('cover', Ev, I, BoolSort()) ForAll([e,i1,i2],Implies(And(cover(e,i1),(i1!=i2)), (Not(cover(e,i2))))) 6 Set of messages M M = DeclareSort ('M') 7 A message m ∈ M m = Const ('m',M) 8 For ForAll([e1, e2],Conc(e1, e2) == Not(Or(Conflict(e1, e2),Next(e1, e2),Next(e2, e1))))…”