Kiedy dwie symulacje nie są bisimulacją?

20

Biorąc pod uwagę oznaczony system przejścia , gdzie jest zbiorem stanów, jest zbiorem etykiet, a jest relacją trójskładnikową. Jak zwykle napisz dla . Oznaczone przejście oznacza, że ​​system w stanie zmienia stan na z etykietą , co oznacza, że to pewne obserwowalne działanie, które powoduje zmianę stanu.S Λ S × Λ × S p α q ( p , α , q ) p α q p q α α(S,Λ,)SΛ→⊆S×Λ×Spαq(p,α,q)∈→pαqpqαα

Teraz relacja jest nazywana symulacją iff RS×S

(p,q)R, if pαp then q,qαq and (p,q)R.

Mówi się, że jeden LTS symuluje inny, jeśli istnieje między nimi relacja symulacji.

Podobnie relacja jest bisimulacją iffRS×S jeżeli  p α p  to  q ,(p,q)R,

 if pαp then q,qαq and (p,q)R and  if qαq then p,pαp and (p,q)R.

Mówi się, że dwa LTS są bisimilar, jeśli istnieje bisimulacja między ich przestrzeniami stanu.

Oczywiście te dwa pojęcia są dość powiązane, ale nie są takie same.

W jakich warunkach LTS symuluje inny i odwrotnie, ale że oba LTS nie są podobne?

Dave Clarke
źródło

Odpowiedzi:

12

Ponieważ proces CCS jest wart tysiąc pikseli - i łatwo jest zobaczyć leżący u jego podstaw LTS - oto dwa procesy, które symulują się nawzajem, ale nie są podobne:

Q = a b

P=ab+a
Q=ab

R1={(ab+a,ab),(b,b),(0,b),(0,0)} to symulacja.

R2={(ab,ab+a),(b,b),(0,0)} to symulacja.

Q R 2 P P Q P a 0 Q Q a Q b 0 bP R1 Q i ale i nie są podobne. Dlaczego nie? Ponieważ i jedyne takie, że to ... a nie jest podobne do .Q R2 PPQPa0QQaQb0b

PQQQPPaQaRRR1

jmad
źródło
10

R1R2p1qR1R2

Kanonicznym przykładem są dwa systemy, które mają te same ślady, ale dokonują wyborów inaczej. Rozważmy dwa automaty z napojami: pierwszy (zły) bierze monetę ( c) i niedeterministycznie decyduje, czy podać filiżankę herbaty ( t). Drugi automat (ten dobry) bierze monetę ( c) i podaje filiżankę herbaty ( t).

wczesny i późny wybór

R1={(s,s),(p,p),(q,q),(r,p)}rrp

R2={(s,s),(p,p),(q,q)}rrs2spscpr1pqqr

rr

Różnica między tymi dwiema maszynami polega na tym, że dobra maszyna jest deterministyczna i (przy założeniu żywotności) zawsze dostarcza herbatę po włożeniu monety, podczas gdy zła maszyna może kapryśnie wziąć monetę, ale utknie, nie mogąc dostarczyć herbaty.

Tego rodzaju różnica pojawia się często w badaniu systemów współbieżnych. Odpowiedź jmada pokazuje proces CCS z tym LTS.

Aby uzyskać więcej informacji na temat bisimulacji, polecam notatki Davide Sangiorgi O początkach bisimulacji i koindukcji . (Jest to ćwiczenie 1, str. 29, a notatki używają tego samego przykładu.)

Gilles „SO- przestań być zły”
źródło
Fakt, że dwie jednokierunkowe symulacje nie są równe podobieństwu, sugeruje mi, że symulacja nie jest właściwym pomysłem przybliżenia w obecności niedeterminizmu. Czy są jakieś inne pomysły, które zostały wzięte pod uwagę?
Uday Reddy,
2

LTS1LTS2RLTS2LTS1RR

LTS1LTS2RLTS2LTS1R

Charles
źródło
Wydaje mi się, że to, co próbuję powiedzieć, to fakt, że zawsze tak jest, że dwa LTS są podobne, więc pytanie dotyczy raczej tego, czy dana relacja jest (bi) symulacją.
Charles